11.07.2014 Views

Identity-Based Encryption Protocols Using Bilinear Pairing

Identity-Based Encryption Protocols Using Bilinear Pairing

Identity-Based Encryption Protocols Using Bilinear Pairing

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

aborts if F (v ∗ ) ≠ 0 and outputs a random bit. Otherwise, S chooses a random bit γ ∈ {0, 1}<br />

and gives A the tuple C ′ = 〈Z × M γ , cP, J(v ∗ )cP 〉.<br />

If 〈P, aP, bP, cP, Z〉 given to S is a valid DBDH tuple, i.e., Z = e(P, P ) abc then C ′ is a<br />

valid encryption for M γ . Since,<br />

e(P, P ) abc = e(aP, bP ) c = e(P 1 , P 2 ) c<br />

and using F (v ∗ ) = p − mk + x + ∑ l<br />

i=1 x iv ∗ i ≡ 0 mod p we have,<br />

J(v ∗ )cP = c(y +<br />

l∑<br />

y i vi ∗ )P<br />

i=1<br />

= c((p − mk + x +<br />

l∑<br />

x i vi ∗ )P 2 + (y +<br />

i=1<br />

= c((p − mk + x)P 2 + yP +<br />

= c(U ′ +<br />

= cV<br />

l∑<br />

vi ∗ U i )<br />

i=1<br />

l∑<br />

y i vi ∗ )P )<br />

i=1<br />

l∑<br />

vi ∗ (x i P 2 + y i P ))<br />

Note<br />

∑<br />

that, this condition is satisfied as long as F (v ∗ ) ≡ 0 mod p, which holds if x +<br />

l<br />

j=1 x jvj<br />

∗ = km. Otherwise, Z is a random element of G 2 and C ′ gives no information<br />

about S’s choice of γ.<br />

Phase 2: This phase is similar to Phase 1, with the obvious restriction that A cannot ask<br />

for the private key of v ∗ . We note that the total number of key extraction queries together<br />

in Phase 1 and 2 should not exceed q.<br />

Guess: A outputs a guess γ ′ of γ. Then S outputs 1 ⊕ γ ⊕ γ ′ .<br />

Suppose the adversary has not aborted up to this point. Waters introduced a technique<br />

whereby the simulator is allowed to abort under certain condition. The simulator samples<br />

the transcript it received from the adversary during the attack phase. <strong>Based</strong> on the sample,<br />

it decides whether to abort and output a random string. The rationale for such “artificial<br />

abort” is the following: The probability of abort during the attack phase depends on the<br />

adversarial transcript and can be different for different transcripts. The purpose of artificial<br />

abort is to ensure that the simulator aborts with (almost) the same probability for all<br />

adversarial queries. This ensures that the adversary’s success is independent of whether the<br />

simulator aborts or not. The probability analysis performed by Waters in [89] requires this<br />

independence. For details of this method see [89]. Here we just note that the artificial abort<br />

stage requires an additional χ = O(ɛ −2 ln(ɛ −1 )λ −1 ln(λ −1 )) time. Further, it is independent<br />

of the parameter l which defines the generalisation over Waters [89] that we introduce here.<br />

54<br />

i=1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!