1

現在、Oracle 10g を使用しています。DBMS_CRYPTO パッケージを使用して、ログイン用のユーザーのパスワードを暗号化します。データを暗号化または復号化するには、キーが必要です。では、他の開発者からキーを隠すためにキーをどこに置く必要がありますか、または復号化できずにデータを暗号化する別の方法はありますか?

SQL Server では、PWDENCRYPT 関数を使用して暗号化するだけで、ユーザーが入力したデータが正しいかどうかを比較する場合は、PWDCOMPARE を使用します。アドバイスをお願いします。ありがとうございました。

4

1 に答える 1

4

キーを他の開発者から隠すには、この記事が役立つことを願っています。キー管理に関するセクションが含まれています。

http://www.oracle.com/technology/oramag/oracle/05-jan/o15security.html

暗号化を解除せずにデータを暗号化するには、一方向ハッシュを調べることをお勧めします。Oracle はこれを DBMS_CRYPTO.HASH の形式で提供します。これは簡単に使用できます (ここで説明されているように)。

SQL> select SYS.DBMS_CRYPTO.HASH('FFFFFF',1) from dual;
7D91F6D9BE28A9756B0D2F11D3AF4F0C

次に、ハッシュのみをデータベースに保存します。ユーザー入力のハッシュが保存されたハッシュと一致する場合、パスワードを確認できますが、パスワードを取得することはできません。

于 2008-11-18T10:18:52.380 に答える