package com.a.a;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
* MD5加密算法
*/
public class Md5Encrypt {
/**
* 对字符串进行MD5加密
* @param text 明文
* @return 密文
*/
public static String md5(String text) {
MessageDigest msgDigest = null;
try {
msgDigest = MessageDigest.getInstance("MD5");
} catch (NoSuchAlgorithmException e) {
throw new IllegalStateException("System doesn't support MD5 algorithm.");
}
msgDigest.update(text.getBytes());
byte[] bytes = msgDigest.digest();
byte tb;
char low;
char high;
char tmpChar;
String md5Str = new String();
for (int i = 0; i < bytes.length; i++) {
tb = bytes[i];
tmpChar = (char) ((tb >>> 4) & 0x000f);
if (tmpChar >= 10) {
high = (char) (('a' + tmpChar) - 10);
} else {
high = (char) ('0' + tmpChar);
}
md5Str += high;
tmpChar = (char) (tb & 0x000f);
if (tmpChar >= 10) {
low = (char) (('a' + tmpChar) - 10);
} else {
low = (char) ('0' + tmpChar);
}
md5Str += low;
}
return md5Str;
}
public static void main(String[] args) {
String paseword="paseword";
System.out.println(paseword=Md5Encrypt.md5("xunhai"+paseword));
}
}
分享到:
相关推荐
### MD5加密算法详解 #### 一、MD5算法简介 MD5(Message-Digest Algorithm 5)是一种广泛使用的散列函数,它能够接收任意长度的信息,并产生一个128位(16字节)的散列值。该算法由Ron Rivest在1991年设计,作为...
md5加密算法 C语言(经过测试验证完整版) 经过调试验证,与工具结果一致 MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash...
在C++中实现MD5加密算法,通常包括以下几个步骤: 1. **初始化MD5状态**: 创建一个128位的缓冲区,用于存储中间结果,初始化为一组固定的常量。 2. **处理输入数据**: 将输入的明文数据按照512位的块进行处理。...
VBA MD5加密 算法
在VB6.0中实现MD5加密算法,主要是为了确保数据的完整性和不可篡改性,比如在存储密码、数字签名等方面有重要作用。 在VB6.0中实现MD5加密,通常需要调用Windows API函数,因为VB6.0本身并不直接支持MD5。Windows ...
md5加密算法源码: 一 \md5加密是对字符或密码进行的16位或32位等加密方式! 一般在普通MDB数据库经常用到,比如论坛数据库等.有用! 二 \加密解密并不矛盾,比如银行系统的128位加密现在谁可以轻易破的了呢? 虽然md5...
总的来说,MD5加密算法在C++中的实现涉及到哈希函数的理解、位操作和循环结构的运用,以及可能的第三方库的集成。理解MD5的工作原理,结合C++编程技巧,可以有效地实现和应用这一重要的信息安全工具。
总结,Java实现MD5加密算法主要是通过`java.security.MessageDigest`类,经过`getInstance("MD5")`获取MD5实例,然后使用`digest()`和`update()`方法处理数据,最终将二进制摘要转换为十六进制字符串。尽管MD5的安全...
在给定的"MD5加密算法源码"中,你可能会看到以下结构: 1. **初始化**: 使用一组预定义的常量初始化四个32位的中间结果寄存器A、B、C和D。 2. **处理消息块**: MD5处理的是512位的消息块,将消息块分为16个32位的...
加密算法_使用C++来实现md5加密算法
MD5加密算法的VB6.0类模块实例 MD5加密算法是目前广泛使用的一种加密算法,主要用于数据完整性和身份验证。VB6.0是微软公司开发的一种编程语言,广泛应用于Windows操作系统的开发中。该类模块实例将MD5加密算法与VB...
在给定的压缩包中,`MD5.cpp` 和 `MD5.h` 文件是实现MD5加密算法的源代码。`MD5.cpp` 文件包含了MD5算法的具体实现,可能包括了MD5的初始化、更新、最终化等核心步骤。而 `MD5.h` 文件则可能定义了相关的类或函数...
相信网站用上这个MD5加密算法函数会更加的安全。 没啥技术含量,大家见笑了。 可指定加密次数,经简单变异后的MD5加密算法。 '作用:更加安全,cmd5.com这样的网站破解不了。 '原理:置换了网上流传的md5加密算法...
在学习MD5加密算法时,理解其内部工作原理和代码实现至关重要。同时,应该了解MD5的局限性和安全性问题,以便在实际应用中做出适当的决策。对于密码存储,更推荐使用SHA-256或更安全的散列函数。在文件完整性校验...