常见的加密和解密——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);  } }  

版权声明:

作者: freeclashnode

链接: https://www.freeclashnode.com/news/article-3804.htm

来源: FreeClashNode

文章版权归作者所有,未经允许请勿转载。

免费节点实时更新

热门文章

最新文章

归档