@kangentic/protocol
v0.5.0
Published
Kangentic mobile bridge wire protocol: framing, Noise-based pairing and session handshakes, signed device roster, and capability verbs shared between desktop and mobile.
Maintainers
Readme
@kangentic/protocol
Shared wire protocol for the Kangentic mobile bridge: frame encoding, the Noise-based pairing and session handshakes, secretstream-style AEAD framing, the signed device roster, capability verbs, and the transcript/board/activity event contract types the mobile app consumes.
This package is the single source of truth for the desktop (src/main/mobile-bridge/) and
kangentic-mobile implementations of the protocol. It is pure TypeScript on top of
@noble/curves,
@noble/hashes, and
@noble/ciphers so the exact same handshake code
runs on Node (Electron main) and React Native (via the same pure-JS primitives), with no native
module coupling.
See docs/mobile-bridge.md in the main repository for the pairing ceremony, roster/revocation
model, and the honest relay-metadata statement.
Security
Noise_KK_25519_ChaChaPoly_BLAKE2sfor ongoing sessions (mutual authentication by construction, no trust-on-first-use).- A token-bound Noise PSK handshake for the one-time pairing ceremony, confirmed by a Matrix-style short authentication string (SAS) on both screens.
- No shell, file, or arbitrary-command verb exists in the protocol.
This package has not undergone a third-party security audit. Report suspected vulnerabilities per the repository's security policy rather than filing a public issue.
