我正在使用DES来加密某个String s1
。
将s1
加密到byte[] b1
后,我想将其另存为String s2
。
但是,当我尝试将s2
转回byte[] b2
并将其解密为原始String s1
时,会发生错误:
javax.crypto.IllegalBlockSizeException:使用填充密码解密时,输入长度必须是8的倍数
CipherTest ct = new CipherTest();
byte[] encoded = ct.encrypt(str, key);
String s1 = new String(encoded);
byte[] b1 = s1.getBytes();
String decoded=ct.decrypt(b1, key);