私の質問は簡単です。MySQL での非対称 (公開/秘密キー) 暗号化のための AES_ENCRYPT / AES_DECRYPT などの組み込み機能はありますか?
悲しいことに、私はPHP(PHPで暗号化するため)などの答えしか見つけられません。アプリケーションロジック全体がプロシージャによって処理されるため、MySQL に保持したいと思います。また、この問題を解決するために外部言語を導入することで、それを台無しにしたくありません。
私の質問は簡単です。MySQL での非対称 (公開/秘密キー) 暗号化のための AES_ENCRYPT / AES_DECRYPT などの組み込み機能はありますか?
悲しいことに、私はPHP(PHPで暗号化するため)などの答えしか見つけられません。アプリケーションロジック全体がプロシージャによって処理されるため、MySQL に保持したいと思います。また、この問題を解決するために外部言語を導入することで、それを台無しにしたくありません。
MySQL 内には RSA 暗号化の機能はありません。これは一種の奇妙な使用例なので、MySQL 関係者はおそらくそれを実装するのに適していないと考えています。
アプリケーション層で RSA 操作を実行し、結果をプロシージャに渡す必要があります。
できることは次のようなものです。pub/priv キーを使用して複数のユーザー間で共有シークレットを作成し、その共有シークレットを AES 対称キーとして使用して、mysql のデータのロックを解除します。
これが意味することは、共有秘密を知ることは決してないので、安全なデータを維持しながら、mysql の組み込みの AES 暗号化機能を便利に利用できるということです。
例えば:
@Peter Elliottに非常に同意します。しかし、回答の一部として、MySQL Enterprise Encryption が次のような機能を提供することを追加したいと思います。
MySQL Enterprise Encryption は、DBA および開発者に必要なツールを提供します。
詳細については、 MySQL Enterprise Encryptionをご覧ください。これがお役に立てば幸いです。