私たちは機密データをMySQLに保存していますが、AES_ENCRYPT(data、 'my-secret-key-here')を使用してAES_DECRYPTを使用します。私の最大の疑問は、鍵をどのようにして保護するかです。以前私はワストウェブPHPファイル内のキーを格納し、そのような何か:誰かがアクセス権を取得ので、もし私たちのMySQLサーバとWebサーバが、同じ物理マシンあるようAES_ENCRYPTを使用してMySQLでデータを安全に保存する方法
define("ENCRYPTION_KEY", 'my-secret-key-here');
は、これは本当に、しかし動作しません。サーバーには、MySQLに格納された暗号化されたデータとキーの両方を取得できます。
アイデア?私は別のサーバーにキーを移動し、リモートでそれを読む必要があると思っています。あるいは、各データに対して暗号鍵を動的に生成することはどうでしょうか?たとえば、customer_idを取得してmd5を実行し、それをキーとして使用します。
特定のファイルのアクセス許可を教えてください。 – mozgras