Warp-net/warpnet

Research and Design PSK Rotation Mechanism for the Entire Network

オープン

#20 opened on 2025/05/20

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)Go (12 件のフォーク)auto 404
enhancementhelp wantedsecurity

Repository metrics

Stars
 (137 個のスター)
PR merge metrics
 (PR metrics pending)

説明

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.

コントリビューターガイド