データを暗号化および復号化する独自の関数を作成する場合は、 DBMS_CRYPTO
encrypt
およびdecrypt
適切なパラメータを持つメソッド(つまり、暗号化アルゴリズム、キーなどを選択します)。
もちろん、独自のルーチンを作成する場合、データベースまたはデータベースがアクセスできる場所にキーを格納すると仮定すると、セキュリティのために多くのことをしているわけではありません。暗号化されていないパスワードをネットワーク経由で送信するのは悪いことですが、暗号化されていないパスワード(またはdecrypt
がある場合は暗号化されたパスワード)をデータベースに保存することは一般的にはるかに悪いことです。 データを復号化するためのキーにアクセスできるデータベース内のメソッド)。一般に、パスワードを見つけるためにネットワーク経由で送信されるデータを盗聴するよりも、データベースからデータを盗む方がはるかに簡単です。
もちろん、正しい答えは、パスワードをまったく保存しないようにシステムを再設計することです。パスワードハッシュを保存する必要があります(DBMS_CRYPTO
を使用して生成することもできます) パッケージ)は元に戻せません。