データベース/MySQL、PostgreSQL、SQLite

MySQLのENCODE関数を使用して暗号化

Web+DBプログラミングの基礎 MySQL5編 09 WEBの入力画面から入力されたデータをMySQLのENCODE関数を使用して暗号化し格納するプログラムを紹介します。

執筆者:堀江 美彦

Web+DBプログラミングの基礎 Apache + PHP + MySQL Version5編 Vol.09
暗号化プログラム

WEBの入力画面から入力されたデータをMySQLのENCODE関数を使用して暗号化し格納するプログラムです。

ENCODE関数

MySQLのENCODE関数は指定された文字列をパスワードにより暗号化します。
復号化(暗号化された文の暗号を解除すること)する場合はDECODE関数を使用します。

文法
ENCODE(暗号化する文字列,パスワード)

引数
暗号化する文字列
パスワード -- 文字列

戻り値
暗号化された文字列がバイナリ文字列で戻ります


9.1 プログラムの前準備

「encdectab」テーブルの構造

number --- 整数値
name --- blob(バイナリデータ)形式

サンプルプログラムで使用する「encdectab」テーブルを下記のSQLにより作成してください。

create table encdectes(number int(11),name blob);

「encdectab」テーブルを作成するSQLの実行結果

mysql> create table encdectes(number int(11),name blob);
Query OK, 0 rows affected (0.16 sec)

mysql> desc encdectes;
+--------+---------+------+-----+---------+-------+
| Field  | Type    | Null | Key | Default | Extra |
+--------+---------+------+-----+---------+-------+
| number | int(11) | YES  |     | NULL    |       |
| name   | blob    | YES  |     | NULL    |       |
+--------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)


MySQL Version5関連記事一覧

Web+DBプログラミングの基礎 Apache + PHP + MySQL Version5編の記事一覧

Web+DBプログラミングの基礎 Apache + PHP + MySQL/PostgreSQL FAQ 一覧


あわせて読みたい

あなたにオススメ