diff --git a/lib/config.js b/lib/config.js index 77558c9bc..94886959b 100644 --- a/lib/config.js +++ b/lib/config.js @@ -152,6 +152,10 @@ Config.prototype.authenticate = function(user, password) { return false; } else { + if(users.users[user].salt) { + password += users.users[user].salt; + } + return crypto.createHash('sha1').update(password).digest('hex') === users.users[user].password } } diff --git a/lib/users.js b/lib/users.js index a19a41b1f..e9a4fe2ff 100644 --- a/lib/users.js +++ b/lib/users.js @@ -14,7 +14,12 @@ var Users = function() { Users.prototype = { add: function(params, callback) { //Hash the Password - params.password = crypto.createHash('sha1').update(params.password).digest('hex'); + if(params.password) { + params.password = crypto.createHash('sha1').update(params.password).digest('hex'); + } + else if(params.password_sha) { + params.password = params.password_sha; + } //Save this.users[params.name] = params;