CryptoJS AES Шифрование и дешифрование - PullRequest
0 голосов
/ 06 октября 2018

Прежде всего, у меня есть 2 разные системы - одна в java, а другая в javascript.У меня есть зашифрованная строка (сделано в Java), у меня также есть SecretKey, который был использован для ее шифрования.Я могу расшифровать его, используя это в Javascript.Я знаю, что результат расшифровки правильный.Поэтому я не могу изменить логику расшифровки.Вот код расшифровки:

decrypt = (value) => {
  const cipher = CryptoJS.enc.Base64.parse(value);
  const dec = CryptoJS.enc.Utf8.stringify(
  CryptoJS.AES.decrypt(
      { ciphertext: cipher },
      secretKey,
      { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.NoPadding }
   )
 );
 return dec;
};

Я пытаюсь зашифровать результат выше, чтобы получить оригинальную зашифрованную строку в javascript.Я пытался сделать прямо противоположное тому, что я делал в расшифровке.Вот код шифрования:

encrypt = (value) => {
    var encrypted = CryptoJS.enc.Utf8.parse(
        CryptoJS.AES.encrypt(
            value, secretKey,
            { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.NoPadding }
        )
  );
  const cipher = CryptoJS.enc.Base64.stringify(encrypted);
  return cipher;

}

Я ожидаю исходную строку, которая была передана, но я не получаю тот же результат.

let decrypted = decrypt("LJalEgQ81qUjrVzhlgFNw==");
console.log("Decrypted:", decrypted);

encrypted = encrypt(decrypted);
console.log("Encrypted:", encrypted);

Любойпомощь приветствуется.Заранее спасибо.

...