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

최종 검토일 : 2019.05.15

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

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

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

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

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

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

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

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

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

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

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

음성 전화와 문자메시지 VS 암호화된 인터넷 메시지

유선전화나 휴대전화로 전화를 걸 때, 당신의 통화는 종단간 암호화가 되지 않는다. 휴대전화를 사용할 때, 단말기와 기지국 사이에서 (약하게) 암호화될 수도 있다. 그러나 대화 내용이 전화 네트워크를 타고 흐를 때, 통신사에 의한 도청에 노출될 수 있고, 나아가 정부나 수사기관이 통신사에 감청을 요구할 수 있다. 음성 대화의 종단간 암호화를 위한 가장 쉬운 방법은 인터넷 전화(VoIP)를 사용하는 것이다. 표준 문자 메시지(SMS)도 이와 마찬가지다. 그러므로 당신의 위협 모델에 정부나 수사기관이 포함되어있다면 인터넷을 통해 제공되는 암호화된 서비스를 이용하는 것이 좋다.

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

종단간 암호화를 기본으로 제공하는 인터넷 메시지, 전화, 영상통화 서비스로는 아래와 같은 것들이 있다.

아이메시지의 경우 종단간 암호화를 기본으로 지원하지만 오로지 아이폰 사용자끼리만 사용할 수 있다.
왓츠앱의 경우 종단간 암호화를 제공하지만 자신의 위협 모델에 따라 신뢰하기 힘들 수도 있다. 안전한 소통을 위해서는 시그널을 사용해라

아래의 서비스들은 종단간 암호화를 기본으로 제공하지 않는다.

  • 구글 행아웃 (Google Hangouts)
  • 카카오톡 (Kakao Talk)
  • 텔레그램 (Telegram)
  • 라인 (Line)
  • 위챗 (WeChat)
  • 페이스북 메신저(Facebook Messenger)

하지만 텔레그램이나 카카오톡, 페이스북 메신저와 같은 서비스는 당신이 암호화 옵션(비밀대화)를 선택한다면 종단간 암호화를 지원한다.

*2014년 카카오톡 압수수색 사건 이후 많은 사람들이 텔레그램을 사용하기 시작했다. 하지만 텔레그램은 결코 ‘안전한 서비스’가 아니다. 서버가 해외에 있다는 점 외엔 카카오톡 외에 많은 차이가 없다. 암호화 옵션을 선택해 메시지를 주고 받는 게 아닌 이상 누군가 가로챌 수 있다는 사실을 항상 기억하자.

메신저 프로그램에 대한 신뢰

종단간 암호화는 감시로부터 벗어나는 효율적인 방법이다. 하지만 종단간 암호화를 지원하는 서비스를 믿을 수 있느냐는 다른 문제다. 종단간 암호화를 지원한다고는 해도 실제로는 암호화 되어있지 않을 수도 있고, 암호화의 강도가 약할 수도 있다. 이러한 문제가 걱정된다면 기술적으로 검증받고 잘 알려져 있으며 독립적으로 설계된 도구를 사용하면 된다. OTR와 PGP이 그 예시다

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

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

HTTPS

대부분의 이메일 서비스 제공자는 파이어폭스나 크롬 등 웹 브라우저로 이메일에 접근할 수 있는 방법을 제공한다. 이들 중 대다수는 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를 이용할 수 있다.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

3.1_04

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

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

그 외 중요한 사항들

종단간 암호화는 안전한 소통을 위한 많은 방법 중 하나일 뿐이다. 위에서 살펴봤듯, 종단간 암호화는 정부와 기업이 당신의 메시지에 접근하는 것을 막는 데 효과적이다. 하지만 모든 사람의 위협 모델이 정부와 기업은 아닐 것이다.

예를 들어 누군가는 자신의 기기에 사장이나 동료 또는 가족이 직접적으로 손대는 게 걱정되어 시간이 지나면 자동으로 삭제되는 임시 메시지 기능을 원할 것이다. 누군가는 자신의 휴대전화 번호가 노출되는 것을 피하고자 번호 없이 사용할 수 있는 게 중요할지도 모른다.

훌륭한 보안 기능을 갖춘 프로그램이라도 당신의 연락처에서 아무도 사용하지 않는다면 의미가 없다. 품질이 좋지 않거나, 어렵거나, 비싸다는 이유로 당신이 사용하고 싶은 프로그램을 아무도 안 쓸 수도 있다.
그러므로 당신이 무엇을 원하는지, 당신에게 필요한 안전한 소통 방법이 무엇인지 명확하게 해둬야만 방대하고 포괄적이며 빠르게 변해가는 정보를 탐색하는 것이 쉬워질 것이다.

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