//3DES算法,CBC模式無填充方式解密過程html
public static String decryptMode( byte[] src) throws Exception {
String decryptByte = null;
final String keyBase64 = "Base64編碼後的key";
final String ivBase64 = "Base64編碼後的iv向量";
byte[] keybyte = getFromBASE64(keyBase64);
byte[] ivbyte = getFromBASE64(ivBase64);
SecureRandom sr = new SecureRandom();
DESedeKeySpec dks = new DESedeKeySpec(keybyte);
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede");
SecretKey securekey = keyFactory.generateSecret(dks);
IvParameterSpec iv = new IvParameterSpec(ivbyte);
Cipher cipher = Cipher.getInstance("DESede/CBC/NoPadding");
cipher.init(Cipher.DECRYPT_MODE, securekey, iv);
decryptByte = new String(cipher.doFinal(src),"UTF-8");
return decryptByte;
}
// 將 BASE64 編碼的字符串s 進行解碼
public static byte[] getFromBASE64(String s) throws Exception {
return (new BASE64Decoder()).decodeBuffer(s);
}算法