종단간 암호화와 안전한 통신

지난 2014년, 세월호 집회를 주도했다는 이유로 전 노동당 부대표 정진우씨의 카카오톡 메시지 내용이 압수수색되었다. 이는 카카오톡 서버에 대한 압수수색을 통해 이루어졌으며, 당사자조차 몇 개월 후에 이 사실을 알게 되었다. 정진우씨 본인이 발신한 내용만 압수된 것이 아니다. 단지 반일치 압수수색만으로 무려 2,368명의 대화 내용이 함께 압수된 것이다.

카카오톡 압수수색 사실이 알려지자, 무리한 압수수색을 진행한 수사기관뿐만 아니라, 카카오톡 역시 비난의 대상이 되었다. 많은 사람들이 해외 메신저 서비스인 텔레그램으로 “망명”하였다. 이에 카카오톡은 이용자의 프라이버시를 보호하는 방향으로 서비스를 개편하겠다고 발표하였다. 정부의 감청에는 협력하지 않을 것이며(기술적으로 실시간 감청은 불가능하다고 한다. 다만, 기존에는 감청 영장을 받으면, 그 기간 동안의 메시지를 모아서 전달하는 방식으로 협조해온 것이다), 기존에 평균 3~7일 서버에 저장하던 것을 2~3일만 대화내용을 저장하는 방식으로 변경하겠다고 하였다. 또한, 서버에 암호키를 저장하지 않고 개인 단말기에만 저장하는 ‘종단간 암호화’ 기술을 적용하는 프라이버시 모드를 도입하였다. 이는 1:1 비밀대화 기능에 먼저 적용되었고, 이후 그룹 채팅방으로 확대 적용되었다. 물론 여전히 카카오톡 서버가 한국 내에 있다는 사실은 외국의 메신저 서비스에 비해 한국 정부의 위협에 더 노출될 수 있는 요인이 될 수 있다.

이미지 출처 : 다음카카오 블로그
이미지 출처 : 다음카카오 블로그

이와 같이 보안을 강화한 메신저 서비스들이 등장하면서, 수사기관은 이러한 암호화를 우회할 수 있는 기술 개발에 노력하고 있다. 기사에 따르면, 한국 검찰은 2015년 2월, ‘메신저 저장 방식 분석 및 암호화 데이터 획득’을 위한 디지털포렌식 소트프웨어 개발에 착수했는데, 개인과 기업이 많이 사용하는 주요 메신저 앱 4개의 데이터 암호화를 깨는 연구용역을 발주했다고 한다.

한편, 기존의 통신사 외의 인터넷 서비스에 대한 감청이 힘들어지자, 정부와 여당은 통신사 및 인터넷 서비스 업체에 ‘감청 설비’ 구비를 의무화하는 법안(통신비밀보호법 개정안)을 추진 중이다(2015년 현재). 사실 감청설비 구비 의무화 법안은 예전 국회에서도 발의된 바 있으나, 번번이 통과에 실패한 바 있다. 물론 이러한 감청 설비가 구축된다고 해도, 인터넷을 통한 통신에 종단간 암호화가 적용된다면, 감청이 힘들어질 수 있다. 따라서 정부의 위협에 노출되어 있는 활동가들은 적절한 통신 보안 조치를 통해, 안전한 통신을 하도록 노력할 필요가 있다.

통신망과 인터넷은 이전보다 쉽게 사람들과 통신할 수 있도록 했지만, 과거 어느 때보다 감시 역시 만연하게 되었다. 당신의 프라이버시를 보호할 수 있는 추가적인 조치 없이는, 모든 전화, 문자 메시지, 이메일, 인스턴트 메시지, 인터넷 전화(VoIP), 화상 채팅, 소셜 미디어 등은 감시에 취약할 수 있다.

종종 다른 사람과 소통하는 가장 안전한 방법은 컴퓨터나 전화를 사용하지 않고 직접 만나는 것이다. 그러나 이것이 항상 가능한 것은 아니기 때문에, 통신 내용을 보호하기 위해 다음 단계로 취할 수 있는 조치는 네트워크를 통해 통신하는 동안, 종단간(end-to-end) 암호화를 사용하는 것이다.

 

종단간 암호화는 어떻게 작동하나?

두 사람(예를 들어, 철수와 영희가)이 안전하게 통신하고 싶다면, 그들은 각각 암호키를 생성해야 한다. 철수가 영희에게 메시지를 보내기 전에, 그는 영희의 키로 암호화하여 오직 영희만 그것을 풀 수 있도록 해야 한다. 그리고 그는 이미 암호화된 메시지를 인터넷으로 발송한다. 누군가 그들을 도청한다 해도 – 그들은 철수가 메시지를 보내기 위해 사용하는 서비스(예를 들어 이메일 계정)에 접근할 수 있다 – 그들은 단지 암호화된 데이터만을 볼 수 있을 뿐이며, 메시지를 읽을 수는 없다. 영희가 그것을 받으면, 그녀는 자신의 키로 암호를 풀어 메시지를 읽을 수 있다.

종단간 암호화는 일정한 노력이 필요하지만, 통신하는 쌍방이 함께 이용하는 플랫폼을 믿지 않더라도 통신 보안을 보장할 수 있는 유일한 방법이다. 스카이프(Skype)와 같은 어떤 서비스들은 종단간 암호화를 제공한다고 주장하지만, 실제로 그런 것 같지는 않다. 종단간 암호화가 안전하기 위해서, 이용자들은 자신들이 암호화에 이용하는 암호키가 자신이 통신하고자 하는 상대방의 것임을 입증할 수 있어야 한다. 통신 소프트웨어가 이러한 기능을 내장하고 있지 않으면, 어떤 암호화라도, 예를 들어 정부가 요구할 경우, 서비스 제공자에 의해 가로채일 수 있다.

인스턴트 메시지 및 이메일 보호를 위한 종단간 암호화 이용에 대한 상세한 지침을 제공하는, 언론자유재단(Freedom of the Press Foundation)의 백서 <암호화는 효과적이다_Encription Works>를 읽어보라.

 

음성 전화

유선전화나 휴대전화로 전화를 걸 때, 당신의 통화는 종단간 암호화가 되지 않는다. 휴대전화를 사용할 때, 단말기와 기지국 사이에서 (약하게) 암호화될 수도 있다. 그러나 대화 내용이 전화 네트워크를 타고 흐를 때, 통신사에 의한 도청에 노출될 수 있고, 나아가 정부나 수사기관이 통신사에 감청을 요구할 수 있다. 음성 대화의 종단간 암호화를 위한 가장 쉬운 방법은 인터넷 전화(VoIP)를 사용하는 것이다.

주의하라! 스카이프(Skype)나 구글 행아웃(Hangout)과 같이 가장 많이 사용되는 인터넷 전화 제공자는 도청자가 엿들을 수 없는 전송 암호화를 제공하지만, 서비스 제공자 자신들은 엿들을 수 있는 가능성이 여전히 존재한다. 당신의 위협 모델에 따라, 이것이 문제가 될 수 있다.

 

종단간 암호화를 제공하는 인터넷 전화로는 아래와 같은 것들이 있다.

종단간 암호화된 인터넷 전화 대화를 위해서는, 통신하는 쌍방이 같거나 호환되는 소프트웨어를 이용해야만 한다.

 

문자 메시지

표준 문자 메시지(SMS)는 종단간 암호화를 제공하지 않는다. 휴대폰에서 암호화된 메시지를 보내고 싶으면, 문자 메시지 대신 암호화된 인스턴트 메시지 소프트웨어의 사용을 고려해야 한다.

종단간 암호화 인스턴트 메시지 서비스 중 어떤 것들은 자신들의 고유한 프로토콜을 사용한다. 예를 들어, 안드로이드나 아이폰에서 텍스트시큐어(TextSecure)나 시그널(Signal) 이용자들은 그 프로그램을 이용하는 다른 이용자와 안전하게 대화할 수 있다. 챗시큐어(ChatSecure)는 XMPP를 사용하는 어떠한 네트워크 상에서도 OTR로 대화를 암호화하는 모바일앱이다. 즉, 많은 독립적 인스턴트 메시지 서비스 중에서 선택할 수 있다는 의미이다.

 

인스턴트 메시지

오프더레코드(OTR)는 다양한 서비스에서 이용되는 실시간 문자 대화를 위한 종단간 암호화 프로토콜이다. 인스턴트 메시지에 OTR을 포함하고 있는 몇 가지 도구는 다음과 같다. :

텔레그램(Telegram)

카카오톡 서버 압수수색 논란 이후, 많은 이용자들이 텔레그램으로 ‘망명’하였다. 보안 채팅(secret chats) 기능을 사용하면, 서버 운영자도 메시지에 접근할 수 없다고 한다. 텔레그램은 스마트폰 앱과 PC 프로그램, 그리고 웹으로 동시에 접근할 수 있도록 다양한 인터페이스를 제공한다.

카카오톡 역시 문제가 불거진 이후, 프라이버시 모드를 도입하기는 했으나, 역시 서버가 한국에 있다는 것에 대한 우려가 존재한다. 물론 프라이버시 모드에서는 서버 운영자도 메시지를 읽을 수 없다고 한다. 다만, 사람들이 프라이버시 모드를 사용하지 않을 경우(아마도 통상적인 이용), 정부의 압수수색으로부터 안전을 담보할 수 없다.

메신저 프로그램에 대한 평가

EFF는 세계적으로 많이 이용되는 메신저 프로그램들의 보안성을 평가하여 공개하였다. 즉, 전송 중에 암호화되는지, 서버 운영자가 메시지를 읽을 수 있는지 등 다양한 기준으로 메신저 프로그램을 평가한 것이다. (아직 카카오톡은 평가 대상에 포함되지 않았다.) EFF가 평가한 결과는 ‘SECURE MESSAGING SCORECARD’ 홈페이지를 참고하라.

3.1_02

 

이메일

대부분의 이메일 서비스 제공자는 파이어폭스나 크롬 등 웹 브라우저로 이메일에 접근할 수 있는 방법을 제공한다. 이들 중 대다수는 HTTPS 혹은 전송 레이어 암호화를 제공한다. 만일 웹 메일에 로그인했을 때 URL이 HTTP 대신 HTTPS(예를 들어, https://mail.google.com)로 시작하지 않으면 이메일 서비스 제공자에게 HTTPS 제공을 요청할 수 있다.

SSL 혹은 HTTPS 는 웹브라우저와 웹서버 사이에 전송되는 데이터를 암화화하는 기술을 의미하며, 일반적인 HTTP를 통한 연결보다 기밀성과 보안성을 향상시킨다. 인증, 신용카드 등 주로 민감한 정보를 주고받는 웹사이트에서 SSL이 이용된다.

특정한 웹사이트가 SSL이 적용되었는지 확인하기 위한 방법은 https:// 로 시작하는 웹주소를 주소창에 입력해보면 된다. SSL로 연결이 되면, 웹주소 옆에 자물쇠 표시가 보인다.

3.1_03-

이메일 제공자가 HTTPS 를 지원하지만, 기본설정이 아닐 경우, URL 주소의 HTTP를HTTPS로 바꾸고 페이지를 다시 읽어들여야 한다. 당신이 사이트에서항상 HTTPS를 사용하고 싶다면, 파이어폭스나 크롬 확장 프로그램(add-on)인 HTTPS Everywhere 브라우저를 다운로드 하라. 기본설정으로 HTTPS를 이용하는 웹메일 제공자는 다음과 같다.

  • 지메일(Gmail)
  • 라이즈업(Riseup)
  • 야후(Yahoo)
  • 진보넷 웹메일

어떤 웹메일 제공자는 설정(setting)화면에서 선택을 해주어야, 기본으로 HTTPS를 이용할 수 있다. 이렇게 하는 가장 대중적인 서비스는 핫메일(Hotmail)이다.

전송 레이어 암호화가 어떤 역할을 하고, 왜 그것이 필요할까? SSL 혹은 TLS라 불리는 HTTPS는 당신의 통신을 암호화해서 다른 사람이 읽을 수 없도록 한다. 다른 사람이란, 공항이나 카페에서 같은 와이파이를 사용하는 사람, 사무실이나 학교에서 같은 네트워크를 이용하는 다른 사람, 인터넷서비스제공자(ISP)의 관리자, 악의적인 해커, 정부, 경찰 등 법집행기관을 포함한다. HTTPS가 아니라 HTTP를 이용하여, 당신이 방문한 웹 페이지나 이메일, 블로그 글, 게시물 등 웹 브라우저에서 보내진 통신 내용을 공격자가 가로채서 읽는 것은 간단하다.

HTTPS는 모든 사람에게 우리가 추천하는 웹 브라우징을 위한 가장 기본적인 암호화 수준이다. 그것은 안전 벨트를 매는 것처럼 기본적이다.

그러나 HTTPS가 하지 못하는 것들도 있다. HTTPS를 이용하는 이메일로 보내더라도, 이메일 서비스 제공자는 암호화되지 않은 복제본을 가지고 있다. 정부나 법 집행기관이 영장을 갖고 이 데이터에 접근할 수 있다. 미국에서 대다수 이메일 서비스 제공자는 당신의 이용자 데이터에 대해 정부의 요청을 받았을 때 당신에게 고지하겠다는 정책을 가지고 있지만, 이 정책들은 완전히 자발적인 것이며, 많은 경우 서비스 제공자는 이용자 데이터 요청을 받았다는 것을 해당 이용자에게 알리지 못하도록 법적으로 금지된다.

한국의 경우, 로그 기록과 같은 통신 기록(법적으로는 ‘통신사실확인자료’라고 한다), 감청, 통신 내용에 대한 압수수색이 이루어졌을 경우, 당사자에게 사후에 고지를 하도록 하고 있다. (물론 수사 기관들은 관련 조항을 악용하여, 당사자에 대한 고지를 하지 않는 경우도 있다.) 다만, 이름, 연락처 등 개인의 인적 사항은 영장 없이 서비스 제공자에게 협조 요청하는 것으로 개인정보를 제공 받아 왔으며, 당사자에게 통보도 해주지 않는다.

구글, 야후, MS와 같은 이메일 서비스 제공자들은 투명성 보고서를 발간하여, 이용자 데이터에 대해 자신들이 정부로부터 받은 요청 건수, 그러한 요청을 어떠한 국가에서 했는지, 얼마나 자주 이용자 데이터 제공을 목록화하는지 등을 공개한다.

당신의 위협 모델이 정부나 법 집행기관을 포함한다면, 혹은 이메일 서비스 제공자가 당신의 이메일 내용을 제3자에게 제공하지 않도록 보장받기를 원하는 다른 이유가 있다면, 이메일에 종단간 암호화의 사용을 고려할 필요가 있다.

PGP (혹은 Pretty Good Privacy)는 이메일 종단간 암호화의 표준이다. 제대로 사용된다면, 당신의 통신에 대한 강력한 보호를 제공한다. 이메일에 PGP 암호화를 어떻게 설치해서 사용하는 지에 대한 상세한 정보는 다음을 참고하라.

 

종단간 암호화가 할 수 없는 것

종단간 암호화는 단지 당신의 통신 내용만을 보호할 수 있으며, 통신했다는 사실 그 자체는 보호할 수 없다. 즉, 이메일 제목, 당신이 누구와 언제 통신했는지 등 통신 기록은 보호하지 못한다.

통신 내용이 비밀로 유지된다고 하더라도, 통신 기록은 당신에 대한 극히 내밀한 정보를 제공할 수 있다.

전화 통화에 대한 통신 기록은 어떤 매우 내밀하고 민감한 정보를 드러낼 수 있다. 예를 들어 :

 그들은 당신이 새벽 두 시에 폰섹스 서비스에 전화를 걸어 18분 동안 얘기했다는 것은 알지만, 무엇에 대해 얘기했는지는 모른다.

 그들은 당신이 골든 게이트 다리에서 자살 방지 핫라인에 전화했다는 것은 알지만, 통화 주제는 비밀로 남는다.

 그들은 당신이 HIV 테스트 서비스와 얘기하고, 그 다음 의사와, 그리고 건강보험 회사와 같은 시간대에 전화했다는 것은 알지만, 무엇이 논의되었는지는 모른다.

 그들은 당신이 총기 법안에 반대하는 캠페인을 하고 있는 지역 전미총기협회의 전화를 받고, 그 후 즉시 국회의원에게 전화했다는 것은 알지만, 통화 내용은 정부의 간섭으로부터 안전하다.

 그들은 당신이 산부인과에 전화해서 30분과 얘기한 후, 같은 날에 지역 가족계획협회의 번호로 전화했다는 것은 알지만, 무엇에 대해 얘기했는지는 아무도 모른다.  

 

당신이 휴대전화로 전화하면, 당신의 위치정보가 통신 기록이 된다. 2009년, 독일 녹색당 정치인 말테 스피츠는 독일 통신사를 고소하여 자신의 6개월 치 통화 기록을 넘겨받아 독일 신문에 공개하였다. 이를 시각화하면 스피츠가 이동한 상세한 경로를 보여준다.

3.1_04

당신의 통신기록을 보호하기 위해서는, 종단간 암호화와 동시에, 토르(Tor)와 같은 또 다른 도구가 필요하다. <윈도에서 토르(Tor) 사용하기> 참고.

다양한 잠재적 공격자로부터 당신의 통신내용과 통신기록을 보호하기 위해 토르(Tor)와 HTTPS가 어떻게 함께 작동하는지에 대한 설명은 다음을 참고하라.

이 글은 EFF의 Communicating with Others’(2015년 5월 1일 마지막 업데이트)를 기초로 한 것입니다.