aboutsummaryrefslogtreecommitdiffstats
path: root/webclient
diff options
context:
space:
mode:
authorZaran <zaran.krleza@gmail.com>2011-05-20 01:52:20 +0200
committerZaran <zaran.krleza@gmail.com>2011-05-20 01:52:20 +0200
commit764248b8c4152c9fc141857b8e934149f68c757e (patch)
tree3c27a81a09f909a987182369a01262ff53b9d010 /webclient
parent3565d0c362646d681cbac605924fcf7984b05a92 (diff)
downloadalias-764248b8c4152c9fc141857b8e934149f68c757e.tar.gz
Store the extended private key during registration to save later
computation time.
Diffstat (limited to 'webclient')
-rw-r--r--webclient/lib/alias.js18
1 files changed, 15 insertions, 3 deletions
diff --git a/webclient/lib/alias.js b/webclient/lib/alias.js
index c19d025..78fc4f4 100644
--- a/webclient/lib/alias.js
+++ b/webclient/lib/alias.js
@@ -40,7 +40,9 @@ var Alias = {
privkey = JSON.parse(privkey);
var rsa = new RSAKey();
rsa.setPublic(pubkey.n, pubkey.e);
- rsa.setPrivate(pubkey.n, pubkey.e, privkey.d);
+ rsa.setPrivateEx(pubkey.n, pubkey.e, privkey.d,
+ privkey.p, privkey.q, privkey.dp,
+ privkey.dq, privkey.c);
this.rsa = rsa;
}
else{
@@ -54,8 +56,18 @@ var Alias = {
$('#generate').click(function(){
var rsa = new RSAKey();
rsa.generate(1024, "10001");
- var pubkey = {n: rsa.n.toString(16), e: rsa.e.toString(16)};
- var privkey = {d: rsa.d.toString(16)};
+ var pubkey = {
+ n: rsa.n.toString(16),
+ e: rsa.e.toString(16)
+ };
+ var privkey = {
+ d: rsa.d.toString(16),
+ p: rsa.p.toString(16),
+ q: rsa.q.toString(16),
+ dp: rsa.dmp1.toString(16),
+ dq: rsa.dmq1.toString(16),
+ c: rsa.coeff.toString(16)
+ };
privkey = sjcl.encrypt(Alias.connection.pass, JSON.stringify(privkey));
$("#form-pubkey").val(JSON.stringify(pubkey));
$("#form-privkey").val(privkey);