핸드 셰이크

이 만화를 읽기 시작하면서 브라우저의 주소 표시 줄에 녹색 자물쇠가 보일꺼야.

무슨일이 일어난 걸까?

너의 브라우저는 이 만화가 호스팅되는 서버와 통신했으며, 양쪽 다 메시지 전송을 위한 보안 연결을 설정했어.

그러나 먼저, 서버와 브라우져는 안전하게 의사 소통하는 방법에 동의해야해.

만약 협상에 실패하면 오류 또는 경고를 표시하여 브라우저에서 알려줘.
협상에 성공 하면 브라우저 주소 표시 줄에 녹색 자물쇠가 표시돼.

브라우저와 서버 간의 협상 프로세스를 '핸드 셰이크'라고해.

협상은 매우 빨리 진행돼. 우리가 협상의 과정이 어떻게 작동하는지 보여줄게.

브라우져버드가 너의 브라우저의 역할을 할꺼야.
컴퍼그터는 서버라고 생각하자.

자 시작하자 얘들아.

준비됬어? 천천히 살펴보는 '핸드 셰이크'는 다음과 같아.

왼쪽 박수
오른쪽 박수
수직 샤
샤카 수평 회전
간질간질

끝!

한번 더 해볼게 대신 빠르게.

왼쪽 박수 - 오른쪽 박수 - 샤카 - 샤카 회전 - 간질간질

한-번-더 !

멈춰!

단계 별로 천천히 하자.

첫 번째 단계 : 왼쪽 박수. AKA 클라이언트야 안녕.

저는 Compugter에게 사용할 수 있는 SSL/TLS 버전과 암호화 알고리즘 목록을 보냅니다. 요즘은 TLS 1.3을 선호하므로 key_share도 함께 보냅니다.

암호화 알고리즘 목록의 멋진 단어는 'cipher suite'야.

저녁 식사에서 전문가처럼 보일 수 있어.

SSL 및 TLS 프로토콜은 시간이 지남에 따라 발전했으며, 자세한 이야기는 곧 해줄게.

그런 다음 컴퍼터그의 답변을 기다릴게.

두 번째 단계: 오른쪽 박수. AKA 서버야 안녕.

저는 TLS 1.3과 암호 스위트를 선택하고 key_share도 반환합니다. 여기서부터 TLS 1.3은 나머지 핸드셰이크를 암호화합니다.

곧바로 제 인증서를 보내는데, 여기에 제 공개키가 포함되어 있어 상대가 제 신원을 확인할 수 있습니다.

3단계: 수직 샤카. 일명 Key Share.

컴퍼터그의 인증서가 합법적인지 확인해.

앞서 서로 key share를 보냈기 때문에, 둘 다 같은 비밀을 도출할 수 있어 기밀성이 확보됩니다.

4단계: 샤카 수평 회전. 일명 Finished 메시지.

ServerHello(2단계) 이후부터 핸드셰이크는 암호화됩니다.

두 측은 Finished 메시지를 교환하여 같은 비밀을 도출했음을 증명하고 — 한 번의 왕복으로 세션 키가 준비됩니다.

다섯번 째 단계 : 간질간질. AKA 모든 것의 확보
이제 브라우저버드와 컴퍼터그 사이의 모든 데이터는 남은 세션 기간동안 보호받아.

비밀번호, 신용 카드 정보, 모든 것.

간단하, 그렇지?

다음번에 안전하게 HTTPS를 통해 웹 사이트에 연결할 때는 브라우저에 샤카를 제공해줘 이제 비밀 핸드 셰이크를 알고 있으니까.

다음편 HowHTTPS.works ...

HTTPS, SSL, TLS, 이런! 나는 점심으로 약어 수프를 먹었어. 이게 무엇을 의미일? 이것들이 다 같은 것일까?

계속해서 읽기