Ошибка дешифрования PESCrypt AES - byteArray2String не определено
Я пытаюсь использовать pidCrypt (библиотека javascript https://sourceforge.net/projects/pidcrypt/) для расшифровки зашифрованного текста с помощью AES.
MAC mini, OS X Yosemite, v.10.10.1
Mozilla FF 35.0.1
Я использую эти файлы:
<SCRIPT src="javascripts/pidcrypt_util.js"></SCRIPT>
<SCRIPT src="javascripts/pidcrypt.js"></SCRIPT>
<SCRIPT src="javascripts/md5.js"></SCRIPT><!--needed for key and iv generation-->
<SCRIPT src="javascripts/aes_core.js"></SCRIPT><!--needed block en-/decryption-->
<SCRIPT src="javascripts/aes_cbc.js"></SCRIPT><!--needed for cbc mode-->
И делает новый экземпляр:
var aes = new pidCrypt.AES.CBC();
После этого я получаю ошибку:
ReferenceError: byteArray2String не определено
this.params.salt = byteArray2String (getRandomBytes (8)). convertToHex ();
pidcrypt.js (строка 93, столбец 5)
Та же проблема, если я запускаю тестовый файл, упакованный с библиотекой (test_aes-cbc.html)
Sloution:
Я был исправлен таким образом:
Удалить из pidcrypt.js:
line 93: this.params.salt = byteArray2String(getRandomBytes(8)).convertToHex();
Добавьте к pidcrypt.js:
line 93: this.params.salt = pidCryptUtil.byteArray2String(getRandomBytes(8));
line 94: this.params.salt = pidCryptUtil.convertToHex(this.params.salt);
Если у кого-то есть дополнительная информация / примечания к этому редактированию, пожалуйста, оставьте комментарий.