名前や住所などの機密性の高いユーザーデータを mysql データベースに保存したいと考えています。
私の主な質問は、暗号化されたデータを含むデータベースを検索する方法です。
誰かがコンピューターを盗んだ場合、データがプレーンテキストで保存されている場合は良くないので、phpファイルに保存されているキーで暗号化したい. PHPファイルはioncubeでエンコードされているため、PHPコード内のキーは(かなり)安全です。
一方で、ユーザー名とアドレスについて、Web フロントエンドからアプリケーションにクエリを実行できるようにしたいと考えています。
私の最初のアイデアは、データを保存する前にデータを暗号化することでした。検索ページでは、ユーザーデータベース全体を読み取って完全に復号化する必要があるため、php で結果を検索できます。
しかし、大規模なユーザーデータベースの場合、これは非常にメモリを消費します。
追加情報:
すでにパスワードを暗号化しているため、その解決策は必要ありません。
サーバー構成 (ディスク暗号化など) を変更できないため、php と mysql での解決策が必要です。サーバーは古い ubuntu 9 インストールであり、非常に安全ではありませんが、ここでは説明しない理由で変更できません。