Reticulum
Type: Foundational Technology Role in Styrene: Transport layer for all fleet communication
Reticulum is a cryptography-based networking stack for building local and wide-area networks with readily available hardware. It provides end-to-end encryption and identity-based routing without depending on centralized infrastructure.
Why Styrene Uses Reticulum
Traditional fleet management relies on:
- SSH over TCP/IP — requires stable IP addresses, DNS, and often VPNs
- Central servers — single points of failure, internet dependency
- PKI infrastructure — certificate management complexity
Reticulum provides:
- Identity-based addressing — 128-bit hashes derived from Ed25519 keys
- Transport agnosticism — works over TCP, UDP, serial, LoRa, pipe, anything
- Automatic encryption — every link is encrypted, no configuration needed
- Store-and-forward — messages propagate even with intermittent connectivity
Key Concepts
Destinations
A destination is a cryptographic identity (Ed25519 keypair). Instead of 192.168.1.50:22, you address <128-bit hash>. The network routes to wherever that identity currently is.
Transports
Reticulum doesn’t care how packets move:
- Local: Shared memory, pipes
- LAN: UDP broadcast, TCP
- Internet: TCP to public Transport nodes
- Mesh: LoRa, packet radio, WiFi
- Hybrid: All of the above simultaneously
Link vs Packet
- Packet mode: Fire-and-forget, up to ~500 bytes
- Link mode: Bidirectional channel with session keys, larger transfers
Styrene Integration
| Component | Reticulum Usage |
|---|---|
| styrened | Identity management, RNS lifecycle, fleet RPC |
| styrened | Announces identity, handles incoming links |
| styrened.tui | Discovers fleet via announcements, initiates links |
| Fleet communication | All RPC over LXMF (which runs on Reticulum) |
Layer Position
┌─────────────────────────────────────┐
│ Styrene RPC (msgpack messages) │ ← Application
├─────────────────────────────────────┤
│ LXMF (message format + routing) │ ← Messaging
├─────────────────────────────────────┤
│ Reticulum (identity + encryption) │ ← Transport ← YOU ARE HERE
├─────────────────────────────────────┤
│ BATMAN-adv / TCP / UDP / LoRa │ ← Physical
└─────────────────────────────────────┘
Resources
- Reticulum Manual — Official documentation
- GitHub: markqvist/Reticulum
- rns-application-stack — Survey of RNS ecosystem applications
Related
- LXMF — Message format built on Reticulum
- NomadNet — Text-based communication platform using Reticulum
- LoRa — Low-power radio transport for Reticulum