티스토리 뷰
1. HTTPS: 보안의 기초
1.1 HTTPS와 SSL/TLS
: HTTPS (Hypertext Transfer Protocol Secure)은 HTTP를 기반으로 하는 보안 프로토콜
: 데이터를 암호화하여 전송함으로써 중간에서의 데이터 탈취나 변조를 방지
: HTTPS는 SSL (Secure Sockets Layer) 및 TLS (Transport Layer Security) 프로토콜을 사용하여 보안을 보장
- SSL/TLS는 암호화, 서버 인증, 데이터 무결성을 제공
- but, HTTPS는 암호화/복호화 작업을 처리하는 데 서버 자원을 많이 소모
2. SSL Offloading/Termination
2.1 SSL Termination
: WAF를 통해 구현
: 리버스 프록시나 로드 밸런서에서 HTTPS 연결을 종료하고 SSL/TLS 암호화/복호화 작업
=> 결과를 HTTP로 웹 서버에 전달
=> WS-Proxy사이에는 http통신
- 장점:
- WS는 암호화된 연결을 처리X -> 서버 자원 절약
- 암호화된 요청을 리버스 프록시에서 종료, 후속 요청은 HTTP로 처리-> 성능 최적화
편하다! 일해라 핫산 - SSL 인증서 관리가 중앙화 -> 간편한 인증서 갱신 및 관리
3. TLS Session Resumption
: TLS Handshake 과정에서 발생하는 성능 문제 해결 목적
- TLS Handshake: 클라이언트와 서버가 서로를 인증하고 암호화 키를 교환하는 과정으로 엄청 복잡..
(-) TLS 연결을 설정할 때마다 새 Handshake 과정 -> 자원 낭비 및 오버헤드 초래
3.1 TLS Session Resumption: 재연결 최적화
: 기존 TLS Handshake가 수립되었다면, 새로운 과정 생략 => 이미 설정된 세션 정보를 재사용하는 방식
- Session ID 기반 재개
- 세션 ID는 클라이언트와 서버가 연결을 설정할 때 주고받은 값
- 클라이언트가 캐싱 -> 재연결에서 이를 서버에 전달 시, 기존 세션을 재사용 가능 - Session Ticket 기반 재개
- 세션 티켓은 서버가 클라이언트에 전달하는 암호화된 세션 정보
- 클라이언트가 캐싱 -> 재연결에서 이를 서버에 전달 시, 기존 세션을 재사용 가능
=> 서버가 세션 정보를 저장X, 서버 자원 절약
3.2 TLS Session Resumption의 장점
- 기존의 세션을 재사용하여
1) 성능 향상
2) 자원 절약
3) 빠른 서비스 속도
참고:
https://blog.naver.com/n_cloudplatform/222175960924