文字列の暗号化
2015/11/14
Python2.7.10
ハッシュ化
ハッシュ値・・・同じ入力値からは必ず出力値が得られる。そして、出力値から入力値を導き出すことはできない(不可逆)
代表的なハッシュ関数、HD5、SHA1
import hashlib
print hashlib.md5('password').hexdigest()
print hashlib.sha1('password').hexdigest()
Python md5やshaのハッシュ値を取得する
http://fujishinko.exblog.jp/7817894/
暗号化
ハッシュ値からは元の値を取得することはできないけど、暗号化された値から元の値を解読したい。
AES暗号
AES暗号化・・・代表的な共通鍵暗号方式(可逆)で、高速処理できるのが特徴。
Pythonの標準機能だけでAES暗号化はできないっぽい。PyCryptoというモジュールを使う。
PyCryptoのインストール
Windowsでのインストールはインストーラーに合わせるだけ(pipやらeasy_installやらは、うまくいかない)。 ダウンロードは下から。
PyCrypto Prebuilt Python Binaries for Windows
http://www.voidspace.org.uk/python/modules.shtml#pycrypto
AES暗号化サンプルコード
PyCryptoで暗号化する
http://yoshi-python.blogspot.jp/2009/10/pycrypto.html