`
qiuguo0205
  • 浏览: 242460 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java 的 MD5编码处理

    博客分类:
  • java
阅读更多

当需要对一个大文件计算MD5校验和时,JDK提供的方法速度是非常快的,甚至比操作系统提供的本地工具还要快。详情可以查看这个链接 http://www.twmacinta.com/myjava/fast_md5.php

 

这里有一个简单的示例,来自 http://www.javalobby.org/java/forums/t84420.html:

public static void main(String[] args) throws NoSuchAlgorithmException, FileNotFoundException {
	MessageDigest digest = MessageDigest.getInstance("MD5");
	File f = new File("c:\\myfile.txt");
	InputStream is = new FileInputStream(f);				
	byte[] buffer = new byte[8192];
	int read = 0;
	try {
		while( (read = is.read(buffer)) > 0) {
			digest.update(buffer, 0, read);
		}		
		byte[] md5sum = digest.digest();
		BigInteger bigInt = new BigInteger(1, md5sum);
		String output = bigInt.toString(16);
		System.out.println("MD5: " + output);
	}
	catch(IOException e) {
		throw new RuntimeException("Unable to process file for MD5", e);
	}
	finally {
		try {
			is.close();
		}
		catch(IOException e) {
			throw new RuntimeException("Unable to close input stream for MD5 calculation", e);
		}
	}		
}
 

如果需要对一个较短字符串进行处理,只要使用String的getBytes方法即可

分享到:
评论

相关推荐

    JAVA代码实现MD5编码

    在JAVA中实现MD5编码通常是为了数据校验、密码存储等目的,因为MD5能将数据转化为不可逆的128位(16字节)散列值,通常以32位的十六进制字符串表示。在此,我们将深入探讨如何在Java中不依赖任何第三方API来实现MD5...

    使用 Java 生成 MD5 编码

    本篇文章将详细探讨如何在 Java 中生成 MD5 编码,以及其相关知识点。 MD5 是一种广泛使用的哈希函数,它能够将任意长度的输入(也叫做预映射或消息)转化为固定长度的输出,通常是一个 128 位的二进制数,通常用 ...

    MD5工具类(可设置编码和指定长度)

    - `md5(请删除括号内容-可设置编码).java`:这个文件可能提供了一个MD5工具类,允许用户自定义编码方式,比如可以选择UTF-8、GBK等,以便正确处理包含非ASCII字符的字符串。 - `MD5(请删除括号内容-可生成指定...

    java md5编码。

    java md5编码,主要用于对密码进行加密等工作。

    解决java 与C# MD5 不一致问题 代码

    ### 解决Java与C# MD5不一致问题 在软件开发过程中,经常需要对数据进行加密处理以确保数据的安全性和一致性。MD5是一种常用的哈希算法,被广泛应用于各种场景中,如密码加密、文件校验等。但在跨平台或多语言环境...

    Java MD5加密工具类(支持多参数输入)

    Java工具类,它不仅实现了MD5加密,更创新性地接纳String... inputStrs,让你能一次性加密多个字符串。 1. 一键加密,多值无忧 告别繁杂,拥抱简洁。我们的Java MD5加密工具类以String... inputStrs为武器,打破了...

    MD5编码、MD5加密解密demo

    在编程实践中,MD5的实现通常涉及特定的库函数,例如在Python中可以使用`hashlib`库,Java中可以使用`java.security.MessageDigest`类,JavaScript中则有`crypto`模块。这些库提供了简单的API,让开发者能够方便地...

    MD5的JAVA实现代码

    这个MD5实现虽然没有使用Java的`MessageDigest`类,但仍然遵循了MD5算法的基本步骤,包括初始化、分块处理、循环计算和最终摘要的生成。由于没有使用可视化控件,它是一个命令行程序,适合学习和理解MD5算法的内部...

    JAVA与C#一致的32位MD5加密方法

    标题中的“JAVA与C#一致的32位MD5加密方法”指的是在Java和C#这两种编程语言中实现相同32位MD5哈希的过程。由于MD5算法本身是标准的,理论上在任何支持MD5的编程语言中都应该得到相同的输出,不论是在Java还是C#中。...

    java的MD5算法

    ### Java中的MD5算法 #### 一、简介 在计算机科学领域中,MD5(Message-Digest Algorithm 5)是一种广泛使用的散列函数,能够将任意长度的数据转换为固定长度的128位(16字节)哈希值。由于其独特的特性,MD5被...

    md5java代码+md5工具

    首先,让我们来看看`GetMD5.java`文件可能涉及的Java MD5编码实现。在Java中,我们通常使用`java.security.MessageDigest`类来计算MD5哈希值。以下是一个简单的MD5编码示例: ```java import java.security....

    JAVA中MD5加密

    这段代码首先获取MD5算法的`MessageDigest`实例,然后对输入字符串进行字节编码,接着调用`digest()`方法计算哈希值。计算得到的字节数组转换为16进制字符串,便于人类阅读和比较。 在网页传输中,服务器在发送数据...

    JS 生成MD5值和JAVA生成MD5值,自己测试过很好用

    无论是JavaScript还是Java,只要遵循正确的编码和处理规则,两者都能生成一致的MD5摘要,从而确保数据的一致性。在实际应用中,我们应确保所有涉及MD5计算的部分都进行充分的测试,确保在不同环境下的一致性。

    md5 java 代码

    它不仅展示了如何利用Java标准库中的`MessageDigest`类来计算MD5值,还展示了如何处理字节和十六进制之间的转换,以及如何处理潜在的异常情况。这种MD5加密方法在实际开发中非常实用,可以应用于用户密码存储、数据...

    MD5加密程序java代码.rar_MD5 JAVA_java md5_md5

    在这个例子中,我们首先获取`MessageDigest`实例,然后对输入字符串进行UTF-8编码并计算MD5摘要。最后,我们将得到的字节数组转换为16进制字符串进行打印。 在实际应用中,MD5通常用于校验文件的完整性。例如,当你...

    java调用MD5加密方式计算摘要值(有界面)

    然后,我们对输入字符串进行字节编码,并传递给`digest()`方法进行MD5计算。计算结果是字节数组,我们将其转换为16进制字符串以便于查看和比较。 在实际应用中,MD5常用于密码存储,但需要注意的是,由于MD5的安全...

    MD5-java版

    4. 使用`update()`方法将数据分块加入到MD5处理中,最后调用`digest()`获取结果: ```java md.update(bytes); byte[] digestBytes = md.digest(); ``` 5. 将得到的字节数组转换为16进制字符串。因为每个字节是8...

    Java_MD5加密工具类

    3. **MD5编码**:对输入的原始字符串进行MD5加密处理,并返回加密后的结果。 #### 三、代码解析 ##### 1. 转换字节数组为16进制字符串 ```java public static String byteArrayToHexString(byte[] b) { ...

    asp md5 与 java md5 互通

    4. **异常处理**:在Java中,`MessageDigest.getInstance("MD5")`可能会抛出`NoSuchAlgorithmException`,需要妥善处理。 5. **库的版本**:虽然不同版本的库可能会影响哈希结果,但MD5作为标准算法,其结果应该是...

Global site tag (gtag.js) - Google Analytics