1、使用JDK中自带的sun.misc.BASE64Encoder可以实现加密,使用sun.misc.BASE64Decoder可以实现解密。
@SuppressWarnings("restriction")
public classBASE64 {
/**
* BASE64解密
* @param key
* @return
* @throws Exception
*/
publicstatic byte[] decryptBASE64(String key) throws Exception {
return (newBASE64Decoder()).decodeBuffer(key);
}
/**
* BASE64加密
* @param key
* @return
* @throws Exception
*/
publicstatic String encryptBASE64(byte[] key) throws Exception {
return (newBASE64Encoder()).encodeBuffer(key);
}
}
2、在使用如上BASE64类进行加解密的过程中可以指定对应的编码集,加解密的字符集一致才能确保前后的字符串一致。
a、加密:String encode = BASE64.encryptBASE64(要加密的字符串.getBytes("UTF-8"));
b、解密:String decode = new String(BASE64.decryptBASE64(已加密的字符串),"UTF-8");