dev.Log
HTTPS와 SSL 인증서 본문
HTTP: Hypertext Transfer Protocol
링크(hypertext)로 연결되어 있는 HTML을 전송하기 위한 통신규약을 의미한다.
HTTPS -> S (Over Secure Socket Layer) 보안이 강화된 HTTP
HTTPS는 SSL 프로토콜 위에서 돌아가는 프로토콜이다.
SSL == TLS
SSL 디지털 인증서 : 클라이언트와 서버간의 통신을 제 3자가 보증해주는 전자화된 문서이다.
-통신 내용이 공격자에게 노출되는 것을 막을 수 있다.
-클라이언트가 접속하려는 서버가 신뢰할 수 있는 서버인지를 판단할 수 있다.
-통신 내용의 악의적인 변경을 방지할 수 있다.
인증서의 역할
1.클라이언트가 접속한 서버가 신뢰할 수 있는 서버임을 보장한다
2.SSL 통신에 사용할 공개키를 클라이언트에게 제공한다.
CA(Certificate authority)
1.Symantec
2.Comodo
3.GoDaddy
4.GlobalSign
사설 CA의 인증서를 이용하는 경우, 브라우저는 경고를 출력한다..
SSL인증서의 내용
1.서비스의 정보 ( 인증서를 발급한 CA )
2.서버 측 공개키
브라우저는 내부적으로 CA의 리스트를 미리 파악하고있다. 브라우저의 소스코드안에 CA의 리스트가 들어있다.
브라우저가 미리 파악하고 있는 CA의 리스트 안에 포함되어야만 공인된 CA가 될 수 있다.
CA의 리스트와 함께 각 CA의 공개키를 브라우저는 미리 알고있다.
웹 브라우저가 서버에 접속할 때 서버는 제일 먼저 인증서를 제공하는데, 브라우저는 이 인증서가 자신의 CA리스트에 있는지 없는지 확인한다. 포함되어있다면 인증기관의 공개키를 가지고있기때문에 복호화하게된다. (이것은 이 인증서가 CA의 비공개키에 의해서 암호화 된 것을 의미한다)
클라이언트와 서버가 주고 받는 실제 정보 : 대칭키
대칭키의 키 : 공개키

'Web' 카테고리의 다른 글
| Apache와 Nginx의 차이점 (3) | 2024.05.08 |
|---|---|
| HTTP 상태코드 401(Unauthorized) vs 403(Forbidden) 차이 (0) | 2022.11.09 |
| HTTP (0) | 2022.10.08 |
| 왜 Web을 호스팅하는 대부분의 서버들은 Linux를 이용할까? (0) | 2021.08.05 |
| 웹성능높이기 (0) | 2020.06.30 |