一个java实现MD5加密的类:
import java.security.MessageDigest;
public class MD5Util {
public final static String MD5(String s) {
char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
'A', 'B', 'C', 'D', 'E', 'F' };
try {
byte[] btInput = s.getBytes();
// 获得MD5摘要算法的 MessageDigest 对象
MessageDigest mdInst = MessageDigest.getInstance("MD5");
// MessageDigest mdInst = MessageDigest.getInstance("SHA-1");
// 使用指定的字节更新摘要
mdInst.update(btInput);
// 获得密文
byte[] md = mdInst.digest();
// 把密文转换成十六进制的字符串形式
int j = md.length;
char str[] = new char[j * 2];
int k = 0;
for (int i = 0; i < j; i++) {
byte byte0 = md[i];
str[k++] = hexDigits[byte0 >>> 4 & 0xf];
str[k++] = hexDigits[byte0 & 0xf];
}
return new String(str);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
public static void main(String[] args) {
System.out.println(MD5Util.MD5("zhangsongyang"));
}
}
MD5加密是不可逆的,也就是说用MD5生成密文后无法再转换成明文, MD5一般用于对文件完整性验证, 也就是说对一个文件进行MD5后生成MD5码,这个码是唯一的,如果文件有人改动过,那么在生成的MD5码就会和之前的不一样, 因此可以用来验证文件正确性。
这是本人理解,不知道对不对,希望懂得人给评价,谢谢。。。
分享到:
相关推荐
### Java_MD5加密工具类详解 #### 一、概述 在信息安全领域,数据加密是确保数据安全的重要手段之一。MD5(Message-Digest Algorithm 5)作为一种常用的散列算法,在许多场景下被用来生成固定长度的摘要信息。本文...
在Java中实现MD5加密,主要涉及`java.security.MessageDigest`类。以下是一个简单的MD5加密示例: ```java import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class MD...
java中的MD532位加密。将java类放入项目中,使用encrypByMd5静态方法即可生成hex_md5 32位加密的字符串。
在Java中,实现MD5加密通常需要使用`java.security.MessageDigest`类。下面我们将详细探讨Java中的MD5加密原理和实现步骤。 **MD5加密原理:** MD5算法是一种非对称的单向加密算法,它将任意长度的数据转化为固定...
标题:Java MD5加密算法 描述与标签:Java MD5加密算法 知识点: 1. **MD5算法简介**: MD5(Message-Digest Algorithm 5)是一种广泛使用的散列函数,可以将任意长度的数据(如文件、字符串等)转换为一个固定...
下面我们将详细探讨三个不同版本的MD5加密在JAVA中的实现,并分析它们可能的差异和优化点。 1. **基础版MD5加密** 基础版的MD5加密通常涉及以下步骤: - 使用`java.security.MessageDigest`类创建一个MD5实例。 -...
在Java中,可以使用`java.security.MessageDigest`类来实现MD5加密。在提供的代码中,`MyMD5Util`类实现了简单的MD5加密方法`MD5(String inStr)`。 该方法首先通过`MessageDigest.getInstance("MD5")`获取一个MD5...
在标签"md5_java md5.ja java_md5 md5 md5_java_realization"中,除了重复的信息外,"md5_java"再次强调了这是MD5算法的Java实现,"java_md5"和"md5"是关键词,表明了主题与Java语言和MD5算法相关。 压缩包内的两个...
在Java中实现MD5加密,主要依赖于java.security包下的MessageDigest类。以下是一个简单的MD5加密过程的步骤: 1. **导入必要的库**:首先,你需要导入`java.security.MessageDigest`和`java.math.BigInteger`库,...
在这个`java_md5_class.zip`压缩包中,包含了一个名为"java的md5加密类.java"的文件,我们可以推测这是一个简单的Java程序,用于实现MD5加密功能。通常,这样的类会包含以下步骤: 1. **初始化MD5实例**:首先,...
在Java中,我们可以使用`java.security.MessageDigest`类来实现MD5加密。 MD5的主要应用场景包括文件完整性校验、用户密码存储(虽然现在MD5因为安全性问题不建议用于密码存储)和数据验证。其优点在于计算速度快,...
### JAVA_对文件进行MD5加密 在计算机科学与信息安全领域中,MD5(Message-Digest Algorithm 5)是一种广泛使用的散列函数,能够将任意长度的数据映射为一个固定长度(通常是128位)的十六进制数值。这种算法在数据...
java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密方法 java Md5加密...
本文将深入探讨MD5和DES两种加密算法,以及它们在Java中的实现。首先,我们来看MD5(Message-Digest Algorithm 5),它是一种广泛使用的哈希函数,产生一个128位(16字节)的散列值,通常用32个十六进制数字表示。 ...
java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法java Md5加密方法 java Md5加密方法...
C# MD5加密类型支持:1-16位的加密;2-32位加密;3:base64加密对应JAVA md5 16位的加密;2-32位加密;3:base64加密
java实现md5 加密解密(在网络中MD5是著名的不可逆算法,但是如果知道MD5的加密的字符串 则可以通过自己的加密算法对明文进行加密,对加密后的密文与字符串匹配; 匹配成功,表示找到明文;但是此程序的时间耗费较高!仅...
"标签"中的"md5_java"和"md5encoder"进一步强调了这个压缩包是关于Java实现的MD5编码工具。不过,由于没有提供具体的源代码或类库信息,我们只能基于通用的Java MD5实现进行讲解。 总结,MD5Encoder.rar可能是一个...
这个"MD5_js.rar"压缩包显然包含了MD5算法在JavaScript环境下的实现,以及可能的相关资料。 首先,"MD5算法在js中的实现.java"文件可能是将MD5算法用Java语言进行了封装,提供给JavaScript使用。Java和JavaScript...
纯JAVA的MD5加密,利用MD5单向函数产生密钥,方便测试