用python计算md5,sha1,crc32
2016-12-01 16:35
711 查看
原文:http://blog.csdn.net/marshall001/article/details/50097705
为了确保从网上下载的文件或程序完整并且没有被篡改,一般官网上都会给出文件的md5或sha1。我们拿到一个软件,第一步应当是校验这个值与官网给的是否一致,如果不一致的话就赶紧删掉吧。
在Mac上计算一个文件的md5, sha1, crc32:
Python也能做这个工作,其中md5和sha1需
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
2
3
1
2
3
与mac上的计算一致。
为了确保从网上下载的文件或程序完整并且没有被篡改,一般官网上都会给出文件的md5或sha1。我们拿到一个软件,第一步应当是校验这个值与官网给的是否一致,如果不一致的话就赶紧删掉吧。
在Mac上计算一个文件的md5, sha1, crc32:
命令 | 输出 |
---|---|
$ md5 shark.jpg | MD5 (shark.jpg) = 61aead6a48da0fb25618333590745aa7 |
$ shasum shark.jpg | acfe8421e3ad39cf73f19cef02aa3e692e25d5a2 shark.jpg |
$ crc32 shark.jpg | adc64e03 |
import hashlib, crc32可以
import zlib
#!/usr/bin/env python3 from hashlib import md5, sha1 from zlib import crc32 import sys def getMd5(filename): #计算md5 mdfive = md5() with open(filename, 'rb') as f: mdfive.update(f.read()) return mdfive.hexdigest() def getSha1(filename): #计算sha1 sha1Obj = sha1() with open(filename, 'rb') as f: sha1Obj.update(f.read()) return sha1Obj.hexdigest() def getCrc32(filename): #计算crc32 with open(filename, 'rb') as f: return crc32(f.read()) if len(sys.argv) < 2: print('You must enter the file') exit(1) elif len(sys.argv) > 2: print('Only one file is permitted') exit(1) filename = sys.argv[1] print('{:8} {}'.format('md5:', getMd5(filename))) print('{:8} {}'.format('sha1:', getSha1(filename))) print('{:8} {:x}'.format('crc32:', getCrc32(filename)))1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
$ python3 test.py shark.jpg,输出:
md5: 61aead6a48da0fb25618333590745aa7 sha1: acfe8421e3ad39cf73f19cef02aa3e692e25d5a2 crc32: adc64e031
2
3
1
2
3
与mac上的计算一致。
相关文章推荐
- 用python计算md5,sha1,crc32
- 用python计算md5,sha1,crc32
- 小巧好用的哈希计算器,支持文件拖放,速度很快,可以计算文件的 MD5、SHA1、CRC32 的值。
- 【Python】计算文件MD5 和 SHA1
- Python 计算某个目录下的文件md5并且以md5批量重命名
- python:自定义函数、hashlib(md5、sha1)、base64
- python 计算md5
- 信息摘要工具类-MD5、CRC32、SHA1
- 个人代码库のC#计算MD5和SHA1
- Python md5 sha1 的使用
- Android计算文件的MD5和SHA1
- Powershell 下计算SHA1 以及MD5 摘要[转]
- python之模块hashlib(提供了常见的摘要算法,如MD5,SHA1等等)
- Linux上计算MD5和SHA1
- 如何利用openssl来计算md4, md5, sha1, sha256, sha384, sha512等常用哈希值?
- iOS SDK计算SHA1和MD5
- JAVA计算文件的MD5及SHA1等值
- python md5计算
- [原创]HashCalc - 一款计算单个文件哈希值的免费软件,目前支持CRC32、MD5、SHA-1、SHA-2、Ripemd等算法。
- python实例26[计算MD5]