1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-12 06:13:38 +00:00

hashpassword with callback

This commit is contained in:
Kyle Spearrin
2016-09-05 00:03:49 -04:00
parent 8f0a24b1b9
commit cc67d12c57
2 changed files with 27 additions and 23 deletions

View File

@@ -6,7 +6,8 @@
_service.logIn = function (email, masterPassword) { _service.logIn = function (email, masterPassword) {
var key = cryptoService.makeKey(masterPassword, email); var key = cryptoService.makeKey(masterPassword, email);
var request = new TokenRequest(email, cryptoService.hashPassword(masterPassword, key)); cryptoService.hashPassword(masterPassword, key, function (hashedPassword) {
var request = new TokenRequest(email, hashedPassword);
var deferred = $q.defer(); var deferred = $q.defer();
apiService.postToken(request, function (response) { apiService.postToken(request, function (response) {
@@ -26,6 +27,7 @@
}); });
return deferred.promise; return deferred.promise;
});
}; };
_service.logInTwoFactor = function (code, provider) { _service.logInTwoFactor = function (code, provider) {

View File

@@ -67,9 +67,10 @@ function initCryptoService() {
return key; return key;
}; };
CryptoService.prototype.hashPassword = function (password, key) { CryptoService.prototype.hashPassword = function (password, key, callback) {
this.getKey(false, function (storedKey) {
if (!key) { if (!key) {
key = this.getKey(); key = storedKey;
} }
if (!password || !key) { if (!password || !key) {
@@ -77,7 +78,8 @@ function initCryptoService() {
} }
var hashBits = sjcl.misc.pbkdf2(key, password, 1, 256, null); var hashBits = sjcl.misc.pbkdf2(key, password, 1, 256, null);
return sjcl.codec.base64.fromBits(hashBits); callback(sjcl.codec.base64.fromBits(hashBits));
});
}; };
CryptoService.prototype.getAes = function (callback) { CryptoService.prototype.getAes = function (callback) {