public class Test{
private static final char[] x = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd',
'e', 'f' };
static MessageDigest d;
public static void main(String[] args) throws NoSuchAlgorithmException {
d = MessageDigest.getInstance("MD5");
for(int i=0;i<10;i++){
loop(i+1,"");
}
//
}
private static void loop(int i,String s){
if(i>0){
for(int k=0;k<x.length;k++){
loop(i-1,s+x[k]);
}
}else{
// System.out.println(s+"!");
check(s);
}
}
private static void check(String s){
d.reset();
String ta = s;
d.update((ta).getBytes());
byte b[] = d.digest();
// System.out.println(bytesToHexStr(b));
if(bytesToHexStr(b).equals("F7A5C99C58103F6B65C451EFD0F81826")){
System.out.println(ta);
}
}
private static String bytesToHexStr(byte[] bcd) {
StringBuffer s = new StringBuffer(bcd.length * 2);
for (int i = 0; i < bcd.length; i++) {
s.append(bcdLookup[(bcd[i] >>> 4) & 0x0f]);
s.append(bcdLookup[bcd[i] & 0x0f]);
}
return s.toString();
}
private static final char[] bcdLookup = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D',
'E', 'F' };
}
分享到:
相关推荐
标题中的“遍历一个文件夹并生成所有文件的MD5”是一个实用的操作,通常用于批量检查文件的完整性。在Python编程语言中,我们可以利用os库和hashlib库来实现这个功能。os库用于遍历文件夹,而hashlib库则提供了MD5...
首先,我们需要引用System.IO和System.Security.Cryptography命名空间,这两个命名空间包含了遍历文件和计算MD5所需的方法和类。下面是一个简单的C#方法,用于遍历指定文件夹及其子文件夹,并计算每个文件的MD5: `...
在Java中,遍历所有大于1MB文件并计算它们的MD5码是一项常见的任务,这有助于确保文件完整性或比较文件是否相同。然而,当处理大量大文件时,性能问题就可能出现。由于Java的InputStream默认的read方法限制,如果...
在VB.NET编程环境中,我们经常需要遍历一个文件夹及其子文件夹来获取所有文件的列表,并对这些文件进行一些处理,比如计算它们的MD5校验和。MD5(Message-Digest Algorithm 5)是一种广泛使用的加密散列函数,可以...
`MD5`类定义了一些基本的方法和属性,如`ComputeHash`方法,用于计算输入数据的哈希值。由于MD5算法是抽象的,所以你需要使用它的具体实现,如`System.Security.Cryptography.MD5CryptoServiceProvider`,来实际执行...
### MD5加密方法详解 #### 一、MD5简介 MD5(Message-Digest Algorithm 5)是一种广泛使用的散列算法,它能够将任意长度的数据转换成一个固定长度(通常是128位或16字节)的十六进制字符串。这种转换过程是不可逆的...
二叉树的层序遍历.md
二叉树的后序遍历.md
二叉树的中序遍历.md
二叉树的前序遍历.md
这个脚本在非递归模式下遍历指定目录,对每个文件进行MD5哈希计算,并将结果保存到文件中,以便后续比较和验证。虽然MD5已不再被视为安全的哈希算法,但在很多场景下,它仍然能满足数据完整性检查的需求。
DS_Doc_5_3_图的遍历.md
2. **定义类和方法**:创建`ZgjGetMD5`类,并在其中定义了`getMD5`方法用于生成文件的MD5摘要,以及辅助方法`byteToHexString`用于将字节数组转换为十六进制字符串表示形式。 3. **生成MD5摘要**: - 使用`...
本篇文章将详细介绍如何遍历`Map`集合,并提供两种不同的遍历方法。 #### 二、Map集合遍历方法 ##### 2.1 通过Map的keySet方法遍历 第一种遍历方式是通过`Map`的`keySet()`方法来获取所有键的集合,然后遍历这个...
二叉树的锯齿形层序遍历.md
在“Unity Md5更新版本值设置”中,开发者可能会编写一个脚本或者利用第三方工具(如“File_Md5_Generator-master”),自动遍历项目中的所有文件,计算它们的MD5值,并将这些值存储在一个文本文件或数据库中。...
它使用递归算法遍历指定目录,对找到的每一个图像文件进行MD5值的计算和替换。对于开发者来说,这不仅是一个实用的脚本,也是一个学习C#编程,特别是文件操作和MD5哈希计算的好例子。通过研究和理解这段代码,可以...
MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,主要应用于数据的校验和加密。在Java中,MD5通常用于生成一个固定长度的128位(16字节)的数字摘要,这个摘要以32位的十六进制数表示。这个过程是不...
- 最后,遍历`md`数组,将每个字节转换成两个十六进制字符,形成最终的MD5字符串。 3. **主方法测试**: ```java public static void main(String[] args) { System.out.print(MD5_Test.MD5("XX")); } ``` -...
5. 工具实现原理:这类工具通常会遍历指定文件夹,读取每个文件的内容,然后通过MD5算法计算出对应的哈希值。这些值会以列表或表格形式展示出来,有时还会保存成文本文件,以便后续查阅。 6. 开源项目:从压缩包...