Lattice-based signatures
Extra lecture for the “Digital Signatures” course 2020 Dennis Hofheinz ETH Zürich
Lattice-based signatures Extra lecture for the Digital Signatures - - PowerPoint PPT Presentation
Lattice-based signatures Extra lecture for the Digital Signatures course 2020 Dennis Hofheinz ETH Zrich Quantum computers Grovers algorithm: speed up searches (N O(N)) Bigger problem for cryptography: Shors algorithm
Extra lecture for the “Digital Signatures” course 2020 Dennis Hofheinz ETH Zürich
– Which ones (that we have seen) are not broken?
– Not always possible (PKE, IBE, …) or effjcient (signatures)
– Very versatile, many nice algebraic properties
– Useful problem: decode noisy codewords – Code-based PKE and signatures exist, but less versatile
– Not as well-understood as lattices or codes
n) suitable
– SVP: Find shortest (nonzero) vector in L – CVP: Given y, fjnd vector in L closest to y – Even decisional variants of SVP, CVP hard
n
– … a uniform a ∊ Zq n, – … a short noise scalar e ∊ Zq, – … and then outputs a and <a;s>+e = ∑ ai si + e ∊ Zq
–
Hard (but not NP-hard) region useful for cryptography
(A ∊ Zq
m⨯n, s ∊ Zq n, r ∊ Zq m all uniform, e ∊ Zq n short, ≈ means comp.ind., m ≫ n)
A A s e r A s e zt A s zt
– pk = ( A, As )
(A ∊ Zq
m⨯n, s ∊ Zq n)
– sk = s – Enc(pk,M) = ( ztA, ztAs+M )
(z ∊ Zq
m, M ∊ Zq)
– Dec(sk,(C1,C2)) = C2 – C1s
A s zt A s zt
– pk = ( A, As+e )
(A ∊ Zq
m⨯n, s ∊ Zq n, e ∊ Zq n short)
– sk = s – Enc(pk,M) = ( ztA, zt(As+e)+M)
(z ∊ Zq
m short, M ∊ Zq)
– Dec(sk,(C1,C2)) = C2 – C1s
–
Step 1: substitute As+e in public key with uniformly random r
–
Step 2: observe that now r extracts entropy from z
–
… we can resort to the random oracle model (RSA-FDH, BLS, Schnorr) …
–
… and/or stronger assumptions (GHR, Cramer-Shoup signatures)…
–
… and/or pairings (BLS, Waters, Boneh-Boyen signatures)…
–
… but it seems we need to pay a price
m⨯n for m ≫ n, and short z,e)
–
Clear for gA
–
LWE hard ⇒ can’t invert fA on 0 (“SIS problem”) ⇒ fA one-way
–
TA is “short basis” for lattice LA
⊥ = { z | ztA=0 } associated with A –
TA consists of m linearly independent short z with fA(z)=0
–
In case of fA, trapdoor allows to sample short z with fA(z)=y
m⨯n for m ≫ n, and short z,e)
n)
m⨯n for m ≫ n, and short z,e)
–
This TA consists of a short basis, i.e., short vectors z with ztA=0
A B
A B
z1 z2
–
Reduction can generate σM ifg TAi,b for one involved Ai,b known
–
Better, more compact delegation (and defjnition of A(M)) possible
–
Also: can have only part of trapdoor in signature (and not full TA(M))
–
Signature pk → IBE master public key mpk
–
Signed message M → IBE identity id
–
Signature σM = TA(M) → IBE secret key uskid for identity id(=M)
–
Idea: using this infrastructure, use A(M) as pk for PKE instance for id