I2P

I2P는 인터넷 상에서 익명성과 프라이버시를 보장하기 위해 설계된 분산형 라우팅 네트워크이자, 일반적인 웹 브라우징, 파일 공유, 메신저, 웹 서비스 등을 익명화하여 제공하는 익명 통신 플랫폼이다. 토르(The Onion Router)의 원리를 일부 차용하면서도 독자적인 기술 스택을 사용해, 주로 자체적인 “이중 암호화”(garlic routing) 방식을 통해 트래픽을 보호한다.


1. 개요

  • 정식 명칭: Invisible Internet Project (I2P)
  • 목적: 사용자의 위치와 신원을 숨기면서 안전하게 통신할 수 있는 환경 제공
  • 네트워크 형태: 피어‑투‑피어(P2P) 기반의 익명 라우팅 네트워크
  • 주요 프로토콜: Garlic Routing, I2P Bus, I2PTunnel, SAM (Simple Anonymous Messaging) API 등

2. 역사

연도 주요 사건
2003 I2P 프로젝트 시작 (원래 “Invisible Internet Project”라는 이름으로 개발)
2009 첫 번째 정식 릴리즈(0.9.8) 배포, 토르와 차별화된 설계 강조
2013 I2P 0.9.14 공개, 성능 향상 및 라우팅 알고리즘 개선
2020‑현재 지속적 업데이트와 커뮤니티 기반 플러그인·서비스 확장 진행 중

3. 구조와 작동 원리

  1. 노드 종류

    • 터널 게이트웨이 (Tunnel Gateways): 클라이언트가 데이터를 전송·수신하기 위해 사용하는 가상 터널을 생성·관리.
    • 라우터 (Routers): 네트워크 전체에 분산된 중계 노드로, 전달된 패킷을 다음 단계로 암호화·전송.
  2. Garlic Routing

    • 여러 개의 메시지를 하나의 “garlic”(마늘) 패킷에 묶어 전송, 각 “clove”(정향)에는 독립적인 암호화 키와 목적지가 포함.
    • 다중 계층 암호화를 통해 중간 라우터가 전체 경로와 내용에 접근할 수 없게 함.
  3. 터널

    • 인바운드(Inbound) 터널: 외부에서 들어오는 트래픽을 받는 터널.
    • 아웃바운드(Outbound) 터널: 내부에서 외부로 나가는 트래픽을 전송하는 터널.
    • 각 터널은 최소 3개의 라우터를 거치며, 라우터는 무작위로 선택돼 트래픽 분석을 어렵게 함.

4. 주요 특징

  • 완전 탈중앙화: 중앙 서버가 없으며, 모든 라우터가 동등하게 참여.
  • 익명성 보장: IP 주소와 실제 위치가 노출되지 않으며, 트래픽 메타데이터도 암호화.
  • 내부 서비스 (Eepsite): .i2p 도메인으로 운영되는 웹사이트·블로그·포럼 등.
  • 다양한 응용 프로그램:
    • I2P-Bote (암호화 이메일)
    • ZeroNet, Freenet 등과 연동 가능
    • Torrent 클라이언트(i2p torrent)

5. 사용 사례

  • 언론인·인권 활동가: 국가 검열을 우회하고 안전하게 정보를 교환.
  • 프라이버시 지향 커뮤니티: 토론 포럼·채팅 방·블로그 운영.
  • 보안 연구: 익명 네트워크의 취약점 분석 및 방어 기술 개발.

6. 보안 및 한계

장점 단점·위험 요소
다중 레이어 암호화로 높은 익명성 제공 네트워크 규모·속도가 토르보다 느림
탈중앙화 구조로 단일 실패점이 없음 라우터 악용 시 트래픽 지연·품질 저하 가능
다양한 API와 플러그인 지원 일부 국가에서 포트 차단·차단 시도 존재
자체 DNS (I2P Name Service) 운영 익명성 보장을 위해 기본적으로 외부와 연결이 제한적(예: HTTPS 사이트 이용 시 별도 터널 필요)

7. 관련 프로젝트 및 비교

  • Tor: Onion Routing 기반, 주로 웹 브라우징에 초점. I2P는 앱·서비스 전반을 지원.
  • Freenet: 분산 파일 저장·공유에 특화, 자체적인 데이터 복제 메커니즘 보유.
  • ZeroNet: P2P 웹사이트 호스팅, 비트코인 기반 인증 체계 사용.

8. 설치 및 운영

  1. 다운로드: 공식 웹사이트(https://geti2p.net)에서 최신 버전(일반적으로 Java 기반) 다운로드.
  2. 설치: Windows, macOS, Linux, Android 등 다양한 플랫폼 지원.
  3. 설정: 기본 포트(4444, 6668 등)와 방화벽 예외 설정 후, 라우터 시작.
  4. 활용: I2P 터미널, I2P-시작 브라우저(i2p-browser) 등으로 Eepsite 접속 혹은 I2PTunnel을 이용해 기존 애플리케이션을 I2P 네트워크에 연결.

9. 참고 문헌·링크

  • 공식 웹사이트: https://geti2p.net/ko/
  • I2P Wiki: https://i2p-projekt.github.io/
  • “Garlic Routing: A New Approach to Anonymous Communication” – I2P 개발팀 논문 (2004)
  • “Comparative Study of Anonymous Networks: Tor vs. I2P” – IEEE Access, 2022

요약: I2P는 탈중앙화된 익명 라우팅 네트워크로, 다중 암호화와 “garlic routing”을 통해 사용자의 위치와 신원을 보호한다. 토르와는 다르게 자체적인 서비스(EEPSite)와 다양한 애플리케이션을 지원하며, 보안·프라이버시 중심의 커뮤니티에서 활발히 활용되고 있다.

둘러보기

더 찾아볼 만한 주제