データベースに保存されている電子メール アドレスを、保存する前に AES を使用して暗号化しています。電子メールがデータベースに既に追加されているかどうかを確認できるようにしたいと考えています。つまり、同じ入力メールに対して呼び出しを行うとencrypt(email)
、結果は常に同じでなければならないということです。
私は現在、目的の結果が得られる定数 IV を使用して CFB モードを使用してこれを行っています。この電子メール フィールド以外の aes 暗号化については、別のキーとランダム IV を使用しています。これは、AES CFB 暗号化の推奨される方法です。
私の質問は次のとおりです。
- このユースケースに最適な AES モードはどれですか?
- 同じ IV を再利用するとどの程度の損害が発生しますか?
- 電子メールを暗号化してデータベースに保存することは悪い習慣と見なされていますか? またその理由は? (そもそもデータベースが適切に保護されていると仮定します)