Download presentation
Presentation is loading. Please wait.
Published byVera Sugiarto Modified over 6 years ago
1
SPHINCS: practical stateless hash-based signatures
D. J. Bernstein, D. Hopwood, A. Hülsing, T. Lange, R. Niederhagen, L. Papachristodoulou, P. Schwabe, and Z. Wilcox O'Hearn
2
Digital Signatures are Important!
Software updates E-Commerce … and many others
3
What if…
4
Problem? RSA DL Pairings DH …
5
IBM 2012: „…optimism about superconducting qubits and the possibilities for a future quantum computer are rapidely growing.“ „Want to factor a 2000-bit number? Quantum computer runtime = 24h Number of physical qubits required = 500M Power required ~ dedicated nuclear power plant Lead time ~5 (research) + 10 (development) years Dollar required ~1 billion (CERN ~ 10 billion)“ Matteo Mariantoni, PQ-Crypto 2014
6
Post-Quantum Signatures
Lattice, MQ, Coding Signature and/or key sizes Runtimes Secure parameters
7
Hash-based Signature Schemes [Mer89]
Post quantum Only secure hash function Security well understood Fast Stateful
8
Lamport-Diffie OTS [Lam79]
Message M = b1,…,bn, OWF H = n bit SK PK Sig * sk1,0 sk1,1 skn,0 skn,1 Mux b1 Mux b2 Mux bn H H H H H H pk1,0 pk1,1 pkn,0 pkn,1 sk1,b1 skn,bn
9
Merkle’s Hash-based Signatures
Digital Signature PK SIG = (i=2, , , , , ) Encryption H OTS H H Cryptography H H H H H H H H H Legality H H H Hash Function OTS OTS OTS OTS OTS OTS OTS OTS MAC SK
10
Known Improvements [BGD+06]
Pseudorandom Key Generation: SK Hypertree: Key generation (== Building Trees on one path) O(2h) → O(d2h/d) F
11
Known Improvements, cont’d
Winternitz OTS [Mer‘89, …, BDE+11,Hül13] Smaller Sigs Minimum Security Assumptions Minimum Security Assumptions / Collision-Resilient Scheme [BDH11] XMSS requires only PRF & SPR
12
Advantages of Hash-based Signatures
13
RSA – DSA – EC-DSA... RSA, DH, SVP, MQ, … Intractability Assumption
Collision resistant hash function RSA, DH, SVP, MQ, … Digital signature scheme
14
Early Warning System Hash-function properties
stronger / easier to break Collision-Resistance Assumption / Attacks 2nd-Preimage-Resistance One-way Pseudorandom weaker / harder to break
15
Early Warning System Attacks on Hash Functions
MD5 Collisions (theo.) MD5 Collisions (practical!) MD5 & SHA-1 No (Second-) Preimage Attacks! SHA-1 Collisions (theo.) 2004 2005 2008 2012
16
Easy Redundancy Hash-Combiner
- Collision-Resistance / 2nd-Preimage-Resistance: - PRF: No sudden break Replaces double signature Signature size only grows by h*n Runtime ~ doubled
17
Forward Security
18
Forward Security - cont‘d
pk classical sk pk forward sec sk sk1 sk2 ski skT time t1 t2 ti tT Key gen.
19
Long-Standing Problem: Statefulness
No problem in many cases. Qualified signatures, Keys on smartcard, ... Necessary for forward-security! But: Key back-ups undermine security Parallel use of key problematic Multi-threading scenarios, Load balancing... Do not fit standard API
20
SPHINCS: Stateless Practical Hash-based Incredibly Nice Cryptographic Signatures
21
Goals Stateless 128bit Quantum Security Practical Speed
Practical Signature Size
22
How to Eliminate the State
23
Cryptography Digital Signature Encryption Legality Hash Function MAC
Straight Forward Run MSS without State Cryptography Digital Signature Encryption Hash Function Legality OTS H PK SK SIG = (i=2, , , , , ) MAC
24
Approach 1: Message Hash
i = Hash(Message); 128bit Quantum Sec. → n = 256 bit Hash [Ber09] → #Indices = → h = n = 256 h depends on n! Best we can do: tSign ≈ n3 / log n tHash= 2M tHash ≈ 15 min* |Sig| ≈ n3 / log n > 256 kb * (OpenSSL SHA2)
25
Approach 2: Random Index
128bit Quantum Sec. → Sampled by Signer → #Indices determined by collision prob. → #Indices = → h = 256 Impossible to make this efficient, again… BUT h independent of n Statistical collision probability NOT collision resistance
26
Few-Time Signature Schemes
27
Recap LD-OTS Message M = b1,…,bn, OWF H = n bit SK PK Sig H H H H H H
* sk1,0 sk1,1 skn,0 skn,1 Mux b1 Mux b2 Mux bn H H H H H H pk1,0 pk1,1 pkn,0 pkn,1 sk1,b1 skn,bn
28
HORS [RR02] Message M = b1,…,bm, OWF H = n bit Parameters t=2a,k, with m = ka (typical a=16, k=32) SK PK M Sig * sk1 sk2 skt-1 skt H H H H H H pk1 pk1 pkt-1 pkt b1 b2 ba ba+1 bka-2 bka-1 bka Mux Mux i1 ik ski1 skik
29
HORS Security Message M = Hash(msg)
M mapped to k element index set Mi є {1,..,t}k Each signature publishes k out of t secrets Either break one-wayness or… r-Subset-Resilience: After seeing index sets Mij for r messages msgj, 1 <= j <= r, hard to find msgr+1 ≠ msgj such that Mir+1 є U1<=j<=r Mij . Best generic attack: Succr-SSR(A,q) = q(rk / t)k → Security shrinks with each signature!
30
HORST Using HORS with MSS requires adding PK (tn) to MSS signature.
HORST: Build a Merkle Tree on top of HORS-PK PK = Root Publish Authentication Paths for HORS signature values PK can be computed from Sig With optimizations: tn → (k(log t − x + 1) + 2x)n E.g. SPHINCS-256: 2 MB → 16 KB
31
SPHINCS
32
SPHINCS Signature
33
SPHINCS Key Ideas Use HORST key pairs to sign messages
Authenticate HORST key pairs using hypertree (of MSS trees) Use random index Select Parameters such that sumr є [0,∞)(Pr[r-times index collision] * Succr-SSR(A)) = negl(n)
34
SPHINCS-256
35
SPHINCS-256 Speed Key generation: 3,051,562 cycles
Verification: ,369,060 cycles Signature: 47,466,005 cycles Still hundreds of messages per second on a modern 4-core 3.5GHz Intel CPU (13ms / Sig) Remember: Straight Forward tSign ≈ 15 min* |Sig| > 256 kb
36
In Paper (http://eprint.iacr.org/2014/795)
Standard model security reduction without collision resistance Complexity of generic quantum attacks Efficient fixed-input length hashing Optimized implementation
37
Conclusion If you can live with a state: Go for XMSS. Otherwise:
Go for Sphincs-256! First stateless signature scheme with post-quantum secure parameters Practical Speed and Sizes
38
Thank you! Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.