1
DBフィールドにAES暗号化データを保存したいと考えています。CipherTextの先頭に追加されたAES IVをDBに格納するのは安全ですか?
暗号文の前に付加されたAES IV(各行に固有のもの)を保存するのは安全ですか?例えば
IV_CipherText
両方ともBase64でエンコードされます。
使用されたキーはデータベースに保存されません。
DBフィールドにAES暗号化データを保存したいと考えています。CipherTextの先頭に追加されたAES IVをDBに格納するのは安全ですか?
暗号文の前に付加されたAES IV(各行に固有のもの)を保存するのは安全ですか?例えば
IV_CipherText
両方ともBase64でエンコードされます。
使用されたキーはデータベースに保存されません。
安全です。初期化ベクトルの目的は、結果の暗号にいくらかのランダム性を挿入することです(同じメッセージが同じ暗号になることはありません)。それは単に予測不能でなければならない。
データベースに公開することができます。多くの場合、メッセージの最初のバイトに追加されます。このように、統計的な攻撃を避けるために存在します。
*「これは予測不可能でなければなりません」* - はい。ただし、このアドバイスはすべてのモードで機能するわけではありません。 CBCモードでは予期しないIVが示唆されていますが、CTRモード*ではほぼすべてのストリーミングモードと同様に固有のIV(実際にはナンスと呼ばれます)が必要です。 @ArtjomB。 –
ありがとうございました。良いと重要なポイント。 –