`

MD5工具类s ^_^

 
阅读更多

转自:

http://topic.csdn.net/u/20100802/19/68f750ad-edad-4d36-95f5-2d6442c2cd85.html

http://blog.sina.com.cn/s/blog_02b6f23d0100d3mm.html

选择其中一个足矣,我选择其中一个修改后供日常使用.

/**
 * 用于对字符串进行MD5加密的工具类
 */
public class MD5Util {

	private MessageDigest md5 = null;
	private StringBuffer digestBuffer = null;
	private static MD5Util instance = new MD5Util();

	private MD5Util() {
		try {
			md5 = MessageDigest.getInstance("MD5");
		} catch (NoSuchAlgorithmException e) {
			e.printStackTrace();
		}
		digestBuffer = new StringBuffer();
	}

	/** 得到工具类的实例 */
	public static MD5Util getInstance() {
		return instance;
	}

	/**
	 * 接收字符串得到根据MD5加密后的字符串
	 * 
	 * @param 需要加密的字符串
	 * @return 返回加密后的字符串
	 */
	public String getMD5String(String s) {
		if (md5 != null) {
			digestBuffer.setLength(0);
			byte abyte0[] = md5.digest(s.getBytes());
			for (int i = 0; i < abyte0.length; i++)
				digestBuffer.append(toHex(abyte0[i]));
		}
		return digestBuffer.toString();
	}

	private String toHex(byte one) {
		String HEX = "0123456789ABCDEF";
		char[] result = new char[2];
		result[0] = HEX.charAt((one & 0xf0) >> 4);
		result[1] = HEX.charAt(one & 0x0f);
		String mm = new String(result);
		return mm;
	}
}


分享到:
评论

相关推荐

    JavaMD5加密工具类

    JavaMD5加密工具类 algorithm = MessageDigest.getInstance("MD5"); algorithm.reset(); algorithm.update(s.getBytes("UTF-8")); byte[] messageDigest = algorithm.digest(); return messageDigest;

    MFC获取MD5

    sprintf_s(&md5String[i * 2], 3, "%02x", md5Digest[i]); } md5String[32] = '\0'; // 现在md5String包含了MD5摘要的字符串形式 ``` 6. **关闭文件**:计算完成后,别忘了关闭文件。 通过上述步骤,你可以在...

    Jmeter对接口测试入参实现MD5加密

    vars.put("password_md5", password_md5); ``` 这段脚本导入了`DigestUtils`类,并使用`md5Hex`方法对原始密码进行MD5加密,然后将结果存入变量`password_md5`。 3. 在请求参数中引用`password_md5`变量,发送...

    MD5.rar_md5 visual basic

    8. **调试与测试**:在开发过程中,你可以使用在线MD5校验工具或第三方库生成的哈希值进行比对,确保你的VB程序正确实现了MD5功能。 总之,"MD5.rar_md5 visual basic"这个压缩包可能包含了Visual Basic实现MD5加密...

    MD5加密和SHA1加密 c/s

    在提供的文件"Hash"中,可能包含了关于如何在C/S环境中实现MD5和SHA1加密的代码示例或者工具。这些资源可以帮助开发者快速集成加密功能,以满足应用程序的安全需求。为了进一步提高安全性,开发者还需要考虑加盐...

    MD5值校验工具.rar

    2. **安装和运行MD5校验工具**:你可以下载并安装MD5值校验工具,例如"MD5值校验工具.rar"中的应用。解压缩RAR文件后,运行该工具。 3. **选择文件**:在打开的工具界面中,通常有一个“添加文件”或“浏览”按钮,...

    散列函数MD5代码

    例如,如果你有一个字符串`s`,你可以通过`md5(s)`来计算它的MD5值。如果要处理的是文件,可以直接传递文件路径,如`md5('filename.ext')`。 在提供的压缩包中,"MD5散列函数的MATLAB代码"可能包含了自定义的MD5...

    md5算法java

    - `java.security.MessageDigest`:用于获取MD5摘要的类。 - `java.security.NoSuchAlgorithmException`:如果指定的算法名称无法找到,则会抛出此异常。 2. **定义MD5方法**: - 方法接收一个字符串参数`s`,...

    C#MD5加密函数

    ### C# MD5加密函数详解 #### 一、概述 在现代软件开发中,数据安全性变得尤为重要,尤其是在处理用户敏感信息时。...尽管MD5在某些方面存在局限性,但它仍然是处理轻度安全需求的一个有效工具。

    基于QT设计的MD5计算器应用

    总的来说,基于QT设计的MD5计算器应用结合了QT框架的强大功能和MD5算法的安全特性,为用户提供了一个简单易用的工具,以可视化的方式处理MD5哈希计算任务。通过学习和参考此类项目,开发者可以深入理解QT的GUI编程和...

    MD.rar_matlab_md

    Matlab有专门针对这类问题的求解器,如ode15s(基于牛顿-拉弗森方法的变步长龙格-库塔方法)和ode23s(二阶Radau IIA方法)。 6. ** 微分方程组**:Matlab可以通过向量化的形式处理多个微分方程,例如,`dydt = f(t...

    SSS_6691_U3S_MP_V2159.

    下载后,使用MD5或SHA校验工具检查文件的完整性,以确保文件未在传输过程中损坏。 3. **解压与准备**:将压缩包解压,一般会得到一个或多个文件,如固件文件(.bin, .img等)、升级工具或额外的配置文件。 4. **...

    md5,base64,Tool

    本资源包"md5,base64,Tool"提供了一些实用的工具类,主要用于Base64转码、解码以及MD5加密和验证数据非空等功能。下面将详细讲解这两个关键概念及其在实际开发中的应用。 1. **Base64编码与解码** Base64是一种...

    MD5计算在Java中的实现.doc

    - `MD5(String s)`:此构造器用于计算字符串的MD5值。首先将字符串编码为UTF-8的字节数组,然后执行相同的过程。 5. **异常处理**:代码中使用了`try-catch`块来处理可能出现的异常,如`FileNotFoundException`、`...

    杂凑算法MD5的C++实现

    通常会定义一个MD5类,包含一个内部结构来存储中间结果,以及一系列方法来执行预处理、主循环和最终摘要的计算。实现时,可以利用位运算、异或操作和循环移位等技术。同时,为了处理不同长度的输入数据,可能需要...

    tensorflow笔记

    - `hash_function`: 可选参数,用于指定哈希函数,默认为Python内置的`hash`函数,也可以选择`'md5'`。 4. **pad_sequences**: - **函数定义**: ```python from keras.preprocessing.sequence import pad_...

    JavaWeb相关的工具类、Java资源

    在JavaWeb开发中,工具类和资源是项目中不可或缺的部分,它们帮助开发者提高效率,简化复杂的操作,并且提供了一种标准化的方式来处理常见的编程任务。在这个压缩包“m-long-fei-master”中,我们可以预见到一些与...

    VC++ 字符串String MD5计算小工具 VS2008工程

    在这个小工具中,`CMd5A`类可能是一个自定义的MD5实现,它封装了MD5算法的核心逻辑。MD5算法的基本步骤包括初始化、更新、最终化三个阶段,通过一系列位操作和异或运算对输入数据进行处理,最终生成128位的摘要。 ...

    PyPI 官网下载 | d8s_utility-0.8.0.tar.gz

    `d8s_utility`库可能提供了特定的工具或功能,例如数据处理、数学计算、网络通信等,但具体的功能需要查看其官方文档或源代码才能得知。使用这样的库,开发者可以避免重复造轮子,提高开发效率。 **Python包的安装*...

    在JSP中如何实现MD5加密的方法

    文章中提及的S11-S44静态常量实际上构成了MD5算法中的一个关键部分,这部分定义了算法在变换信息时的一些固定参数。这些参数定义了MD5算法内部的四轮循环计算,每一轮使用不同的逻辑函数和不同的步骤数来处理输入...

Global site tag (gtag.js) - Google Analytics