Research and Design PSK Rotation Mechanism for the Entire Network
#20 opened on May 20, 2025
Repository metrics
- Stars
- (137 stars)
- PR merge metrics
- (PR metrics pending)
Description
Currently, WarpNet nodes use a static pre-shared key (PSK) for securing network-level access and peer authentication. However, this static key presents risks:
- If the PSK leaks, any attacker can impersonate a trusted node
- There is no recovery mechanism after a key compromise,
- Long-lived keys violate good cryptographic hygiene and operational security.
To address this, we need to research and design a mechanism for PSK rotation that can be adopted across the network in a coordinated and secure manner.
Research Goals:
-
Evaluate how PSK rotation can work in a decentralized, peer-to-peer environment without relying on a central authority.
-
Explore different approaches:
- Time-based PSKs (e.g. daily/weekly keys derived from anchor entropy + version),
- Gossip-based propagation** of new keys,
- Public-key bootstrap** to negotiate session PSKs,
- Shared hashchain** or Merkle root that defines the current PSK epoch.
Requirements for PSK Rotation:
- Rotation must not cause network partitioning: nodes should be able to tolerate minor time drift or missed updates.
- Support for grace period where old and new PSKs are both accepted.
- Ensure that new nodes can join using the current valid PSK only (and not old ones).
- Mechanism for securely distributing the new PSK (e.g. signed message from known-good node, or derived deterministically).
Optional Features:
- Store current PSK version and rotation time in local config or DB.
- Use digital signatures to validate who is allowed to rotate PSK (e.g. bootstrap/moderator/leader nodes).
- Log PSK changes and validation rejections for observability.
Without PSK rotation, the entire network is exposed to long-term key compromise. Looking for input from cryptographers and distributed system designers.