`
csuliunian
  • 浏览: 69028 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

java中简单实现MD5加密

阅读更多
  程序加密的需要,自己找了点java加密的资料,做了简单的例子去学习了一下。由于刚刚学习,很多地方还没有深入理解,只是先用着。。。,有什么地方不对,请大家指出来,小弟我表示谢谢啦....(使用到的jar包可以到这里下载)
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

import org.apache.commons.codec.digest.DigestUtils;//开发的jar包 使用更方便
public class MD5 {
	
	/*
	 * 1.一个运用基本类的实例
	 * MessageDigest 对象开始被初始化。该对象通过使用 update 方法处理数据。
	 * 任何时候都可以调用 reset 方法重置摘要。
	 * 一旦所有需要更新的数据都已经被更新了,应该调用 digest 方法之一完成哈希计算。
	 * 对于给定数量的更新数据,digest 方法只能被调用一次。
	 * 在调用 digest 之后,MessageDigest 对象被重新设置成其初始状态。 
	 */
	public void encrypByMd5(String context) {
		try {
			MessageDigest md = MessageDigest.getInstance("MD5");
			md.update(context.getBytes());//update处理
			byte [] encryContext = md.digest();//调用该方法完成计算

			int i;
		    StringBuffer buf = new StringBuffer("");
		    for (int offset = 0; offset < encryContext.length; offset++) {//做相应的转化(十六进制)
		    	i = encryContext[offset];
		    	if (i < 0) i += 256;
		    	if (i < 16) buf.append("0");
		    	buf.append(Integer.toHexString(i));
		   }
		   System.out.println("32result: " + buf.toString());// 32位的加密
		   System.out.println("16result: " + buf.toString().substring(8, 24));// 16位的加密
		} catch (NoSuchAlgorithmException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	/*
	 * 2.使用开发的jar直接应用
	 *	使用外部的jar包中的类:import org.apache.commons.codec.digest.DigestUtils;
	 *  对上面内容的一个封装使用方便
	 */
	public void encrypByMd5Jar(String context) {
		String md5Str = DigestUtils.md5Hex(context);
		System.out.println("32result: " + md5Str);		
	}

	public static void main(String[] args) {
		MD5 md5 = new MD5();
		md5.encrypByMd5("yang");
		md5.encrypByMd5Jar("yang");
	}
}
2
3
分享到:
评论

相关推荐

    md5加密java写法轻松实现md5让你学会加密,会的可以给点建议,不会的可以借鉴,大家讨论加密!很方便的使用!

    md5加密java写法轻松实现md5让你学会加密,会的可以给点建议,不会的可以借鉴,大家讨论加密!很方便的使用!

    java实现md5 加密解密

    java实现md5 加密解密(在网络中MD5是著名的不可逆算法,但是如果知道MD5的加密的字符串 则可以通过自己的加密算法对明文进行加密,对加密后的密文与字符串匹配; 匹配成功,表示找到明文;但是此程序的时间耗费较高!仅...

    java Md5加密方法 java Md5加密方法 java Md5加密方法

    java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密...

    C#md5加密对应Java-md5加密

    C# MD5加密类型支持:1-16位的加密;2-32位加密;3:base64加密对应JAVA md5 16位的加密;2-32位加密;3:base64加密

    Java中实现Md5(32位)加密

    Java中实现Md5(32位)加密,此资源下载后可直接在程序中使用

    java Md5加密方法 java Md5加密方法

    java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法...

    JAVA_对文件MD5加密

    通过对上述代码的分析,我们可以清楚地了解到如何在Java中实现文件的MD5加密功能。这种方法不仅可以用于验证文件的一致性,还可以用于简单场景下的数据校验。尽管MD5存在一定的安全风险,但在非敏感信息处理方面仍然...

    java实现MD5加密算法

    在Java中实现MD5加密算法主要涉及以下几个知识点: 1. **MD5的基本原理**:MD5是一种单向哈希函数,它的主要特点是快速、高效,并且对于输入数据的微小改变会产生显著不同的输出。尽管MD5已经不再被认为是安全的,...

    java实现MD5加密解密算法

    java实现MD5加密解密算法,java源代码~

    java常用类-MD5加密与DES加密解密

    java中常用的工具类,用于MD5的加密,里面还有切割了MD5加密的长度,有DES加密与解密,并且配有main函数可测试,可以根据自己的实际情况使用main函数测试使用

    java实现MD5加密方法

    java 实现 MD5 加密 方法,java 实现 MD5 加密 方法,java 实现 MD5 加密 方法。

    JAVA的hex_md5加密

    java中的MD532位加密。将java类放入项目中,使用encrypByMd5静态方法即可生成hex_md5 32位加密的字符串。

    java 实现文件MD5 加密比较,防止上传重复文件

    这个类可以实现,java语言下通过对上传文件进行MD5加密,然后将加密值与原来上传的文件加密值进行对比,防止上传重复文件。

    java实现MD5加密Demo

    java简单实现MD5加密demo,精简很多,一键生成MD5数据

    Java实现MD5加密解密

    Java实现MD5加密以及解密,附带测试类,具体见代码。 Java实现MD5加密以及解密,附带测试类,具体见代码。 Java实现MD5加密以及解密,附带测试类,具体见代码。 Java实现MD5加密以及解密,附带测试类,具体见代码。

    基于JAVA的MD5加密解密实现

    纯JAVA的MD5加密,利用MD5单向函数产生密钥,方便测试

    java实现Md5加盐加密算法

    对接接口时用到的一种常用加密算法,常用于验证签名,使用shiro-all-1.4.1.jar,可自行下载

    实现MD5加密java文件

    实现MD5加密java文件

    Excel的MD5加密的2种实现方式

    在提供的压缩包文件中,`md5宏.xla`可能包含了一个宏的实现,而`MD5加密2种方式.xlsx`则可能是包含VBA函数或者演示如何使用VBA函数进行MD5加密的Excel工作簿。为了安全起见,使用外部来源的宏时应谨慎,确保其来源...

    MD5加密demo

    自封装的jar包可能是作者为了方便其他人使用而打包的,包含了MD5加密的所有功能,用户可以直接导入到自己的项目中,无需关心内部实现细节。 6. **使用MD5加密的步骤**: - 初始化`MessageDigest`对象,指定算法为...

Global site tag (gtag.js) - Google Analytics