Результат отличается между криптомодулем узла и шифрованием javascript. js для шифрования aes-256-cb c - PullRequest
0 голосов
/ 01 апреля 2020

Результат узла:

var crypto = require("crypto");

const cipher = crypto.createCipher("aes-256-cbc", '4016c630787211e9af11ad2b4e874da9');
let result = cipher.update('hello world', "utf8", "hex");
result += cipher.final("hex");

Результат c5c0a3f1923203ae52a6e2b207cf958f.

Для сравнения с javascript,

<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.9-1/crypto-js.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/rollups/aes.js"></script>

<script>
var result = CryptoJS.AES.encrypt("hello world", '4016c630787211e9af11ad2b4e874da9');
console.log(result.toString());
</script>

Результат - U2FsdGVkX1 + pi4FPkd9TW03MYZfOpsvcewQAT4oz5 + o =

Почему эти результаты отличаются?

Я не знаю, как работает криптомодуль узла.

1 Ответ

0 голосов
/ 01 апреля 2020

Первый кодируется hex, второй base64.

Также ваш IV может отличаться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...