Python计算校验文件的MD5SHA1SHA256和CRC32

Posted 皓月盈江

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python计算校验文件的MD5SHA1SHA256和CRC32相关的知识,希望对你有一定的参考价值。

# -*- coding: utf-8 -*-
import os
from hashlib import md5, sha1, sha256
from zlib import crc32


strFilePath = os.path.join(os.getcwd() + "\\\\" + "“捷创源科技”公众号.jpg")


def getMd5(strFilePath):  # 计算md5
    mdfive = md5()
    with open(strFilePath, 'rb') as f:
        mdfive.update(f.read())
    return mdfive.hexdigest().upper()


def getSha1(strFilePath):  # 计算sha1
    sha1Obj = sha1()
    with open(strFilePath, 'rb') as f:
        sha1Obj.update(f.read())
    return sha1Obj.hexdigest().upper()


def getSha256(strFilePath):  # 计算sha256
    sha256Obj = sha256()  # Get the hash algorithm.
    with open(strFilePath, 'rb') as f:
        sha256Obj.update(f.read())  # Hash the data.
    return sha256Obj.hexdigest().upper()  # Get he hash value.


def getCrc32(strFilePath):  # 计算crc32
    with open(strFilePath, 'rb') as f:
        return hex(crc32(f.read()))[2:].upper()


"""-----------------------------------------------
主函数
-----------------------------------------------"""
if __name__ == '__main__':
    print(':8 '.format('MD5:', getMd5(strFilePath)))
    print(':8 '.format('SHA1:', getSha1(strFilePath)))
    print(':8 '.format('SHA256:', getSha256(strFilePath)))
    print(':8 '.format('CRC32:', getCrc32(strFilePath)))

运行效果:

如果本文对您有所帮助,请关注微信公众号“捷创源科技”。
获取更多资料,请访问我的博客

以上是关于Python计算校验文件的MD5SHA1SHA256和CRC32的主要内容,如果未能解决你的问题,请参考以下文章

命令行中生成 md5sha1sha256 校验和

一文搞懂单向散列加密:MD5SHA-1SHA-2SHA-3

一文搞懂单向散列加密:MD5SHA-1SHA-2SHA-3

windows cmd下作MD5校验

Hash校验工具MD5 SHA1 SHA256命令行工具

利用Windows系统自带的Powershell功能计算文件的MD5SHA256等Hash值