AWS CloudHSM을 사용한 SSL/TLS 오프로드 작동 방식
HTTPS 연결을 설정하기 위해 웹 서버는 클라이언트와의 핸드섀이크 프로세스를 수행합니다. 이 프로세스의 일환으로 서버는 다음 그림에 나온 것처럼 암호화 처리 일부를 AWS CloudHSM 클러스터의 HSM에 오프로딩합니다. 프로세스의 각 단계는 그림 아래 설명되어 있습니다.
참고
다음 이미지와 프로세스는 서버 확인 및 키 교환에 RSA가 사용된다고 가정합니다. RSA 대신 Diffie-Hellman을 사용하는 경우 프로세스가 약간 다릅니다.
-
클라이언트가 서버에 hello 메시지를 전송합니다.
-
서버는 hello 메시지로 응답하고 서버의 인증서를 전송합니다.
-
클라이언트는 다음 작업을 수행합니다.
-
클라이언트가 신뢰하는 루트 인증서로 SSL/TLS 서버의 인증서가 서명되어 있는지 확인합니다.
-
서버 인증서에서 퍼블릭 키를 추출합니다.
-
premaster secret을 생성하여 서버의 퍼블릭 키로 암호화합니다.
-
암호화된 premaster secret을 서버로 전송합니다.
-
-
클라이언트의 premaster secret 암호를 해독하기 위하여 서버가 이를 HSM에 전송합니다. HSM은 HSM에 있는 프라이빗 키를 사용하여 premaster secret을 암호화 해제한 다음 premaster secret을 서버로 전송합니다. 클라이언트와 서버는 각각 독립적으로 premaster secret과 hello 메시지의 일부 정보를 사용하여 master secret을 계산합니다.
-
핸드섀이크 프로세스가 종료됩니다. 세션의 나머지에서는 클라이언트와 서버 사이에서 전송되는 모든 메시지가 master secret의 파생문으로 암호화됩니다.
AWS CloudHSM을 사용하여 SSL/TLS 오프로드를 구성하는 방법은 다음 주제 중 하나를 참조하십시오.