olcRTC

August 18, 2026 ยท View on GitHub




olcRTC

RU / EN

olcRTC (OpenLibreCommunity RTC) is an encrypted TCP-over-WebRTC tunnel. Traffic is disguised as an ordinary video call on allowed services (Jitsi, Yandex Telemost, WbStream). Inside there is XChaCha20-Poly1305 encryption and smux multiplexing over WebRTC data/video channels.

Status: Beta

app -> SOCKS5 -> olcrtc cnc -> WebRTC/SFU service -> olcrtc srv -> internet

Important: make sure the video call service you need is on the allow lists and works in your network. If not, use another one.

Features

  • Providers: jitsi, telemost, wbstream
  • Transports: datachannel, vp8channel, seichannel, videochannel
  • Platforms: Linux, macOS, Windows, Android (gomobile), embeddable Go library
  • Public Go packages: pkg/olcrtc/client, pkg/olcrtc/tunnel, pkg/olcrtc/engineconn

Recommended start: jitsi + datachannel.

Current builds use OLC2 encryption with directional HKDF-SHA256 keys, separate data/control AAD and replay protection. There is no compatibility fallback for the old crypto format. seichannel and videochannel use OLVC frame version 5 and reject older video frames. Upgrade both endpoints together.

Display-name dictionaries are embedded. Set optional YAML field data to a directory containing names and surnames to override them.

One-click install

curl -fsSL https://raw.githubusercontent.com/openlibrecommunity/olcrtc/master/install.sh | bash

Installs Podman if missing, clones the current code, builds the binary in a container, asks a few questions (server or client, provider, transport, room, key) and starts it. Run it once on the server (mode srv) and once on the client (mode cnc) - they need the same room ID and encryption key.

If you already have the repo cloned, run ./install.sh directly instead.

Full instructions are in docs/fast.md and docs/manual.md.

Documentation

Build

mage build   # current platform
mage cross   # cross-compilation
mage test    # tests
mage lint    # golangci-lint
mage mobile  # gomobile bindings (Android)

Clients

  • Main client:
    • owenewans/owenclave - Android proxy client (fork of exclave). Supports all common protocols (vless, hysteria2, mieru, trojan, vmess, tuic, shadowsocks, socks ...) plus olcrtc, the olcrtc:// URI format and subscriptions
  • Community clients:
    • venterum/veil - V2Ray/Xray client for Android (fork of v2rayNG), Material 3. Protocols: VMess, VLESS, Shadowsocks, Trojan, SOCKS, WireGuard, Hysteria2 + olcrtc
    • alananisimov/olcbox - Multiplatform UI client (Android, iOS, macOS, Windows, Linux). Kotlin Multiplatform/Compose. All providers (Jitsi, Telemost, WB Stream, Jazz), all transports, split tunneling, TUN/proxy modes

Community

License

WTFPL


Telegram: zarazaex
Email: zarazaex@tuta.io
Site: zarazaex.xyz