docs: function generateHash(data) {
          var deferred = Q.defer();
  
          bcrypt.hash(data, 10, function (err, res) {
              err ? deferred.reject(err) : deferred.resolve(res);
          });
  
          return deferred.promise;
      }