MySQL ver5


需要データをオンライン上で管理するため、MySQLにデータを暗号化して格納しようと思っているのですが、その際MySQLのENCODE関数を利用して暗号化し、DECODE関数を利用して復号しようと考えているのですが、安全性に関しては大丈夫でしょうか?(十分な暗号強度がありますでしょうか?

ちなみにサーバーにPECLなどのプラグインなどをインストールできないので、MySQL又はPHPの固有の機能を利用して復号できる暗号化方法でなければなりません。

安全性に関してENCODE関数よりも良い方法又はENCODE関数を使用する際のTIPSなどあれば教えて下さい。

回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2009/08/25 16:20:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:kn1967 No.1

回答回数2915ベストアンサー獲得回数301

ポイント35pt

MySQLにも必要十分な暗号化・復号化関数は用意されているので、

一時的に使うだけの暗号データであれば非常に有効。

MySQL :: MySQL 5.1 リファレンスマニュアル :: 11.10.2 暗号化関数と圧縮関数


しかしながら、長期的に公開サーバ上に置かれるデータにあっては、

紐解く時間も十二分に取れるため、何を持ってしても高い安全性の確保は難しく、

暗号化も大事だが、その前に、まずは他人はアクセスできないような状況を用意すべき。

id:esecua

2009/08/25 15:23:28
id:kmond2 No.2

回答回数31ベストアンサー獲得回数2

ポイント35pt

ENCODE/DECODEは乱数発生器による暗号/復号アルゴリズムです。

インプリメントされた環境に依存するので、暗号強度が必ずしも強いとは言えません。


そこで、AES_ENCRYPT/AES_DECRYPTを利用することをお勧めします。

AES暗号は、アメリカが標準暗号として採用しているように、かなり強い暗号化方式です。MySQLでは標準で128bitのキーが使えるので、DESや3DESといった暗号化方式より強いと言われています。


MySQLリファレンスマニュアル「11.10.2. 暗号化関数と圧縮関数」

http://dev.mysql.com/doc/refman/5.1/ja/encryption-functions.html

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません