Presentation is loading. Please wait.

Presentation is loading. Please wait.

The user accountability/traitor tracing in attribute based encryption

Similar presentations


Presentation on theme: "The user accountability/traitor tracing in attribute based encryption"โ€” Presentation transcript:

1 The user accountability/traitor tracing in attribute based encryption
Zhao Qianqian

2 What is the user accountability?
In the attribute based encryption, the user private key is completely associated with his attributes set. Each attribute can be shared by many different users. If the decryption device associated with some attribute ๐‘† ๐ท appears on eBay, and is alleged to be able to decrypt any ciphertexts with policies satisfied by ๐‘† ๐ท , no one including the ABE authorities can identify the malicious user(s) who build such a decryption device using their key(s).

3 What is the user accountability?
Because there are many different users whose attributes sets cover the set ๐‘† ๐ท . It is a very big challenge for the security of attribute based encryption. To design a safe and effective traitor tracing scheme has been a necessity, especially in the actual access control scheme applying the ABE. The realization of the traitor tracing is the so-called user accountability.

4 Two different levels of traceability
White-box traceability: it means that given a well-formed decryption key as input, a tracing algorithm can find the user who owns the key. Black-box traceability: it means that given a decryption black box/device, while the decryption key and even the decryption algorithm could be hidden, the tracing algorithm can still find out the malicious user whose key must have been used in constructing the decryption black box.

5 Multi-Authority Ciphertext-Policy Attribute-Based Encryption with Accountability
Jin Li, Qiong Huang, Xiaofeng Chen, Sherman S. M. Chow, Duncan S. Wong, Dongqing Xie๏ผ›ASIACCS 2011

6 The reason of the multi-authority
The load bottleneck: all the attributes of the users need to be verified by the only authority, which is quite big burden for the system. The escrow problem: the private key of all users is issued by the authority, which means that the authority can decrypt all the ciphertexts in the system.

7 The background of the scheme
Access structure: the policy in the scheme is conjunction of AND-gates on multi-valued attributes with wildcards. Bilinear maps: let ๐บ 1 =< ๐‘” 1 >, ๐บ 2 =< ๐‘” 2 > be multiplicative cyclic groups of prime order ๐‘, and โ„ฏ : ๐บ 1 ร— ๐บ 2 โ†’ ๐บ ๐‘‡ be a bilinear pairing function.

8 The specific scheme Setup: Let ๐ด 1 ,โ‹ฏ ๐ด ๐‘ , ๐ด ๐‘+1 be the (๐‘+1) authorities in the system. Each authority ๐ด ๐‘˜ is in charge of a disjoint set of ๐‘› ๐‘˜ attributes. Let the value set of the ๐‘–-th attribute managed by authority ๐ด ๐‘˜ be ๐• ๐‘˜ = ๐‘ฃ ๐‘˜,๐‘– 1โ‰ช๐‘–โ‰ช ๐‘› ๐‘˜ . Also, the set of attributes managed by authority ๐ด ๐‘+1 is the set of user identities, i.e., ๐‘ฃ ๐‘+1,๐‘– โˆˆ 0,1 for all 1โ‰ช๐‘–โ‰ช ๐‘› ๐‘+1 =๐œŒ, the bit-length of an identity where 2 ๐œŒ โ‰ช๐‘.

9 The specific scheme Setup: each authority ๐ด ๐‘˜ where 1โ‰ช๐‘˜โ‰ช ๐‘+1 chooses ๐‘ฅ ๐‘˜ โˆˆ โ„ค ๐‘ โˆ— as his private key, computes ๐‘ฆ ๐‘˜ = ๐‘” 1 ๐‘ฅ ๐‘˜ and sends โ„ฏ ๐‘” 1 , ๐‘” 2 ๐‘ฅ ๐‘˜ to the other authorities. Then every authority can compute ๐‘‡=โ„ฏ ๐‘˜=1 ๐‘+1 ๐‘ฆ ๐‘˜ , ๐‘” 2 = ๐‘˜=1 ๐‘+1 โ„ฏ ๐‘” 1 , ๐‘” 2 ๐‘ฅ ๐‘˜ as a system public key. ่ฟ™ไธชsystem public key็†่ฎบไธŠๆฅ่ฏดๅ…จ็ฝ‘ๅช้œ€่ฆไธ€ไธชๅณๅฏ๏ผŒ็„ถ่€Œ่ฟ™ๆ ทไบคไบ’็š„็ป“ๆžœๆ˜ฏๆ‰€ๆœ‰็š„attribute authority้ƒฝๅฏไปฅ่ฎก็ฎ—ๅ‡บ่ฟ™ๆ ท็š„ไธ€ไธช็ณป็ปŸๅ‚ๆ•ฐ๏ผŒไฝ†ๆ˜ฏๆœ€ๅŽๆˆ‘ไปฌๅบ”็”จ็š„ๆ˜ฏๅ–่‡ชไบŽๅ“ชไธชauthority็š„ๅ‘ข๏ผŸๅๆญฃๆœ€ๅŽๆ˜ฏ่ฆไฝœไธบ็ณป็ปŸๅ‚ๆ•ฐๅ…ฌๅผ€็š„๏ผŸ้‚ฃไนˆ่ฟ™ๆ ท็š„ไบคไบ’่ฟ˜ๆœ‰ๆ„ไน‰ๅ—๏ผŸ

10 The specific scheme Setup: each authority ๐ด ๐‘˜ where 1โ‰ช๐‘˜โ‰ช๐‘ chooses ๐‘Ž ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– , ๐‘ ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ๐‘ ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– from โ„ค ๐‘ โˆ— , computes ๐ด ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– = ๐‘” 2 ๐‘ ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– 1โ‰ช๐‘˜โ‰ช ๐‘› ๐‘˜ , ๐‘ฃ ๐‘˜,๐‘– โˆˆ 0,1 , then also computes ๐ต ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– = ๐ด ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ๐‘Ž ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ๐ต ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– = ๐ด ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ๐‘Ž ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– , ๐ต ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– โ€ฒ = ๐ด ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ๐‘ ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– , and publishes them as the public key component for the value ๐‘ฃ ๐‘˜,๐‘– of the ๐‘–-th attribute.

11 The specific scheme Setup: the authority ๐ด ๐‘+1 randomly chooses ๐‘ ๐‘+1,๐‘—,๐‘ from โ„ค ๐‘ โˆ— and computes ๐ด ๐‘+1,๐‘—,๐‘ = ๐‘” 2 ๐‘ ๐‘+1,๐‘—,๐‘ ๐ด ๐‘+1,๐‘—,๐‘ = ๐‘” 2 ๐‘ ๐‘+1,๐‘—,๐‘ 1โ‰ช๐‘—โ‰ช๐œŒ, ๐‘โˆˆ 0,1 . It also chooses ๐‘Ž ๐‘+1,๐‘—,๐‘ , ๐‘ ๐‘+1,๐‘—,๐‘ from โ„ค ๐‘ โˆ— and publishes ๐ต ๐‘+1,๐‘—,๐‘ = ๐ด ๐‘+1,๐‘—,๐‘ ๐‘Ž ๐‘+1,๐‘—,๐‘ and ๐ต ๐‘+1,๐‘—,๐‘ โ€ฒ = ๐ด ๐‘+1,๐‘—,๐‘ ๐‘Ž ๐‘+1,๐‘—,๐‘ as the public key of authority ๐ด ๐‘+1 .

12 The specific scheme Setup: each authority ๐ด ๐‘˜ 1โ‰ช๐‘˜โ‰ช ๐‘+1 shares a secret pseudorandom function ๐‘ƒ๐‘…๐น seed ๐‘  ๐‘˜ ๐‘˜ โ€ฒ โˆˆ โ„ค ๐‘ โˆ— with each other authority ๐ด ๐‘˜ โ€ฒ . It also chooses a PRF seed ๐‘Ž ๐‘˜ โˆˆ โ„ค ๐‘ โˆ— and computes ๐‘ฆ ๐‘˜ โ€ฒ = ๐‘” 1 ๐‘Ž ๐‘˜ , which is sent to all other authorities. It then defines a pseudorandom function ๐‘ƒ๐‘…๐น ๐‘˜, ๐‘˜ โ€ฒ ๐บ๐ผ๐ท = ๐‘” 1 ๐‘Ž ๐‘˜ ๐‘Ž ๐‘˜ โ€ฒ ๐‘  ๐‘˜, ๐‘˜ , +๐‘‹ where ๐‘‹=๐ป ๐บ๐ผ๐ท and ๐ป: 0,1 ๐œŒ โ†’ ๐‘ ๐‘ is a collision-resistant hash function. The GID is the specific user identity.

13 The specific scheme The system public parameter is
๐‘” 1 , ๐‘” 2 ,๐‘‡,๐ป โˆ™ , ๐‘ฆ ๐‘˜ โ€ฒ , ๐ด ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ,๐ต ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– , ๐ต ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– โ€ฒ 1โ‰ช๐‘–โ‰ช ๐‘› ๐‘˜ , ๐‘ฆ ๐‘+1 โ€ฒ , ๐ด ๐‘+1,๐‘—,๐‘ , ๐ต ๐‘+1,๐‘—,๐‘ , ๐ต ๐‘+1,๐‘—,๐‘ โ€ฒ 1โ‰ช๐‘—โ‰ช๐œŒ,๐‘โˆˆ 0,1

14 The specific scheme AKeyGen: the user with global identity ๐บ๐ผ๐ท= ๐ผ 1 ,โ‹ฏ ๐ผ ๐œŒ โˆˆ 0,1 ๐œŒ first gets ๐ท ๐‘˜๐‘— for ๐‘˜โ‰ ๐‘— by using the anonymous key-issuing protocol with the kโˆ’๐‘กโ„Ž authority. In more details, the user starts ๐‘ independent invocations of the anonymous protocol on input ๐‘ฆ ๐‘— โ€ฒ ๐‘Ž ๐‘˜ , ๐‘” 1 , ๐›ฟ ๐‘˜,๐‘— ๐‘… ๐‘˜,๐‘— , ๐‘  ๐‘˜,๐‘— , ๐›ฟ ๐‘˜,๐‘— with the kโˆ’๐‘กโ„Ž authority.

15 The specific scheme AKeyGen: where ๐‘… ๐‘˜,๐‘— โˆˆ ๐‘ ๐‘ โˆ— is randomly chosen by the authority ๐ด ๐‘˜ , and ๐›ฟ ๐‘˜,๐‘— is 1 if ๐‘˜>๐‘— and โˆ’1 otherwise, for ๐‘—โˆˆ 1,โ‹ฏ,๐‘+1 \ ๐‘˜ . At the end of the protocol, the user obtains ๐ท ๐‘˜,๐‘— = ๐‘” 1 ๐‘… ๐‘˜,๐‘— ๐‘ƒ๐‘…๐น ๐‘˜,๐‘— ๐บ๐ผ๐ท if ๐‘˜>๐‘—, and ๐ท ๐‘˜,๐‘— = ๐‘” 1 ๐‘… ๐‘˜,๐‘— /๐‘ƒ๐‘…๐น ๐‘˜,๐‘— ๐บ๐ผ๐ท otherwise. After interacted with all ๐‘+1 authorities, the user computes ๐ท= ๐ท ๐‘˜ ๐‘˜ โ€ฒ = ๐‘” 1 ๐‘… where R= ๐‘… ๐‘˜ ๐‘˜ โ€ฒ (for all k, ๐‘˜ โ€ฒ โˆˆ 1,โ‹ฏ,๐‘+1 ,๐‘˜โ‰  ๐‘˜ โ€ฒ ).

16 The specific scheme AKeyGen: to get a private key for an attribute ๐”ธ ๐‘˜ โŠ† ๐• ๐‘˜ from authority ๐‘˜, the authority ๐ด ๐‘˜ picks up random ๐‘  ๐‘˜,1 , ๐‘  ๐‘˜,2 ,โ‹ฏ, ๐‘  ๐‘˜, ๐ด ๐‘˜ โˆ’1 , ๐œ† ๐‘˜,1 , ๐œ† ๐‘˜,2 ,โ‹ฏ, ๐œ† ๐‘˜, ๐ด ๐‘˜ โˆˆ ๐‘ ๐‘ โˆ— and computes ๐‘  ๐‘˜, ๐ด ๐‘˜ = ๐‘ฅ ๐‘˜ โˆ’ ๐‘–=1 ๐ด ๐‘˜ โˆ’1 ๐‘  ๐‘˜,๐‘– โˆ’ ๐‘˜ โ€ฒ โˆˆ 1,โ‹ฏ,๐‘+1 \ ๐‘˜ ๐‘… ๐‘˜ ๐‘˜ โ€ฒ mod p. Finally, the private key component for each eligiable attribute ๐‘ฃ ๐‘˜,๐‘– in ๐”ธ ๐‘˜ is computed as

17 The specific scheme AKeyGen: ๐‘” 1 ๐‘  ๐‘˜,๐‘– ๐‘” 1 ๐‘Ž ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ๐‘ ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ๐œ† ๐‘˜,๐‘– ๐‘ ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– , ๐‘” 1 ๐‘Ž ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ๐œ† ๐‘˜,๐‘– , ๐‘” 1 ๐‘ ๐‘˜,๐‘–, ๐‘ฃ ๐‘˜,๐‘– ๐œ† ๐‘˜,๐‘– Similarly, the private key from authority ๐ด ๐‘+1 is computed as ๐‘” 1 ๐‘  ๐‘— ๐‘” 1 ๐‘Ž ๐‘+1,๐‘—, ๐ผ ๐‘— ๐‘ ๐‘— ๐‘ ๐‘— ๐œ† ๐‘— , ๐‘” 1 ๐‘Ž ๐‘+1,๐‘—, ๐ผ ๐‘— ๐œ† ๐‘— , ๐‘” 1 ๐‘ ๐‘+1,๐‘—, ๐ผ ๐‘— 1โ‰ช๐‘—โ‰ช๐œŒ

18 The specific scheme AKeyGen: where ๐œ† ๐‘— , ๐‘  ๐‘— are randomly chosen so that ๐‘  ๐œŒ = ๐‘ฅ ๐‘+1 โˆ’ ๐‘–=1 ๐œŒโˆ’1 ๐‘  ๐‘– โˆ’ ๐‘˜ โ€ฒ โˆˆ 1,2,โ‹ฏ๐‘ ๐‘… ๐‘+1, ๐‘˜ โ€ฒ ๐‘š๐‘œ๐‘‘ ๐‘. This is the only authority who sees GID in clear.

19 The specific scheme Enc: to encrypt a message ๐‘€โˆˆ ๐บ ๐‘‡ under the policy โ„™= โ„™ 1 โ‹€โ‹ฏโ‹€ โ„™ ๐‘ , the encryptor first picks random ๐‘ง and computes ๐ถ โ€ฒ =๐‘€โˆ™ ๐‘‡ ๐‘ง , ๐ถ 0 = ๐‘” 2 ๐‘ง .

20 The specific scheme Enc:

21 The specific scheme Enc:

22 The specific scheme Enc:

23 The specific scheme Enc:

24 The specific scheme

25 The specific scheme Trace: Suppose that there is a pirate device which is able to decrypt ciphertexts under policy โ„™. One can pinpoint the exact identity ๐บ๐ผ๐ท= ๐ผ 1 ,โ‹ฏ, ๐ผ ๐œŒ incorporated in the device bit-by-bit as follows: 1. Initiate a counter ๐‘—=1. 2. Choose a random message ๐‘€โˆˆ ๐บ ๐‘‡ . Encrypt ๐‘€ under the policy โ„™ by setting the bits of the identity ๐ผ 1 =1, โ‹ฏ ๐ผ ๐‘— =1 and the other bits being ๐ผ ๐‘—+1 =โ‹ฏ=โ‹ฏ ๐ผ ๐œŒ =โˆ—.

26 The specific scheme Trace: 3. Feed the ciphertext to the decryption device. If the message output by the device is correct, e.g. equal to ๐‘€, increase the counter j by one and go to Step 2. Otherwise, encrypt another ๐‘€ under the policy โ„™ by setting the bit of the identity ๐ผ 1 =โ‹ฏ= ๐ผ ๐‘—โˆ’1 =1, ๐ผ ๐‘— =0 and the other bits being ๐ผ ๐‘—+1 =โ‹ฏ=โ‹ฏ ๐ผ ๐œŒ =โˆ—.

27 The specific scheme Trace: The iteration stops until the whole identity is recovered, e.g. ๐‘—=๐œŒ. It can be readily seen that the iteration repeats for at most ๐œŒ times.

28 The advantage of this scheme
Public traceability: it means any user in this system can achieve this traceability and do not need other confidential information. Black-box

29 The disadvantage of this scheme
Access structure: its access policy in this system is not expressive. It is only the combination of AND-gates. The ability of pirate device: the pirate device only can decrypt the ciphertexts of the one access policy โ„™.


Download ppt "The user accountability/traitor tracing in attribute based encryption"

Similar presentations


Ads by Google