代码参考:
/**
* BASE64加密
*
* @param key
* @return
* @throws Exception
*/
public static String encryptBASE64(byte[] key) throws Exception {
return (new BASE64Encoder()).encodeBuffer(key);
}
/**
* MD5加密
*
* @param data
* @return
* @throws Exception
*/
public static byte[] encryptMD5(byte[] data) throws Exception {
MessageDigest md5 = MessageDigest.getInstance(KEY_MD5);
md5.update(data);
return md5.digest();
}
/**
* SHA加密
*
* @param data
* @return
* @throws Exception
*/
public static byte[] encryptSHA(byte[] data) throws Exception {
MessageDigest sha = MessageDigest.getInstance(KEY_SHA);
sha.update(data);
return sha.digest();
}
}
/**
* 初始化HMAC密钥
*
* @return
* @throws Exception
*/
public static String initMacKey() throws Exception {
KeyGenerator keyGenerator = KeyGenerator.getInstance(KEY_MAC);
SecretKey secretKey = keyGenerator.generateKey();
return encryptBASE64(secretKey.getEncoded());
}
/**
* HMAC加密
*
* @param data
* @param key
* @return
* @throws Exception
*/
public static byte[] encryptHMAC(byte[] data, String key) throws Exception {
SecretKey secretKey = new SecretKeySpec(decryptBASE64(key), KEY_MAC);
Mac mac = Mac.getInstance(secretKey.getAlgorithm());
mac.init(secretKey);
return mac.doFinal(data);
}
java简单加密代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java加密的几种方法、java简单加密代码的信息别忘了在本站进行查找喔 。
推荐阅读
- ios市场需求大减,ios市场需求大减什么意思
- 电脑页面显示在底部怎么办,电脑桌面显示在下面怎么回事
- 鸿蒙系统gba模拟器,鸿蒙 模拟器
- 电脑怎么装两个MySQL 电脑怎么装两个固态硬盘
- js获取界面input,js获取input的内容
- flutter项目前端编程,flutter前端开发
- 模拟建造3游戏名称大全,模拟建造3合集
- vb.net小数点计算器 vba计算器
- java里四种变量代码,java里四种变量代码有哪些