아이투피
아이투피(I2P, Invisible Internet Project)는 서로에게 가명으로 안전하게 메시지를 보낼 수 있고 익명 웹 서핑, 채팅, 블로깅과 파일 전송을 해주는 오버레이 네트워크(overlay network)인 다크넷이다. 아이투피 라우터(router)라고 불리는 레이어(layer)를 실행하고 아이투피를 실행하는 컴퓨터는 아이투피 노드(node)라고 부른다.
개요
아이투피는 인터넷 위에 구축된 익명 네트워크이다. 이를 통해 사용자는 콘텐츠를 생성 및 액세스하고 분산되고 동적인 네트워크에서 온라인 커뮤니티를 구축 할 수 있다. ISP와 같은 타사의 통신을 보호하고 모니터링에 저항하기 위한 것이다. 아이투피는 네트워크 내에서 트래픽을 익명화하는 것 외에도 인터넷과 동일한 기능으로 작동하지만 디자인 및 분산화는 정보의 자유로운 흐름을 위한 검열 방지 환경을 만든다.[1]
토어(Tor)와 유사한 분산형 익명화 네트워크지만 토어와 달리 아이투피는 모든 통신을 종단 간 암호화하고 서버 노드의 중앙 집중식 데이터베이스에 의존하지 않으며 토어의 '어니언 라우팅'(Onion routing) 대신 '갈릭 라우팅'(Garlic routing)을 사용한다. 아이투피 네트워크에 연결된 사용자는 중앙 집중식 노드 데이터베이스에 의존하지 않고 각각 고유한 암호화 라우터 아이디를 갖는 노드 또는 라우터로 머신을 효과적으로 전환한다. 각 라우터에는 일련의 인바운드 및 아웃 바운드 가상 터널이 있으며 이러한 터널을 통해 아이투피 네트워크를 통해 전송된 모든 메시지는 암호화 대상으로 보내진다. 아이투피의 경우 '갈릭 라우팅'이라는 용어는 메시지의 계층화 된 암호화와 여러 메시지를 '클로브'(Clove)로 묶는 것을 의미한다.이 암호화 주소 지정 및 번들 메시지 시스템을 통해 아이투피 네트워크 사용자는 익명으로 통신할 수 있다. 더욱이 발신자, 수신자 또는 제 3자는 아이투피 사용자의 IP 주소를 열거 할 수 없다.[2]
비교
- 토어(Tor; The Onion Router)
- 온라인상에서 익명을 보장하고 검열을 피할 수 있게 해주는 다크넷 소프트웨어 중 하나이다. 수 천개 이상의 릴레이로 구성된 오버레이 네트워크를 통해 네트워크 감시나 인터넷 트래픽 분석을 하는 모든 것들로부터 사용자의 위치나 사용량 등을 숨긴다. 토어를 사용하면 웹 사이트 방문, 게시글을 비롯한 모든 통신 양식을 포함하여 사용자의 인터넷 활동을 추적하는 것을 막아준다. 토어의 목적은 인터넷 활동이 감시되지 않도록 함으로써 개인의 프라이버시뿐만 아니라 발언의 자유와 능력을 보호하는 것이다.
- 네트워크 우회와 익명화를 위해 사용하는 툴 중 하나며, 비슷한 것으론 프리넷과 I2P, Ultrasurf 등이 있다. 익명성을 따지면 종전의 프락시 서버 나 서버에 로그가 남을 가능성이 있는 VPN보다 안전하다. 토어의 트래픽은 출발지에서 각각의 공개키로 순차적으로 암호화된다. 3개 노드를 거친다면 3중 암호화해서 보내게 된다. 익명성이 보장하는 만큼 속도가 느릴 수 밖에 없다. 토어는 다른 네트워크 위에 만들어진 가상의 네트워크인 오버레이 네트워크 기술인 어니언 라우팅(Onion Routing) 기술을 사용한다. 양파처럼 중첩된 통신 프로토콜 스택의 응용 계층에서 암호화된다. 목적지까지 한 번에 데이터를 전송하지 않고 다음 노드 대상 IP주소를 포함한 데이터를 여러 번 암호화하고 연속적인 무작위 선택에 의해 릴레이로 구성된 가상 회로를 통해 전달된다. 각 릴레이는 표현 계층내 암호 계층의 암호를 해독하여 다음 릴레이를 표시하며 나머지 암호화된 데이터를 그 계층에 전달한다. 최종 릴레이는 암호의 가장 안쪽 계층을 해독하여 원본 IP 주소를 공개하지 않고 원래 데이터를 목적지로 전송한다. 통신의 라우팅은 토어 회로의 모든 홉에서 은폐되었기 때문에 통신 피어가 출처와 목적지를 파악하는 네트워크 감시를 통해 특정될 수 있는 단일 지점을 알 수 없게 한다.[3]
특징
아이투피는 익명 네트워크로, 응용 프로그램이 익명으로 안전하게 메시지를 보내는 데 사용할 수 있는 간단한 게층을 제공한다. 네트워크 자체는 메시지 기반(a la IP)이지만, 그 위에 안정적인 스트리밍 통신을 허용하는 라이브러리(a la TCP )가 있다. 모든 통신은 암호화 되며(총 메시지를 보낼 때 사용되는 암호화 계층은 4개), 끝점(목적지)도 암호화 식별자이다.[1]
전송된 메시지를 익명화하기 위해 각 클라이언트 응용 프로그램에는 아이투피 라이투에 몇 개의 인바운드 및 아웃 바인드 '터널'이 있다. 인바운드 터널은 제공된 모든 것이 터널 생성자에게 전달되는 곳이고, 아웃 바인드 터널은 터널 생상자가 메시지를 멀리 밀어내는 곳이다. 터널은 일련의 라우터를 통해 임시 및 단방향 경로로 일련의 피어라고 볼 수 있다. 클라이언트가 다른 클라이언트에게 메시지를 보내려고 할 때 클라이언트는 다른 클라이언트의 인바운드 터널 중 하나를 대상으로 하는 아웃 바인드 터널 중 하나를 통해 메시지를 전달하여 목적지에 전달한다. 네트워크의 모든 사용자는 이러한 터널의 길이를 선택하며, 그렇게 함으로써 자신이 필요로 하는 익명성, 대기 시간 및 처리량 사이에서 절충을 한다. 결과적으로 각 종단간 메시지를 릴레이하는 피어 수는 송신자와 수신자의 위협 모델을 모두 충족시키는 데 필요한 최소한의 것이다.[1]
갈릭 라우팅 및 갈릭 용어
갈릭 라우팅(garlic routing)과 갈릭 암호화(garlic encryption)이라는 용어는 아이투피의 기술을 언급할 때 종종 느슨하게 사용된다. 갈릭라우팅은 Roger Dingledine의 Free Haven Master의 논문 섹션 8.1.1 (2000 년 6 월) 에서 Michael J. Freedman 에 의해 처음 만들어졌으며 어니언 라이팅에서 파생되었다. 갈릭은 아이투피가 번들링 형태를 구현하거나 단순히 토어와의 일반적인 차이점을 강조하기 위해 아이투피 개발자가 사용했을 수 있다. 일반적으로 아이투피를 언급 할 때 "갈릭"이라는 용어는 다음 세 가지 중 하나를 의미할 수 있다.[1]
- 계층화 된 암호화
- 여러 메시지를 함께 묶기
- ElGamal / AES 암호화
어니언 라우팅은 일련의 피어를 통해 경로 또는 터널을 구축한 다음 해당 터널을 사용하는 기술이다. 메시지는 발신자에 의해 반복적으로 암호화 된 다음 각 홉에 의해 해독된다. 구축 단계에서는 다음 홉에 대한 라우팅 명령만 각 피어에 노출된다. 작동 단계에서 메시지는 터널을 통과하고 메시지와 해당 라우팅 명령은 터널의 끝점에만 노출된다. 이런 의미에서 일반적인 개념인 갈릭 라우팅은 어니언 라우팅과 동일하다. 물론 아이투피에서 구현된 토어의 구현과는 몇 가지 차이점이 있다.[1]
마이클 프리먼(Michael Freedman)은 갈릭 라우팅을 어니언 라우팅의 확장으로 정의 했느네, 이 확장에서 여러개의 메시지가 함께 번들로 결함된다. 그는 각각의 메시지를 '전구'라고 불렀다. 각각 고유한 배달 지침이 있는 모든 메시지는 끝점에서 노출된다. 이를 통해 양파 라우팅"응답 블록"을 원래 메시지와 효율적으로 결합할 수 있다. 이 개념은 아이투피에서 구현된다. 단일 메시지 대신 여러 메시지를 포함할 수 있다. 이는 토어에서 구현된 어니언 라우팅과의 중요한 차이점이다. 그러나 이것은 아이투피와 토어 사이의 주요 아키텍처 차이점 중 하나일뿐이니 용어 자체의 변경을 정당화하기에는 충분하지 않을 수 있다. 마이클 프리먼이 설명한 방법과 다른 차이점은 경로가 단방향이라는 점이다. 어니언 라우팅에서는 전환 지점이 없음으로 알고리즘을 크게 단순화하고 보다 유연하고 안정적인 전달이 가능하다.[1]
- 활용
갈릭 라우팅, 번들링 및 암호화는 터널을 통한 구축 및 라우팅용(계층 암호화), 종단간 메시지 전달(번들0의 성공 또는 실패 결정, 일부 네트워크 데이터베이스 항목을 게시하는 경우와 이 기술을 사용하여 네트워크 성능을 향상시키고 전송 대기 시간/처리량 균형을 활용하고 중복 경로를 통해 데이터를 분기하여 안정성을 높이는 곳에 활용된다.
암호화 기술
'암호화(Encryption) 기술 중 가장 강력하다고 알려진 것 중 하나가 바로 '종단간 암호화(End-to-End Encryption) 기술'인데, 현재 '텔레그램(Telegram)', '카카오톡' 등의 메신저에서 사용되고 있는 기술이기도 한다. 본디 메신저는 송신자로부터 전달받은 메시지를 회사내 서버에 임시로 저장했다가 이를 다시 수신자에게 전달한다. 중간에 서버를 거쳐가는 이유는 만약 수신자가 메시지를 받을 수 없는 통화권이탈 등의 상태일 때 서버에서 일정 기간 저장하고, 이후 수신자가 메시지를 받을 수 있는 상황일 때 다시 전송해줘야 되기 때문이다. 또한 멀티 플랫폼 환경, 즉 멧니저를 스마트폰, PC 등 다양한 기기에서 이용하는 경우에는 어떤 기기에서 접속하던 간에 과거의 대화 내용을 보이게 해줘야 편리한데, 이렇게 하기 위해서는 어딘가 과거의 대화 내용을 저장해 두어야 하기 때문이다.[4]
이러한 이유로 일반적인 메신저는 수사기관의 '압수수색'에 매우 취약할 수밖에 없다. 수사기관이 법원으로부터 압수수색 영장을 발부받아 회사 내의 서버들을 압수해버리면 마치 도청하듯 사용자들의 과거 대화 내용을 모두 들여도 볼 수 있기 때문이다. 그러나 종단간 암호화 기능을 지원하는 텔레그램 같은 메신저의 경우, 메시지는 송신자의 스마트폰에서 즉시 암호화되고, 이후 서버를 거쳐 수신자 스마트폰에 도착한 후 해독된다. 이때 암호를 걸고 풀 수 있는 키(Key)는 두 대화 당사자의 스마트폰에만 저자오디어 있기 때문에 메시지가 전송되는 중에 이를 가로채거나, 메시지가 일정 기간 머무르는 서버를 압수해 뒤지더라도 암호문만을 얻을 수 있을 뿐 실제 내용이 무엇인지는 알아낼 수 없게 된다. 그래서 미국에서는 이러한 '종단간 암호화(End-to-End Encryption)'를 'Warrant-Proof Encryption'이라고도 부른다. 즉, 영장 집행을 불가능하게 하는 암호기술이라는 뜻이다.[4]
이와는 별도로 인터넷 상에서의 '미행'을 막아주는 대표적인 기술로는 '믹스 넷'(Mix Networks)이라는 기술이 있다. 흔히 영화에서 범인이 수사관의 미행을 따돌리기 위해 바로 목적지로 가지 않고 이리저리 엉뚱한 장소들을 돌아다니면서 가는 것을 볼 수 있다. '믹스 넷'은 바로 이러한 개념을 실제로 구현해 낸 기술이다. 암호화폐의 아버지라 불리는 David Chaum 박사가 1981년 전자메일을 익명으로 수신발신하기 위한 목적으로 개발했다.[4]
믹스 넷의 기본 개념은 인형 안에 똑같은 모양의 크기가 다른 인형들이 계속 들어 있는 러시아 인형처럼 정당한 수신자 외에는 볼 수 없는 편지봉투가 여러겹 쌓여있다는 것이라고 생각하면 된다. 송신자가 수신자에게 바로 전달하지 않고 겹겹히 쌓여있는 편지봉투의 수신자들에게 갔다가 전송되어 믹스 넷을 이용하는 사용자들 모두가 담합하지 않는 한 정확한 송신자와 수신자를 파악하는 것이 어렵다. David Chaum 박사의 믹스 넷은 이후 'Onion Roution', '토어', '아이투티' 등의 기술을 탄생시키는 기반이 된다. 재미있는 사실은 사실 이러한 믹스 넷을 기반으로 만들어진 어니언 라우팅 기술은 본디 미국 군 및 CIA와 같은 정보기관들이 인터넷에 은밀하게 접속하기 위한 목적으로 만들어졌다는 것이다. 그러던 것이 전자프로티어재단(Electronic Frontier Foundation, EFF) 등의 후원을 받아 정부의 검열로부터 일반인을 보호하기 위한 '토어' 기술로 진화했고, 이제는 이것이 다크웹에 접속해 불법 음란물과 마약류, 해킹 도구 등을 구매하는 데에 악용되고 있다.[4]
각주
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 I2P 공식 홈페이지 - https://geti2p.net/en/
- ↑ 라드웨어 공식 홈페이지 - https://security.radware.com/ddos-knowledge-center/ddospedia/i2p-invisible-internet-project/
- ↑ 토어 해시넷 - http://wiki.hash.kr/index.php/%ED%86%A0%EC%96%B4
- ↑ 4.0 4.1 4.2 4.3 암호인, 〈보안 기술의 양면성 - 첩보 기술이 프라이버시 보호 기술로, 그것이 다시 범죄 도구로 사용되는 아이러니〉, 《네이버 블로그》, 2020-04-03
참고자료
- I2P 공식 홈페이지 - https://geti2p.net/en/
- 라드웨어 공식 홈페이지 - https://security.radware.com/ddos-knowledge-center/ddospedia/i2p-invisible-internet-project/
같이 보기