Maison > Article > développement back-end > Comment implémenter le cryptage md5 en utilisant python
Message Digest Algorithm MD5 (appelé en chinois Message Digest Algorithm Version 5) est une fonction de hachage largement utilisée dans le domaine de la sécurité informatique pour assurer une transmission complète et cohérente des informations. MD5 est un cryptage unidirectionnel, ce qui signifie qu'il peut uniquement crypter les données mais ne peut pas les déchiffrer. Il résout principalement le problème de l'intégrité des données.
L'algorithme Digest est également appelé algorithme de hachage et algorithme de hachage. Il convertit les données de n'importe quelle longueur en une chaîne de données de longueur fixe (généralement représentée par une chaîne hexadécimale) via une fonction. MD5 est l'algorithme de digestion le plus courant. Il est très rapide. Après avoir exécuté md5 sur une chaîne, un fichier ou un package compressé, il générera une chaîne de 128 bits de longueur fixe, qui est généralement représentée par une chaîne hexadécimale de 32 bits. .
Dans la bibliothèque standard python3, le module md5 a été supprimé et l'algorithme de chiffrement de hachage est placé dans la bibliothèque standard hashlib. hashlib fournit des algorithmes de digestion courants, tels que les algorithmes SHA1, SHA224, SHA256, SHA384, SHA512 et MD5, etc.
Crypter le mot de passe de l'utilisateur enregistré. Lors de l'enregistrement du mot de passe de l'utilisateur, le mot de passe lui-même n'est pas enregistré, seul le résultat MD5 du mot de passe est enregistré (même si la base de données est volée, le texte en clair ne peut pas être enregistré. déduit). Une fois que l'utilisateur du site Web a téléchargé l'image/le fichier, la valeur MD5 est utilisée comme nom de fichier. (MD5 peut garantir l'unicité) La valeur MD5 est utilisée comme clé dans la base de données clé-valeur. Comparez deux fichiers pour voir s'ils sont identiques. (Lors du téléchargement des ressources, j'ai découvert que le site Web fournissait une valeur MD5, qui est utilisée pour détecter si le fichier a été falsifié)
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.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!