Java 文件完整性校验 MD5 sha1 sha256 sha224 sha384 sha512
由于项目中需要使用文件做备份,并且要提供备份文件的下载功能。备份文件体积较大,为确保下载后的文件与原文件一致,需要提供文件完整性校验。
网上有这么多此类文章,其中不少使用到了
org.apache.commons.codec.digest.DigestUtils
包中的方法,但是又自己做了大文件的拆分及获取相应校验码的转换。
DigestUtils 包已经提供了为文件流生成校验码的功能,可以直接调用。经测试10几G的文件在30秒内可完成计算。
(网上提供的一些自己拆分大文件的示例,文件较小时结果正确,文件较大时结果就不太可靠了)
实现步骤如下:
- pom.xml 添加依赖
<dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId><version>1.12</version> </dependency>
- 实现类:
package file.integrity.check;import org.apache.commons.codec.digest.DigestUtils; import java.io.File; import java.io.FileInputStream;public class Application {public static void main(String[] args) throws Exception {File file = new File("/path/filename");FileInputStream fileInputStream = new FileInputStream(file);String hex = DigestUtils.sha512Hex(fileInputStream);System.out.println(hex);} }
- 或者:
import org.apache.commons.codec.digest.DigestUtils; import static org.apache.commons.codec.digest.MessageDigestAlgorithms.SHA_512; import java.io.File;public class Application {public static void main(String[] args) throws Exception {File file = new File("/path/filename");String hex = new DigestUtils(SHA_512).digestAsHex(file);System.out.println(hex);} }
Java 文件完整性校验 MD5 sha1 sha256 sha224 sha384 sha512相关推荐
- Java 读取文件 MD5 sha1 sha256 sha224 sha384 sha512
在Java中读取文件的MD5或SHA码,用于对文件完整性进行校验,示例代码较为简单,如下: 一.使用到的 jar (pom.xml) <dependency><groupId> ...
- 使用Windows 10自带工具 校验MD5 SHA1 SHA256类型文件
使用Windows 10自带工具 校验MD5 SHA1 SHA256类型文件 适用场景:下载文件的完整性校验等. cmd调出命令行,输入如下命令 certutil -hashfile <文件名& ...
- Java 文件完整性校验 sha512
由于项目中需要使用文件做备份,并且要提供备份文件的下载功能.备份文件体积较大,为确保下载后的文件与原文件一致,需要提供文件完整性校验. 网上有这么多此类文章,其中不少使用到了 org.apache.c ...
- Java文件完整性校验SHA256
前言 ❤Java学习路线个人总结-博客 ❤欢迎点赞
- 快速计算文件的MD5/SHA1/SHA256等校验值(Windows/Linux)
从网络上下载文件,尤其是非常大的文件怎么确保文件准确无误呢? 通常网站提供文件时会同时提供该文件的校验值,如MD5,SHA1,SHA256等, 当文件下载完成后,计算它的校验值,如果和网站提供的一致, ...
- Windows系统中通过命令查看文件的MD5,SHA1,SHA256校验值
Windows系统中通过命令查看文件的MD5,SHA1,SHA256校验值 命令格式如下: certutil -hashfile yourfilename MD5 certutil -hashfile ...
- android sha1校验工具,【原创实用】文件校验工具V1.2.1:支持MD5 SHA1 SHA256
前言:这个程序其实我很早以前(大概上上周?)就已经完成了 但是没有发布,因为我还想不断打磨打磨. 先别走,结尾还有彩蛋 现如今相较第一个版本,已经进行如下改动: 解决clear之后后台线程依然未停止的 ...
- Hash校验工具、MD5 SHA1 SHA256命令行工具
MyHash 检验工具http://www.zdfans.com/html/4346.html HashMyFiles Hash校验工具http://www.nirsoft.net/utils/has ...
- 使用Windows自带的工具计算文件的 MD5 SHA1 SHA256
使用Windows自带的工具计算文件的 MD5 SHA1 SHA256 很多网站会提供下载文件的校验码信息,在下载文件之后,如何方便地计算MD5 SHA1 SHA256等校验和呢?之前我常用的工具是H ...
最新文章
- linux中ftp用户,linux中怎么添加ftp用户
- 从源码分析DEARGUI之add_selectable
- 【PHP7源码分析】PHP7到底有多快,基准测试与特性分析告诉你
- MySQL Infobright 数据仓库快速安装笔记[转]
- 主动找智能钥匙 PKE取代RKE是大势所趋
- 船舶和计算机结合论文格式,近海船舶监控系统中航迹关联算法的计算机研究与实现...
- 如何保持安全在线的五大技巧
- 【Python3爬虫】大众点评爬虫(搞定CSS反爬)
- 内置指令-cloak // 内置指令-once // 内置指令-pre
- 【HTML5】在canvas上绘制简单的2D图形 (+太极图)
- es聚合查询与多维度数据统计
- ddos攻击数据集_ddos攻击和cc攻击有什么区别?他们2个哪个更厉害?
- 拓扑容差如何修改_如何做到全屋WIFI无死角,MESH组网对比有哪些优势?
- delphi 多个线程 多个进度条_Python 进阶知识全篇-多线程
- webgl天空盒边界缝隙_WebGL three.js进修笔记 法向量网格材质MeshNormalMaterial的引见和建立360度全景天空盒的要领...
- [看过不再忘]详细解析chmod修改文件权限
- 计算机设备问题代码43,win10系统提示由于该设备有问题windows已将其停止(代码43)的修复方案...
- cefsharp设置cookie_CefSharp 设置cookie
- MAC前端开发环境搭建
- Linux搭建Postfix邮件服务器