Boneh–Franklin Scheme
   HOME

TheInfoList



OR:

The Boneh–Franklin scheme is an
identity-based encryption Identity-based encryption (IBE), is an important primitive of identity-based cryptography. As such it is a type of public-key encryption in which the public key of a user is some unique information about the identity of the user (e.g. a user's ema ...
system proposed by
Dan Boneh Dan Boneh (; ) is an Israeli–American professor in applied cryptography and computer security at Stanford University. In 2016, Boneh was elected a member of the National Academy of Engineering for contributions to the theory and practice of cr ...
and Matthew K. Franklin in 2001. This article refers to the protocol version called BasicIdent. It is an application of pairings (
Weil pairing In mathematics, the Weil pairing is a pairing (bilinear form, though with multiplicative notation) on the points of order dividing ''n'' of an elliptic curve ''E'', taking values in ''n''th roots of unity. More generally there is a similar Weil ...
) over
elliptic curves In mathematics, an elliptic curve is a Smoothness, smooth, Projective variety, projective, algebraic curve of Genus of an algebraic curve, genus one, on which there is a specified point . An elliptic curve is defined over a field (mathematics), ...
and
finite fields In mathematics, a finite field or Galois field (so-named in honor of Évariste Galois) is a field that contains a finite number of elements. As with any field, a finite field is a set on which the operations of multiplication, addition, subt ...
.


Groups and parameters

As the scheme is based upon pairings, all computations are performed in two groups, \textstyle G_1 and \textstyle G_2: For \textstyle G_1, let \textstyle p be prime, \textstyle p \equiv 2 \mod 3 and consider the
elliptic curve In mathematics, an elliptic curve is a smooth, projective, algebraic curve of genus one, on which there is a specified point . An elliptic curve is defined over a field and describes points in , the Cartesian product of with itself. If the ...
\textstyle E: y^2 = x^3 + 1 over \textstyle \mathbb/p\mathbb. Note that this curve is not singular as \textstyle 4a^3+27b^2 = 27 = 3^3 only equals \textstyle 0 for the case \textstyle p = 3 which is excluded by the additional constraint. Let \textstyle q > 3 be a prime factor of \textstyle p + 1 (which is the order of \textstyle E) and find a point \textstyle P \in E of order \textstyle q. \textstyle G_1 is the set of points generated by \textstyle P: \textstyle \left\ \textstyle G_2 is the subgroup of order \textstyle q of \textstyle GF\left(p^2\right)^*. We do not need to construct this group explicitly (this is done by the pairing) and thus don't have to find a generator. \textstyle G_1 is considered an
additive group An additive group is a group of which the group operation is to be thought of as ''addition'' in some sense. It is usually abelian, and typically written using the symbol + for its binary operation. This terminology is widely used with structu ...
, being a subgroup of the additive group of points of \textstyle E, while \textstyle G_2 is considered a
multiplicative group In mathematics and group theory, the term multiplicative group refers to one of the following concepts: *the group under multiplication of the invertible elements of a field, ring, or other structure for which one of its operations is referre ...
, being a subgroup of the multiplicative group of the finite field \textstyle GF(p^2)^*.


Protocol description


Setup

The public key generator (PKG) chooses: # the public groups \textstyle G_1 (with generator \textstyle P) and \textstyle G_2 as stated above, with the size of \textstyle q depending on security parameter \textstyle k, # the corresponding pairing \textstyle e, # a random private master-key \textstyle K_m = s \in \mathbb_q^*, # a public key \textstyle K_ = sP, # a public hash function \textstyle H_1: \left\^* \rightarrow G_1^*, # a public hash function \textstyle H_2: G_2 \rightarrow \left\^n for some fixed \textstyle n and # the message space and the cipher space \textstyle \mathcal = \left\^n, \mathcal = G_1^* \times \left\^n


Extraction

To create the public key for \textstyle ID \in \left\^*, the PKG computes # \textstyle Q_ = H_1\left(ID\right) and # the private key \textstyle d_ = sQ_ which is given to the user.


Encryption

Given \textstyle m \in \mathcal, the ciphertext \textstyle c is obtained as follows: # \textstyle Q_ = H_1\left(ID\right) \in G_1^*, # choose random \textstyle r \in \mathbb_q^*, # compute \textstyle g_ = e\left(Q_, K_\right) \in G_2 and # set \textstyle c = \left(rP, m \oplus H_2\left(g_^r\right)\right). Note that \textstyle K_ is the PKG's public key and thus independent of the recipient's ID.


Decryption

Given \textstyle c = \left(u, v\right) \in \mathcal, the plaintext can be retrieved using the private key: \textstyle m = v \oplus H_2\left(e\left(d_, u\right)\right)


Correctness

The primary step in both encryption and decryption is to employ the pairing and \textstyle H_2 to generate a mask (like a symmetric key) that is xor'ed with the plaintext. So in order to verify correctness of the protocol, one has to verify that an honest sender and recipient end up with the same values here. The encrypting entity uses \textstyle H_2\left(g_^r\right), while for decryption, \textstyle H_2\left( e\left(d_, u\right) \right) is applied. Due to the properties of pairings, it follows that: \begin H_2\left( e\left(d_, u\right) \right) &= H_2\left( e\left(sQ_, rP\right) \right) \\ &= H_2\left( e\left(Q_, P\right)^ \right) \\ &= H_2\left( e\left(Q_, sP\right)^r \right) \\ &= H_2\left( e\left(Q_, K_\right)^r \right) \\ &= H_2\left( g_^r \right) \\ \end


Security

The security of the scheme depends on the hardness of the bilinear Diffie-Hellman problem (BDH) for the groups used. It has been proved that in a random-oracle model, the protocol is
semantically secure In cryptography, a semantically secure cryptosystem is one where only negligible information about the plaintext can be feasibly extracted from the ciphertext. Specifically, any PP (complexity), probabilistic, polynomial-time algorithm (PPTA) that ...
under the BDH assumption.


Improvements

BasicIdent is not chosen ciphertext secure. However, there is a universal transformation method due to Fujisaki and
Okamoto is the 48th most common Japanese surname. Notable people with the surname include: *, Japanese fashion model and actress *, professional Nippon Professional Baseball player *, Japanese actress and voice actress *, Japanese professional golfer *, ...
Eiichiro Fujisaki, Tatsuaki Okamoto, "Secure Integration of Asymmetric and Symmetric Encryption Schemes", ''Advances in Cryptology – Proceedings of CRYPTO 99'' (1999). Full version appeared in J. Cryptol. (2013) 26: 80–101 that allows for conversion to a scheme having this property called FullIdent.


References


External links


Seminar 'Cryptography and Security in Banking'/'Alternative Cryptology', Ruhr University Bochum

P(airing) B(ased) C(ryptography) library, designed by Ben Lynn et al.
{{DEFAULTSORT:Boneh Franklin Scheme Public-key encryption schemes Pairing-based cryptography Identity-based cryptography Elliptic curve cryptography