package com.lenovo.lps.epub.eu.util;
import java.security.MessageDigest;
import java.util.Random;
import com.lenovo.lps.log.Log;
/**
* @author zhangdz1
*
* @Date:2010-11-26 上午09:51:59
* @Description:md5工具类,为给定的串生成32位的md5串
* @version:
*
*/
public class MD5Util {
final static Log log = Log.getInstance(MD5Util.class);
/**
* 将传入字符串做md5,返回md5后的串
* @param str
* @return
* @throws Exception
*/
public static String encryptToMD5(String str) throws Exception {
MessageDigest md5 = MessageDigest.getInstance("MD5");
md5.update(str.getBytes());
return byte2hex(md5.digest());
}
/**
* 二行制转字符串
* @param b
* @return
*/
public static String byte2hex(byte[] b) {
String hs = "";
String stmp = "";
for (int n = 0; n < b.length; n++) {
stmp = (Integer.toHexString(b[n] & 0XFF));
if (stmp.length() == 1)
hs = hs + "0" + stmp;
else
hs = hs + stmp;
if (n < b.length - 1)
hs = hs + "";
}
return hs;
}
public static void main(String args[]) {
try {
String s="ZAQAHAAAAACrZSob_liEfa4C5InVDxJh3SuIBUM30T9bHfKaEmy7MJeAhfYNIl53XMMcv8GvRREISHUym_leRUyj4Mwm87S7gD8AH0z7qv4C4YyAd3pzyV-HT9ZSy3bj06e13kQ8yhPf7xYWALCtVr7iM5cKmAtXtR3WcFBIAM2Ri_JJgvRWSyaciJy3qZpmXIwJh8xDKW0F-3Ao0ytUtewMkxr_Q80g";
System.out.println(s.length());
Random r = new Random();
int x = r.nextInt(999999);
System.out.println(x);
String str = "meiyx89";
MessageDigest md5 = MessageDigest.getInstance("MD5");
System.out.println(str);
// System.out.println(encryptToMD5(str));
System.out.println(encryptToMD5((encryptToMD5(str)+x)));
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
Java 中常用的加密算法 MD5,SHA,RSA Java 中常用的加密算法有多种,包括 MD5、SHA 和 RSA 等,这些算法在不同的应用场景中发挥着重要作用。下面将对这些算法进行详细的介绍和分析。 一、MD5 加密算法 MD5...
在本例中,我们使用名为"md5加密算法.llb"的库文件,这可能是一个包含MD5加密功能的Labview自定义库。 3. **创建VI**:在Labview中,新建一个VI,然后添加所需的控件和指示器。你需要一个字符串输入端口来接收待...
在提供的"C#加密算法MD5_RSA使用实例"压缩包中,可能包含了更详细的示例代码,如DLL库的开发和使用。DLL(动态链接库)是.NET框架下的一种代码共享机制,允许多个应用程序共享同一功能,提高代码复用。开发者可以...
Java中常用的加密算法MD5,SHA,RSA.mht
C# 常用的加密算法md5、des、rsa、aes、base、HMAC-SHA256、sha1
MD5加密算法的VB6.0类模块实例 MD5加密算法是目前广泛使用的一种加密算法,主要用于数据完整性和身份验证。VB6.0是微软公司开发的一种编程语言,广泛应用于Windows操作系统的开发中。该类模块实例将MD5加密算法与VB...
在DELPHI编程环境中,我们可以利用Pascal语言来实现MD5加密算法。 DELPHI实现MD5加密的关键在于理解MD5算法的工作原理。MD5算法主要包括四个步骤:初始化、处理消息块、计算中间结果和生成最终摘要。这四个步骤都是...
MD5 加密算法 MD5 加密算法是一种常用的单向散列函数算法,主要用于数据验证和身份验证。它可以将任意长度的数据转换为一个固定长度的结果,即消息摘要。消息摘要是一种与消息认证码结合使用以确保消息完整性的技术...
md5加密算法md5加密算法md5加密算法md5加密算法md5加密算法md5加密算法md5加密算法
## 说明 此程序可以进行sha1,sha256,md5的加密 在input输入框内输入所需加密的数据,然后点击"encryption"按扭即可实现加密; 默认input输入框内的数据为123456
在一些初始化处理后,MD5以512位分组来处理输入文本,每一分组又划分为16个32位子分组。算法的输出由四个32位分组组成,将它们级联形成一个128位散列值。 首先填充消息使其长度恰好为一个比512位的倍数仅小64位的数...
VBA MD5加密 算法
基于MD5与Base64的混合加密算法 摘要:本文介绍了一种基于MD5与Base64的混合加密算法,该算法将明文MD5加密得到32位16进制密文,然后将密文拆分成16个2位16进制数组,并转换成对应的二进制数,最后将16个二进制数组...
md5加密算法 C语言(经过测试验证完整版) 经过调试验证,与工具结果一致 MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash...
加密算法_使用C++来实现md5加密算法
在C++中实现MD5加密算法,通常包括以下几个步骤: 1. **初始化MD5状态**: 创建一个128位的缓冲区,用于存储中间结果,初始化为一组固定的常量。 2. **处理输入数据**: 将输入的明文数据按照512位的块进行处理。...