SSL/TLS オフロードが AWS CloudHSM と連携する仕組み
HTTPS 接続を確立するため、ウェブサーバーはクライアントとハンドシェークプロセスを実行します。次の図に示すように、このプロセスの一環として、サーバーはいくつかの暗号化処理を AWS CloudHSM クラスター内の HSM にオフロードします。プロセスの各ステップについて、図の下に説明があります。
注記
次のイメージとプロセスでは、サーバーの検証とキーの交換に RSA を使用することを想定しています。RSA の代わりに Diffie-Hellman を使用する場合、手順が若干異なります。
-
クライアントはサーバーに Hello メッセージを送信します。
-
サーバーは Hello メッセージで応答し、サーバーの証明書を送信します。
-
クライアントは以下のアクションを実行します。
-
SSL/TLS サーバーの証明書がクライアントの信頼するルート証明書により署名されていることを確認します。
-
サーバーの証明書からパブリックキーを抽出します。
-
プリマスタシークレットを生成し、サーバーのパブリックキーで暗号化します。
-
暗号化されたプリマスターシークレットをサーバーに送信します。
-
-
クライアントのプリマスターシークレットを復号するため、サーバーはそれを HSM に送信します。HSM は、HSM のプライベートキーを使用してプリマスターシークレットを復号し、プリマスターシークレットをサーバーに送信します。クライアントとサーバーはそれぞれ独立してプリマスターシークレットおよび Hello メッセージからのいくつかの情報を使用して、マスターシークレットを計算します。
-
ハンドシェイクプロセスは終了します。残りのセッションでは、クライアントとサーバーの間で送信されたすべてのメッセージは、マスターシークレットのデリバティブで暗号化されます。
AWS CloudHSM を使用して SSL/TLS オフロードを設定する方法については、以下のいずれかのトピックを参照してください。