mirror of
https://github.com/jmcorgan/fips.git
synced 2026-08-09 08:14:42 +00:00
51597b6a5ae1447edcfc6a7470a69e6c99100a6c
Implement Noise IK session handshake between arbitrary endpoints, carried inside SessionDatagram envelopes through the mesh. Sessions use a three-state machine (Initiating → Established for initiator, Responding → Established for responder on first DataPacket). Includes session initiation API, encrypted data transfer, simultaneous initiation tie-break, error signal handlers (CoordsRequired, PathBroken), and local delivery wiring in the forwarding handler. New files: node/session.rs (state types), handlers/session.rs (~500 lines, all session message handlers + send path), tests/session.rs (11 tests). 100-node integration test establishes sessions across random topology, sends bidirectional encrypted datagrams through injected TUN channels, and verifies 200/200 deliveries with 100% session establishment. Reports routing statistics including avg 4.1 link hops per datagram. 404 tests pass (up from 393).
FIPS Documentation
| Directory | Description |
|---|---|
| design/ | Protocol design specifications and analysis |
Languages
Rust
83.6%
Shell
11.7%
Python
4.2%
PowerShell
0.2%
Makefile
0.1%