どのように MySQL で SSL が使用されるのかを理解するには、SSL と X509 の基本概念についていくつか説明する必要があります。これらの概念に精通しているユーザーは、説明のこの部分をスキップできます。
MySQL のデフォルトでは、クライアントとサーバー間で暗号化されていない接続が使用されます。つまり、ネットワークへのアクセス権を持っているユーザーは、すべてのトラフィックを監視し、送受信されるデータを調査できます。クライアントとサーバー間で送受信中のデータでも変更できます。
セキュアな方法でネットワーク経由で情報を移動する必要がある場合は、暗号化されていない接続が許可されません。暗号化は、すべての種類のデータを読み取り不可にする方法です。暗号化されたメッセージの順序を変更したり、データを 2 回再生したりするなどの、多くの種類の既知の攻撃に対抗するために、暗号化アルゴリズムには、セキュリティー要素を含める必要があります。
SSL は、パブリックネットワーク経由で受信したデータを信頼できるようにするために、さまざまな暗号化アルゴリズムが使用されたプロトコルです。すべてのデータの変更、損失、または再生を検出するためのメカニズムが備わっています。SSL には、X509 標準を使用してアイデンティティーを検証するアルゴリズムも組み込まれています。
X509 を使用すると、インターネット上の人物を識別できます。電子商取引アプリケーションで、もっとも一般的に使用されます。基本的な用語には、必要とするすべてのユーザーに電子証明書を割り当てる「認証局」 (CA) と呼ばれるエンティティーがいくつか存在するはずです。証明書は、2 つの暗号化鍵 (公開鍵と秘密鍵) を持つ非対称の暗号化アルゴリズムに依存しています。証明書の所有者は、アイデンティティーの証明として別のパーティーに証明書を表示できます。証明書は、所有者の公開鍵で構成されます。この公開鍵を使用して暗号化されたデータはすべて、対応する秘密鍵 (証明書の所有者が保持しています) を使用しなければ復号化できません。
SSL、X509、暗号化、または公開鍵暗号についての詳細は、インターネット検索を実行して関心のあるキーワードを調べてください。