ホームページ  >  記事  >  バックエンド開発  >  Pythonを使用してMD5暗号化を実装する方法

Pythonを使用してMD5暗号化を実装する方法

WBOY
WBOY転載
2023-05-13 20:04:045594ブラウズ

Python は MD5 暗号化を実装します

1. はじめに

メッセージ ダイジェスト アルゴリズム MD5 (中国名はメッセージ ダイジェスト アルゴリズム第 5 版) は、コンピューター セキュリティの分野で広く使用されているハッシュ関数です。完全かつ一貫した情報伝達を保証するため。 MD5 は一方向の暗号化であり、データの暗号化のみが可能で復号化はできないことを意味し、主にデータの整合性の問題を解決します。

ダイジェスト アルゴリズムは、ハッシュ アルゴリズム、ハッシュ アルゴリズムとも呼ばれます。関数を使用して、任意の長さのデータを固定長のデータ文字列 (通常は 16 進文字列で表されます) に変換します。 MD5 は最も一般的なダイジェスト アルゴリズムです。非常に高速です。文字列、ファイル、または圧縮パッケージに対して md5 を実行すると、固定長の 128 ビット文字列が生成され、通常は 32 ビットの 16 進文字列で表されます。 。

Python3 標準ライブラリでは、md5 モジュールが削除され、ハッシュ暗号化アルゴリズムは hashlib 標準ライブラリに配置されています。hashlib は、SHA1、SHA224、SHA256、SHA384、SHA512 などの一般的なダイジェスト アルゴリズムを提供します。 MD5アルゴリズムなど。

2. 目的

登録ユーザーのパスワードを暗号化します。ユーザーパスワードを保存する際、パスワード自体は記録されず、パスワードの MD5 結果のみが記録されます (データベースに保存されている場合でも)。盗まれた場合、平文は推測できません)。 Web サイトのユーザーが画像/ファイルをアップロードすると、MD5 値がファイル名として使用されます。 (MD5 は一意性を保証できます) MD5 値は、キー/値データベースのキーとして使用されます。 2 つのファイルを比較して、それらが同一かどうかを確認します。 (リソースをダウンロードするときに、Web サイトがファイルが改ざんされているかどうかを検出するために使用される MD5 値を提供していることがわかりました)

3. hashlib モジュールを使用して md5 操作を実行します

import hashlib

md5 = hashlib.md5()   				# md5对象,md5不能反解,但是加密是固定的

# update需要一个bytes格式参数
md5.update(str.encode('utf-8'))  	# 要对哪个字符串进行加密,就放这里
value = md5.hexdigest()  			# 拿到加密字符串
import hashlib

str = '123456'

md5 = hashlib.md5()   				# 创建md5加密对象
md5.update(str.encode('utf-8'))  	# 指定需要加密的字符串
str_md5 = md5.hexdigest()  			# 加密后的字符串

print(str_md5)						# 结果:e10adc3949ba59abbe56e057f20f883e

以上がPythonを使用してMD5暗号化を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。