Repolode
nanami-0713

nanami-0713/relay-kit

Самостоятельно размещаемый сквозно зашифрованный ретранслятор для Cloudflare Workers, через который телефон подключается к локальному порту компьютера без его раскрытия.

Звёзды
194
Форки
22
Открытые issues
0
Последний коммит
7 дней назад

Что это?

relay-kit — сервер-ретранслятор между удалённым клиентом, например телефоном, и сервисом на компьютере. Он работает на Cloudflare Workers с Durable Objects и пересылает только шифротекст и токен маршрутизации, поэтому расшифровка происходит только на обоих конечных устройствах. Для сопряжения используется один 256-битный код, из которого также выводятся токен маршрутизации и соль PAKE: без этого кода ретранслятор не сможет завершить рукопожатие.

В репозитории есть сам ретранслятор, эталонный агент для проксирования любого локального HTTP- или WebSocket-порта и эталонный клиент, предоставляющий fetch и WebSocket через туннель. Реализация ретранслятора на Node воспроизводит тот же протокол и предназначена для локального тестирования или самостоятельного размещения в одном процессе. Протокол описан в PROTOCOL.md, а основной пакет использует только WebCrypto, поэтому работает в Node 18+, браузерах и WebView в Capacitor.

Проект создан на основе протокола ретрансляции AI-ассистента Alma и несовместим на уровне протокола с официальными клиентами Alma. Ограничения частоты запросов по умолчанию нет, а рукопожатие не проходило формальный аудит.

Ключевые возможности

  • 01Развёртывает ретранслятор в Cloudflare Workers одной командой wrangler.
  • 02Ретранслятор обрабатывает только шифротекст и токены маршрутизации; расшифровка происходит на конечных устройствах.
  • 03Из одного кода сопряжения выводятся и токен маршрутизации, и соль PAKE.
  • 04Эталонный агент проксирует любой локальный HTTP- или WebSocket-порт.
  • 05Основной криптографический пакет зависит только от WebCrypto и работает в Node 18+ и браузерах.
  • 06В комплекте есть реализация ретранслятора на Node для локального тестирования или самостоятельного размещения.

Сценарии использования

  • Подключение с телефона из другой сети к локальному dev-серверу или веб-панели на компьютере.
  • Самостоятельное размещение приватного зашифрованного туннеля в своём аккаунте Cloudflare.
  • Создание собственного агента или клиента на основе документированного протокола relay-e2e/v1.

Быстрый старт

  1. 1

    Установите зависимости

    npm install
  2. 2

    Войдите в аккаунт Cloudflare (один раз)

    npx wrangler login
  3. 3

    Перейдите в каталог relay-сервера

    cd workers/relay
  4. 4

    Разверните relay в Cloudflare Workers

    npx wrangler deploy

Что важно знать

  • Handshake использует самописную схему в стиле PAKE, которая не проходила формальную проверку или аудит.
  • По умолчанию протокол несовместим на уровне передачи данных с официальными клиентами Alma.
  • Домены workers.dev заблокированы во многих сетях материкового Китая, поэтому может понадобиться собственный домен или прокси.

В подборках

Темы

Частые вопросы

Что такое relay-kit?
Самостоятельно размещаемый сквозно зашифрованный ретранслятор для Cloudflare Workers, через который телефон подключается к локальному порту компьютера без его раскрытия. relay-kit — сервер-ретранслятор между удалённым клиентом, например телефоном, и сервисом на компьютере. Он работает на Cloudflare Workers с Durable Objects и пересылает только шифротекст и токен маршрутизации, поэтому расшифровка происходит только на обоих конечных устройствах. Для сопряжения используется один 256-битный код, из которого также выводятся токен маршрутизации и соль PAKE: без этого кода ретранслятор не сможет завершить рукопожатие.
relay-kit можно использовать бесплатно? Какая у него лицензия?
relay-kit распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
relay-kit всё ещё поддерживается?
Активно поддерживается. Последний коммит в relay-kit — 1 нояб. 2026 г..
Для чего можно использовать relay-kit?
Подключение с телефона из другой сети к локальному dev-серверу или веб-панели на компьютере. Самостоятельное размещение приватного зашифрованного туннеля в своём аккаунте Cloudflare. Создание собственного агента или клиента на основе документированного протокола relay-e2e/v1.
Как установить relay-kit?
Установите зависимости: npm install Войдите в аккаунт Cloudflare (один раз): npx wrangler login Перейдите в каталог relay-сервера: cd workers/relay Разверните relay в Cloudflare Workers: npx wrangler deploy
Где скачать relay-kit?
Исходный код и инструкции по установке — на GitHub: https://github.com/nanami-0713/relay-kit

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Самостоятельно размещаемый ретранслятор, который позволяет управлять Alma на компьютере через приложение Alma на телефоне по исходящему соединению — без проброса портов и VPN.

471+151 за неделю64JavaScriptMITОбновлён 5 дней назад

CLI-инструмент для передачи файлов и папок между любыми компьютерами напрямую, с ретранслятором на случай недоступности прямого соединения и сквозным шифрованием по общей кодовой фразе.

40,9 тыс.+64 за неделю1,7 тыс.GoMITАктивно поддерживаетсяОбновлён 3 дня назад

Самостоятельно размещаемая платформа WebRTC с открытым исходным кодом для видеозвонков один на один с демонстрацией экрана и сквозным шифрованием.

521+1 за неделю100JavaScriptAGPL-3.0Активно поддерживаетсяОбновлён 20 часов назад