<Python> md5 hash を作る。(暗号化)
md5 ハッシュ hash
を生成する。
In [201]: import hashlib In [212]: hashlib.md5('john@example'.encode('utf-8')).hexdigest() Out[212]: '2e7a11032096c21c8e9d9704cef65fb8'
.digest()
にすると、
In [213]: hashlib.md5('john@example'.encode('utf-8')).digest() Out[213]: b'.z\x11\x03 \x96\xc2\x1c\x8e\x9d\x97\x04\xce\xf6_\xb8'
.encode()
を外すと、
In [214]: hashlib.md5('john@example').hexdigest() --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-214-42f9c6eff509> in <module>() ----> 1 hashlib.md5('john@example').hexdigest() TypeError: Unicode-objects must be encoded before hashing
エラー、
バイト byte
指定のb
を付けたら、
In [215]: hashlib.md5(b'john@example').hexdigest() Out[215]: '2e7a11032096c21c8e9d9704cef65fb8'
オッケー。
マニュアル
15.1. hashlib — セキュアハッシュおよびメッセージダイジェスト — Python 3.5.2 ドキュメント