Identity-Based Encryption Protocols Using Bilinear Pairing
Identity-Based Encryption Protocols Using Bilinear Pairing
Identity-Based Encryption Protocols Using Bilinear Pairing
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Decrypt: Let C = (C 1 , C 2 , C 3 ) be a ciphertext and v be the corresponding identity. Then<br />
we decrypt C using secret key d v = (d 1 , d 2 ) by computing<br />
C 1 × e(d 2, C 3 )<br />
e(d 1 , C 2 ) = e(P 1, P 2 ) s e(rP, sV )<br />
× M<br />
e(xP 2 + rV, sP ) = M<br />
Note that, for l = n this is exactly Waters protocol. For l = 1, some minor modifications<br />
in the above scheme give a protocol where the additional requirement in the public parameter<br />
is just a single element of G 1 as described below.<br />
IBE-SPP(1)<br />
Setup: Randomly choose a secret x ∈ Z N . Set P 1 = xP , then choose P 2 ∈ G 1 at random.<br />
Further, choose a random element U ′ ∈ G 1 . The master secret is xP 2 whereas the public<br />
parameters are 〈P, P 1 , P 2 , U ′ 〉.<br />
Key-Gen: Let v be any identity. A secret key for v is generated as follows. Choose a<br />
random r ∈ Z ∗ p, then the private key for v is<br />
d v = (xP 2 + rV, rP ).<br />
where V = U ′ + vP 2 .<br />
Here the Encrypt and Decrypt algorithms are same as IBE-SPP(l) with the modified definition<br />
of V . Note that, this is essentially the Boneh-Boyen HIBE of Section 3.2.1 restricted<br />
to IBE in the adaptive-ID model.<br />
Efficiency: Consider IBE-SPP(l) with 1 < l ≤ n. Let cost(V ) be the cost of computing V .<br />
The cost of key generation is two scalar multiplications over G 1 plus cost(V ). By including<br />
e(P 1 , P 2 ) instead of P 1 , P 2 in the public parameter, we can avoid the pairing computation<br />
during encryption. So the cost of encryption is one exponentiation over G 2 , two scalar multiplications<br />
over G 1 plus cost(V ). The cost of decryption is two pairings, one multiplication<br />
and one inversion over G 2 . The effect of l is in cost(V ) and affects key generation and<br />
encryption costs but does not affect decryption cost.<br />
We first consider the costs of scalar multiplication over G 1 and exponentiation over G 2 .<br />
As mentioned earlier, G 1 is an elliptic curve group. Let IF a denote the base field over which<br />
G 1 is defined. Then G 2 is a subgroup of IF k a, where k is the MOV degree. Additions and<br />
doublings over G 1 translate into a constant number of multiplications over IF a . The actual<br />
number is slightly different for addition and doubling, but we will ignore this difference. Let<br />
|IF a | be the size of the representation of an element of IF a . Assuming the cost of multiplication<br />
over G 1 is approximately equal to |IF a | 2 , the cost of a scalar multiplication over G 1 is equal<br />
to c 1 |IF a | 3 for some constant c 1 . One can also show that the cost of exponentiation over G 2<br />
51