serialize
独自のクラスでActiveRecord メソッドを使用していAESCoder
ます。これは、毎回ランダムな初期化ベクトルで aes-256-cbc を使用します。この初期化ベクトルは、データベースに格納するときにフィールドの先頭に追加され、もちろん逆シリアル化する前に抽出されます。
さて、このスキームにより、これらの属性に対してファインダーを使用できなくなります。必要なすべての行を選択する必要があります。これは自動的に復号化されselect
、アイテム リストでルビを実行します。もちろん、これはパフォーマンスの大きなボトルネックであり、このアプリケーションでは許容できません。
1 つの解決策は、ランダムな IV を使用しないことですが、aes-256-cbc は安全ではなくなります。
ここで何かを見落としていますか?