fastcoll工具试用记
2016-03-05 00:00
7357 查看
摘要: 看看fastcoll工具怎么玩
MD5常被用来做文件校验,即我们可以根据MD5值是否匹配来判断一个文件是否被篡改。
但MD5值不是唯一的,不同文件可能会得到相同的MD5,本文就使用fastcoll工具来做演示。
我们使用Wireshark的安装文件Wireshark-win64-1.12.4.exe作为示例文件:
为了避免破坏原文件,拷贝一份副本ws.exe,后续的实验使用ws.exe进行:
fastcoll可以在命令行中执行,这里我们直接将ws.exe拖拽到fastcoll程序图标上执行,执行完毕后生成两个新文件
这两个文件的属性分别为:
可以看到两个新生成文件的大小是一致的,但与原始文件稍有不同。
下面就来看看这几个文件的MD5值:
可以看到两个新生成文件的MD5值相同,但与原始文件的MD5值不同,那么这两个新生成文件会不会是同一个文件呢?
我们再来看看这些文件的SHA1值:
两个新文件的MD5值虽然相同,但它们的SHA1值不同,且与原始文件的SHA1也不相同,因此不是同一个文件。
所以,使用MD5作为单一校验工具并不是完全可靠的。
PS. 新生成的文件可以用来进行Wireshark的安装。
MD5常被用来做文件校验,即我们可以根据MD5值是否匹配来判断一个文件是否被篡改。
但MD5值不是唯一的,不同文件可能会得到相同的MD5,本文就使用fastcoll工具来做演示。
我们使用Wireshark的安装文件Wireshark-win64-1.12.4.exe作为示例文件:
为了避免破坏原文件,拷贝一份副本ws.exe,后续的实验使用ws.exe进行:
fastcoll可以在命令行中执行,这里我们直接将ws.exe拖拽到fastcoll程序图标上执行,执行完毕后生成两个新文件
这两个文件的属性分别为:
可以看到两个新生成文件的大小是一致的,但与原始文件稍有不同。
下面就来看看这几个文件的MD5值:
C:\Users\xm\Desktop\fastcoll_v1.0.0.5.exe>CertUtil -hashfile C:\littlemy\tools\W ireshark-win64-1.12.4.exe MD5 MD5 哈希(文件 C:\littlemy\tools\Wireshark-win64-1.12.4.exe): f0 d3 d1 aa 6d 24 5e ab 05 2d 40 31 27 f6 8b b9 CertUtil: -hashfile 命令成功完成。 C:\Users\xm\Desktop\fastcoll_v1.0.0.5.exe>CertUtil -hashfile C:\littlemy\tools\w s.exe MD5 MD5 哈希(文件 C:\littlemy\tools\ws.exe): f0 d3 d1 aa 6d 24 5e ab 05 2d 40 31 27 f6 8b b9 CertUtil: -hashfile 命令成功完成。 C:\Users\xm\Desktop\fastcoll_v1.0.0.5.exe>CertUtil -hashfile C:\littlemy\tools\w s_msg1.exe MD5 MD5 哈希(文件 C:\littlemy\tools\ws_msg1.exe): c5 8e 2f ee 66 10 4e 11 54 5d f5 25 24 88 e5 71 CertUtil: -hashfile 命令成功完成。 C:\Users\xm\Desktop\fastcoll_v1.0.0.5.exe>CertUtil -hashfile C:\littlemy\tools\w s_msg2.exe MD5 MD5 哈希(文件 C:\littlemy\tools\ws_msg2.exe): c5 8e 2f ee 66 10 4e 11 54 5d f5 25 24 88 e5 71 CertUtil: -hashfile 命令成功完成。
可以看到两个新生成文件的MD5值相同,但与原始文件的MD5值不同,那么这两个新生成文件会不会是同一个文件呢?
我们再来看看这些文件的SHA1值:
C:\Users\xm\Desktop\fastcoll_v1.0.0.5.exe>CertUtil -hashfile C:\littlemy\tools\W ireshark-win64-1.12.4.exe SHA1 SHA1 哈希(文件 C:\littlemy\tools\Wireshark-win64-1.12.4.exe): 27 87 a4 d0 30 28 ee b7 15 00 30 35 13 60 24 2c dc 4e ab 52 CertUtil: -hashfile 命令成功完成。 C:\Users\xm\Desktop\fastcoll_v1.0.0.5.exe>CertUtil -hashfile C:\littlemy\tools\w s.exe SHA1 SHA1 哈希(文件 C:\littlemy\tools\ws.exe): 27 87 a4 d0 30 28 ee b7 15 00 30 35 13 60 24 2c dc 4e ab 52 CertUtil: -hashfile 命令成功完成。 C:\Users\xm\Desktop\fastcoll_v1.0.0.5.exe>CertUtil -hashfile C:\littlemy\tools\w s_msg1.exe SHA1 SHA1 哈希(文件 C:\littlemy\tools\ws_msg1.exe): e3 d1 52 02 4d ed ec 8a 54 c1 66 c1 8f 3c 1f 8a 6e b9 0a b8 CertUtil: -hashfile 命令成功完成。 C:\Users\xm\Desktop\fastcoll_v1.0.0.5.exe>CertUtil -hashfile C:\littlemy\tools\w s_msg2.exe SHA1 SHA1 哈希(文件 C:\littlemy\tools\ws_msg2.exe): 67 40 e8 ad 39 ca 55 b6 59 96 40 c8 06 05 6d 4f 78 6e f0 1e CertUtil: -hashfile 命令成功完成。
两个新文件的MD5值虽然相同,但它们的SHA1值不同,且与原始文件的SHA1也不相同,因此不是同一个文件。
所以,使用MD5作为单一校验工具并不是完全可靠的。
PS. 新生成的文件可以用来进行Wireshark的安装。
相关文章推荐
- asp MD5加密方式使用建议
- 浅谈C#中Md5和Sha1两种加密方式
- 基于C#对用户密码使用MD5加密与解密
- Linux系统递归生成目录中文件的md5的方法
- 在C#中生成与PHP一样的MD5 Hash Code的方法
- asp.net实现md5加密
- Java Web开发之MD5加密用法分析
- C#计算字符串哈希值(MD5、SHA)的方法小结
- php 的加密函数 md5,crypt,base64_encode 等使用介绍
- PHP中MD5函数使用实例代码
- php md5下16位和32位的实现代码
- jquery插件开发之实现md5插件
- Java实现MD5加密的方法
- C#计算文件MD5校验的方法
- javascript实现base64 md5 sha1 密码加密
- 分享JavaScript与Java中MD5使用两个例子
- javascript客户端生成MD5值的函数代码
- c++实现MD5算法实现代码
- php验证是否是md5编码的简单代码
- 利用PHP脚本在Linux下用md5函数加密字符串的方法