From 261db8035d20bb6df4acd70b5bca84702b224d62 Mon Sep 17 00:00:00 2001 From: Tankred Hase Date: Thu, 4 Feb 2016 15:00:17 +0700 Subject: [PATCH] Remove redundant message.symEncrypt/symDecrypt --- src/message.js | 54 ------------------------------------------- test/general/basic.js | 19 --------------- 2 files changed, 73 deletions(-) diff --git a/src/message.js b/src/message.js index 908577e0..618e0e66 100644 --- a/src/message.js +++ b/src/message.js @@ -282,60 +282,6 @@ function encryptSessionKey(sessionKey, symAlgo, keys, passwords) { return new Message(packetlist); } -/** - * Encrypt the message symmetrically using a passphrase. - * https://tools.ietf.org/html/rfc4880#section-3.7.2.2 - * @param {String} passphrase - * @return {Array} new message with encrypted content - */ -Message.prototype.symEncrypt = function(passphrase) { - if (!passphrase) { - throw new Error('The passphrase cannot be empty!'); - } - - var algo = enums.read(enums.symmetric, config.encryption_cipher); - var packetlist = new packet.List(); - - // create a Symmetric-key Encrypted Session Key (ESK) - var symESKPacket = new packet.SymEncryptedSessionKey(); - symESKPacket.sessionKeyAlgorithm = algo; - symESKPacket.decrypt(passphrase); // generate the session key - packetlist.push(symESKPacket); - - // create integrity protected packet - var symEncryptedPacket = new packet.SymEncryptedIntegrityProtected(); - symEncryptedPacket.packets = this.packets; - symEncryptedPacket.encrypt(algo, symESKPacket.sessionKey); - packetlist.push(symEncryptedPacket); - - // remove packets after encryption - symEncryptedPacket.packets = new packet.List(); - return new Message(packetlist); -}; - -/** - * Decrypt the message symmetrically using a passphrase. - * https://tools.ietf.org/html/rfc4880#section-3.7.2.2 - * @param {String} passphrase - * @return {Array} new message with decrypted content - */ -Message.prototype.symDecrypt = function(passphrase) { - var symEncryptedPacketlist = this.packets.filterByTag(enums.packet.symEncryptedSessionKey, enums.packet.symEncryptedIntegrityProtected); - - // decrypt Symmetric-key Encrypted Session Key (ESK) - var symESKPacket = symEncryptedPacketlist[0]; - symESKPacket.decrypt(passphrase); - - // decrypt integrity protected packet - var symEncryptedPacket = symEncryptedPacketlist[1]; - symEncryptedPacket.decrypt(symESKPacket.sessionKeyAlgorithm, symESKPacket.sessionKey); - - var resultMsg = new Message(symEncryptedPacket.packets); - // remove packets after decryption - symEncryptedPacket.packets = new packet.List(); - return resultMsg; -}; - /** * Sign the message (the literal data packet of the message) * @param {Array} privateKey private keys with decrypted secret key data for signing diff --git a/test/general/basic.js b/test/general/basic.js index f4315825..09c15178 100644 --- a/test/general/basic.js +++ b/test/general/basic.js @@ -353,25 +353,6 @@ describe('Basic', function() { }); - describe('Encrypt message symmetrically using passphrase', function() { - it('should encrypt/decrypt successfully', function() { - var passphrase = 'passphrase'; - var plaintext = 'secret stuff'; - - // encrypt - var msg = openpgp.message.fromText(plaintext); - msg = msg.symEncrypt(passphrase); - var encrypted = msg.armor(); - - // decrypt - var msg2 = openpgp.message.readArmored(encrypted); - msg2 = msg2.symDecrypt(passphrase); - var decrypted = msg2.getText(); - - expect(decrypted).to.equal(plaintext); - }); - }); - describe("Message 3DES decryption", function() { var pgp_msg = ['-----BEGIN PGP MESSAGE-----',