방송통신위원회가 최근 불법 음란·도박 사이트 접속차단을 강화한 방식을 놓고 검열·감청 논란이 일고 있다. 늘 보지만 그 차이를 잘 몰랐던 http와 https, 그리고 DNS와 SNI 등의 생소한 단어도 등장했다. 이참에 우리가 인터넷에 접속하고 차단하는 방식을 정리한다. 

먼저 인터넷 사이트 접속 원리. 티타임즈에 접속한다고 해보자. PC나 스마트폰으로 인터넷 익스플로러나 크롬 같은 웹 브라우저를 켜고 주소창에 티타임즈의 주소(www.ttimes.co.kr)를 입력하면 티타임즈의 메인화면이 열린다. 하지만 이 찰나의 순간 뒤에는 우리가 보지 못하는 꽤 복잡한 과정이 있다.

1. 인터넷 접속원리

주소를 입력하고 엔터키를 치면 브라우저가 KT, SK브로드밴드, LG유플러스 같은 인터넷서비스제공사업자(ISP)에게 이런 요청을 한다. ISP가 보유한 DNS(Domain Name System) 서버에서 티타임즈 IP 주소를 알려달라고 말이다. 인터넷 사이트는 고유의 숫자로 된 IP주소를 갖고 있다.

그러면 ISP의 DNS 서버가 티타임즈 IP 주소를 알려주게 되고 이를 받은 브라우저는 해당 IP 주소의 웹 서버에 찾아가 'www.ttimes.co.kr'의 홈페이지 화면을 보내 달라는 요청을 한다. 그런 다음에야 사용자는 티타임즈 화면을 볼 수 있다.

비유를 하자면 이렇다. 티타임즈의 주소(www.ttimes.co.kr)는 인명, ISP는 전화국, DNS 서버는 전화번호부, IP 주소는 전화번호, 웹 서버는 전화교환원이다. 전화를 걸어 인명을 말하면 전화국이 전화번호부를 찾아 전화번호를 알려준다. 그런 뒤 다시 전화교환원에게 그 전화번호로 연결해달라고 요청하는 것과 유사하다.

2. http와 https의 차이

그런데 인터넷에 접속하는 방식은 크게 두 가지인데 http(주소창의 http://~) 방식과 이것의 보안접속 버전인 https(주소창의 https://~) 방식이다. 역할은 같지만 https 방식은 모든 통신내용을 암호화하기 때문에 보안에 유리하다.

http는 DNS 서버에 IP 주소를 요청하고 받을 때 암호화되지 않은 데이터를 주고받는다. '홍길동 전화번호를 알려 달라'는 요청에 '010-1234-5678입니다'라고 답하는 식이다. 이 때문에 http 방식은 보안에 취약하다. 해커들의 공격을 받을 수 있고 개인정보 등이 쉽게 유출될 위험이 크다. 그래서 개발된 https 방식은 인터넷상에서 주고받는 데이터를 모두 암호화했다.

이런 이유로 https 사용은 세계적 추세다. 2017년 국내에서 화제가 된 적이 있는데 구글의 웹 브라우저 크롬이 사이트 보안수준에 따른 경고표시 기능을 추가하면서 네이버와 다음에 접속하면 '안전하지 않음'이라는 경고를 표시하면서이다. 이 때문에 평소처럼 네이버와 다음에 접속했던 사용자들이 피싱이나 복제 사이트로 오해하기도 했다. 당시 네이버와 다음이 로그인 페이지에서는 https를 쓰고 나머지 페이지에서는 http를 사용했기 때문이었다. 이후 네이버와 다음은 모든 페이지에 https를 적용했다.

3. 지금까지의 불법사이트 차단방식(DNS 차단 방식)

지금까지는 DNS 차단 방식이었다. 정부가 불법사이트 IP 주소들을 파악해 DNS 서버에 알려준다. 그러면 DNS 서버는 이들에 대한 IP 주소를 알려달라는 요청이 들어오면 실제 IP 주소 대신 다른 홈페이지 IP 주소를 알려주는 것이다. 홍길동의 전화번호를 알려달라고 했는데 한석봉의 전화번호를 알려주는 식이다. 인터넷을 하다가 한번 쯤 마주쳤을 '불법·유해 정보(사이트)에 대한 차단 안내'라는 페이지가 바로 그것이다.

그런데 이 차단방식은 우회접속이나 IP 주소를 암호화하는 보안접속(https)에 의해 쉽게 무력화될 수 있다. 우회접속은 해외의 다른 DNS 서버를 이용하는 방식이다. 정부는 국내 ISP가 보유한 DNS 서버만 통제할 수 있기 때문이다. 간단한 설정을 통해 해외 DNS 서버를 통할 수 있다. 전화번호부가 한 권만 있는 것이 아니기 때문에 다른 나라 전화번호부에서 IP 주소를 받아오는 셈이다.

4. 그래서 정부가 빼든 칼, SNI 차단 방식

이렇게 되자 정부가 이번에 꺼내든 차단 방식이 SNI(Server Name Indication) 필드 차단이다. 웹 브라우저가 DNS 서버로부터 IP 주소를 받은 뒤 웹 서버에 사이트의 홈페이지 화면을 보내 달라는 요청하는 과정을(https 방식의 경우 이 순간 잠시 암호화가 풀린다) 지켜보다 문제가 되는 IP 주소가 확인되면 접속을 원천 봉쇄하는 것이다.

쉽게 말해 사용자가 전화번호부(DNS 서버)에서 홍길동 전화번호를 확인한 다음 단계, 즉 전화교환원(웹 서버)에게 그 번호로 연결해달라고 요청할 때를 포착하는 기술이다. DNS 차단 방식이 불법 도박장 앞에서 들어오는 사람들을 돌려보내는 것이라면 SNI 차단 방식은 사람들이 이동하는 경로를 실시간으로 파악하며 도박장 뒷문으로 들어가는 사람까지 막는 것이다. 

5. 인터넷정보 감청우려는 기우, 오히려 문제는 실효성

감청·검열 논란이 이는 것은 DNS 서버 단계에서의 차단이 아니라 '웹 서버 → 홈페이지' 과정에서의 차단이라면 정부가 사용자의 데이터를 엿볼 수 있는 게 아니냐는 것이다.

하지만 정부는 이번 조치가 감청·검열 등과 무관하고 표현의 자유를 침해하는 것에 해당하지 않는다는 입장이다. 암호화하지 않은 SNI 필드 값만 확인하는 것이지 이용자들의 인터넷 접속기록 같은 개인정보를 확인하는 것이 아니라는 것이다. 택배상자가 있다면 상자 속 물건을 보는 것이 아니라 상자 위 주소만 본다는 것이다.

대다수 전문가들은 정부의 이번 조치에 대해 감청까지 운운하는 것은 너무 과하다는 입장이다. 오히려 실효성이 문제될 수 있다. VPN(가상사설망) 소프트웨어를 이용하면 해외 IP를 경유해 정부가 차단하려는 불법사이트에 우회 접속할 수도 있기 때문이다.