1. Introduction
After been introduced by Fiat and Naor [1] , broadcast encryption (BE) is widely studied and improved. BE allows a sender to broadcast its message to a set of receivers in a single ciphertext. Compared with generating individual ciphertext for each of receivers, BE scheme is much efficient in terms of storage and computation. Due to the advantages, BE scheme is widely used in many applications, such as TV services [2] , Cloud Storage [3] , Emails [4] and so on. In order to eliminate the complicated certificate management of BE scheme in traditional public key setting, Baek et al. extended BE into identity-based setting and proposed the first identity-based broadcast encryption (IBBE) scheme [5] .
Instead of using receivers’ public keys, the sender can encrypt its message under receivers’ identity set in IBBE scheme. This eliminates traditional public key infrastructure (PKI) for managing user’s public key. This scheme brings convenience, but the efficiency is not practical since the ciphertext size is related to size receiver set. To solve this problem, Delerablée proposed the first constant size ciphertext IBBE scheme [6] . After that, Gentry et al. focused on the security of IBBE scheme and proposed the first IND-CAP secure IBBE scheme in standard model [7] . Their scheme also has short ciphertext. In 2016, He et al. proposed an efficient IBBE scheme which achieves anonymous and IND-CCA security simultaneously [8] . The ciphertext size of their scheme is not constant. However, due to their promising construction, the running time of decryption of their scheme is almost constant.
Although BE and IBBE schemes have many advantages for practical applications, it is still not enough for variety of applications. Now we consider a subscription system. The service provider encrypts its different kinds of messages under corresponding subscribers’ identity sets and sends ciphertexts through networks. For one receiver, who subscribes two different messages, it must receive two ciphertexts and decrypt them respectively.
However, in some scenarios, these two messages should be calculated into one. If the network devices, such as a gateway or a fog node, can calculate ciphertexts and transforms them into a new one without decrypting them, the communication cost will be significantly reduced. Unfortunately, there is still no concrete identity-based homomorphic broadcast encryption construction.
In this paper, we propose present the formally definition of identity-based homomorphic broadcast encryption (IBHBE). Then we give a concrete construction based on [8] . The proposed scheme is formally proved for correctness and security, which achieves IND-CPA security in random oracle model. Finally, we also show that our scheme is efficient for practical applications.
The remainder of the paper is organized as followed. In Section 2, we review the preliminaries used in this paper. Then we propose our IBHEB construction and prove the correctness and security in Section 3. The performance evaluation is given in Section 5. Finally, we conclude this paper in Section 5.
2. Preliminaries
2.1. Bilinear Maps
On defining a group generator
, it takes a security parameter and outputs a description of a bilinear map group
, where p is a prime,
and
are multiplicative cyclic groups of order p, and e is a map
, such that:
• Bilinearity: For all
and
, there has
.
• Non-degeneracy: For any generator g of
,
.
• Computability:
, there exists an efficient algorithm to compute
.
2.2. Decisional Bilinear Diffie-Hellman Problem
The decisional bilinear Diffie-Hellman (DBDH) problem is defined as follows.
Definition 1. (Decisional Bilinear Diffie-Hellman Problem). Given a group generator
, and its output
. For
, a generator g of
and
, define whether
or not. For a probabilistic polynomial time (PPT) adversary
, the advantage of solving the DBDH problem is:
where
.
We say the DBDH problem holds in bilinear map
if for any PPT adversary, the advantage of solving DBDH problem
is negligible.
2.3. Identity-Based Homomorphic Broadcast Encryption
An identity-based homomorphic broadcast encryption (IBHBE) scheme is an identity-based encryption, which supports a set of receivers to decrypt ciphertext. Suppose that the message space is
, an identity-based broadcast encryption has four probability polynomial time (PPT) algorithms and one protocol:
• Setup (
). It takes input a security parameter
, and outputs the public parameter pp and a master secret key msk.
• Extract (msk, ID). It takes input a master secret key msk and an identity ID, and outputs a private key
.
• Encrypt (pp, S, m). It takes input the public parameter pp, a receiver set S, and a message m, and outputs a ciphertext CT.
• Decrypt (pp, skID, CT). It takes input the public parameter pp, a secret key
, and a ciphertext CT, and outputs a message m.
• Eval (pp, CT0, CT1). By interacting with a receiver with identity
, any entity can use the evaluation protocol to a helper value t for these two ciphertexts. Then the entity can use the helper value to calculate the two ciphertext into a new one, which is a valid ciphertext of the corresponding operation result of the two plaintexts of ciphertext.
Correctness. For all identity sets
, messages
, identity ID, if
,
,
, and
, there has
• If
, then
.
• If
, then
.
Security Model of IBBE. We consider IBBE under IND-CPA security model, which is captured in the following game (Figure 1).
Note that, in Challenge step, the adversary cannot choose a receiver set
which contains any identity is queried in Phase 1. Similarly, in Phase 2, the adversary cannot launch Extraction Query on any identity belonged to the receiver set
or any Helper Value Query on the challenge ciphertext.
Definition 2. We say an IBBE scheme
is IND-CPA secure, if for any probabilistic polynomial time (PPT) adversary
, the advantage to win the IND-CPA Game
is negligible; where,
(1)
3. Identity-Based Homomorphic Broadcast Encryption
In this section, we first introduce our identity-based homomorphic broadcast encryption. Then we give the correctness and security proofs of the construction.
3.1. Our Construction
Our IBHBE scheme contains four PPT algorithm and a one-round protocol.
• Setup (λ): The algorithm takes input a security parameter
, and outputs a bilinear map
. Here, p is a prime number,
and
are p order multiplicative cyclic groups, and e is a bilinear map
. Then, it randomly picks generator
and
, computes
. It also defines message space
and two secure hash functions
,
, where q is a prime number. Then it sets the master secret key
and opens the public parameter pp as
.
• Extract (msk, ID): For a system user with identity ID, the algorithm generates the user’s secret key as
.
• Encrypt (pp, S, m): Any user can run the encryption algorithm. For a message
and a receiver set
, the algorithm first chooses random number
, and computes
. Then for each
, it computes
,
. It computes the expansion formula of
as
. Then the ciphertext is
, where
is a vector,
(2)
• Decrypt (pp, skID, CT): When decrypting ciphertext CT with the secret key
, the algorithm first computes
. Then it sets a vector
as
(3)
Finally, it outputs the message as
.
• Eval (pp, CT0, CT1): Parse
and
as
and
, which are encrypted under identity sets
and
respectively. Then, an external entity, such as a gateway, can generate a new ciphertext for a specified receiver with identity
. This protocol is shown in Figure 2. Here, the operation
means the hadamard product of two vectors.
.
3.2. Correctness Proof
As claimed in Section 2.3, the correctness of our IBHBE scheme has two aspects. Next we give the detailed proof.
Proof. The correctness proof is described as follows.
• For the first aspect, the condition to decrypt a ciphertext under identity set
is that the receiver can computer a valid value x equaled one of
. When a receiver with identity ID tries to decrypt a ciphertext
encrypted under identity set
, it computes
If
, the value
must be one of
to construct
. Then we have
• Now we consider the second aspect. Suppose two ciphertexts
are encrypted under two identity sets
. If the receiver’s identity ID is in
, then it can compute
and
which can be used to decrypt
and
respectively. Suppose the new ciphertext output from evaluation protocol is
. The receiver first computes
, then decrypts the ciphertext by calculating
Then we finish the correctness proof of our IBHBE scheme construction.
3.3. Security Proof
In this section, we give the formalized security proof of our IBHBE scheme under random oracle model.
Theorem 1. Suppose H1 and H2 are random oracles, and the DBDH problem holds, then our IBHBE construction is IND-CPA secure.
Proof. Suppose there exists a PPT adversary
has non-negligible advantage to win the IND-CAP game, then an other PPT adversary
can use
’s ability to break the DBDH problem.
Note that, the first part of a valid ciphertext is a mask value of a valid ciphertext of Boneh and Franklin’s identity-based encryption scheme [9] . Since the scheme [9] is IND-CPA secure against PPT adversary, then the no one can distinguish random values between tis, which are used to construct the function
.
Now we focus on the elements of
. We have
. As we already know
is indistinguishable from random number. Therefore, no one can restore even one-bit information of m from
since
is also random.
4. Performance
In this section, we give the performance experiments of our construction. All the programs were executed on a personal laptop equipped with Ubuntu 16.04 operation system, Inter(R) Core(TM) i5-8200 CPU @ 2.5 GHz processor and 8G DDR3-RAM. A 1000 Mbps LAN is used to support the evaluation protocol. The programs are implemented with java (JDK 1.8) and jPBC library [10] . We set security parameter with
, choose bilinear group with a 160-bit, and
. All experiment results are averaged over 1000 runs.
We first estimate the encryption and decryption algorithm with setting identity set size from 10 to 100. The result shown in Figure 3(a) indicates that the
(a) (b)
Figure 3. Experimental results. (a) Running time of enc and Dec protocol; (b) Running time of eval protocol.
decryption algorithm is constant complexity and the encryption algorithm is linearly dependent with the size of identity set. The result also indicates that our scheme is efficient since the running time of encrypting a message under 50 receivers set is also less than 1 second.
Then we demonstrate the evaluation protocol. As shown in Figure 3(b), the running time of evaluation protocol is related to the max size of two identity sets of ciphertexts. However, it is easy to learn from the result that the growth rate of the running time is very low. The running time of two identity sets up to 10 is less than 125 ms and it is less than 225 ms when identity sets up to 100. This result shows that the evaluation protocol is very efficient and has some complexity since heavy operations, i.e. bilinear pairing, do not increase with the size of receiver sets.
5. Conclusions
In this paper, we propose an identity-based homomorphic broadcast encryption scheme. In this IBHBE scheme, an external entity can transform two ciphertext into one new ciphertext without decrypting them, which can be decrypt by a receiver who belongs to the two receiver sets of the two ciphertexts. We also give formal proofs to prove that our scheme is correct and secure. The performance experiments show that our scheme is efficient for practical applications.
In our scheme, the evaluation on ciphertexts needs interactive between the executor and the receiver. Besides, our scheme is proved in random oracle model, which is an ideal model. Therefore, we leave an open problem here: how to construct a non-interactive IBHBE scheme in standard model?
Acknowledgements
We thank for editors and reviewers’ valuable comments.