大家好,又见面了,我是你们的朋友全栈君。
Java实现MD5加密
什么是MD5:
MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。
使用方法:
1、引入maven坐标,导入相应的包
在pom.xml中引入包的坐标
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.14</version>
</dependency>
2、使用方法
// 不带秘钥加密
public static String md52(String text) throws Exception {
// 加密后的字符串
String md5str = DigestUtils.md5Hex(text);
System.out.println("MD52加密后的字符串为:" + md5str + "\t长度:" + md5str.length());
return md5str;
}
之后在main方法中进行验证
public static void main(String [] args) {
try {
md52("111111");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
所得到的结果:
因为我们使用的是没有密钥的加密方式,所以安全性比较低。
所以在一些在线解密的网站就可以激活成功教程,因此我们需要使用加密钥的方法
public static String md5(String text, String key) throws Exception {
// 加密后的字符串
String md5str = DigestUtils.md5Hex(text + key);
System.out.println("MD5加密后的字符串为:" + md5str);
return md5str;
}
之后在main方法中定义密钥,进行验证
public static void main(String [] args) {
String key = "!@#$%";
try {
md5("111111",key);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
得到的结果
我们再去查找
我们可以看到,虽然查到,但是要比不带密钥的安全性高一些。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159010.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...