今天项目中有个登陆业务,要求用到MD5加密技术,回家百度到处看了看,都是一些长篇大论,干脆打开JDK文档开始看MessageDigest类的用法,结果其实很简单,这里我做了一个简单示例以供大家参考:
package com.test.md5;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Md5Tset {
/**
* 将字符串通过MD5加密
* @param str
* @return
*/
public static String encodeStr(String str){
byte[] strByte = str.getBytes();
MessageDigest md = null;
try {
md = MessageDigest.getInstance("MD5");
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
md.update(strByte);
byte[] newByte = md.digest();
StringBuilder sb = new StringBuilder();
//转换为16进制
for (int i = 0; i < newByte.length; i++) {
if ((newByte[i] & 0xff) < 0x10) {
sb.append("0");
}
sb.append(Long.toString(newByte[i] & 0xff, 16));
}
return sb.toString();
}
/**
* 测试
* @param args
*/
public static void main(String[] args) {
System.out.println("abc after by MD5 encryption: "+Md5Tset.encodeStr("abc"));
}
}
其实实现起来比较简单,主要是网上写的太多不容易阅读,这里给出一个简洁版以供大家参考!
分享到:
相关推荐
通过上述分析,我们可以看到Java中使用MessageDigest实现MD5加密的基本过程。这种方法简洁高效,适合用于简单的应用场景。然而,在涉及敏感数据或高安全性的场景下,应考虑采用更强大的加密算法以提高系统的安全性。
在这个场景下,我们探讨如何在JSP中实现MD5加密。 首先,MD5加密的核心在于`java.security.MessageDigest`类,这个类提供了计算消息摘要的方法。以下是一个简单的MD5加密的Java类示例: ```java import java....
在批处理文件中,可能使用了Java的命令行工具`javac`来编译源代码,并用`java`命令运行生成的类文件,实现MD5加密功能。用户只需提供待加密的字符串,批处理文件将自动调用Java程序计算MD5值并显示结果。 总的来说...
这个"MD5加密demo"包含了一些关键组件,帮助我们理解和实现MD5加密。 1. **MD5的原理与应用**: MD5设计的目标是让信息在经过哈希处理后,即使是微小的改动也会导致输出摘要的巨大变化,从而确保信息的完整性。它...
MD5加密jar包是将MD5算法封装到Java程序中的库,方便开发者在Java应用中快速实现MD5加密功能。 MD5的特点: 1. **不可逆性**:MD5算法是单向的,即给定一个输入,可以得到一个固定长度的摘要,但不能通过摘要反推出...
首先,你需要在代码中引入`java.security.MessageDigest`包,这是实现MD5加密的基础。 ```java import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; ``` #### 2. 创建MD5加密类 ...
在Java中,可以使用`java.security.MessageDigest`类来实现MD5加密。首先创建`MessageDigest`实例,然后调用`digest()`方法对数据进行加密。例如: ```java import java.security.MessageDigest; import java....
在Java中实现MD5加密通常涉及以下步骤: 1. 引入库:Java标准库提供`java.security.MessageDigest`类来处理各种哈希算法,包括MD5。无需额外导入第三方库。 2. 初始化MD5实例:通过`MessageDigest.getInstance("MD...
在Android中,我们可以使用Java内置的`java.security.MessageDigest`类来实现MD5加密。以下是一个简单的MD5加密步骤: 1. 创建`MessageDigest`实例,指定算法为MD5。 ```java MessageDigest md = MessageDigest....
纯JAVA的MD5加密,利用MD5单向函数产生密钥,方便测试
在提供的"md5-demo"文件中,可能包含的是一段示例代码,用于演示如何在编程环境中实现MD5编码。常见的应用场景可能是对用户密码进行哈希处理,存储哈希值而非明文密码,以保护用户隐私。在进行MD5编码时,会先将明文...
总的来说,MD5在Java中是一个重要的加密和校验工具,通过`MessageDigest`类可以方便地生成32位的哈希值。至于"36位MD5加密字符",这可能涉及到对原始MD5值的特殊编码或格式化,具体实现需结合源代码分析。
总结,Java实现MD5加密算法主要是通过`java.security.MessageDigest`类,经过`getInstance("MD5")`获取MD5实例,然后使用`digest()`和`update()`方法处理数据,最终将二进制摘要转换为十六进制字符串。尽管MD5的安全...
以下是一个简单的MD5加密的Java代码示例: ```java import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class MD5Util { public static String encrypt(String plain...
MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,它能够将任意...虽然在Java和Android中实现MD5加密相对简单,但由于其安全性的局限,应当避免在新系统中使用MD5进行密码加密,而是选择更安全的哈希算法。
1. **MD5加密jar包**:这些预编译的库可能包含了实现MD5加密功能的Java类和方法,比如`java.security.MessageDigest`类的使用,它可以用来创建MD5实例并进行哈希运算。使用这些jar包,开发者可以直接调用API进行MD5...
总之,MD5加密代码实现是关于如何在编程中使用MD5算法来创建数据的不可逆摘要,以满足数据校验、简单加密或其他目的。这个主题涉及MD5的基本概念、其在不同编程语言中的应用,以及如何高效地将MD5集成到项目中。
下面我们将详细探讨如何用Java实现MD5加密,并通过实例来加深理解。 首先,MD5加密的基本原理是通过一个特定的算法,将输入的字符串转换成32位的十六进制数字。这个过程是单向的,即从原始信息到MD5摘要容易,但从...
### 实现MD5加密 #### 一、MD5算法简介 MD5(Message-Digest Algorithm 5)是一种广泛使用的散列算法,它能够将任意长度的消息压缩为一个固定长度(通常为128位)的散列值或摘要。由于其高效性和安全性,在多种...