핸드 셰이크

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

무슨일이 일어난 걸까?

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

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

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

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

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

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

자 시작하자 얘들아.

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

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

끝!

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

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

한-번-더 !

멈춰!

단계 별로 천천히 하자.

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

나는 SSL / TLS 버전 및 암호화 알고리즘 목록을 컴퍼터그에게 보내.

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

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

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

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

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

나는 브라우저 버드가 보낸 것 중 가장 좋은 SSL / TLS 버전과 암호화 알고리즘을 내 선호도에 따라 선택해.

내 공개 키가 포함된 인증서로 회신하여 내가 누구인지 확인할 수 있어.

세 번째 단계 : 수직 샤카. AKA 클라이언트 키 교환.

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

나는 'pre-master key'를 생성해. 이 키는 나중에 양쪽 다 고유 키를 생성 할 때 사용할 수 있어.

'pre-master key'를 컴퍼그터의 공개 키로 암호화 한 다음 그에게 보내.

네 번째 단계: Shaka 수평 회전. AKA의 Cipher 스펙 변경

나는 개인 키를 사용하여 'pre-master key'의 암호를 해독해.

지금까지 그들의 의사소통은 공개되어있었어. 메세지를 보호하지 않았지.

그들은 비대칭 키 (공개 키 및 개인 키)를 사용하여 아무도 사전 마스터 키를 암호화해서 아무도 해석하지 못하도록했어.

이제 둘 다 대칭 키로 사용할 동일한 '공유 비밀'을 생성했어.
그리고 브라우저버드는 테스트를 보내.
컴퍼터그가 응답했어.
다섯번 째 단계 : 간질간질. AKA 모든 것의 확보
이제 브라우저버드와 컴퍼터그 사이의 모든 데이터는 남은 세션 기간동안 보호받아.

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

간단하, 그렇지?

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

다음편 HowHTTPS.works ...

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

계속해서 읽기