JavaMD5加密

Java实现MD5加密

什么是MD5:

MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。

使用方法:

1、引入maven坐标,导入相应的包

在pom.xml中引入包的坐标


		    commons-codec
		    commons-codec
		    1.14
		
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();
		}
	}

所得到的结果:在这里插入图片描述
因为我们使用的是没有密钥的加密方式,所以安全性比较低。
JavaMD5加密_第1张图片
所以在一些在线解密的网站就可以破解,因此我们需要使用加密钥的方法

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();
		}
	}

得到的结果
在这里插入图片描述
我们再去查找
JavaMD5加密_第2张图片
我们可以看到,虽然查到,但是要比不带密钥的安全性高一些。

你可能感兴趣的:(JavaMD5加密)