MD5チェックサムデータ指紋のpython3比較

MD5メッセージダイジェストアルゴリズム(英語:MD5メッセージダイジェストアルゴリズム)、広く使用されている暗号ハッシュ関数は、128ビット(16作り出すことができるバイトの情報の伝送を確保するために、)ハッシュ値(ハッシュ値)完全で一貫した。アメリカの暗号によるMD5 ロナルド・リベスト置き換えるために設計された1992のパブリック(ロナルド・リベストリン)で、MD4のアルゴリズムを。

アウトライン

ハッシュ関数によって作られたMD5チェックサム計算、すなわち、我々はMD5メッセージダイジェストを使用することができ、任意のデータのデータ「指紋」を生成することができ、少量、またはデータ圧縮、データは、データ比較の完全性と正確性を検証することが容易です。2つの異なるファイルが悪意のない変更上の任意のファイルの同じMD5ハッシュ値を持つことはほとんど不可能であるため、そのMD5ハッシュの変化につながります。だから、MD5ハッシュ共通言語ファイルの整合性は、特に、ファイル転送、ディスクエラーやその他の状況ドキュメントの精度をテストするには、チェックを。

MD5

私たちは、MD5の実装と使用を完了するために、組み込みのPythonモジュールhashlibを使用しています。

import hashlib

m = hashlib.md5()
# 假设文件内容
src = 'I like Python'
m.update(src.encode('utf-8'))
print(m.hexdigest())
复制代码

サンプルの結果:

17008b7417701b0c233b999d20c13f1d
复制代码

ファイルの検証

既存の2つのファイルがあると仮定すると、我々はこれら二つの文書としていることを確認する必要があります

import hashlib


def out_md5(src):
    # 简单封装
    m = hashlib.md5()
    m.update(src.encode('utf-8'))
    return m.hexdigest()


with open('1.txt', 'r') as f:
    src = f.read()
    m1 = out_md5(src)
    print(m1)

with open('2.txt', 'r') as f:
    src = f.read()
    m2 = out_md5(src)
    print(m2)

if m1 == m2:
    print(True)
else:
    print(False)
复制代码

サンプルの結果:

bb0c1b519a0a2b8e6c74703e44538c60
43cb091db43a710d85ce45fb202438cd
False
复制代码

ます。https://juejin.im/post/5cfe624ae51d4556d86c7a9cで再現

おすすめ

転載: blog.csdn.net/weixin_33910460/article/details/91463570