Heim  >  Artikel  >  Backend-Entwicklung  >  Einführung in die Verschlüsselung des Hashlib-Moduls

Einführung in die Verschlüsselung des Hashlib-Moduls

PHP中文网
PHP中文网Original
2017-06-21 10:17:481550Durchsuche

3.x wird für verschlüsselungsbezogene Vorgänge verwendet und ersetzt das MD5-Modul und das SHA-Modul und stellt hauptsächlich die Algorithmen SHA1, SHA224, SHA256, SHA384, SHA512 und MD5 bereit

import hashlib

m = hashlib.md5()
m.update(b"hello")
print(m.hexdigest())
m.update(b"It's me")
print(m.hexdigest())
m.update(b"It's been a long time since we spoken.")
print(m.hexdigest())

m2 = hashlib.md5()
m2.update(b"helloIt's me")
print(m2.hexdigest())

# 输出
5d41402abc4b2a76b9719d911017c592
64f69d95135bc13d4827f871b37f780f
0c9a83e10aa2f9e9629be61146db9cc2
64f69d95135bc13d4827f871b37f780f

#第二个和第四个 md5值是相同的,所以第二个加密的是 helloIt'sme

print(m.digest()) #2进制格式hash

  print(len(m.hexdigest())) #16进制格式hash
# ######## sha1 ########
 
hash = hashlib.sha1()
hash.update('admin')
print(hash.hexdigest())
 
# ######## sha256 ########
 
hash = hashlib.sha256()
hash.update('admin')
print(hash.hexdigest())
 
 
# ######## sha384 ########
 
hash = hashlib.sha384()
hash.update('admin')
print(hash.hexdigest())
 
# ######## sha512 ########
 
hash = hashlib.sha512()
hash.update('admin')
print(hash.hexdigest())

Python verfügt außerdem über ein hmac-Modul, das den von uns erstellten Schlüssel und Inhalt intern verarbeitet und dann verschlüsselt

Der Hash-Nachrichtenauthentifizierungscode, auch HMAC genannt, ist ein Nachrichtenauthentifizierungscode, der auf MAC (Message) basiert Authentifizierungsmechanismus (Authentifizierungscode). Bei Verwendung von HMAC authentifizieren beide Parteien in der Nachrichtenkommunikation die Nachricht, indem sie den der Nachricht hinzugefügten Authentifizierungsschlüssel K überprüfen.

wird im Allgemeinen für die Nachrichtenverschlüsselung in der Netzwerkkommunikation verwendet, vorausgesetzt, dass sich beide Parteien zunächst auf den Schlüssel einigen müssen Genau wie beim gemeinsamen Code verwendet der Absender der Nachricht dann den Schlüssel, um die Nachricht zu verschlüsseln, und der Empfänger verwendet Schlüssel + Nachrichten-Klartext, um sie erneut zu verschlüsseln. Der verschlüsselte Wert wird mit dem Wert des Absenders verglichen, um festzustellen, ob er gleich ist Die Authentizität der Nachricht kann überprüft werden und die Legitimität des Absenders.

import hmac

h = hmac.new("天王盖地虎".encode(encoding="utf-8"), "你是小松鼠".encode(encoding="utf-8"))
print(h.digest())
print(h.hexdigest())

#输出
b'fx\xad\xdd\x9e\xd6\xddcQN\x82c\xcd\xd9\x80-'
6678addd9ed6dd63514e8263cdd9802d

Das obige ist der detaillierte Inhalt vonEinführung in die Verschlüsselung des Hashlib-Moduls. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn