首页 > 编程语言 >Java实现MD5加密

Java实现MD5加密

时间:2022-08-29 17:44:59浏览次数:61  
标签:加密 String text key md5str Java MD5

Java实现MD5加密

1、maven 引入jar包

    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
      <version>1.14</version>
    </dependency>
   

2、代码

package com.qunar.hadoop.util;
import org.apache.commons.codec.digest.DigestUtils;
public class MD5 {
	/**
	 * @param text明文
	 * @param key密钥
	 * @return 密文
	 */
	// 带秘钥加密
	public static String md5(String text, String key) throws Exception {
		// 加密后的字符串
		String md5str = DigestUtils.md5Hex(text + key);
		System.out.println("MD5加密后的字符串为:" + md5str);
		return md5str;
	}
	// 不带秘钥加密
	public static String md52(String text) throws Exception {
		// 加密后的字符串
		String md5str = DigestUtils.md5Hex(text);
		System.out.println("MD52加密后的字符串为:" + md5str + "\t长度:" + md5str.length());
		return md5str;
	}
	/**
	 * MD5验证方法
	 * 
	 * @param text明文
	 * @param key密钥
	 * @param md5密文
	 */
	// 根据传入的密钥进行验证
	public static boolean verify(String text, String key, String md5) throws Exception {
		String md5str = md5(text, key);
		if (md5str.equalsIgnoreCase(md5)) {
			System.out.println("MD5验证通过");
			return true;
		}
		return false;
	}
	// 测试
	public static void main(String[] args) throws Exception {
		// String str =
		// "181115.041650.10.88.168.148.2665.2419425653_1";181115.040908.10.88.181.118.3013.1655327821_1
		String str = "181115.040908.10.88.181.118.3013.1655327821_1";
		System.out.println("加密的字符串:" + str + "\t长度:" + str.length());
		MD5.md52(str);
	}
}
https://blog.csdn.net/weixin_43161811/article/details/84140900 https://blog.csdn.net/weixin_43161811/article/details/84140900

标签:加密,String,text,key,md5str,Java,MD5
From: https://www.cnblogs.com/sunny3158/p/16636742.html

相关文章

  • java.lang.ArrayStoreException
    List<Object>ol=newArrayList<Object>();ol.add("aaa");/***java.lang.ArrayStoreException*java数组中包括不兼容的值抛出......
  • Java集合
    概述数组和集合的元素存储的个数问题数组定义后类型确定,长度固定集合类型可以不固定,大小是可变的数组和集合存储元素的类型问题基本类型和引用类型的数据数组都......
  • Android sqlcipher 对于加密的Sqlite库在Mac上进行解密的正确姿势
    前言:说实话我平常对于工作中的一些所经历的问题很少记录成文,基本上都是一些学习笔记,这里打算备忘一篇,由于领导的要求,最近也刚好在大重构,需要对AndroidApp中应用使用的db......
  • 力扣50(java)-Pow(x,n)(中等)
    题目:实现 pow(x,n) ,即计算x的整数 n次幂函数(即xn)。 示例1:输入:x=2.00000,n=10输出:1024.00000示例2:输入:x=2.10000,n=3输出:9.26100示例3:输入:x=2......
  • js md5 和java md5后的值不一样
         开发发现js对字符串md5和java对字符串md5计算的结果居然不一样,后来找了一个匹配的这里记录一下注:加密的对象中不能有空格,有空格md5后的结果就不一致,都是眼......
  • javascript中的constructor
    1.使用constructor   constructor是Object类型的原型属性,它能够返回当前对象的构造器(类型函数)。利用该属性,可以检测是否复合类型数据的类型,如对象,数组和函数等。v......
  • Java List集合返回值去掉中括号('[ ]')的操作
    调用StringUtils工具类的strip()方法去掉中括号"[]": 或者自己写工具类publicstaticvoidmain(String[]args){Strings="[aasa,bbbbb]";Strings......
  • Java 基础语法
    Java关键字下面列出了Java关键字。这些保留字不能用于常量、变量、和任何标识符的名称。类别关键字说明访问控制private私有的protected受保护的public......
  • JavaScript设计模式及代码实现——单例模式
    单例模式1定义保证一个类仅有一个实例,并提供一个访问它的全局访问点。2应用时机当一个类的实例被频繁使用,如果重复创建这个实例,会无端消耗资源。比如dialog弹......
  • Java11-Object类,常用API
    day11【Object类、常用API】主要内容Object类Date类DateFormat类Calendar类System类StringBuilder类包装类第一章Object类1.1概述java.lang.Object类是Java......