본문으로 바로가기

HTTP / HTTPS 와 SSL(TLS)

category 프로그래밍 & IT/보안 2017. 9. 6. 14:28
반응형

최신 버전의 크롬을 사용하는 사람들은 웹 사이트들을 사용하면서 주소창 가장 좌측에 경고 표시를 종종 볼 수 있을 것이다. 이 블로그도 마찬가지로 주소 옆에 느낌표 모양의 경고가 달려있다. 느낌표를 클릭해 보면 이 사이트는 안전하지 않은 사이트라는 정보가 팝업된다.

언제부터인가 크롬은 HTTPS를 사용하지 않는 사이트들에 대해 경고를 노출시키고 있다. 즉, 웹을 사용하는 사용자들에게 일반 HTTP는 안전하지 않으니 주의하라고 명확하게 알려주고 있는 것이다.

그렇다면 HTTP와 HTTPS는 어떤 차이가 있는 것이고, SSL/TLS는 또 무엇인지에 대해 알아보자.



1. HTTP와 HTTPS


HTTP는 Hypertext Transfer Protocol의 약어이다. Hypertext 즉, HTML을 전송하는 통신 프로토콜을 의미하는 것이다. HTTPS는 여기에 S가 더 붙었다. HTTPS의 약자는 Hypertext Transfer Protocol over Secure Socket Layer 이다. HTML통신 규약이긴 한데 그게 Secure Socket Layer(SSL)위에서 이루어 지는 것이다.



위 그림처럼 HTTP 통신이 SSL(TLS) Layer 위에서 이루어 지는 것을 HTTPS라고 한다.

쉽게 말하면 어떤 보안 체계 위에서 이루어지는 HTTP라고 할 수 있다.



2. SSL(TLS)


SSL은 Secure Sockets Layer의 약자이다. 일반적인 인터넷 프로토콜은 보안적으로 기밀성을 유지하지 못한다. 이를 보완하기 위해 인터넷에서 데이터를 안전하게 전송하기 위한 통신 규약 프로토콜이다. SSL 위에서 HTTP가 동작하면 HTTPS가 되고, FTP가 동작하면 SFTP가 된다. (꼭 HTTPS만을 위한 것이 아니라는 것이다.)


자신의 서버에 SSL을 설치하려 하거나, HTTPS 프로토콜 관련한 에러가 발생했을 때 TLS(Transport Layer Security)라는 용어를 자주 볼 수 있다.

TLS는 SSL과 같은 것이라고 생각해도 무관하다.


네스케이프가 SSL을 만들었고, SSL이 확산되다가 국제 표준화 기구인 IETF로 넘어가며 TLS로 이름이 변경되었다. 즉, TLS가 SSL을 계승하게 된 것이다. 공식적으로 사용되는 메시지에는 TLS라는 용어가 훨씬 더 많이 사용되지만, 일반적으로 사람들끼리 주고받는 용어로는 SSL이 더 많이 사용된다.

그냥 같은 것이라고 생각해도 좋다.





반응형

 Other Contents