용어 뜻:
출처:
SSL(Secure Socket Layer)은 넷스케이프사에서 전자상거래 등의 보안을 위해 개발하였다.
이후 TLS(Transport Layer Security)라는 이름으로 표준화되었다.
SSL은 특히 전송계층(Transport Layer)의 암호화 방식이기 때문에 HTTP 뿐만 아니라 NNTP, FTP, XMPP등 응용계층(Application Layer)
프로토콜의 종류에 상관없이 사용할 수 있는 장점이 있다.
기본적으로 Authentication, Encryption, Integrity를 보장한다.
SSL은 Certificate Authority(CA)라 불리는 서드 파티로부터 서버와 클라이언트의 인증을 하는데 사용된다.
아래는 SSL이 어떻게 작동하는지에 대한 간단한 과정을 설명한 것이다.
1. [웹브라우저] SSL로 암호화된 페이지를 요청하게 된다. (일반적으로 https://가 사용된다)
2. [웹서버] Public Key를 인증서와 함께 전송한다.
3. [웹브라우저] 인증서가 자신이 신용있다고 판단한 CA(일반적으로 trusted root CA라고 불림)로부터 서명된 것인지 확인한다.
Internet Explorer나 Netscape와 같은 웹브라우저에는 이미 Verisign, Thawte와 같은 널리 알려진 root CA의 인증서가 설치되어 있다.
또한 날짜가 유효한지, 그리고 인증서가 접속하려는 사이트와 관련되어 있는지 확인한다.
4. [웹브라우저] Public Key를 사용해서 랜덤 대칭 암호화키(Random symmetric encryption key)를 비릇한
URL, http 데이터들을 암호화해서 전송한다.
5. [웹서버] Private Key를 이용해서 랜덤 대칭 암호화키와 URL, http 데이터를 복호화한다.
6. [웹서버] 요청받은 URL에 대한 응답을 웹브라우저로부터 받은 랜덤 대칭 암호화키를 이용하여 암호화해서 브라우저로 전송한다.
7. [웹브라우저] 대칭 키를 이용해서 http 데이터와 html문서를 복호화하고, 화면에 정보를 뿌려준다.
위키백과 2016-10-13 https://ko.wikipedia.org/wiki/SSL
kldp 위키 2016-10-13 https://wiki.kldp.org/HOWTO/html/SSL-Certificates-HOWTO/x70.html
댓글
댓글 쓰기