2

サーバーのデータベースにいくつかのパスワードを保存したいと考えています。

パスワードを必要とするサードパーティの API にパスワードを使用したいので、パスワードは回復可能である必要があります。(そのため、md5 のような一方向のメソッドは使用できません...)

データベースにパスワードを保存する最良の方法は何ですか? プレーンテキストを保存するよりも良い方法はありませんか?

4

1 に答える 1

2

AESは暗号的に健全であり、おそらく新しいアプリケーションに選択される最も一般的な暗号化メカニズム (ハッシュとは対照的) です。

暗号化するパスワードごとにランダムな初期化ベクトル (IV) を生成し、キーと IV を暗号化されたパスワード バイトとは別に保存するように注意してください。

AES と Rijndael の違いを理解するには、チェックアウトしてください

http://blogs.msdn.com/b/shawnfa/archive/2006/10/09/the-differences-between-rijndael-and-aes.aspx

Rijndael と AES の公式 FIPS-197 仕様にはいくつかの違いがあります。

ユーザーごとに一意の IV を使用する必要があります。ただし、ユーザーごとのキーを格納すると、キー管理のシナリオが複雑になります。アプリケーション用に 1 つのキーと、ユーザーごとに IV をお勧めします。

IV は暗号文と一緒に保存できます。キーはデータベースの外部に保存する必要があります。

暗号化されたキーを web.config に保存できます。これを参照してください。

于 2012-07-24T17:07:25.990 に答える