|
|
1
575
有一个输入流装饰器,
|
|
|
2
322
使用 DigestUtils 来自 Apache Commons Codec 图书馆:
|
|
|
3
170
有一个例子 Real's Java-How-to 使用 MessageDigest 类。 查看该页面,了解使用CRC32和SHA-1的示例。
|
|
|
4
91
这个 com.google.common.hash API提供:
阅读用户指南( IO Explained , Hashing Explained ).
对于您的用例
例如a sha-1 摘要计算(将SHA-1更改为MD5以获得MD5摘要)
注意 crc32 比 md5 ,所以使用 crc32 如果你不需要加密安全的校验和。另请注意 md5型 不应用于存储密码等,因为使用密码很容易暴力破解 bcrypt , scrypt 或 sha-256 相反。 对于哈希的长期保护 Merkle signature scheme 增加了安全性,欧盟委员会赞助的后量子密码学研究小组建议使用这种密码学来长期保护量子计算机( ref ). 注意 crc32 具有比其他碰撞率更高的碰撞率。 |
|
5
71
使用nio2(Java 7+),不使用外部库:
要将结果与预期的校验和进行比较,请执行以下操作:
|
|
|
6
41
Guava 现在提供了一个新的、一致的散列API,它比JDK中提供的各种散列API更加用户友好。看见 Hashing Explained 。对于一个文件,您可以轻松获得MD5和、CRC32(版本14.0+)或许多其他哈希值:
|
|
|
7
33
好的,我必须补充一下。对于那些已经拥有Spring和Apache Commons依赖关系或计划添加它的人来说,一行实现:
For and Apache commons only选项(信用@duleshi):
希望这能帮助到别人。 |
|
|
8
26
一种简单的方法,没有使用Java 7的第三方库
如果你需要打印这个字节数组。使用方法如下
如果你需要这个摘要中的十六进制字符串。使用方法如下
其中DatatypeConverter是javax.xml.bind.DatatypeConverter |
|
|
9
15
我最近不得不为一个动态字符串做这件事,
这显然没有回答你关于如何专门为文件做这件事的问题,上面的答案很好地解决了这个问题。我只是花了很多时间让总和看起来像大多数应用程序的显示结果,并认为您可能会遇到同样的问题。 |
|
|
10
12
或者你可能会得到更多信息 http://www.asjava.com/core-java/java-md5-example/ |
|
|
11
9
我们使用的代码与上一篇文章中使用的代码类似
但是,请注意使用
我支持使用Apache Commons Codec的建议,我用它替换了我们自己的代码。 |
|
|
12
9
|
|
|
13
9
非常快&;不依赖外部库的干净Java方法: (如果你需要,只需将MD5替换为SHA-1、SHA-256、SHA-384或SHA-512)
|
|
14
8
这里有一个方便的变体,它利用了
和
返回
|
|
|
15
6
|
|
|
16
6
另一种实现方式: Fast MD5 Implementation in Java
|
|
|
17
6
Standard Java Runtime Environment way :
结果等于linux md5sum实用程序。 |
|
|
18
6
这是一个简单的函数,它封装了Sunil的代码,因此它接受一个File作为参数。该函数不需要任何外部库,但它需要Java 7。
输出示例:
|
|
|
19
3
如果你使用ANT进行构建,这非常简单。将以下内容添加到build.xml中:
其中jarFile是您要生成MD5的JAR,toDir是您要放置MD5文件的目录。 |
|
|
20
3
谷歌番石榴提供了一个新的API。找到下面的一个:
|
|
|
21
1
|
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |