Hypertree
Definition
A hypertree is a multi-layer Merkle tree structure where each leaf of a top-layer tree is the root of a lower-layer tree. SPHINCS+ uses hypertrees to organize millions of one-time signature keys under a single compact public key, enabling stateless hash-based signatures.
Technical Explanation
A d-layer hypertree with height h per layer supports 2^(d×h) total signatures. Each layer's trees use WOTS+ to sign the root of the next layer's trees. The bottom layer signs FORS keys which sign actual messages. Authentication requires paths through all layers.
Hypertrees solve the one-time signature management problem. Instead of tracking which keys are used (stateful), SPHINCS+ deterministically derives paths from message hashes (stateless). Each message maps to a unique path through the hypertree.
SynX Relevance
SPHINCS+ signatures in SynX leverage hypertree structures internally. The 32-byte SynX public key commits to an entire hypertree containing millions of signing keys. This enables unlimited stateless signings—critical for wallet usability—while maintaining hash-only security.
Frequently Asked Questions
- Why are SPHINCS+ signatures large?
- Signatures include authentication paths through multiple hypertree layers plus WOTS+ signatures at each level.
- What is stateless signing?
- No tracking of previously used keys required; the signer doesn't maintain state between signatures.
- How many signatures can one key produce?
- SPHINCS+ parameters allow effectively unlimited signatures from one public key.
Unlimited stateless signing. Simple, secure transactions with SynX