<aside> ⭐ 6주차 주제: HTTP와 HTTPS, URI, URL, URN, 포트와 소켓
</aside>
The Hyper Text Transfer Protocol (HTTP) 는 기본적으로 하이퍼미디어 문서를 전송하는 네트워크 프로토콜 입니다. 사람이 읽을 수 있도록 브라우저와 서버 사이에 존재합니다.
https:/www.naver.com 라는 주소는 HTTP 프로토콜을 사용하여 문서를 요청하도록 브라우저에 명시한다는 것을 의미합니다.
URL의 일부로, "https://"는 일반적으로 주소의 시작 부분으로서 위치합니다. 이때, https 는 HTTP 프로토콜의 보안 버전인 SSL(=TLS)를 나타냅니다.
대부분의 웹사이트들에는 HTML을 기반으로 만들어지는데, HTTP의 역할이 HTML문서를 주고받을 수 있게하는 것이기 때문입니다.
일반 HTTP 프로토콜의 문제점은 서버에서부터 브라우저로 전송되는 정보가 암호화되지 않는다는 것이었는데요. 이 말은 즉, 데이터가 쉽게 도난당할 수 있다는 것이었습니다.
두 프로토콜 모두 HTML문서를 주고받는 역할은 같지만 둘의 차이는 인증서의 유무입니다. HTTPS는 HTTP protocol의 암호화된 버전이라고 보시면 됩니다. 이것은 클라이언트와 서버 간의 대화를 암호화 하기 위하여 SSL이나 TLS을 사용합니다.
SSL 인증서는 클라이언트가 서버에 제공하는 정보를 암호화합니다. 이렇게 전송된 데이터는 중간에서 누군가 훔쳐 낸다고 하더라도 데이터가 암호화되어있기 때문에 해독할 수 없습니다. 그 외에도 HTTPS는 TLS(전송 계층 보안) 프로토콜을 통해서도 보안을 유지합니다.
SSL와 TLS는 클라이언트가 민감한 정보를 서버와 안전하게 주고받도록 해줍니다.
둘의 차이점 | SSL | TLS |
---|---|---|
정의 | 웹 사이트와 사용자 간에 보안 통신을 위한 프로토콜 | SSL이후 등장한 SSL을 보완한 표준 프로토콜 |
보안 | 취약점 존재 | 보안성 개선 |
암호화 방식 | 고정된 방식 | 유동적인 방식으로 업그레이드 가능 |
2014년 구글의 권고로 인하여, HTTPS가 더 많아졌습니다. 주로 민감한 개인 정보를 다루는 금융 활동(신용카드 정보), 온라인 쇼핑, 공공기관 사이트의 경우 HTTPS를 사용하고 있습니다.