Я новичок в шифровании. То, что я пытаюсь сделать, - это расшифровать шифрованный текст с использованием библиотеки javascript, CryptoJS. Этот пример кода отлично работает. Часть шифрования возвращает зашифрованный текст «ae06b481cecfa67c98c125» (который является правильным), а дешифрование того же объекта возвращает исходную строку «Hello World».Невозможно расшифровать сообщение с использованием Crypto-Js
var key = CryptoJS.enc.Latin1.parse("bad8deadcafef00d");
var iv = CryptoJS.enc.Latin1.parse("bad8deadcafef00d");
var encrypted = CryptoJS.AES.encrypt("Hello World", key, {iv: iv, mode: CryptoJS.mode.CTR, padding: CryptoJS.pad.NoPadding });
alert(encrypted.ciphertext);
var decryptedData = CryptoJS.AES.decrypt(encrypted, key, {iv: iv, mode: CryptoJS.mode.CTR, padding: CryptoJS.pad.NoPadding });
originalData = decryptedData.toString(CryptoJS.enc.Utf8);
alert(originalData);
Ну эта часть работает отлично, но когда я пытаюсь этот кусок кода, передавая зашифрованный текст в виде строки независимо друг от друга, я не получаю расшифрованного сообщения.
var key = CryptoJS.enc.Latin1.parse("bad8deadcafef00d");
var iv = CryptoJS.enc.Latin1.parse("bad8deadcafef00d");
var ciphertext = "ae06b481cecfa67c98c125";
// raw = CryptoJS.enc.Base64.parse(cipher);
var decryptedData = CryptoJS.AES.decrypt(ciphertext, key, {iv: iv, mode: CryptoJS.mode.CTR, padding: CryptoJS.pad.NoPadding });
originalData = decryptedData.toString(CryptoJS.enc.Utf8);
alert(originalData);
console.log(originalData);
Может кто-нибудь указать, почему?
У меня есть следующие библиотеки, включенные в html-файл.
<script src="js/rollups/aes.js"></script>
<script src="js/components/mode-ctr.js"></script>
<script src="js/components/pad-nopadding.js"></script>