Результат узла:
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 =
Почему эти результаты отличаются?
Я не знаю, как работает криптомодуль узла.
Первый кодируется hex, второй base64.
hex
base64
Также ваш IV может отличаться.
IV