SSL
정의
secure sockets layer 암호규약( =Transport Layer Security TLS)
TLS는 클라이언트 / 서버 응용 프로그램이 네트워크로 통신을 하는 과정에서 도청 간섭 위조를 방지하기 위해서 설계 되었고 암호화를 이용해 최종단의 인증 통신 기밀성을 유지
TLS 1.0은 SSL 3.0을 계송
SSL 인증서 정의
- SSL 인증서란 클라이언트와 서버간의 통신을 제 3자가 보증을 해주는 문서
- 클라이언트가 서버에 접속하면 서버는 클라이언트에게 인증서를 전달하면 클라이언트는 이 인증서를 보고 신뢰할수 있는지 확인 후 데이터를 보내는 등의 다음 절차를 수행
SSL 장점
- 전달되느 내용이 다른 사람에게 노출되는 것을 막를 수 있다
- 클라이언트가 접속하려는 서버가 신뢰할 수 있는 서버인지 알 수 있다.
- 전달되는 내용이 악의적으로 변경되는 것을 막을 수 있다
SSL 통신 과정
1. client hello
- 클라이언트가 생성한 랜덤 데이터, 사용가능한 암호화 방식 후보들을 서버에 전달
2. Server hello
- 서버가 생성한 랜덤 데이터, 서버가 선택한 클라이언트 암호화 방식, 인증서
인증서와 함께 공개키 , 서버에서 생성한 랜덤한 데이터, 가장 안전한 암호화 수단 방식
- 암호화 수단 방식은 클라이언트가 지원 가능한 암호화 방식 목록 중 선택
3. 인증서 확인 pre master secret 암호화
- 인증서가 CA에 의해서 발급된 것인지 화인(전자서명 활둉), 클라이언트와 서버가 생성한 랜덤 데이너를 조합해서 pre master secret 키 생성(대칭키로 활용 예정)
4. pre master secret
- 인증서 안에 들어있는 공개키를 이용하여 pre master secret 값을 암호화하여 서버로 전송
5. pre master secret 복호화
- 서버는 자신의 비공개 키로 복호화
6. master secret 및 session key(대칭키) 생성
- 서버와 클라이언트 모두 동일한 값을 생성
7. session key를 활용한 대칭키 암호화 방식 통신
8. 세션 종료 session key 폐기
통신을 위해서 핸드쉐이크 - 세션 - 세션 종료의 과정을 검침
암호화된 http 메시지를 교환하기 전에 클라이언트와 서버는 ssl 핸드훼이크를 진행한다
SSL 핸드웨이킹에서 핵심은 공개키와 대칭키 2가지 방법을 함께 사용한다는 것
출처 : SSL(Secure Sockets Layer) 개념 및 동작 원리 알아보기 (goodgid.github.io)
free float 계산 (PMP) 20220927 (0) | 2022.09.27 |
---|---|
IPSec VPN NAT PAT 20220926 (0) | 2022.09.26 |
IPSec VPN 사용 목적과 아키턱처 20220920 (0) | 2022.09.19 |
VPN 20220916 (0) | 2022.09.16 |
방화벽에서의 syn 관리 20220915 (0) | 2022.09.15 |
댓글 영역