mirror of
https://github.com/moparisthebest/mail
synced 2024-11-27 03:12:23 -05:00
integrate crypto lib update
This commit is contained in:
parent
d02f61b4a8
commit
ac7329fcfa
@ -30,12 +30,12 @@
|
||||
throw new Error('Arguments missing!');
|
||||
}
|
||||
|
||||
// encrypt a list of items
|
||||
self.encryptList(list);
|
||||
|
||||
// set sender private key
|
||||
self._rsa.init(null, senderPrivkey.privateKey);
|
||||
|
||||
// encrypt a list of items
|
||||
self.encryptList(list);
|
||||
|
||||
list.forEach(function(i) {
|
||||
// fetch correct public key for encryption
|
||||
receiverPk = null;
|
||||
@ -71,7 +71,7 @@
|
||||
// set sender's keypair id for later verification
|
||||
i.senderPk = senderKeyId;
|
||||
// sign the bundle
|
||||
i.signature = self._rsa.sign([i.iv, i.ciphertext]);
|
||||
i.signature = self._rsa.sign([i.iv, i.key, i.ciphertext]);
|
||||
|
||||
// delete plaintext values
|
||||
delete i.key;
|
||||
@ -155,13 +155,14 @@
|
||||
// set rsa public key used to verify
|
||||
self._rsa.init(senderPubkey);
|
||||
|
||||
// verify signature
|
||||
if (!self._rsa.verify([i.iv, i.ciphertext], i.signature)) {
|
||||
throw new Error('Verifying RSA signature failed!');
|
||||
}
|
||||
// decrypt symmetric item key for user
|
||||
i.key = self._rsa.decrypt(i.encryptedKey);
|
||||
|
||||
// verify signature
|
||||
if (!self._rsa.verify([i.iv, i.key, i.ciphertext], i.signature)) {
|
||||
throw new Error('Verifying RSA signature failed!');
|
||||
}
|
||||
|
||||
// delete ciphertext values
|
||||
delete i.signature;
|
||||
delete i.encryptedKey;
|
||||
|
Loading…
Reference in New Issue
Block a user