Repolode
nanami-0713

nanami-0713/relay-kit

Cloudflare Workers에 배포할 수 있는 셀프 호스팅 가능한 종단 간 암호화 릴레이로, 휴대폰에서 로컬 데스크톱 포트에 노출 없이 접속할 수 있습니다.

스타
193
포크
22
열린 이슈
0
마지막 커밋
5일 전

어떤 프로젝트인가요?

relay-kit은 휴대폰 같은 원격 클라이언트와 데스크톱에서 실행 중인 서비스 사이에 위치하는 릴레이 서버입니다. 릴레이는 Durable Objects를 사용하는 Cloudflare Workers에서 실행되며 암호문과 라우팅 토큰만 전달하므로, 복호화는 양쪽 끝에서만 이루어집니다. 페어링에는 256비트 코드 하나를 사용하며, 이 코드로 라우팅 토큰과 PAKE salt도 생성합니다. 따라서 코드가 없으면 릴레이는 핸드셰이크를 완료할 수 없습니다.

저장소에는 릴레이 자체와 로컬 HTTP 또는 WebSocket 포트를 프록시하는 참조 에이전트, 그리고 터널을 통해 fetch와 WebSocket을 제공하는 참조 클라이언트가 포함되어 있습니다. Node 기반 릴레이 픽스처는 로컬 테스트나 단일 프로세스 셀프 호스팅을 위해 동일한 프로토콜을 구현합니다. 프로토콜은 PROTOCOL.md에 명세되어 있으며, 핵심 패키지는 WebCrypto만 사용하므로 Node 18+, 브라우저, Capacitor WebView에서 실행됩니다.

이 프로젝트는 Alma AI assistant의 릴레이 프로토콜에서 파생되었으며 Alma의 공식 클라이언트와는 wire 호환되지 않습니다. 기본적으로 속도 제한이 없고, 핸드셰이크도 정식 보안 감사를 받지 않았습니다.

핵심 기능

  • 01단일 wrangler 명령으로 릴레이를 Cloudflare Workers에 배포합니다.
  • 02릴레이는 암호문과 라우팅 토큰만 처리하며, 복호화는 엔드포인트에서 이루어집니다.
  • 03페어링 코드 하나로 라우팅 토큰과 PAKE salt를 모두 생성합니다.
  • 04참조 에이전트가 로컬 HTTP 및 WebSocket 포트를 프록시합니다.
  • 05핵심 암호화 패키지는 WebCrypto만 사용하며 Node 18+와 브라우저에서 실행됩니다.
  • 06로컬 테스트나 셀프 호스팅을 위한 Node 릴레이 픽스처가 포함되어 있습니다.

활용 사례

  • 다른 네트워크에 있는 휴대폰에서 로컬 개발 서버나 데스크톱 웹 대시보드에 접속하기.
  • 자신의 Cloudflare 계정에서 비공개 암호화 터널을 셀프 호스팅하기.
  • 문서화된 relay-e2e/v1 프로토콜을 기반으로 커스텀 에이전트나 클라이언트 구축하기.

빠른 시작

  1. 1

    종속성 설치

    npm install
  2. 2

    Cloudflare 계정에 로그인(최초 1회)

    npx wrangler login
  3. 3

    relay server 디렉터리로 이동

    cd workers/relay
  4. 4

    relay를 Cloudflare Workers에 배포

    npx wrangler deploy

사용 전 알아둘 점

  • 핸드셰이크는 자체 제작한 PAKE 스타일 방식으로, 공식적인 검증이나 감사를 받지 않았습니다.
  • 이 프로토콜은 기본 상태에서 공식 Alma 클라이언트와 와이어 호환되지 않습니다.
  • workers.dev 도메인은 중국 본토의 여러 네트워크에서 차단되므로 사용자 지정 도메인이나 프록시가 필요할 수 있습니다.

포함된 컬렉션

토픽

자주 묻는 질문

relay-kit은(는) 무엇인가요?
Cloudflare Workers에 배포할 수 있는 셀프 호스팅 가능한 종단 간 암호화 릴레이로, 휴대폰에서 로컬 데스크톱 포트에 노출 없이 접속할 수 있습니다. relay-kit은 휴대폰 같은 원격 클라이언트와 데스크톱에서 실행 중인 서비스 사이에 위치하는 릴레이 서버입니다. 릴레이는 Durable Objects를 사용하는 Cloudflare Workers에서 실행되며 암호문과 라우팅 토큰만 전달하므로, 복호화는 양쪽 끝에서만 이루어집니다. 페어링에는 256비트 코드 하나를 사용하며, 이 코드로 라우팅 토큰과 PAKE salt도 생성합니다. 따라서 코드가 없으면 릴레이는 핸드셰이크를 완료할 수 없습니다.
relay-kit은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
relay-kit은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
relay-kit은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. relay-kit의 마지막 커밋은 2026년 11월 1일입니다.
relay-kit은(는) 어디에 사용할 수 있나요?
다른 네트워크에 있는 휴대폰에서 로컬 개발 서버나 데스크톱 웹 대시보드에 접속하기. 자신의 Cloudflare 계정에서 비공개 암호화 터널을 셀프 호스팅하기. 문서화된 relay-e2e/v1 프로토콜을 기반으로 커스텀 에이전트나 클라이언트 구축하기.
relay-kit는 어떻게 설치하나요?
종속성 설치: npm install Cloudflare 계정에 로그인(최초 1회): npx wrangler login relay server 디렉터리로 이동: cd workers/relay relay를 Cloudflare Workers에 배포: npx wrangler deploy
relay-kit은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/nanami-0713/relay-kit

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트