Skip to content

Add Noise protocol encryption for rathole tunnels - #210

Closed
firecow wants to merge 2 commits into
mainfrom
add-noise-protocol-encryption
Closed

Add Noise protocol encryption for rathole tunnels#210
firecow wants to merge 2 commits into
mainfrom
add-noise-protocol-encryption

Conversation

@firecow

@firecow firecow commented Feb 21, 2026

Copy link
Copy Markdown
Owner

Summary

  • Kings accept --noise-private-key and --noise-public-key CLI options to enable Noise protocol (NK pattern) encryption
  • Public key is distributed to lings via council state; lings auto-enable encryption when connecting to kings that have a key
  • Backwards compatible: kings without noise keys work unencrypted as before

Test plan

  • npx tsc --noEmit passes
  • New council-server tests verify noise key storage and updates
  • Manual: run rathole --genkey, start king with noise keys, verify TOML includes transport sections
  • Manual: verify lings without noise-enabled kings still connect normally

Kings can now be started with --noise-private-key and --noise-public-key
to enable Noise protocol (NK pattern) encryption on rathole tunnels.
The public key is distributed to lings via council state, and lings
automatically enable encryption when connecting to keys that have one.
@firecow firecow self-assigned this Feb 21, 2026
Use escaped double quotes instead of template literals for strings
without interpolation.
@firecow firecow closed this Mar 1, 2026
@firecow
firecow deleted the add-noise-protocol-encryption branch March 1, 2026 08:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants