SSL(Secure Socket Layver)은 보안에 취야한 TCP 통신에 인증, 무결성, 기밀성, 부인방지를 제공하는 프로토콜이다. 

웹 보안 통신의 기본 프로토콜로 HTTPS(http over ssl)로써, 443/tcp 포트를 사용하고, 현재는 TLS 로 용어가 통일 되어 있다. 서버인증 및 클라이언트 인증, 데이터 암호화 기능을 제공한다. 

 

SSL 프로토콜 

 

• SSL Handshake - 세션 초기화 ( 클라이언트와 서버 연결 성립 )
• SSL Change Cipher Spec - 상호 암호 통신을 위한 보안 알고리즘 정보 협의
• SSL Alert - 핸드쉐이크 과정 중 호환성 지원 불가한 경우 오류 통보
• SSL Record Layer - 실제 데이터를 담고 있는 부분

 

 

• SSL Handshake

   - 상호간의 신뢰성 검증을 위한 SSL 통신 연결 과정 

 

[SSL Handshake]

 

 

• 인증서(Certificate)
   - 제 3자의 클라이언트와 서버 사이의 통신 보증을 지원하는 전자화된 문서

   - 공개키 전달, 서버의 신뢰성 확인 역할
   - 구성요소: 서비스 정보(CA, 도메인) + 서버측 공개키
   - CA(Certificate Authority): 디지털 인증서를 발급하는 기관.

 

[사이트 인증서 확인]

 

[사이트 인증서 확인]
[사이트 인증서 확인]
[사이트 인증서 확인]

구글 인증서는 Google Trust Services - GlobalGign Root CA-R2 라는 CA 인증서에서 발급된 인증서 이다. 

해당 인증서는 기본적으로 OS 에 설치 되어 있기 때문에 Google 인증서의 계층 검증으로 유효 하다는걸 확인 할 수 있다. 

 

 

윈도우 인증서 관리 

 

윈도우는 certmgr.exe 프로그램으로 윈도우에 저장된 신뢰된 루트 인증서를 확인 할 수 있다. 

위 사진은 해당 구글의 CA 인증서가 존재하다는걸 확인 할 수 있다. 

 

 

[인증서 검증]

 

'개발 > 보안일반' 카테고리의 다른 글

ASN.1  (0) 2021.06.04

+ Recent posts