아이투피
아이투피(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 주소를 공개하지 않고 원래 데이터를 목적지로 전송한다. 통신의 라우팅은 토어 회로의 모든 홉에서 은폐되었기 때문에 통신 피어가 출처와 목적지를 파악하는 네트워크 감시를 통해 특정될 수 있는 단일 지점을 알 수 없게 한다.
- 프리넷(Free net)
- 엄격한 프라이버시 보호 방법을 제공하면서 인터넷을 통한 피투피(P2P) 데이터 공유에 사용되는 오픈소스 소프트웨어이다. 이안 클락(Ian Clarke)이 "A Distributed Decentralised Information Storage and Retrieval System"(분산 자립형 정보 저장 및 검색 시스템)에서 처음 개발했지만 2000년부터 지속적인 개발이 진행되고 있었다. 프리넷은 기존의 피투피 공유 애플리케이션과 보안 특성과 상호 작용성 측면에서 다르다. 프리넷은 프리넷 네트워크에 업로드된 콘텐츠 접근에만 사용할 수 있다. 일반적으로 프리넷은 "자유"를 출판하고, 게시판을 통해 소통하고, 콘텐츠를 배포하고, 포럼을 활성화하고, 다운로드를 위해 사용된다. 프리넷의 통신은 대체 노드를 통해 라우팅 되므로 프리넷 사용자가 추적될 가능성이 감소한다. 또, 프리넷은 파일을 올린 사용자가 오프라인 상태에서도 다른 사용자가 파일을 계속 다운받을 수 있도록 허용하고 있다.
- 프리넷의 디자인은 다른 익명성 네트워크와는 매우 다르다. 엔드포인트 간의 트래픽 스트림을 난독하게 만드는 대신, 데이터 자체를 암호화된 블록으로 잘라내 다른 피어의 데이터 저장소에 분산 시켜 중복성과 진술 거부권을 제공한다. 파일의 사용 빈도가 보관 또는 삭제 여부를 지시하기 때문에 사용자는 데이터 저장소에 무엇이 저장되어 있는지 사실상 알 수 없다. 이로 인해 검열에 대한 저항력이 향상된다. 업로드 후, 게시자는 콘텐츠의 통일된 자원 식별자(URI) 아카이브(Archive)의 역할을 하는 키를 얻는다. 이 키는 선택적으로 공유하여 다른 사람이 접근할 수 있도록 할 수 있다. 이것들은 프리사이트라고 알려져 있고 프리넷 네트워크에서 정적 콘텐츠만 호스트한다. 여기서 데이터베이스나 서버 측 스크립트와 같은 활성 콘텐츠는 불가능하다. 업로더가 오프라인이 된 후에도 데이터는 계속 사용할 수 있으며, 이는 비동기임을 의미한다. 프리넷은 더 넓은 웹에 접속할 수 없는 자급자족 네트워크이다.[3]
특징[편집]
아이투피는 익명 네트워크로, 응용 프로그램이 익명으로 안전하게 메시지를 보내는 데 사용할 수 있는 간단한 계층을 제공한다. 네트워크 자체는 메시지 기반(a la IP)이지만, 그 위에 안정적인 스트리밍 통신을 허용하는 라이브러리(a la TCP)가 있다. 모든 통신은 암호화 되며(총 메시지를 보낼 때 사용되는 암호화 계층은 4개), 끝점(목적지)도 암호화 식별자이다.[1]
전송된 메시지를 익명화하기 위해 각 클라이언트 응용 프로그램에는 아이투피 라우터에 몇 개의 인바운드 및 아웃 바인드 '터널'이 있다. 인바운드 터널은 제공된 모든 것이 터널 생성자에게 전달되는 곳이고, 아웃 바인드 터널은 터널 생상자가 메시지를 멀리 밀어내는 곳이다. 터널은 일련의 라우터를 통해 임시 및 단방향 경로로 일련의 피어(peer)라고 볼 수 있다. 클라이언트가 다른 클라이언트에게 메시지를 보내려고 할 때 클라이언트는 다른 클라이언트의 인바운드 터널 중 하나를 대상으로 하는 아웃 바인드 터널 중 하나를 통해 메시지를 전달하여 목적지에 전달한다. 네트워크의 모든 사용자는 이러한 터널의 길이를 선택하며, 그렇게 함으로써 자신이 필요로 하는 익명성, 대기 시간 및 처리량 사이에서 절충을 한다. 결과적으로 각 종단간 메시지를 릴레이하는 피어 수는 송신자와 수신자의 위협 모델을 모두 충족시키는 데 필요한 최소한의 것이다.[1]
아이투피는 피투피 오버레이 네트워크이다. 이것은 사용자가 설정된 인터넷을 통해 아이투피에 연결한 다음 대역폭, 스토리지 등의 리소스를 나머지 아이투피 커뮤니티와 공유한다는 것을 의미한다. 따라서 네트워크의 모든 시스템은 라우터 역할을 하므로 분산된 서비스가 된다. 연결 보안은 최상위 수준이다. 아이투피 소프트웨어는 다른 라우터에 대한 인바운드 및 아웃 바운드 프록시(proxy) 터널을 설정한다. 중앙처리장치(CPU)에서 시작된 메시지 및 데이터는 지정된 대상에 도착하기 전에 일련의 아웃 바운드 터널을 통과하나. 가져온 데이터가 일련의 터널을 통과하며 최종 결과는 종단간 메시지 암호화이다.[4]
아이투피 사용자 인터페이스를 통해 사용자는 주소가 있는 이메일, 클라이언트를 통한 파일 공유 등 여러 번들 기능에 액세스 할 수 있다. 또한 네트워크는 유아이 대시 보드에 추가할 수 있는 여러 플러그인 서비스에 대한 서비스에 대한 액세스를 제공한다. 인기 있는 플러그인은 실시간 채팅 기능, 암호화된 클라우드 파일 스토리지 소프트웨어, 포럼, 블로그, 위키 소프트웨어 등이 있다.[4]
장점[편집]
- 타이밍이나 중간자 공격이 없다.
- 아이투피의 프록시 터널 아키텍처는 타이밍 공격을 어렵게 만든다. 이 유형의 공격에서 도청자는 특정 메시지를 시간으로 보고 패턴을 찾기 위해 출구 노드 또는 발신 터널의 트래픽을 모니터링한다. 강력한 터널 암호화와 사용자가 터널 길이 및 기간을 사용자 정의 할 수 있는 기능 덕분에 도청자는 타이밍 패턴을 생성할 수 없다. 인기 있는 또 다른 공격 전략은 중간자 공격이다. 이 방법에서 해커는 합법적인 메시지 수신자로 가장한다. 메시지가 들어오면 해커는 데이터를 다음 대상으로 전달하기 전에 암호를 해독한다. 그러나 아이투피의 갈릭 라우팅 메시지는 토어의 어니언 라우팅 메시지보다 해독하기가 훨씬 더 어렵다. 또한 아이투피는 피투피 네트워크이므로 트래픽은 중간자 공격 시도를 좌절시키는 방식으로 다른 네트워크 경로를 따라 이동할 수 있다.
- 암호화된 대상 위치
- 아이투피 네트워크의 모든 서비스 또는 입사이트(eepsite)를 대상이라고 한다. 그것들은 256바이트의 공개 키, 128바이트의 서명 키, 그리고 null 인증서로 구성된 516바이트의 암호화 키로 식별된다. 이 암호화를 해독하기 위해 라우터는 내부 및 외부 호스트 파일을 사용한다. 이 파일은 기존 DNS와 유사한 이름 지정 시스템과 같은 주소록에서 병합된다. 최종 결과는 게시자와 완전히 분리된 심하게 암호화된 대상이다.
- 빠른 피투피 파일 공유
- 토어의 회로와 달리 아이투피의 일방적인 프록시 터널은 피투피 파일 공유가 더 효율적으로 이루어지도록 한다. 실제로 Tracker2.postman.i2p는 아이투피의 가장 인기 있는 서비스 중 하나이다. 안전한 익명 파일 공유를 위해 토렌트 클라이언트에 로드할 수 있는 수천 개의 토렌트를 제공한다.[4]
단점[편집]
- 번거로운 설치 및 사용
- 이 네트워크는 일반 컴퓨터 사용자를 대상으로 하지 않는다. 리눅스(Linux) 운영체제에서 가장 잘 작동한다. 어떤 네트워크가 작동하든 매킨토시(Mac)와 윈도우(Windows)는 너무 쉽게 추적된다. 다운로드 및 설치 절차는 대부분의 다른 소프트웨어 패키지와 다르지 않지만 인터페이스가 작동하려면 브라우저를 올바르게 구성해야 한다. 지침이 제공되며 아이투피 웹 사이트에 자세한 도움말 섹션도 있지만 이러한 문제로 인해 접근성이 떨어지는 편이다.
- 아이투피 네트워크의 콘텐츠 가용성
- 피투피 네트워크의 한가지 주요 단점은 사용자가 자신의 콘텐츠와 리소스를 할 수 있으려면 로그온 해야 한다는 것이다. 따라서 로그온하지 않은 경우 입사이트를 찾을 수 없다. 예를 들어 프리넷과 같은 다른 익명성 네트워크는 분산된 데이터 저장소이므로 게시자가 더는 온라인 상태가 아닌 경우에도 다른 사람이 게시한 콘텐츠를 검색할 수 있다.
- 공개 웹에 대한 취약한 액세스
- 아웃 프록시를 사용하는 경우 종단간 암호화를 보장할 수 없다. 이는 아이투피가 구글(Google) 또는 유폼(YouPorn)과 같은 색인된 사이트의 익명 브라우징을 위해 설계되지 않았음을 의미한다. 그러나 아이투피는 이 문제를 인식하고 해결할 방법을 개발 중이다.[4]
갈릭 라우팅[편집]
갈릭 라우팅(garlic routing)과 갈릭 암호화(garlic encryption)라는 용어는 아이투피의 기술을 언급할 때 종종 느슨하게 사용된다. 갈릭 라우팅은 Roger Dingledine의 Free Haven Master의 논문 섹션 8.1.1 (2000 년 6 월)에서 마이클 프리먼(Michael J. Freedman)에 의해 처음 만들어졌으며 어니언 라이팅에서 파생되었다. 갈릭은 아이투피가 번들링 형태를 구현하거나 단순히 토어와의 일반적인 차이점을 강조하기 위해 아이투피 개발자가 사용했을 수 있다. 일반적으로 아이투피를 언급할 때 "갈릭"이라는 용어는 계층화 된 암호화, 여러 메시지를 함께 묶기, ElGamal / AES 암호화 중 하나를 의미할 수 있다.[1]
어니언 라우팅은 일련의 피어를 통해 경로 또는 터널을 구축한 다음 해당 터널을 사용하는 기술이다. 메시지는 발신자에 의해 반복적으로 암호화된 다음 각 홉에 의해 해독된다. 구축 단계에서는 다음 홉에 대한 라우팅 명령만 각 피어에 노출된다. 작동 단계에서 메시지는 터널을 통과하고 메시지와 해당 라우팅 명령은 터널의 끝점에만 노출된다. 이런 의미에서 일반적인 개념인 갈릭 라우팅은 어니언 라우팅과 동일하다. 물론 아이투피에서 구현된 토어의 구현과는 몇 가지 차이점이 있다.[1]
마이클 프리먼(Michael Freedman)은 갈릭 라우팅을 어니언 라우팅의 확장으로 정의 했는데, 이 확장에서 여러 개의 메시지가 함께 번들로 결합된다. 그는 각각의 메시지를 '전구'라고 불렀다. 각각 고유한 배달 지침이 있는 모든 메시지는 끝점에서 노출된다. 이를 통해 양파 라우팅"응답 블록"을 원래 메시지와 효율적으로 결합할 수 있다. 이 개념은 아이투피에서 구현된다. 단일 메시지 대신 여러 메시지를 포함할 수 있다. 이는 토어에서 구현된 어니언 라우팅과의 중요한 차이점이다. 그러나 이것은 아이투피와 토어 사이의 주요 아키텍처 차이점 중 하나일 뿐이니 용어 자체의 변경을 정당화하기에는 충분하지 않을 수 있다. 마이클 프리먼이 설명한 방법과 다른 차이점은 경로가 단방향이라는 점이다. 어니언 라우팅에서는 전환 지점이 없음으로 알고리즘을 크게 단순화하고 보다 유연하고 안정적인 전달이 가능하다.[1]
갈릭 라우팅, 번들링 및 암호화는 터널을 통한 구축 및 라우팅용(계층 암호화), 종단간 메시지 전달(번들0의 성공 또는 실패 결정, 일부 네트워크 데이터베이스 항목을 게시하는 경우와 이 기술을 사용하여 네트워크 성능을 향상하고 전송 대기 시간/처리량 균형을 활용하고 중복 경로를 통해 데이터를 분기하여 안정성을 높이는 곳에 활용된다.[1]
암호화 기술[편집]
'암호화(Encryption) 기술 중 가장 강력하다고 알려진 것 중 하나가 바로 '종단 간 암호화(End-to-End Encryption) 기술'인데, '텔레그램(Telegram)', '카카오톡'(Kakao Talk) 등의 메신저에서 사용되고 있는 기술이기도 하다. 본디 메신저는 송신자로부터 전달받은 메시지를 회사 내 서버에 임시로 저장했다가 이를 다시 수신자에게 전달한다. 중간에 서버를 거쳐 가는 이유는 만약 수신자가 메시지를 받을 수 없는 통화권 이탈 등의 상태일 때 서버에서 일정 기간 저장하고, 이후 수신자가 메시지를 받을 수 있는 상황일 때 다시 전송해줘야 하기 때문이다. 또한 멀티 플랫폼 환경, 즉 메신저를 스마트폰, PC 등 다양한 기기에서 이용하는 경우에는 어떤 기기에서 접속하던 간에 과거의 대화 내용을 보이게 해줘야 편리한데, 이렇게 하기 위해서는 어딘가 과거의 대화 내용을 저장해 두어야 하기 때문이다.[5]
이러한 이유로 일반적인 메신저는 수사기관의 '압수수색'에 매우 취약할 수밖에 없다. 수사기관이 법원으로부터 압수수색 영장을 발부받아 회사 내의 서버들을 압수해버리면 마치 도청하듯 사용자들의 과거 대화 내용을 모두 들여도 볼 수 있기 때문이다. 그러나 종단간 암호화 기능을 지원하는 텔레그램 같은 메신저의 경우, 메시지는 송신자의 스마트폰에서 즉시 암호화되고, 이후 서버를 거쳐 수신자 스마트폰에 도착한 후 해독된다. 이때 암호를 걸고 풀 수 있는 키(Key)는 두 대화 당사자의 스마트폰에만 저장되어 있기 때문에 메시지가 전송되는 중에 이를 가로채거나, 메시지가 일정 기간 머무르는 서버를 압수해 뒤지더라도 암호문만을 얻을 수 있을 뿐 실제 내용이 무엇인지는 알아낼 수 없게 된다. 그래서 미국에서는 이러한 '종단간 암호화(End-to-End Encryption)'를 'Warrant-Proof Encryption'이라고도 부른다. 즉, 영장 집행을 불가능하게 하는 암호기술이라는 뜻이다.[5]
이와는 별도로 인터넷상에서의 '미행'을 막아주는 대표적인 기술로는 '믹스 넷'(Mix Networks)이라는 기술이 있다. 흔히 영화에서 범인이 수사관의 미행을 따돌리기 위해 바로 목적지로 가지 않고 이리저리 엉뚱한 장소들을 돌아다니면서 가는 것을 볼 수 있다. '믹스 넷'은 바로 이러한 개념을 실제로 구현해 낸 기술이다. 암호화폐의 아버지라 불리는 David Chaum 박사가 1981년 전자메일을 익명으로 수신 발신하기 위한 목적으로 개발했다.[5]
믹스 넷의 기본 개념은 인형 안에 똑같은 모양의 크기가 다른 인형들이 계속 들어 있는 러시아 인형처럼 정당한 수신자 외에는 볼 수 없는 편지 봉투가 여러 겹 쌓여있다는 것이라고 생각하면 된다. 송신자가 수신자에게 바로 전달하지 않고 겹겹이 쌓여있는 편지 봉투의 수신자들에게 갔다가 전송되어 믹스 넷을 이용하는 사용자들 모두가 담합하지 않는 한 정확한 송신자와 수신자를 파악하는 것이 어렵다. David Chaum 박사의 믹스 넷은 이후 'Onion Roution', '토어', '아이투티' 등의 기술을 탄생시키는 기반이 된다. 재미있는 사실은 사실 이러한 믹스 넷을 기반으로 만들어진 어니언 라우팅 기술은 본디 미국 군 및 CIA와 같은 정보기관들이 인터넷에 은밀하게 접속하기 위한 목적으로 만들어졌다는 것이다. 그러던 것이 전자프로티어재단(Electronic Frontier Foundation, EFF) 등의 후원을 받아 정부의 검열로부터 일반인을 보호하기 위한 '토어' 기술로 진화했고, 이제는 이것이 다크웹에 접속해 불법 음란물과 마약류, 해킹 도구 등을 구매하는 데에 악용되고 있다.[5]
각주[편집]
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 1.6 아이투피 공식 홈페이지 - https://geti2p.net/en/
- ↑ 라드웨어 공식 홈페이지 - https://security.radware.com/ddos-knowledge-center/ddospedia/i2p-invisible-internet-project/
- ↑ 프리넷 후닉스 - https://www.whonix.org/wiki/Freenet
- ↑ 4.0 4.1 4.2 4.3 John Norris, 〈The Privacy Pros and Cons of the I2P Network〉, 《브이피엔 멘토》, 2020-06-24
- ↑ 5.0 5.1 5.2 5.3 암호인, 〈보안 기술의 양면성 - 첩보 기술이 프라이버시 보호 기술로, 그것이 다시 범죄 도구로 사용되는 아이러니〉, 《네이버 블로그》, 2020-04-03
참고자료[편집]
- 아이투피 공식 홈페이지 - https://geti2p.net/en/
- 라드웨어 공식 홈페이지 - https://security.radware.com/ddos-knowledge-center/ddospedia/i2p-invisible-internet-project/
- 프리넷 후닉스 - https://www.whonix.org/wiki/Freenet
- John Norris, 〈The Privacy Pros and Cons of the I2P Network〉, 《브이피엔 멘토》, 2020-06-24
- 암호인, 〈보안 기술의 양면성 - 첩보 기술이 프라이버시 보호 기술로, 그것이 다시 범죄 도구로 사용되는 아이러니〉, 《네이버 블로그》, 2020-04-03
같이 보기[편집]