MySQL @Wiki 実用リファレンス
DES_ENCRYPT
最終更新:
Bot(ページ名リンク)
-
view
DES_ENCRYPT
DES_ENCRYPT(string_to_encrypt [, (key_number | key_string) ] )
指定されたキーを使用して、Triple-DES アルゴリズムによって文字列の暗号化を解除する。
注意: この関数は、MySQL で SSL のサポートが組み込まれている場合にのみ機能する。
使用する暗号化キーは次の方法で選択される。
注意: この関数は、MySQL で SSL のサポートが組み込まれている場合にのみ機能する。
使用する暗号化キーは次の方法で選択される。
| 引数 | 説明 |
| 引数が 1 つだけ | des-key-file ファイル内の最初のキーを使用。 |
| キー番号 | des-key-file ファイル内の、指定されたキー(0 〜 9)を使用。 |
| 文字列 | key_string に指定された文字列を使用して string_to_encrypt の暗号化を解除。 |
関数の結果として、バイナリ文字列が返される。この文字列の最初の文字は CHAR(128 | key_number) になる。
128 は暗号化されたキーを見分けやすくする目的で追加される。 文字列キーを使用すると、key_number は 127 になる。
エラー時には、NULL が返される。
結果の文字列長は new_length= org_length + (8-(org_length % 8))+1 になる。
des-key-file の形式は次のとおり。
128 は暗号化されたキーを見分けやすくする目的で追加される。 文字列キーを使用すると、key_number は 127 になる。
エラー時には、NULL が返される。
結果の文字列長は new_length= org_length + (8-(org_length % 8))+1 になる。
des-key-file の形式は次のとおり。
key_number des_key_string key_number des_key_string
各 key_number は 0 〜 9 の範囲の番号でなければならない。ファイル内の行は任意の順序にすることができる。des_key_string は、メッセージの暗号化に使用する文字列。番号とキーの間には、1 つ以上のスペースを挿入する。最初のキーは、DES_ENCRYPT() にキー引数を何も指定しない場合に使用されるデフォルトのキー。
FLUSH DES_KEY_FILE コマンドを使用すると、MySQL にキーファイルから新しいキー値を読み取らせることができる。このコマンドを使用するには、Reload_priv 権限が必要になる。
デフォルトキーのセットを用意しておく利点の 1 つは、暗号化されたカラム値が存在するかどうかアプリケーションでチェックできることである。この場合、それらの値を解読する権利をエンドユーザに与える必要はない。
FLUSH DES_KEY_FILE コマンドを使用すると、MySQL にキーファイルから新しいキー値を読み取らせることができる。このコマンドを使用するには、Reload_priv 権限が必要になる。
デフォルトキーのセットを用意しておく利点の 1 つは、暗号化されたカラム値が存在するかどうかアプリケーションでチェックできることである。この場合、それらの値を解読する権利をエンドユーザに与える必要はない。
mysql> [[SELECT]] customer_address FROM customer_table WHERE
crypted_credit_card = DES_ENCRYPT("credit_card_number");