龙空技术网

常见的加密和解密——MD5

平凡动漫 530

前言:

今天各位老铁们对“apache官网md5”大致比较注意,我们都需要了解一些“apache官网md5”的相关知识。那么小编也在网上搜集了一些关于“apache官网md5””的相关文章,希望大家能喜欢,朋友们快快来学习一下吧!

MD5

作用:1、通常用来加密密码等 2、还可以验证一个数据的完整性

特点:

1、结果是唯一的 ,只要一个字节不一样,结果不一样

2、不可逆的

3、任意长度的数据,计算出来的MD5的值长度都是固定的

使用

在使用的前提是导入jar包或者引入maven,我这里就引入maven

<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.3.2</version></dependency>

问:为什么要进行两次MD5加密

答:这样可以更安全,别人更不好破解

以下代码为方便复制粘贴

public class MD5Test { /** * 加密 * @param text 明文 * @param key 密钥 * @return 密文 */ public static String md5(String text,String key){ String s = DigestUtils.md5Hex(text + key); System.out.println("加密后的字符串" + s); return s; } /** * MD5验证方法 * * @param text 明文 * @param key 密钥 * @param md5 密文 * @return true/false */ public static boolean verify(String text, String key, String md5) { //根据传入的密钥进行验证 String md5Text = md5(text, key); if(md5Text.equalsIgnoreCase(md5)) { System.out.println("MD5验证通过"); return true; } return false; } public static void main(String[] args) { String text = "我是密码"; String key = "密钥"; System.out.println("第一次加密:---------"); String md5 = md5(text, key); System.out.println("第二次加密:---------"); String s = md5(md5, key); verify(md5,key,s); }}

标签: #apache官网md5