Я начинаю задаваться вопросом, отличается ли реализация AES в разных библиотеках.
В настоящее время у меня есть открытый текст, зашифрованный с помощью PyCrypto.
Я пытаюсь расшифровать зашифрованный текст с помощью криптографической библиотеки Node.js ..
В основном с PyCrypto .. Я использую AES-128-CBC со случайным сгенерированным IV. (который отлично расшифровывается в PyCrypto)
Однако ..
На Node.js я это делаю
var buf = new Buffer(ciphertext)
var decipher = crypto.createDecipher('aes-128-cbc',aeskey)
buf = decipher.update(buf,'binary', 'binary')
buf += decipher.final('binary')
Что выплевывает кучу мусора .... (изменение двоичного файла на шестнадцатеричный / utf8 не помогает)
Поскольку я использую CBC (Cipher Block Chaining) ...
я добавляю IV в начало зашифрованного текста (16 блоков) .. В PyCrypto это работает отлично, аналогично спецификации использования PGP, CFB ..
Кто-нибудь знает по какой причине это не работает ???
Ожидаю ли я слишком многого от стандартных библиотек Node.js?