暗号化の種類

可逆(元に戻せる)と不可逆(元に戻せない)がある。パスワードの検証などは戻す必要がないので不可逆でもいい。

不可逆暗号化

SHA1,MD5など。MD5は衝突(入力値が違うのに暗号化後は同じになる)の可能性が高いので避けたい。

可逆暗号化

不可逆であればかならず上記MD5等が引っかかるのにこっちは情報が少ない。困ったもんだ。

MySQL

参考サイト

http://d.hatena.ne.jp/yamaback/20110819/1313735667

可逆暗号化

一番安全と思われる方法。バイナリーが帰って来るのでBLOBかVARBINARYの列に入れること。だが、意図せぬx20によるトリムが怖いのでBLOB推奨とのこと

mysql> SELECT AES_ENCRYPT('test','KEY');
+---------------------------+
| AES_ENCRYPT('test','KEY') |
+---------------------------+
ィy鏡稽ハカ?          |
+---------------------------+
1 row in set (0.00 sec)
mysql> SELECT HEX(AES_ENCRYPT('test','KEY'));
+----------------------------------+
| HEX(AES_ENCRYPT('test','KEY'))   |
+----------------------------------+
| 24400DA879F9E28BBE8C6DCA0CB6103F |
+----------------------------------+
1 row in set (0.01 sec)
Counter: 5051, today: 1, yesterday: 0

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS