MySQL関数リファレンス

復号化パスワードを指定して暗号化する (ENCODE)

スポンサードリンク
書式
ENCODE( 暗号化する文字列, パスワード )

ENCODE関数を使用することで、復号化パスワードを指定して暗号化することができます。
暗号化された値はバイナリになるため、テーブルに格納する場合はBLOB型の列に格納する必要があります。
尚、ENCODE関数で暗号化された値は、DECODE関数を使用して復号化することができます。

例1(ENCODEで暗号化、DECODEで復号化)
mysql> SET @encoded_str = ENCODE( 'MySQL', 'pass' );
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT @encoded_str;
+--------------+
| @encoded_str |
+--------------+
| 76喇        |
+--------------+
1 row in set (0.00 sec)

mysql> SELECT DECODE( @encoded_str, 'pass' );
+--------------------------------+
| DECODE( @encoded_str, 'pass' ) |
+--------------------------------+
| MySQL                          |
+--------------------------------+
1 row in set (0.00 sec)

mysql> --パスワードが異なると正しく復号化されない
mysql>SELECT DECODE( @encoded_str, 'hage' );
+--------------------------------+
| DECODE( @encoded_str, 'hage' ) |
+--------------------------------+
| )・Pヨ                          |
+--------------------------------+
1 row in set (0.00 sec)
スポンサードリンク
Eではじまる MySQL の関数 / 暗号化関数

暗号化関数

スポンサードリンク

Eではじまる MySQL の関数

ENCODE 復号化パスワードを指定して暗号化する
ENCRYPT Unix、Linuxのcrypt()を使用して暗号化する