Files
securebit-chat/doc
lockbitchat fb959d7ca7 fix(descriptor): rebuild SDP that Firefox accepts; release v5.8.1
Live cross-browser testing found three defects in the SBQ2 SDP template, all
invisible to Chrome and all fatal to Firefox.

The candidate lines omitted raddr/rport on srflx and relay candidates. RFC 8839
section 5.1 makes rel-addr and rel-port mandatory for non-host candidates even
though ICE never reads them; Chrome tolerates the omission and Firefox drops the
candidate. Relay-only connections to Firefox failed 0/8 against 8/8 for the
browser's own SDP. The STUN and TURN profiles hid it because a host pair
connected instead -- the relay candidates were never actually needed there.

The template also advertised ice-options:trickle without ever closing the
candidate set, though a descriptor is a complete one-shot set with no channel to
trickle over, and hard-coded the m= port and c= line to the 9 / 0.0.0.0 null
default candidate, which is the trickle convention for "nothing gathered yet".
Both are now correct: no trickle, an explicit a=end-of-candidates, and the most
publicly reachable candidate as the default.

All three are serializer-side and cost zero descriptor bytes; sizes are
unchanged at 98-149 bytes, QR version 6-8. Verified 48/48 across all 16
combinations of {Chrome, Firefox} squared and four network profiles, with every
relay-only pair now connecting over the relay.
2026-08-06 17:25:46 -04:00
..

Documentation

Technical documentation for SecureBit.chat. Start with the project README if you are looking for an overview or a quick start.

Document What it covers
ARCHITECTURE.md How a session is established, verified and torn down, and where each guarantee comes from
CRYPTOGRAPHY.md Key schedule, the Double Ratchet, SAS verification, memory handling
CONFIGURATION.md Deployment, ICE and TURN setup, privacy modes, file transfer policy
CALLS.md Voice and video: codec choices, adaptation, and why each value was picked
API.md Internal interfaces of the WebRTC manager and file transfer system
CONTRIBUTING.md Development workflow and what needs extra review
USE-POLICY.md Terms of use, intended use, and the limits of what the software can protect

Security policy and vulnerability reporting live in SECURITY.md at the repository root, where GitHub expects to find them.

Keeping this accurate

These documents describe the current release and are expected to change with it. Every value quoted here (limits, timeouts, algorithm parameters) is taken from the source rather than restated from memory, so if you change one in code, change it here in the same commit. CONTRIBUTING.md lists which documents are affected by which areas of the code.