3

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) でパックされたテスト ファイルを起動した場合です。

ソリューション:

私はこれをそのように修正しました:

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);

誰かがこの編集に追加の情報/メモを持っている場合は、コメントを編集してください。

4

0 に答える 0