У меня проблема с AES-шифрованием. У меня есть зашифрованный текст.CryptoJS AES. Как повторить шифрование
var keyString = 'b46393431e8dfaa3feec333b6ba02d0b277b8552f092e49e3a2e9b9739ac23ea';
var message1 = "message to encrypt";
var encrypted = CryptoJS.AES.encrypt(message1, keyString, {mode: CryptoJS.mode.CFB});
console.log(encrypted); //U2FsdGVkX1862TrLeAHJssPnGWVfQ9AzPtF64560nerd1xOM+72ad+ZdyXMl5sLF
И теперь, я хочу проверить, что в следующий раз я зашифрую тот же текст. У меня нет переменных сообщений, но у меня есть зашифрованный текст.
var message2 = "message to encrypt";
var iv = CryptoJS.enc.Hex.parse(encrypted.iv.toString());
var key = CryptoJS.enc.Hex.parse(keyString);
var encrypted1 = CryptoJS.AES.encrypt(message2, key, {iv: iv, mode: CryptoJS.mode.CFB});
console.log(encrypted1); //xbPp9LFwl12hkLKwlvjpMaVj5Rss7YUbR0fP61wFXw8=
Но если переменная message1 == message2, я хочу получить тот же зашифрованный текст. Если я установлю iv и ключ, как во второй раз - я получу в следующий раз тот же результат. Но в первый раз я хочу генерировать функцию IV в функции регистрации. Является ли это возможным?
Ваше понимание того, что представляет собой вектор «Intitialization Vector (IV)», является ошибочным. –
Хорошо, может быть, вы поможете мне это понять? Я пытаюсь решить эту проблему в течение нескольких дней. – warlight