var CRYPTOJS_AES = require('crypto-js/aes');
var CRYPTOJS = require('crypto-js/core');
// ...
var ciphertextWords = CRYPTOJS.enc.Latin1.parse(payloadStruct.ciphertextBuffer.toString('binary'));
var ivBuffer = SHA256Array([this.saltBuffer, payloadStruct.saltBuffer]);
var ivWords = CRYPTOJS.enc.Latin1.parse(ivBuffer.toString('binary'));
var payloadWords = CRYPTOJS.AES.decrypt({
'ciphertext': ciphertextWords
},
this.accessKeyWords,
{
'iv': ivWords,
'mode': CRYPTOJS.mode.CBC,
'padding': CRYPTOJS.pad.Pkcs7
});
Нах тут эти преобразования типа Latin1.parse? Это типа из набора байт в строку преобразуется для того чтобы прокатилов CRYPTOJS.AES.decrypt? Долго ли это вообще может быть Latin1.parse ?
В доказ написано что
CryptoJS can convert from encoding formats such as Base64, Latin1 or Hex to WordArray objects and vica versa
что в javascript такое - WordArray objects ? Тип данных такой?