Sorry, I accidentally tabbed and hit the send button prematurely... Here
are my complete thoughts..

Recently I was provided with the keypair at the bottom of this email
(passphrase: google). It does not properly import into Openpgp.js  After
working on it for awhile, what it appears to be is that the S2K is not
working. In this case we have symmetricEncryptionAlgorithm 9 (AES256), and
hash algorithm 2 (SHA1).

In openpgp.packet.keymaterial:decryptSecretMPIs I think case 7/8/9 need to
be changed. I've been working on fixing this, one issue is s2k hash value
has to be changed for encryption algorithms longer than 128 bit (see RFC
section 3.7.1.1). Additionally, the AES call had to be changed as it looked
like it was expecting arrays rather than strings. My code below still does
not work,  and it's super hacky, just to try to figure out how to make this
work before refactoring. I'm hoping someone else can take a look at this,
as I seem to currently be stuck.

Has anyone been using AES keys with any success that use S2K? Is it
possible there is an issue with the AES implementation?

Sean

     case  9: // - AES with 256-bit key
                       //The below section with ISP will be moved to
s2k.js, this is here just for testing
var isp = this.s2k.saltValue+str_passphrase;
while (isp.length < this.s2k.count)
isp += this.s2k.saltValue+str_passphrase;
if (isp.length > this.s2k.count)
isp = isp.substr(0, this.s2k.count);
key = key + str_sha1(String.fromCharCode(0)+isp).substring(0,12); //RFC
4880 3.7.1.1 -- hash size is greater than block size, use leftmost bits.
 For >16 bytes, we need to rehash isp and prepend with 0.
                   // end of section that will move into s2k for algorithms
that are 256 bit (AES256)

     cleartextMPIs = normal_cfb_decrypt(function(block,key){
         return util.bin2str(AESencrypt(util.str2bin(block),key));
     },
     this.IVLength, keyExpansion(key), this.encryptedMPIData, this.IV);
     break;
     case 10: // - Twofish with 256-bit key [TWOFISH]





-----BEGIN PGP PRIVATE KEY BLOCK-----
Version: PGP Desktop 9.8.3 (Build 4028) - not licensed for commercial
use: www.pgp.com

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
=len3
-----END PGP PRIVATE KEY BLOCK-----
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: PGP Desktop 9.8.3 (Build 4028) - not licensed for commercial
use: www.pgp.com

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
AocVVCYQcLVDnd7huZ0qSoEqnaTKV1k=
=lKGL
-----END PGP PUBLIC KEY BLOCK-----
_______________________________________________

http://openpgpjs.org

Reply via email to