SSL/TLS HandShake

JH·2022년 11월 20일
0

Computer Science

목록 보기
6/9

SSL/TLS

SSL(Secure Sockets Layer)은 안전한 인터넷 커뮤니케이션을 위해 설계된 인증 프로토콜이고,
TLS(Transport Layer Security)는 SSL의 향상된 버전이다.

SSL/TLS handshake

HTTPS 통신 과정에서 데이터를 암호화하고 전송하기 위한 협상과정이다.

협상 과정에서 아래 목록이 포함된다.

  • SSL 인증서 전달
  • 대칭키 전달
  • 암호화 알고리즘 결정
  • SSL/TLS 프로토콜 결정

어떻게 작동하는가?

  1. 클라이언트: 메세지 전송
  • SSL or TLS 버전
  • Cryptographic algorithms
  • 클라이언트 무작위 바이트 문자열
  1. 서버: 메세지 응답
  • 서버의 SSL 인증서 & 공개키
  • Cryptographic algorithm agreement
  • 서버 무작위 바이트 문자열
  1. 인증기관: 클라이언트가 CA를 통해 SSL 인증서 검증

  2. 클라이언트: 공개키로 암호화된 무작위 바이트 문자열(예비 마스터 암호)을 전송

  3. 서버: 개인키로 해독

  4. 클-서: 주고 받은 무작위 문자열을 이용해 세션키 생성

  5. 클라이언트: 세션키로 암호화된 완료 메세지 전송

  6. 서버: 세션키로 암호화된 완료 메세지 전송

➡️ 안전한 대칭 암호화 성공

참고

https://www.cloudflare.com/ko-kr/learning/ssl/what-happens-in-a-tls-handshake/
https://www.youtube.com/watch?v=sEkw8ZcxtFk

profile
매일 한 문제씩 풀기

0개의 댓글

관련 채용 정보