Morpho - Semantic Scholar

Components of a Group Signature Scheme. KeyGen GM creates a set of public parameters and a secret key. The public parameters are published.
1MB taille 6 téléchargements 846 vues
VLR Group Signatures: How to Achieve Both Backward Unlinkability and Efficient Revocation Checks Julien Bringer (Morpho), Alain Patey (Morpho,Télécom ParisTech)

SECRYPT 2012 - 24/07/2012 1/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Outline 1

VLR Group Signatures

2

Efficient Revocation Checks

3

Adding Backward Unlinkability

4

Experimental Results and Analysis

5

Conclusion

2/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

/01/ VLR Group Signatures

3/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Digital Signatures vs Group Signatures

4/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Setting/Definitions : Setting : “ “ “

a group of users a Group Manager (GM) GM fixes the group parameters and issues the signing keys

: Group signatures enable members of a group to sign anonymously on behalf of the group : Anonymity can only be raised by the GM : Applications : e-Cash, e-Vote, VANETs, TPMs, anonymous authentication, ...

5/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Components of a Group Signature Scheme KeyGen GM creates a set of public parameters and a secret key. The public parameters are published Join Creation of keys for a new member joining the group Sign Signature of a message by a member of the group Verify Verification of a signature by a person knowing the public parameters of the group Revoke GM revokes a member from the group Open GM raises the anonymity of a signature

6/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Verifier-Local Revocation

7/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

VLR : Verifier-Local Revocation : Dynamic schemes “

Members join and leave the group at different times

: Leaving members lose their signing capacity : Several existing solutions (certificates, accumulators, . . . ) : VLR (Verifier-Local Revocation) solution : “





A Revocation List (RL) is published and used by the verifiers when they check a signature. The signers do not take it into account when they sign. RL is set up and updated by the GM, who is the only one who can derive the revocation tokens Advantages : less interactivity, no need to re-issue keys, no additional computation asked to the signer

8/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Generic Construction of a VLR Group Signature Sign : Zero-knowledge proof of knowledge, linked to the message, of a secret key of a group member Verify : Signature Check Check of the Proof of Knowledge Revocation Check Check that the signer is not one member whose revocation token is on the revocation list RL Open : GM uses the Revocation Check algorithm using 1-token (one for each member) Revocation Lists. When the test fails, the signer’s identity is obtained.

9/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Signature Verification

10/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Security Properties Correctness : Every signature correctly issued by an unrevoked member is checked as valid Backward Unlinkability : Signatures do not reveal anything (to anyone but the signer ad the GM) about their author and they remain anonymous even after the revocation of the user Traceability : No group of attackers can forge a signature that can not be traced to one of the members of the coalition. Exculpability : Nobody (including GM) is able to issue another’s member signature

11/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Pairings : Let “ “ “ “

G1 and GT be two cyclic groups of prime order p G2 be a group of order pk ψ a homomorphism from G2 to G1 g2 ∈ G2 , and g1 be a generator of G1 such that ψ(g2 ) = g1

: e : G1 × G2 → GT is a pairing if : “ “

e is bilinear : e(u a , v b ) = e(u , v )ab e is non-degenerate : e(ψ(g2 ), g2 ) 6= 1

: q-SDH Problem [BB04] : “

(γ q )

Given (g1 , g2 , g2γ , ..., g2

1



γ+x

Return a couple (x , g1

) and e

), with x ∈ Z∗p

12/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

/02/ Efficient Revocation Checks

13/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Towards Efficient Revocation Checks : Revocation Check in usual VLR schemes ([BS04, NF06],. . . ) : One pairing per item in the Revocation List Pairings are costly, and we need a linear number of them ! =⇒ not applicable in large groups (e.g. a country) “ “

: Idea : Replace pairings by exponentiations “ “

[YO08] : first attempt, not coalition-resistant [CL10] : our starting point

14/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Chen-Li Scheme [CL10] : Enjoys Exculpability “

the GM does not know the full secret key of a member

: Parameters : “ “ “ “

G1 =< g1 >, G2 =< g2 >, both of order p ˜1 , g˜2 ∈R Zp g a pairing e : G1 × G2 → GT w = g2γ where γ ∈R Z∗p is the group manager’s secret key. 1

: User’s key : ski = fi and crei = (Ai , xi ) such that Ai = (g1 g˜1 fi ) x +γ . “ “

GM only knows crei and idi = g˜1 fi , but not ski . The revocation token is rti = xi

15/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Chen-Li Scheme [CL10] (2) : Sign(m) “ “ “

˜2a . Choose B ∈R G1 . Compute J = B fi , K = B xi and T = Ag xi fi xi Compute Π = SPK {fi , Ai , xi |J = B , K = B , e(A, g2 w ) = e(g1 g˜1 fi , g2 )}(m) Return σ = (B , J , K , T , Π)

: Verify(m,σ ) “ “

Signature Check : Check Π Revocation Check : Check that ∀rt ∈ RL, K 6= B rt

16/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Our first contribution : The proofs in [CL10] were not much developed : We found out there was something missing in the SPK and we patched it : Patched Scheme : “ “

Signature components : 4 elts of G1 and 4 elts of Zp Sign operations : 6 multi-exp. in G1 , 1 me in GT —



These operations can be pre-computed offline. Only a hash function computation is required when the user knows the message to sign.

Verify operations : 4 + |RL| me in G1 , 1 me in GT and 1 pairing

17/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

/03/ Adding Backward Unlinkability

18/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Periods and Tokens : Time is divided into T periods : For each period j, a public token hj is introduced Without BU, a revocation token is of the form rti = xi , part of the user’s key x With BU, there is one revocation token per user and per period : rtij = hj i =⇒ We cannot link rtij and rtik for j 6= k, thus we enjoy Backward Unlinkability “ “

: All operations (Sign, Verify, Open) are dependent of the time period. Moreover, there is one revocation list RLj per time period.

19/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Pairing-Based Revocation Checks In schemes using pairing-based revocation checks

: An element of the form T = f xi is introduced in the signature, where f is also sent to the verifier and where xi is the user’s key x

: For every rti 0 j ∈ RLj , the verifier computes e(f , rti 0 j ) (= e(f , hj i 0 ) = e(f , hj )xi 0 ). : He checks that these values are different from e(T , hj ) (= e(f xi , hj ) = e(f , hj )xi ). : =⇒ Number and nature of computations in the Revocation Check are unchanged (at almost no cost).

20/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Exponentiation-based Revocation Checks xi

: An element of the form L = B hj = B rtij should be inserted in the signature. : Nature and Number of operations in the Revocation Check do not change. : BUT one needs to prove the knowledge of xi , and the cost is here non negligible

21/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

PK of the equality between a log and a double log x

: Given B, h, K = B x and L = B h . We want to prove that logB K = logh (logB L). : Proof : “

“ “ “

Given a security parameter λ, pick r1 , . . . , rλ ∈R Zp and compute Vl = B rl and rl Wl = B h , for l = 1, . . . , λ. Compute d = H ((. . .), B , K , L, (Vl , Wl )l =1...λ ) Let bl be the l th bit of d, set sl = rl − bl d, for l = 1 . . . λ. Return B , h, K , L, d , s1 , . . . , sλ .

: Verification : “

“ “

Let bl be the l th bit of d. For l = 1, . . . , λ, compute Vl0 = g sl K bl and sl Wl0 = (g 1−bl Lbl )h 0 Compute d = H ((. . .), B , K , L, (Vl0 , Wl0 )l =1...λ ) Check that d = d 0

: see [CS97]

22/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Our Proposal We integrate the POK to enable BU in the patched CL scheme.

: System Parameters : G1 =< g1 >, G2 =< g2 >, both of order p, ˜1 , g˜2 , h1 , . . . , hλ ∈R Zp , e : G1 × G2 → GT , w = g2γ where γ ∈R Z∗p is the g GM’s private key. 1

: Member’s key : ski = fi and crei = (Ai , xi ) such that Ai = (g1 g˜1 fi ) x +γ . GM f only knows crei and idi = g˜1 i , but not ski . “

x

The member’s revocation token at period j is rtij = hj i

: Sign(m) “ “ “ “ “ “

x h i

˜2a . Pick B ∈R G1 . Compute J = B fi , K = B xi , L = B j and T = Ag x Compute Π = SPK {fi , Ai , xi |J = B fi , K = B xi , e(A, g2i w ) = e(g1 g˜1 fi , g2 )}(m) rl Choose r1 , . . . , rλ ∈R Zp and compute Vl = B rl and Wl = B h , for l = 1, . . . , λ. Compute d = H (gpk , m, B , J , K , L, T , (Vl , Wl )l =1...λ ) Let bl be the l th bit of d, set sl = rl − bl d, for l = 1 . . . λ. Return σ = (B , J , K , L, T , Π, d , s1 , . . . , sλ )

23/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Our Proposal (2) : Verify(m,σ ) “ “

“ “ “

Signature Check : Check Π Let bl be the l th bit of d. For l = 1, . . . , λ, compute Vl0 = g sl K bl and sl Wl0 = (g 1−bl Lbl )h 0 Compute d = H (gpk , m, B , J , K , L, T , (Vl0 , Wl0 )l =1...λ ) Check that d = d 0 Revocation Check : Check that ∀rt ∈ RLj , L 6= B rt

24/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Security Properties In the random oracle model, the scheme satisfies :

: Correctness : Backward Unlinkability (adapted DDH) : Traceability (q-SDH) : Exculpability (DL)

25/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

/04/ Experimental Results and Analysis

26/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Signature Size Using 256-bit Barreto-Naehrig Curves

: patched CL (exp.-based revocation checks) : 2308 bits : Our proposal with λ = 80(exp.-based revocation checks + BU) : 23,301 bits To compare with [NF06](pairing-based revocation checks + BU) : 1533 bits

27/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Computation Scheme patched CL Our scheme (CL-BUλ )

Cost of Sign (offline) 6 me + 1 ME (7 + 2λ) me + λ me + 1 ME

Cost of Sign (online) negligible (1 hash) negligible (2 hash)

Cost of Verify (4 + |RL|) me + 1 ME + 1 P (4+ |RLj | + 2 λ) me + λ me + 1 ME + 1 P

Table: Computational costs for [CL10] and our scheme

: me : multi-exponentiations in G1 : me : multi-exponentiations in G1 : ME : multi-exponentiations in GT : P : pairings.

28/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Experimental Results Revoked members 10 50 100 1000

NF 3s 10 s 19 s 3 min

CL-BU80 9s 10.5 s 13 s 53 s

CL-BU128 14 s 15.5 s 18 s 58 s

Table: Overall computational time for the Verify algorithm, depending on the number of revoked members.

NF : Nakanishi-Funabiki VLR scheme with BU, using pairing-based checks [NF06] CL-BUλ : our proposal with a security parameter λ

29/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

/05/ Conclusion

30/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Conclusion : In VLR schemes for large groups, the bottleneck is the revocation check : In all known schemes it has to be linear in the size of the revocation list : We introduced the most efficient VLR scheme with BU, using exponentiation-based revocation checks : Open Problems “

Other revocation check operations ? Linear Algebra ? not constant-time signing yet is it possible to have a sublinear revocation check ? (it looks like we would loose anonymity somewhere)



Full version of this paper available on the IACR ePrint Archive [BP11]



31/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Advertisement : Thursday Afternoon (4.30pm-5.30pm), Posters Session 3 : Group Sig. with BU used for identity management in a hierarchical setting

32/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

Thank you for your attention Questions ?

33/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

References I Dan Boneh and Xavier Boyen. Short signatures without random oracles. In Christian Cachin and Jan Camenisch, editors, EUROCRYPT, volume 3027 of LNCS, pages 56–73. Springer, 2004. Julien Bringer and Alain Patey. Backward unlinkability for a VLR group signature scheme with efficient revocation check. IACR Cryptology ePrint Archive, Report 2011/376, 2011. http://eprint.iacr.org/. Dan Boneh and Hovav Shacham. Group signatures with verifier-local revocation. In Vijayalakshmi Atluri, Birgit Pfitzmann, and Patrick Drew McDaniel, editors, ACM Conference on Computer and Communications Security, pages 168–177. ACM, 2004.

34/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

References II Liqun Chen and Jiangtao Li. VLR group signatures with indisputable exculpability and efficient revocation. In PASSAT, 2010. Jan Camenisch and Markus Stadler. Efficient group signature schemes for large groups (extended abstract). In Burton S. Kaliski Jr., editor, CRYPTO, volume 1294 of LNCS, pages 410–424. Springer, 1997. Toru Nakanishi and Nobuo Funabiki. A short verifier-local revocation group signature scheme with backward unlinkability. In Hiroshi Yoshiura, Kouichi Sakurai, Kai Rannenberg, Yuko Murayama, and Shin ichi Kawamura, editors, IWSEC, volume 4266 of LNCS, pages 17–32. Springer, 2006.

35/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho

References III Takuya Yoshida and Koji Okada. Simple and efficient group signature scheme assuming tamperproof devices. In Kanta Matsuura and Eiichiro Fujisaki, editors, IWSEC, volume 5312 of LNCS, pages 83–99. Springer, 2008.

36/ Alain Patey/24/07/2012/SECRYPT 2012 Ce document et les informations qu’il contient sont la propriété de Morpho. Ils ne doivent pas être copiés ni communiqués à un tiers sans l’autorisation préalable et écrite de Morpho