Tightly ¡Secure ¡Signatures ¡and ¡ Public-‑Key ¡Encryp8on ¡ Dennis ¡Ho<einz ¡and ¡Tibor ¡Jager ¡ Karlsruhe ¡Ins,tute ¡of ¡Technology ¡ ¡ ¡ CRYPTO ¡2012 ¡ ¡ 1 ¡
“Tight” ¡Security ¡ • New ¡cryptosystems ¡usually ¡come ¡with ¡proof ¡that ¡ – under ¡certain ¡ complexity ¡assump/ons ¡ – the ¡scheme ¡has ¡certain ¡security ¡proper8es ¡(“ security ¡proof ”) ¡ • Standard ¡outline ¡of ¡a ¡security ¡proof: ¡ 1. Define ¡a ¡ security ¡model ¡ 2. Show ¡that ¡an ¡efficient ¡ a4acker ¡A ¡ implies ¡an ¡efficient ¡ algorithm ¡R(A) ¡solving ¡some ¡ hard ¡problem ¡P ¡ Algorithm ¡R(A) ¡ Instance ¡of ¡P ¡ pk, ¡c ¡ m ¡ Solu8on ¡ AWacker ¡A ¡ Security ¡proof ¡is ¡ “/ght” , ¡if ¡R(A) ¡has ¡(about) ¡the ¡ same ¡ running ¡/me ¡ and ¡ success ¡probability ¡ as ¡A ¡ 2 ¡
Secure ¡Public-‑Key ¡Encryp8on ¡ • Classical ¡security ¡models ¡ for ¡public-‑key ¡encryp8on: ¡ – IND-‑CPA ¡security ¡ – IND-‑CCA ¡ security ¡ C Dec(sk,C) ¡ • Many ¡schemes ¡with ¡ pk ¡ 8ght ¡security ¡proof ¡ • Note ¡that ¡these ¡models ¡ m ¡ consider ¡ Enc(pk,m) ¡or ¡Enc(pk,rand) ¡ – only ¡one ¡pk , ¡and ¡ “real”/”random” ¡ – only ¡one ¡ciphertext ¡ – “(1,1)-‑security” ¡ ¡ 3 ¡
Public-‑Key ¡Encryp8on ¡ in ¡the ¡Mul8-‑User ¡Se\ng ¡ In ¡reality: ¡ … ¡ • N ¡ public ¡keys ¡ pk 1 ¡ pk 2 ¡ … ¡ pk N ¡ • L ¡ ciphertexts ¡per ¡ Enc(pk 2 ,m 2,1 ) ¡ Enc(pk N ,m N,1 ) ¡ Enc(pk 1 ,m 1,1 ) ¡ Enc(pk N ,m N,2 ) ¡ Enc(pk 1 ,m 1,2 ) ¡ Enc(pk 2 ,m 2,2 ) ¡ public ¡key ¡ Enc(pk N ,m N,2 ) ¡ Enc(pk 1 ,m 1,2 ) ¡ Enc(pk 2 ,m 2,2 ) ¡ • “(N,L)-‑security” ¡ … ¡ … ¡ … ¡ Enc(pk N ,m N,L ) ¡ Enc(pk 1 ,m 1,L ) ¡ Enc(pk 2 ,m 2,L ) ¡ … ¡ (1,1)-‑security ¡ ⇒ ¡(N,L)-‑security ¡ [Bellare, ¡Boldyreva, ¡Micali ¡’00] ¡ But ¡the ¡reduc8on ¡is ¡ not ¡/ght ¡ (loses ¡a ¡factor ¡of ¡ N·√L ¡of ¡success ¡probability) ¡ 4 ¡
An ¡Example ¡ (Following ¡[Bellare, ¡Boldyreva, ¡Micali`00]) ¡ • Assume ¡an ¡encryp8on ¡scheme ¡with ¡ (1,1)-‑security ¡proof ¡ 2 -‑60 ¡ Bound ¡on ¡ a4acker’s ¡ success ¡probability ¡ 2 -‑46 ¡ implied ¡by ¡choice ¡of ¡ parameters ¡and ¡ (1,1)-‑security ¡proof ¡ 2 -‑30 ¡ (1,1) ¡ (2 7 ,2 7 ) ¡ (2 20 ,2 10 ) ¡ (N,L) ¡= ¡(#pk,#ciphertexts ¡per ¡pk) ¡ Proven ¡ security ¡level ¡decreases ¡ with ¡increasing ¡ number ¡of ¡users ¡and ¡ciphertexts ¡ 5 ¡
Can ¡we ¡avoid ¡this ¡security ¡loss? ¡ • Trivial ¡solu8ons: ¡ – based ¡on ¡ non-‑standard ¡/ ¡parametrized ¡ complexity ¡assump8ons ¡ – in ¡the ¡ Random ¡Oracle ¡Model ¡ • Bellare, ¡Boldyreva, ¡Micali ¡(Eurocrypt ¡‘00): ¡ – ElGamal ¡is ¡ /ghtly ¡(N,L)-‑IND-‑CPA ¡secure ¡ – Cramer-‑Shoup ¡is ¡ /ghtly ¡(N,1)-‑IND-‑CCA ¡secure ¡ Our ¡goal: ¡ Construct ¡a ¡public-‑key ¡encryp8on ¡scheme ¡with ¡ • /ght ¡(N,L)-‑IND-‑CCA ¡ security ¡proof ¡ • in ¡the ¡ standard ¡model ¡ • based ¡on ¡a ¡ standard ¡assump/on ¡ 6 ¡
The ¡Difficulty ¡of ¡Tight ¡IND-‑CCA ¡ Security ¡in ¡the ¡Mul8-‑User ¡Se\ng ¡ • Known ¡techniques ¡exploit ¡that ¡ there ¡is ¡ only ¡one ¡ challenge-‑ ciphertext, ¡for ¡instance: ¡ C Dec(sk,C) ¡ pk ¡ – “Naor-‑Yung ¡paradigm” ¡[NY’90] ¡ A4acker ¡A ¡ with ¡ one-‑/me ¡ simula8on-‑sound ¡ NIZK ¡ m ¡ C* ¡ – All-‑but-‑ one ¡simula8ons ¡ “real”/ (e.g. ¡ABO ¡lossy ¡TDFs ¡[PW’08]) ¡ ”rand.” ¡ – … ¡ (1,1)-‑IND-‑CCA ¡Security ¡Experiment ¡ 7 ¡
The ¡Difficulty ¡of ¡Tight ¡IND-‑CCA ¡ Security ¡in ¡the ¡Mul8-‑User ¡Se\ng ¡ C Dec(sk,C) ¡ C Dec(sk,C) ¡ pk ¡ pk 1 , ¡…, ¡pk N ¡ A4acker ¡A ¡ A4acker ¡A ¡ m 1 ¡ C 1 ¡ m ¡ … ¡ C* ¡ m NL ¡ C NL ¡ “real”/ ”rand.” ¡ “real”/”rand.” ¡ (1,1)-‑IND-‑CCA ¡Security ¡Experiment ¡ (N,L)-‑IND-‑CCA ¡Security ¡Experiment ¡ 8 ¡
The ¡Difficulty ¡of ¡Tight ¡IND-‑CCA ¡ Security ¡in ¡the ¡Mul8-‑User ¡Se\ng ¡ • Known ¡techniques ¡ not ¡ immediately ¡applicable ¡ • Can ¡we ¡adopt ¡them ¡to ¡the ¡ C Dec(sk,C) ¡ pk 1 , ¡…, ¡pk N ¡ mul8-‑user ¡se\ng? ¡ A4acker ¡A ¡ m 1 ¡ – “Naor-‑Yung ¡paradigm” ¡uses ¡ C 1 ¡ one-‑/me ¡ssNIZKs ¡ … ¡ m NL ¡ • Do ¡ many-‑/me ¡ ssNIZKs ¡help? ¡ C NL ¡ “real”/”rand.” ¡ • Can ¡we ¡construct ¡them, ¡ with ¡ /ght ¡security ¡proof? ¡ (N,L)-‑IND-‑CCA ¡Security ¡Experiment ¡ 9 ¡
Our ¡Approach ¡ Tightly-‑secure ¡ signature ¡scheme ¡ (“structure-‑ Tightly-‑secure ¡ Naor-‑Yung ¡ preserving”) ¡ many-‑/me ¡ssNIZK ¡ paradigm ¡ Tightly ¡ ¡ ¡ (N,L)-‑IND-‑CCA ¡ Groth-‑Sahai ¡ (preserves ¡ secure ¡encryp8on ¡ proofs ¡[GS`08] ¡ 8ghtness) ¡ Tightly ¡ (N,L)-‑IND-‑CPA ¡ secure ¡encryp8on ¡ • New ¡construc8ons ¡ • Known ¡concepts ¡ • All ¡building ¡blocks ¡based ¡on ¡ DLIN ¡ in ¡ groups ¡with ¡symmetric ¡pairing ¡ 10 ¡
Structure-‑Preserving ¡Signatures ¡(SPS) ¡ • “Structure-‑preserving”: ¡ – Public-‑keys, ¡messages, ¡and ¡signatures ¡are ¡ group ¡elements ¡(in ¡bilinear ¡group ¡se\ng) ¡ – Signature ¡verifica8on ¡checks ¡ conjunc/on ¡of ¡pairing ¡ product ¡equa/ons ¡(PPE) ¡ • Blend ¡nicely ¡with ¡ Groth-‑Sahai ¡proofs ¡[GS’08] ¡ – Useful ¡tool ¡for ¡ efficient ¡cryptographic ¡construc/ons ¡ • No ¡known ¡SPS ¡with ¡8ght ¡reduc8on ¡to ¡standard ¡ assump8on ¡ 11 ¡
One-‑8me ¡SPS ¡Scheme ¡ • Let ¡G ¡be ¡a ¡group ¡with ¡pairing ¡e ¡: ¡G ¡x ¡G ¡ à ¡G T ¡ • Let ¡E((a,b,c),d) ¡:= ¡(e(a,d),e(b,d),e(c,d)) ¡ • Signature ¡scheme ¡with ¡message ¡space ¡G n ¡ • pk ¡= ¡(g,h,k, ¡U 1 ,…, ¡U n ,X,z) ¡where ¡ – g,h,k,z ¡ ß ¡G ¡ ¡ – U i ¡= ¡(g ui ,h vi ,k ui+vi ) ∈ G 3 ¡ ¡and ¡X ¡= ¡(g x ,h y ,k x+y ) ∈ G 3 ¡ ¡ • To ¡sign ¡(m 1 ,…,m n ) ∈ G n , ¡compute ¡σ ¡= ¡(s,t) ¡with ¡ ¡ ¡ ¡∏ i ∈ [n] E(U i ,m i ) ¡·√ ¡E((g,1,k),s) ¡·√ ¡E((1,h,k),t) ¡= ¡E(X,z) ¡ Tightly ¡secure ¡(EUF-‑1-‑naCMA) ¡under ¡DLIN ¡ 12 ¡
Tightly ¡Secure ¡Tree-‑based ¡Signature ¡ (X root ,z root ) ¡ (g,h,k, ¡U 1 ,…, ¡U 8 ) ¡ (X 0 ,z 0 ) ¡ (X 1 ,z 1 ) ¡ (X 00 ,z 00 ) ¡ (X 01 ,z 01 ) ¡ (X 10 ,z 10 ) ¡ (X 11 ,z 11 ) ¡ • Assign ¡ fresh ¡ (X,z) ∈ G 3 ¡ x ¡G ¡to ¡each ¡node ¡ • Fix ¡(g,h,k, ¡U 1 ,…, ¡U 8 ) ¡for ¡ whole ¡tree ¡ • Intui8on: ¡each ¡node ¡assigned ¡with ¡ pk ¡of ¡one-‑/me ¡sig ¡ – E.g., ¡node ¡(X 0 ,z 0 ) ¡with ¡pk 0 ¡= ¡(g,h,k, ¡U 1 ,…, ¡U 8 ,X 0 ,z 0 ) ¡ • Gives ¡rise ¡to ¡“Merkle ¡tree” ¡scheme ¡[Mer’79] ¡ 13 ¡
Summary ¡ Tightly-‑secure ¡ Tightly-‑secure ¡ ¡ Tightly-‑secure ¡ tree-‑based ¡ one-‑/me ¡SPS ¡ ssNIZK ¡ SPS ¡ (for ¡pairing ¡ Naor-‑ Tightly ¡ ¡ product ¡equa8ons) ¡ Yung ¡ (N,L)-‑IND-‑CCA ¡ Groth-‑Sahai ¡ paradigm ¡ secure ¡encryp8on ¡ proofs ¡ Tightly ¡ (N,L)-‑IND-‑CPA ¡ secure ¡encryp8on ¡ • New ¡construc8ons ¡ • Known ¡concepts ¡ • All ¡building ¡blocks ¡based ¡on ¡ DLIN ¡ in ¡ groups ¡with ¡symmetric ¡pairing ¡ 14 ¡
Open ¡Problems ¡ • Further ¡applica/ons ¡ to ¡8ghtly-‑secure ¡ construc8ons? ¡ – ssNIZK ¡+ ¡[Camenisch, ¡Chandran, ¡Shoup’09] ¡ = ¡ /ght ¡KDM-‑CCA-‑secure ¡encryp8on ¡ • Shorter ¡tree-‑based ¡SPS? ¡ ? ¡ – Abe ¡et ¡al. ¡(Asiacrypt ¡`12): ¡ more ¡efficient ¡one-‑/me ¡ SPS ¡ ⇒ more ¡efficient ¡tree-‑based ¡SPS ¡ • SPS ¡with ¡ – Short ¡ signatures ¡and ¡public ¡keys ¡ – /ght ¡security ¡ from ¡simple ¡ complexity ¡assump8on? ¡ 15 ¡
Recommend
More recommend