Hashlib Module
- For cryptographic related operations, instead of the MD5 module and the SHA module, mainly provides the SHA1,SHA224,SSHA256,SHA384,SHA512,MD5 algorithm
- Look directly at the code case:
---------MD5-----------
hash = Hashlib.md5 () hash.update (bytes ('admin', encoding=' Utf-8' )print(hash.hexdigest ()) print( Hash.digest ())
----------SHA1---------
hash = HASHLIB.SHA1 () hash.update (bytes ('admin', encoding=' Utf-8')) print(Hash.hexdigest ())
----------sha256-------
hash = hashlib.sha256 () hash.update (bytes ('admin', encoding= ' Utf-8 ' ) ) print(Hash.hexdigest ())
---------sha384--------
hash = hashlib.sha384 () hash.update (bytes ("admin", encoding=' Utf-8 ' ) ) print(Hash.hexdigest ())
------------sha512--------
hash = hashlib.sha512 () hash.update (bytes ('admin', encoding= ' Utf-8 ' ) ) print(Hash.hexdigest ())
Attention
Although the above encryption algorithm is very powerful, but sometimes there is a flaw, namely: through the pool can be reversed.
Therefore, it is necessary to add a custom key to the encryption algorithm to encrypt
hash = hashlib.md5 (bytes ('790dfhdfe3', encoding='Utf-8')) hash.update (bytes ('Admin', encoding='Utf-8')) Print(Hash.hexdigest ())-------------------------------Python also has an HMAC module, which internally creates key and content for further processing and then encrypts it.ImportHMAC H= Hmac.new (Bytes ('DFEW3', encoding="Utf-8")) h.update (bytes ('Admin', encoding="Utf-8")) Print(H.hexdigest ())
Hash module Hashlib and HMAC