fair e cash be compact spend faster
play

Fair E-cash: Be Compact, Spend Faster Sbastien Canard, Orange Labs - PowerPoint PPT Presentation

Fair E-cash: Be Compact, Spend Faster Sbastien Canard, Orange Labs R&D, France Ccile Delerable, UVSQ, France Aline Gouget, Gemalto, France Emeline Hufschmitt, Thals Communications, France Fabien Laguillaumie, Universit de Caen, France


  1. Fair E-cash: Be Compact, Spend Faster Sébastien Canard, Orange Labs R&D, France Cécile Delerablée, UVSQ, France Aline Gouget, Gemalto, France Emeline Hufschmitt, Thalès Communications, France Fabien Laguillaumie, Université de Caen, France Hervé Sibert, ST-Ericsson, France Jacques Traoré, Orange Labs R&D, France Damien Vergnaud , Ecole Normale Supérieure – CNRS – INRIA, France ISC 2009 – Tuesday, September 8, 2009 Pisa research & development

  2. Outline 1. The concept of Fair E-cash 2. Previous Results 3. Basic Tools 4. Our Proposal 5. Conclusion Orange Labs - Research & Development 2

  3. The concept of E-cash Bob Bob Shop -1 +1 Shop Orange Labs - Research & Development 3

  4. Minting an Untraceable Coin Secret minting key to create coins Bank = ( Serial Number , BankSig ( Serial Number ) ) Public verification key to recognize coins Orange Labs - Research & Development 4

  5. Requirements n Privacy Protection n Weak anonymity: anonymity of the user n Strong anonymity: anonymity of the user + unlinkability of the spendings n Security n Unforgeability of coins n Identification of double-spenders n Excupability Orange Labs - Research & Development 5

  6. Withdrawal SN SN authentication "blind" signature protocol Customer Bank coin = (SN, Sig Sig (SN)) (SN)) debits customer’s account coin = (SN, Orange Labs - Research & Development 6

  7. Fair Off-Line Electronic Cash u Drawbacks of anonymous cash n money laundering n black mailing, bank robbery attack u Controlling user anonymity: fair e-cash systems n use one (or several) trusted authority (ies) to revoke anonymity when necessary n the power of the trusted authority can be distributed Orange Labs - Research & Development 7

  8. Trustee-based Tracing Model Judge Revoke anonymity Bank Withdrawal Deposit Payment Shop Customer Orange Labs - Research & Development 8

  9. Tracing Operations Owner tracing u Coin tracing u SN = 01234 SN = 56789 BankSig BankSig Withdrawal : 09 / 08 / 2009 Orange Labs - Research & Development 9

  10. Previous Results n Many fair and non-fair off-line e-cash schemes have been proposed ([CFN88], [Brands'93], [CMS96], [FTY96], [dST98], [Traoré99],… n Before Compact E-cash [Camenisch, Hohenberger, Lysyanskaya, Eurocrypt 2005] … Bob Alice Alice Alice Alice -1 -2 -n -n+1 Orange Labs - Research & Development 10

  11. Compact E-Cash [Camenisch, Hohenberger, Lysyanskaya, Eurocrypt 2005] n Bob Alice -n Allows a user to withdraw a wallet with 2 L coins such that the space required to store these coins and the complexity of the withdrawal protocol are proportional to L rather than 2 L . � Do not consider the efficiency of the spending phase (and is not "fair") Orange Labs - Research & Development 11

  12. Our Contribution A new off-line electronic cash system: n with compact wallets n which is fair n where users can spend efficiently k coins while only sending to the merchant O �� log k ) bits where � is a security parameter Fair E-cash: Be Compact, Spend Faster Orange Labs - Research & Development 12

  13. Batch RSA (I) § An RSA variant H : a public hash function § Public Key : an RSA modulus n = pq § Private Key : (p, q) 1 / e A valid digital signature on a message M is of the form ( e , H ( M ) mod n ) where e is any prime − l 1 = ∏ Let S 0 , S 1 , , , S l -1 be l distinct messages with l � K = 2 L and E e i = i 0 where the e i 's are for example the l first odd primes Batch RSA allows to efficiently compute the l roots 1 / e 1 / e 1 / e 1 / e − 0 1 2 l 1 S mod n , S mod n S , mod n ,..., S mod n − 0 1 2 l 1 in O (log K log E + log n ) modular multiplications and O ( K ) divisions Orange Labs - Research & Development 13

  14. Batch RSA (II) Step 1: Build up product (the private key is not needed) E / e E / e E / e = × × − 0 1 l 1 M S S ... S mod n − 0 1 l 1 Step 2: Extract the E'th root of the product M (the private key is needed) 1 / e 1 / e 1 / e = 1 / E = × × − Aggregated signature 0 1 l 1 S M S S ... S mod n − 0 1 l 1 Step 3: Break up product roots (the private key is not needed) 1 / e 1 / e 1 / e 1 / e − 0 1 2 l 1 mod , mod , mod ,..., mod S n S n S n S n − 0 1 2 1 l − 1 l 1 / e = i mod ∏ Option : Splitting an aggregated signature S S n i = i 0 { } ⊂ = F F 1 ,..., l 1 1 / e 1 / e = = i mod i mod ∏ ∏ S S n S S n 1 2 F 2 = F \ F 1 i i ∈ ∈ i F i F 1 2 Blind Batch RSA: the l roots can be obtained in a blind manner Orange Labs - Research & Development 14

  15. Camenisch-Lysyanskaya signature scheme n We use a RSA-type CL signature scheme n A block of messages (m 1 , m 2 , m 3 ,…, m n ) can be signed n A signature protocol, where the messages are kept secret for the signer (but not the signature)… Com (m 1 , m 2 , m 3 ,…,m n ) Sign(Com (m 1 , m 2 , m 3 ,…,m n )) Signer User Com (m 1 , m 2 , m 3 ,…,m n ) SignCL(m 1 , m 2 , m 3 ,…,m n ) n A ZKPK of ownership of SignCL(m 1 , m 2 , m 3 ,…, m n ) without revealing the signature and the messages Orange Labs - Research & Development 15

  16. Parameters − l 1 = ∏ l � K = 2 L ; E e l i = i 0 g a generator of a cyclic group G is associated to a long term private key sk U = u and a corresponding public key Pk U = g u Customer holds two pairs (private, public) of keys: one for the Batch RSA signature scheme and the other one for the CL signature scheme Bank holds a pairs of keys of a suitable public key cryptosystem Judge Orange Labs - Research & Development 16

  17. Generation of the serial numbers • F : a public collision-free function • s = S 0,0 is the seed (master secret) • S 1,0 = F (S 0,0 , 0) ; S 1,0 = F (S 0,0 , 1) ; S i + 1 , 2 j = F (S i , j , 0) for the left child of S i , j S i + 1 ,2 j+1 = F (S i , j , 1) for the right child of S i , j Orange Labs - Research & Development 17

  18. Withdrawal Wallet = ( s , u , � , � , � ) where: 1 / e ⋅ ⋅ ⋅ 1 / e − � = aggregated signature of the l coins = 0 − H ( S ) H ( S l 1 ) mod n l 1 0 � = CL signature on ( s , u , � ) Orange Labs - Research & Development 18

  19. Example : spending two coins 4 σ = 1 / e ∏ i mod H ( S ) n i = remaining coins in the wallet i 0 coins to be spent 1 / 1 / σ = e ⋅ e σ = 1 / e ⋅ 1 / e ⋅ 1 / e H ( S ) 0 H ( S ) 1 mod n H ( S ) 2 H ( S ) 3 H ( S ) 4 mod n 1 0 1 2 2 3 4 Orange Labs - Research & Development 19

  20. Spending two coins at the same time Customer Shop 4 1 / e σ = i mod ∏ Computes from H ( S ) n i = i 0 σ = 1 / e ⋅ 1 / e ( ) 0 ( ) 1 mod H S H S n 1 0 1 σ = 1 / e ⋅ 1 / e ⋅ 1 / e H ( S ) 2 H ( S ) 3 H ( S ) 4 mod n 2 2 3 4 Computes also: S 2,0 , � 1, C 1 , C 2 + proof* C = Enc J Pk ( ) 1 U = C Enc ( s ) 2 J Retrieves S 0 and S 1 from S 2,0 and from � 1 : e mod 0 = 1 / 0 BatchSig ( S ) H ( S ) n 0 e mod 1 = 1 / BatchSig ( S ) H ( S ) 1 n 1 Verifies the proof * this proof doesn't prove that S 0 and S 1 derive from s Orange Labs - Research & Development 20

  21. Tracing of Double-Spenders Ex: double-spending of a coin with serial number S 0 S 0 , � 1, C 1 ! ! , C 2 + p r o o f Shop 1 ! Deposit 1 ; Deposit 2 ' f o o r p + BanK Judge ' 2 C , ' 1 C � 1, , S 0 = = C Enc ( s ) C ' 2 Enc ( s ' ) 1. Decrypts: and 2 J J 2. If S 0 cannot be computed from s (resp s' ) Shop 2 then the judge decrypts: C = C = Enc J Pk ( ) Enc J Pk ( ) (resp ) 1 U 1 U ⇒ Pk U (resp Pk U' ) is guilty Orange Labs - Research & Development 21

  22. Security Theorem: In the random oracle model, our fair e-cash system satisfies the following properties: n Unforgeabilty :under the one-more Strong RSA problem n Anonymity: under the strong blindness of the Batch-RSA blind signature scheme and the indistinguishability of the ciphertexts of the encryption scheme n Identification of double-spenders: under the unforgeability of the CL signature scheme n Exculpability : under the one-more discrete logarithm assumption Orange Labs - Research & Development 22

  23. Efficiency considerations • M and D are the respective costs of exponentiation, multiplication and division modulo n • F is the cost of the derivation function • � is a security parameter • K is the number of withdrawn coins • K is the number of spent coins • K' is the number of remaining coins in the wallet after spending Orange Labs - Research & Development 23

  24. Conclusion and open problems n We proposed the first fair e-cash system with a compact wallet and efficient spendings n It does not however provide a perfect anonymity property since it is possible to know which leaves in the serial number binary tree are used during the spending n Future work: n How to design a similar system in the non-fair setting? n Strong anonymity Orange Labs - Research & Development 24

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend