매일 수천 명의 사람들이 인터넷 프라이버시를 강화하기 위해 Tor 네트워크를 찾습니다. 사생활에 민감한 일반 사용자부터 독재 정권 아래에서 살아가는 사람들까지, 이들은 '어니언 라우팅(onion routing)' 기술을 활용해 자신의 검색 습관과 온라인 활동을 비밀로 유지하고 있습니다.
그렇다면 Tor는 정확히 무엇이며, 어니언 라우팅은 어떤 원리로 감시자들의 시선으로부터 우리를 보호하는 걸까요?
'Tor'란 무엇인가?
'Tor'는 미국 정부로부터 자금을 지원받는 비영리 단체인 Tor 프로젝트(Tor Project)를 가리킵니다. Tor 프로젝트의 핵심 목표는 익명성 확보입니다. 즉, 누구나 정부의 감시 없이 인터넷을 탐색하고 자유롭게 의견을 개진할 수 있도록 돕는 것이죠. Tor 프로젝트의 대표적인 성과물은 바로 '어니언 라우팅'이라 불리는 기술을 통해 프라이버시를 지켜주는 Tor 네트워크입니다.
사용자는 Tor 브라우저(Tor Browser)를 통해 Tor 네트워크에 접속합니다. Tor 브라우저는 파이어폭스(Firefox)를 변형한 버전으로, 별도의 추가 기능이나 전문 지식 없이도 누구나 손쉽게 Tor 네트워크를 사용할 수 있다는 장점이 있습니다. 내부 동작 원리를 몰라도 그냥 일반 브라우저처럼 사용하면 됩니다.
어니언 라우팅은 어떻게 작동하는가?
Tor 네트워크는 어니언 라우팅이라는 기술로 사용자의 프라이버시를 보호합니다. 그 원리를 쉽게 이해하기 위해 하나의 비유를 들어보겠습니다.
여러분이 누군가에게 물건을 보내야 하는데, 아무도 발신자가 자신이라는 사실을 모르게 하고 싶다고 가정해 봅시다. 심지어 물건을 배달하는 택배기사조차 이 물건이 누구에게서 왔는지 알지 못하게 하고 싶은 상황입니다.
상자 겹겹이 포장으로 안전하게 보내기
이를 위해 여러분은 세 명의 택배기사를 고용합니다. 편의상 A, B, C라고 부르겠습니다. 각 기사에게는 상자 하나와 그 상자를 열 수 있는 열쇠 한 자루를 줍니다. 기사들은 상자를 받으면 자신의 열쇠로 잠금을 해제하고 안에 드물건을 꺼낸 뒤, 그 물건에 적힌 다음 배송지로 전달하면 됩니다.
이제 실제 발송 과정을 살펴봅시다. 먼저 보내려는 물건에 최종 수신자의 주소를 적습니다. 이 물건을 작은 잠금 상자(상자 C)에 넣고 잠근 뒤, 그 상자에 택배기사 C의 주소를 적습니다. 그다음 이 상자를 더 큰 잠금 상자(상자 B)에 넣고 잠근 후 택배기사 B의 주소를 적습니다. 마지막으로 이 두 겹의 상자를 가장 큰 잠금 상자(상자 A)에 넣고 잠급니다.
결국 러시아 인형처럼 상자 안에 상자, 또 그 안에 상자가 들어간 3중 구조가 완성됩니다. 그리고 상자 A의 열쇠는 택배기사 A에게, 상자 B의 열쇠는 택배기사 B에게, 상자 C의 열쇠는 택배기사 C에게 각각 전달합니다.
이제 상자 A를 택배기사 A에게 맡깁니다. 기사 A는 상자 A를 열어 그 안의 상자 B를 확인하고, 이를 기사 B에게 전달합니다. 기사 B는 상자 B를 열어 상자 C를 꺼내 기사 C에게 넘깁니다. 마지막으로 기사 C가 상자 C를 열면 주소가 적힌 물건이 나오고, 기사 C가 이를 최종 수신자에게 배송하는 것으로 끝납니다.
이 방식이 안전한 이유
이 방식의 가장 큰 장점은 어떤 택배기사도 전체 그림을 알 수 없다는 점입니다. 단독으로는 누가 무엇을 누구에게 보냈는지 추론할 수 없습니다.
- 택배기사 A: 여러분이 물건을 보냈다는 사실은 알지만, 최종 수신자가 누구인지는 모릅니다.
- 택배기사 B: 상자가 지나갔다는 것만 알 뿐, 최초 발신자(여러분)나 최종 수신자에 대한 정보는 전혀 없습니다.
- 택배기사 C: 물건의 내용과 수신자는 알지만, 그것을 누가 보냈는지는 알 수 없습니다.
스파이가 섞여 있다면?
이 방식을 반복해서 사용하다 보면, 뒷수완 좋은 조직이 이 시스템을 알아차리고 택배기사 사이에 스파이(몰래카메라 같은 내부 밀정)를 심어 누가 무엇을 보내는지 감시하려 할 수 있습니다. 그런데 다음에 이 방식을 사용했을 때, 운 나쁘게도 세 명 중 두 명이 스파이라면 어떻게 될까요?
걱정할 필요는 없습니다. 이 시스템은 어느 정도의 감시에는 저항력을 가지고 있습니다.
- A와 B가 스파이인 경우: 여러분이 물건을 보냈다는 사실은 알지만, 수신자가 누구인지는 알 수 없습니다.
- B와 C가 스파이인 경우: 물건의 내용과 수신자는 알지만, 발신자가 누구인지는 알 수 없습니다.
- A와 C가 스파이인 경우(가장 위험한 조합): A는 여러분이 상자를 보냈다는 것을, C는 최종 수신자를 알고 있습니다. 하지만 A가 받은 상자 안에 C가 처리한 상자가 들어 있었다는 결정적 증거는 없습니다. 그 정보를 알 수 있는 유일한 사람은 중간에 있는 택배기사 B뿐입니다.
물론 현실에서는 세 번째 경우도 취약할 수 있습니다. 밀정은 우편으로 상자를 계속 보내는 그 수상한 사람만 찾으면 되니까요.
하지만 만약 수천 명의 사람들이 똑같은 방식으로 상자를 주고받는다면 어떨까요? 이제 A와 C의 밀정들은 시점(timing) 분석에 의존할 수밖에 없습니다. A가 여러분의 상자를 B에게 전달했고, 다음 날 B가 어떤 상자를 C에게 넘겼다면, A와 C는 자신들이 같은 경로에 있다고 의심할 수 있습니다. 하지만 단 한 번의 사례로는 확신할 수 없으므로, 이 패턴이 여러 번 반복되는지 지켜본 뒤에야 판단할 수 있습니다.
민감한 정보를 보낼 때의 위험
택배기사 C가 밀정일 때 또 다른 문제가 있습니다. 기사 C는 여러분이 보내는 물건의 내용을 직접 볼 수 있습니다. 따라서 상자 시스템을 통해 자신에 대한 개인 정보를 담아 보내서는 안 됩니다. 그렇지 않으면 기사 C가 정보들을 조합해 여러분의 신원을 파악할 수 있습니다.
민감한 정보 유출을 막는 가장 확실한 방법은 처음부터 기사 C를 신뢰하지 않는 것입니다. 또한 수신자와 미리 암호화 키를 공유해두면, 아무리 스파이가 내용을 훔쳐봐도 해독할 수 없는 암호화된 메시지를 주고받을 수 있습니다.
이것이 어니언 라우팅과 연결되는 방식
바로 이것이 어니언 라우팅의 작동 원리입니다. 어니언 라우팅은 데이터 패킷을 세 겹의 암호화 '계층'으로 감싸 보호하는 기술입니다. 양파 껍질이 겹겹이 쌓여 있는 모습과 닮았다고 해서 '어니언(onion) 라우팅'이라는 이름이 붙었습니다.
어니언 라우팅을 거치는 패킷은 입구 노드(Entry), 중간 노드(Middle), 출구 노드(Exit)라는 세 개의 노드를 통과합니다. 앞선 예시의 세 명의 택배기사가 바로 이 노드들입니다. 각 노드는 자신에게 할당된 암호화 계층만 해독할 수 있으며, 해독한 결과를 통해 패킷을 다음 어디로 보내야 할지 알게 됩니다.
Tor가 네트워크의 모든 노드를 소유하고 있다고 생각하기 쉽지만, 실제로는 전혀 다릅니다! 한 회사가 모든 노드를 통제한다면 그 회사가 패킷을 자유롭게 감시할 수 있어 익명성이 무너지기 때문입니다. 그래서 Tor 네트워크는 전 세계 자원봉사자들이 운영하는 서버들로 구성되어 있으며, 이들은 대부분 Tor 네트워크 강화에 기여하고 싶은 프라이버시 옹호자들입니다.
Tor 브라우저를 실행하면, 브라우저는 이 자원봉사 서버들 중 세 곳을 무작위로 선택해 각 노드 역할을 맡깁니다. 그리고 예시의 상자 열쇠처럼 각 서버에 해당 암호화 계층을 해독할 키를 나눠준 뒤, 데이터를 세 겹으로 암호화해 이 노드들을 거쳐 전송합니다.
어니언 라우팅의 약점
Tor의 활동을 달가워하지 않는 조직들도 존재합니다. 이들은 자원봉사자 행세를 하며 Tor 네트워크에 서버를 올려 트래픽을 분석하려 합니다. 하지만 앞선 예시에서 봤듯이, Tor 네트워크는 어느 정도까지는 이런 감시에 저항할 수 있습니다.
만약 입구 노드와 출구 노드가 모두 첩보 조직의 소유라면, 제한적으로나마 활동을 감시당할 수 있습니다. 조직은 여러분이 데이터를 입구 노드로 보내는 것과 출구 노드에서 목적지로 데이터가 나가는 것을 관찰하고, 소요 시간을 분석해 이론적으로는 트래픽을 여러분과 연결지을 수 있습니다. 즉, Tor 네트워크에서 특정인을 감시하는 것은 극히 어렵지만, 불가능한 것은 아니라는 뜻입니다.
다행히 이런 공격이 성공하려면 조직이 상당히 운이 좋아야 합니다. 작성 시점 기준 Tor Metrics에 따르면 약 5,000개의 릴레이(relay)가 운영 중이며, Tor 브라우저는 접속 시 이 중 세 곳을 무작위로 선택하기 때문에 특정 대상을 노리기가 매우 어렵습니다.
여기에 더해, 일부 사용자는 Tor에 접속하기 전에 VPN을 먼저 사용합니다. 이렇게 하면 Tor 네트워크의 감시자들이 사용자를 추적해도 VPN 제공업체까지만 도달할 수 있습니다. 프라이버시를 존중하는 VPN을 사용한다면 감시자들은 더 이상 손쓸 방법이 없습니다.
앞선 예시가 시사하는 또 하나의 교훈은, 민감한 정보를 택배기사에게 맡겨서는 안 된다는 점입니다. 출구 노드(기사 C)는 여러분이 보내는 내용을 볼 수 있으므로, 악의적인 출구 노드가 네트워크를 통해 정보를 수집할 가능성이 있습니다. 다행히 HTTPS만 사용하는 등의 방법으로 악성 출구 노드로부터 스스로를 지킬 수 있습니다.
Tor 네트워크 접속 방법
Tor 네트워크 접속은 매우 간단합니다. Tor 브라우저 다운로드 페이지에 방문해 자신의 운영체제에 맞는 버전을 설치한 뒤, 일반 브라우저처럼 사용하면 됩니다. 다만 페이지 로딩이 평소보다 다소 느리다는 점을 느끼게 될 것입니다. 트래픽이 세 개의 노드를 차례로 거치기 때문인데, 물건을 세 명의 택배기사를 통해 보내는 것이 직접 보내는 것보다 느린 것과 같은 이치입니다. 그 대신 검색 활동이 훨씬 안전해지고 추적이 매우 어려워집니다.
한 가지 주의할 점이 있습니다. Tor 브라우저는 범죄자들이 다크웹(dark web)에 접속할 때 사용하는 도구이기도 합니다. Tor 브라우저를 사용하면 다크웹에 접속할 능력 역시 생기는데요, 이것이 불편하게 느껴진다면 '.onion'으로 끝나는 웹사이트는 클릭하거나 방문하지 않으면 됩니다. '.onion' 주소는 다크웹 페이지를 의미합니다. 다행히 의도적으로 검색하지 않는 한 다크웹 사이트를 접할 일은 거의 없습니다.
더 나은 사용 경험을 위해 Tor 브라우저 활용 팁들을 미리 익혀두는 것도 좋습니다.
인터넷에서 프라이버시 지키기
Tor 네트워크는 신원을 숨기고 싶은 모든 사람에게 훌륭한 도구입니다. 어니언 라우팅 덕분에 누군가 여러분의 검색 습관을 파악하기란 극히 어렵습니다. 게다가 이 네트워크에 접속하는 것은 파이어폭스를 사용하는 것만큼이나 쉽다는 점이 최대의 장점입니다.
더욱 안전한 환경을 원한다면, 무료 VPN 서비스를 함께 활용해 프라이버시를 한층 더 강화해 보세요.