Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie die MD5-Verschlüsselung mit Python

So implementieren Sie die MD5-Verschlüsselung mit Python

WBOY
WBOYnach vorne
2023-05-13 20:04:045610Durchsuche

„Python implementiert die MD5-Verschlüsselung.“ MD5 ist eine Einwegverschlüsselung, das heißt, es kann Daten nur verschlüsseln, aber nicht entschlüsseln. Es löst hauptsächlich das Problem der Datenintegrität.

Digest-Algorithmus wird auch Hash-Algorithmus und Hash-Algorithmus genannt. Es wandelt Daten beliebiger Länge über eine Funktion in eine Datenzeichenfolge fester Länge (normalerweise dargestellt durch eine Hexadezimalzeichenfolge) um. MD5 ist der gebräuchlichste Digest-Algorithmus. Nach der Ausführung von MD5 für eine Zeichenfolge, eine Datei oder ein komprimiertes Paket wird eine 128-Bit-Zeichenfolge mit fester Länge generiert, die normalerweise durch eine 32-Bit-Hexadezimalzeichenfolge dargestellt wird. .

In der Python3-Standardbibliothek wurde das MD5-Modul entfernt und der Hash-Verschlüsselungsalgorithmus in die Hashlib-Standardbibliothek eingefügt. Hashlib bietet gängige Digest-Algorithmen wie SHA1, SHA224, SHA256, SHA384, SHA512 und MD5-Algorithmen usw.

2. Zweck

Das Passwort des registrierten Benutzers verschlüsseln, das Passwort selbst wird nicht aufgezeichnet, sondern nur das MD5-Ergebnis des Passworts (selbst wenn die Datenbank gestohlen wird, kann der Klartext nicht abgeleitet werden). ). Nachdem der Website-Benutzer das Bild/die Datei hochgeladen hat, wird der MD5-Wert als Dateiname verwendet. (MD5 kann Eindeutigkeit garantieren) Der MD5-Wert wird als Schlüssel in der Schlüsselwertdatenbank verwendet. Vergleichen Sie zwei Dateien, um festzustellen, ob sie identisch sind. (Beim Herunterladen von Ressourcen habe ich festgestellt, dass die Website einen MD5-Wert bereitstellt, der verwendet wird, um zu erkennen, ob die Datei manipuliert wurde.)

3 Verwenden Sie das Hashlib-Modul, um MD5-Vorgänge auszuführen

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

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die MD5-Verschlüsselung mit Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen