我需要在GWT客户端文件中执行三重DES加密,并且需要在JavaScript中对加密的字符串进行解密。我已经在GWT中使用了TripleDesCipher,但是在使用crypto-js在JavaScript中进行解密时,却收到了空白字符串。以下是我的GWT代码。
TripleDesCipher cipher = new TripleDesCipher();
String enc ="";
String key = "579D2D852F2F3BABABBD71B7";
cipher.setKey(key.getBytes());
try {
enc = cipher.encrypt(String.valueOf(value));
} catch (DataLengthException e1) {
e1.printStackTrace();
} catch (IllegalStateException e1) {
e1.printStackTrace();
} catch (InvalidCipherTextException e1) {
e1.printStackTrace();
}
以下是我用于解密的JavaScript代码。
var encrypted = urlParams.get('id');
var base64String = encrypted.toString();
alert(base64String);
var key = "579D2D852F2F3BABABBD71B";
var decrypted =
CryptoJS.TripleDES.decrypt(base64String,key);
console.log("DES3 decrypted text:"+ decrypted.toString(CryptoJS.enc.Utf8));