PHP でアプリケーションを作成していますが、将来ユーザー データベースを別のシステムに切り替える際の問題を回避するために、パスワードを復号化できる必要があります。この将来のシステムのパスワード方式を変更することは不可能であり、パスワードを生成するには平文のパスワードが必要であると考えてください。
サーバーに保存されている公開鍵を使用して、ユーザーのパスワードを暗号化する計画です。認証は、入力を暗号化し、結果を比較することによって行われます。復号化は行われません。復号化可能な秘密鍵は、後で使用するためにオフサイトに保存されます。
どの暗号化/復号化アルゴリズムを提案しますか? 攻撃者が秘密鍵を利用できないと考える場合、暗号化されたパスワードはハッシュ (MD5/SHA1) と同じくらい安全ですか?