通常、「128ビット暗号化」とは、128ビットキーを使用した 対称暗号化を指します。AES -128は、暗号化アルゴリズムに最適です。
また、操作モードを選択する必要があります。プライバシーのみが必要な場合は、CBC、CFB、OFB、CTRがすべて適切な選択ですが、データを改ざんから保護する場合は、EAXなどの認証済み暗号化モードを使用する必要があります。 。すべてのレコードが単一のAESブロック(128ビット)よりも短い場合を除いて、ECBモードを使用しないでください。できれば、そうでない場合もあります。
選択したモードによっては、通常、レコードごとに初期化ベクトル(IV)を生成する必要があります。これは、一意で予測不可能なランダム暗号ブロック(AESの場合は128ビット)である必要があります。1つを生成する方法はたくさんありますが、2つの優れた方法(NISTが推奨)は、暗号的に安全な疑似乱数ジェネレーターの出力を使用するか、ECBモードで一意のIDを暗号化することです(これは、問題がないまれなケースの1つです)。使用する)。使用している暗号ライブラリによっては、これを処理してくれる場合があります。レコード内の暗号化されたデータを変更する場合は、常にIVも変更する必要があることに注意してください。
他の回答が指摘しているように、PHPを使用している場合は、暗号ライブラリにmcryptが適しています。