diff --git a/js/crypto.js b/js/crypto.js index 08a8db4..16f31b8 100644 --- a/js/crypto.js +++ b/js/crypto.js @@ -112,29 +112,37 @@ function signMessage(text, key, callback) { * @returns {undefined} */ function generatePrivateKey(userid, passphrase, callback) { - var F = kbpgp["const"].openpgp; + var statustextEl = $("#statustext"); + statustextEl.html(" Generating cryptographic key..."); + setTimeout(function () { + var F = kbpgp["const"].openpgp; - var opts = { - userid: userid, - primary: { - nbits: 2048, - flags: F.certify_keys | F.sign_data | F.auth | F.encrypt_comm | F.encrypt_storage, - expire_in: 0 // never expire - }, - subkeys: [] - }; + var opts = { + userid: userid, + primary: { + nbits: 2048, + flags: F.certify_keys | F.sign_data | F.auth | F.encrypt_comm | F.encrypt_storage, + expire_in: 0 // never expire + }, + subkeys: [] + }; - kbpgp.KeyManager.generate(opts, function (err, alice) { - if (!err) { - alice.sign({}, function (err) { - alice.export_pgp_private({ - passphrase: passphrase - }, function (err, pgp_private) { - callback(alice); + kbpgp.KeyManager.generate(opts, function (err, alice) { + if (!err) { + alice.sign({}, function (err) { + alice.export_pgp_private({ + passphrase: passphrase + }, function (err, pgp_private) { + statustextEl.html(" Key generated!"); + setTimeout(function () { + statustextEl.html(""); + }, 5000); + callback(alice); + }); }); - }); - } - }); + } + }); + }, 100); } function exportPublicKey() {