Peerweb: WebTorrent을 통한 탈중앙화 웹사이트 호스팅

1 week ago 8

  • WebTorrent 기반 피어 투 피어 네트워크를 이용해 웹사이트를 중앙 서버 없이 배포하는 시스템
  • 사용자는 웹사이트 폴더를 드래그 앤 드롭하여 업로드하고, 고유한 PeerWeb 링크를 통해 공유 가능
  • 브라우저 탭을 열어두거나 데스크톱 클라이언트를 사용하면 지속적인 호스팅 유지
  • DOMPurify 기반 보안 필터링, 샌드박스 실행, 스마트 캐싱 등으로 안전성과 속도 강화
  • 검열 저항성, 비용 절감, 글로벌 분산성을 갖춘 탈중앙화 웹 호스팅 모델로 주목

PeerWeb 개요

  • PeerWeb은 WebTorrent 기술을 이용해 웹사이트를 중앙 서버 없이 호스팅하는 시스템
    • 웹사이트가 피어 투 피어 네트워크를 통해 분산 저장되어 검열 저항성항상 가용성을 확보
  • 사용자는 HTML, CSS, JavaScript 등으로 구성된 정적 웹사이트를 업로드 가능
  • 업로드 후 생성되는 고유 해시와 PeerWeb URL을 통해 누구나 접근 가능

업로드 및 호스팅 방식

  • 웹사이트 폴더를 드래그 앤 드롭하면 자동으로 처리되어 업로드 완료
    • 업로드 후 해시(Hash)PeerWeb URL이 생성되어 즉시 공유 가능
  • 브라우저 탭을 열어두면 해당 탭이 호스팅 노드 역할을 수행
    • 탭을 닫지 않고 유지하면 다른 사용자가 사이트에 접근 가능
  • 데스크톱 클라이언트(Windows, macOS, Linux) 를 이용하면 탭을 열지 않아도 지속적 호스팅 가능

사용 방법

  • ① HTML/CSS/JS로 정적 사이트 제작
  • ② PeerWeb 페이지에 폴더를 드래그 앤 드롭하여 업로드
  • ③ 생성된 고유 링크를 공유
  • ④ 브라우저 탭 유지 또는 클라이언트 실행으로 호스팅 지속

기존 사이트 불러오기

  • 기존 웹사이트를 불러오려면 토렌트 해시를 입력
    • PeerWeb이 자동으로 마그넷 링크 접두사와 트래커 정보를 추가
  • 예시 데모로 SomaFM, 체스 게임, 텍스트 에디터 앱 등이 제공

개발자 기능

  • URL에 &debug=true를 추가하면 디버그 모드로 전환되어 진행 상황을 상세 표시
  • 고급 토렌트 생성기를 통해 직접 토렌트 파일 생성 가능
  • 캐시 초기화고급 설정 기능 제공

스마트 캐싱

  • 방문한 사이트를 IndexedDB에 저장하여 즉시 재로딩 지원
    • 캐시는 7일 후 자동 삭제
    • DOMPurify로 정화된 콘텐츠만 저장
  • 오프라인 상태에서도 캐시된 사이트 접근 가능

보안 기능

  • DOMPurify 통합으로 모든 HTML을 정화하여 XSS 공격 차단
  • 위험한 태그 및 속성 제거, 샌드박스 iframe 실행, 리소스 검증 수행
  • 모든 파일은 격리된 환경에서 실행되어 보안 강화

사이트 요구사항

  • 루트 또는 하위 폴더에 index.html 포함 필수
  • 모든 리소스는 상대 경로 사용
  • 정적 콘텐츠만 허용 (HTML, CSS, JS, 이미지, 폰트 등)
  • 반응형 디자인 권장
  • 콘텐츠는 자동으로 보안 정화 처리

주요 장점

  • 검열 저항성: 중앙 서버가 없어 차단 불가
  • 비용 절감: 호스팅 요금 없음
  • 글로벌 분산성: 전 세계 피어 간 자동 배포
  • 항상 가용성: 피어가 온라인인 한 접근 가능
  • 보안성: 샌드박스 실행 및 XSS 보호
  • 빠른 로딩: 스마트 캐싱으로 즉시 재방문 가능
  • 간단한 URL 구조: 토렌트 해시만으로 접근 가능
  • 오프라인 접근성: 캐시된 사이트는 인터넷 없이 작동

데모 및 예시

  • 기능 테스트 페이지: ?orc=90c020bd252639622a14895a0fad713b91e0130c
  • SomaFM, 체스, 텍스트 에디터 등 다양한 실행 가능한 데모 사이트 제공

결론

  • PeerWeb은 WebTorrent 기반 탈중앙화 웹 호스팅 플랫폼으로,
    검열 저항성·비용 효율성·보안성을 동시에 제공하는 새로운 웹 배포 방식임

Read Entire Article