我是加密新手。我希望能够将Perl中的字符串加密为十六进制,并将十六进制解密回Javascript中的原始字符串,然后在我的网页上显示未加密的字符串。我对Perl很好,但对Javascript不太好。
字符串使用Perl加密,如下所示:
my $cipher = Crypt::CBC->new(
-key => $Key,
-keylength => 256,
-cipher => 'Crypt::OpenSSL::AES',
);
my $hex = $cipher->encrypt_hex( 'String to encrypt' );
十六进制字符串显示在HTML表格单元格中。我想解密十六进制字符串并在其位置显示未加密的字符串。这是我使用的Javascript,使用CryptoJS:
var keyfield = document.getElementById("key");
var keyvalue = keyfield.value; // entered in textfield
td = document.getElementById( elementid );
var tdparsed = CryptoJS.enc.Hex.parse( td.innerHTML );
var decrypted = CryptoJS.AES.decrypt( tdparsed, keyvalue );
td.innerHTML = decrypted.toString( CryptoJS.enc.utf8 );
td.innerHTML看起来是空的。
提前感谢您的帮助。