Abstract
Anonymous identity-based encryption (AIBE) is an extension of identity-based encryption (IBE) that enhances the privacy of a ciphertext by providing ciphertext anonymity. In this paper, we introduce the concept of revocable IBE with anonymous revocation (RIBE-AR), which can issue an update key and hide the revoked set of the update key that efficiently revokes private keys of AIBE. We first define the security models of RIBE-AR and propose an efficient RIBE-AR scheme in bilinear groups. Our RIBE-AR scheme is similar to the existing RIBE scheme in terms of efficiency, but it is the first RIBE scheme to provide additional ciphertext anonymity and revocation privacy. We show that our RIBE-AR scheme provides selective message privacy, selective identity privacy, and selective revocation privacy.
MSC:
94A60
1. Introduction
An anonymous identity-based encryption (AIBE) scheme that provides ciphertext anonymity is an extension of an identity-based encryption (IBE) scheme that uses an identity string as a public key and strengthens the privacy of a ciphertext by providing anonymity for the recipient’s identity, which is included in the ciphertext. The first IBE scheme was proposed by Boneh and Franklin using pairing [1], and their IBE scheme was later found to provide anonymity [2]. Because an AIBE scheme can provide ciphertext anonymity in communication between users, it can be a very useful tool in fully private communication environments [2,3]. In addition, an AIBE scheme can also be used for a searchable public-key encryption scheme, which is a new type of public key encryption that allows searching keywords in encrypted data [4,5].
How to effectively revoke the private key is a very important issue when managing the private key of a user in a public-key system. One way to handle the revocation of private keys in an AIBE scheme is to periodically issue an update key similar to a revocable IBE (RIBE) scheme, which efficiently revokes the private key of an IBE scheme [6]. In the RIBE scheme, each user who has a private key periodically obtains an update key issued by a trusted center. When a sender creates a ciphertext associated with a receiver identity and current time T for a receiver, the receiver can decrypt the ciphertext by combining his private key with an update key at that time. If the private key of the receiver is not revoked in the update key, the receiver can derive a valid decryption key to decrypt the ciphertext. However, in this revocation method, since the update key exposes the revoked set R of users, there is a problem in that the anonymity of the ciphertext can be breached by using this revoked set in the update key since the receiver identity of the ciphertext will not belong to the revoked set.
In this paper, we would like to solve the problem of designing an RIBE scheme that supports the efficient revocation of user private keys in an AIBE scheme, which provides anonymity of ciphertext, while not revealing additional revoked information of users in an update key.
1.1. Our Contributions
We first introduce RIBE with revocation privacy (RIBE-AR), which provides ciphertext anonymity and revocation privacy, and define three security models of RIBE-AR. The syntax of RIBE-AR is almost identical to the syntax of RIBE. In other words, a ciphertext is associated with an identity and time T, a private key is associated with an identity , and an update key is associated with a revocation set R and time T. As for the security model, the existing RIBE defines only message privacy, which is indistinguishability against chosen-plaintext attacks (IND-CPA), but the RIBE-AR defines three security models: message privacy (IND-CPA), identity privacy (anonymity against chosen-plaintext attacks, ANO-CPA), and revocation privacy (REV-PRV). The IND-CPA security guarantees that the message M of a ciphertext is hidden as before, and the ANO-CPA security model guarantees that the identity of a ciphertext is hidden. Lastly, the REV-PRV security model guarantees that the revocation set R of an update key is hidden.
Next, we propose an RIBE-AR scheme that provides ciphertext anonymity and revocation privacy in asymmetric bilinear groups and prove the security of our scheme. In order to devise an RIBE-AR scheme that provides ciphertext anonymity only, we first constructed a basic RIBE scheme by combining an AIBE scheme, an IBE scheme, and a tree-based broadcast encryption scheme. However, this basic RIBE scheme derived in this way does not hide the revocation set of an update key. To provide revocation privacy, we additionally encrypt all node update keys in the update key by using a symmetric-key encryption scheme and provide hint values to quickly search for matching nodes. Compared with the existing RIBE scheme, our RIBE-AR scheme has similar efficiency in terms of private key size and update key size, but it requires slightly increased computation in the decryption key derivation. The detailed comparison of RIBE schemes is given in Table 1. Finally, we show that our RIBE-AR scheme satisfies the selective IND-CPA security, the selective ANO-CPA security, and the selective REV-PRV security.
Table 1.
Comparison of RIBE schemes in bilinear groups.
1.2. Our Techniques
The well-known method of designing an RIBE scheme using IBE schemes is to combine two IBE schemes and the complete subtree (CS) method [6]. At this time, the private key of the RIBE scheme is composed of IBE private keys corresponding to the path nodes of a binary tree, and the update key of the RIBE scheme is composed of IBE private keys corresponding to the cover nodes that include non-revoked leaf nodes in the binary tree. The main advantages of this approach to build an RIBE scheme are that a sender can create a ciphertext without knowing revoked users, and the size of an update key periodically issued by a center does not increase linearly with the number of non-revoked users.
Our RIBE-AR scheme also employs this methodology to design the existing RIBE scheme. At this time, we combine an AIBE scheme, an IBE scheme, and the CS method to provide ciphertext anonymity. We modify the AHIBE scheme proposed by Ducas [11] as the underlying AIBE scheme to allow private key randomization and use the IBE scheme of Boneh and Boyen [12] as the underlying IBE scheme. However, this basic RIBE scheme, which simply combines AIBE and IBE schemes with the CS method, does not provide revocation privacy. The reason is that since an update key is publicly known, if we check which update key node is used for decryption in the process of deriving a decryption key by combining the update key and a private key, we can derive a matching node in the update key, which can be used to distinguish revocation sets.
To ensure revocation privacy, we encrypt each node update key in an update key by using symmetric key encryption. To do this, we set each node in a binary tree to have a symmetric key and encrypt the corresponding node update key with the key . We also randomly mix all node update keys included in the update key so that additional information of tree nodes is not exposed. In order to decrypt the encrypted node update key, we set each node private key associated with a node in a private key to have a symmetric key . If the node private key of and the node update key of relate to the same node , then we can decrypt the encrypted with included in and check the correctness of the decryption. However, this method has the disadvantage of being too slow in deriving a decryption key because all possible combinations of all node private keys and all node update keys should be attempted.
In order to quickly derive a decryption key, we include hint values that allow checking for matching nodes in each node update key. For reference, this method of using hints has already been used in anonymous broadcast encryption schemes [13,14]. To use hint values, the node private key of a private key includes a random associated with a node , and the node update key of an update key also includes a hint element associated with a node where the element V is a unique random element for each update key. In this case, a receiver who owns a private key has exponent values corresponding to the path nodes of a binary tree, and uses the element V of the update key to derive elements . Afterwards, the receiver can quickly find a matching node by comparing these derived elements with the hint values included in node update keys of an update key. Note that an attacker who has access to only a limited set of revoked private keys will not be able to distinguish revoked sets even if he obtains hint values.
1.3. Related Work
IBE and AIBE. An identity-based encryption (IBE) scheme was first proposed by Boneh and Franklin in bilinear groups [1], and the security of their scheme was proven under the BDH assumption. The BF-IBE scheme is also the first anonymous IBE (AIBE) scheme that provides ciphertext anonymity by hiding the identity of a ciphertext [2]. Boyen proposed an identity-based sign/encryption (IBSE) scheme with ciphertext anonymity by modifying the BF-IBE scheme [15]. An AIBE scheme can be used for the construction of a public-key encryption with keyword search (PEKS) scheme that supports keyword searches on encrypted data [4,5]. The first AIBE and anonymous HIBE schemes without random oracles were proposed by Boyen and Waters under the decision linear assumption [3]. Gentry also proposed an AIBE scheme without random oracles using a strong q-type assumption [16]. Ducas proposed AIBE and anonymous HIBE schemes using asymmetric bilinear groups [11]. The first lattice-based IBE scheme proposed by Gentry et al. is also an AIBE scheme because it provides anonymity [17]. Both hidden-vector encryption and inner-product encryption schemes, which are extensions of IBE, can be easily converted to AIBE schemes through simple conversion [18,19].
Revocable IBE. Boneh and Franklin first noticed the private key revocation problem of IBE and proposed a revocation method of periodically reissuing private keys [1]. However, this method has the disadvantage that the private key reissuing increases in proportion to the number of users because each individual user must be issued a new private key periodically. Boldyreva et al. proposed a different method in which a trusted center periodically generates an update key and broadcasts it for non-revoked users [6]. This method has the advantage that the update key size does not proportionally increase depending on the number of users because it uses a tree-based broadcast encryption scheme. Seo and Emura updated the previous security model of RIBE schemes by allowing the decryption key queries of an adversary [8]. Lee et al. proposed an efficient RIBE scheme with an improved update key size by using the subset difference method instead of the previous complete subtree method [9]. Many additional studies have been conducted to improve the security or efficiency of RIBE schemes [7,10,20,21]. Another research direction is being conducted on RHIBE schemes that can efficiently handle the revocation of the private key in HIBE schemes by using similar methods of the RIBE scheme [22,23,24]. Recently, generic conversion methods of designing RIBE or RHIBE schemes using IBE or HIBE schemes in a black-box way have been proposed [25,26,27], but these approaches are somewhat inefficient compared with direct design approaches.
2. Preliminaries
In this section, we review pseudo-random functions, symmetric-key encryption, and the complete subtree method, which is one instance of the subset cover framework.
2.1. Pseudo-Random Function
A pseudo-random function (PRF) is an efficiently computable function where is the key space, is the domain, and is the range. Let be an oracle for a uniformly chosen and be an oracle for a uniformly chosen function . We say that a PRF is secure if for all probabilistic polynomial-time adversaries the advantage is negligible.
2.2. Symmetric-Key Encryption
Symmetric-key encryption (SKE) is an encryption method in which the sender and receiver use the same symmetric key for encryption and decryption. The syntax of SKE is defined as follows.
Definition 1
(Symmetric-Key Encryption, SKE). A symmetric-key encryption (SKE) scheme consists of three algorithms GenKey, Encrypt, and Decrypt, which are defined as follows:
- GenKey(). The key generation algorithm takes as input a security parameter λ. It outputs a symmetric key K.
- Encrypt(). The encryption algorithm takes as input a message and the symmetric key K. It outputs a ciphertext C.
- Decrypt(). The decryption algorithm takes as input a ciphertext and the symmetric key K. It outputs a message M or a symbol ⊥.
The correctness of the SKE scheme is defined as follows: For all K generated by GenKey and any message , it is required that .
In general, the indistinguishability against chosen-plaintext attacks (IND-CPA) security model of the SKE scheme allows multiple challenge ciphertext queries, but we use a simple security model that allows only one challenge ciphertext query. Note that an SKE scheme, which is IND-CPA secure for the model that allows multiple challenge ciphertext queries, is naturally guaranteed to be IND-CPA secure, even for the simple model that allows one challenge ciphertext query.
Definition 2
(Message Privacy, IND-CPA). The IND-CPA security of SKE is defined in the following experiment between a challenger and a PPT adversary :
- Setup: generates a symmetric key K by running . It keeps K to itself.
- Phase 1: adaptively request a polynomial number of encryption queries. For each encryption query for a message M, generates a ciphertext by running and gives to .
- Challenge: submits challenge messages where . flips a random coin and gives a challenge ciphertext to by running .
- Phase 2: may continues to request additional encryption queries and handles these queries as the same as the phase 1.
- Guess: outputs a guess of μ. outputs 1 if or 0 otherwise.
The advantage of is defined as . An SKE scheme is IND-CPA secure if for all PPT adversary , the advantage of is negligible in the security parameter λ.
The key privacy (KEY-PRV) security model of SKE is that an attacker cannot distinguish which of the two symmetric keys and is used for encryption. We use a simple security model that allows one challenge ciphertext query by modifying the definition of Bellare et al. [28] for PKE into the definition for SKE.
Definition 3
(Key Privacy, KEY-PRV [28]). The KEY-PRV security of SKE is defined in the following experiment between a challenger and a PPT adversary :
- Setup: generates symmetric keys by running . It keeps to itself.
- Phase 1: adaptively request a polynomial number of encryption queries. For each encryption query for a message M and a choice , generates a ciphertext by running and gives to .
- Challenge: submits a challenge message . flips a random coin and gives a challenge ciphertext to by running .
- Phase 2: may continues to request additional encryption queries and handles these queries as the same as the phase 1.
- Guess: outputs a guess of μ. outputs 1 if or 0 otherwise.
The advantage of is defined as . An SKE scheme is KEY-PRV secure if for all PPT adversary , the advantage of is negligible in the security parameter λ.
2.3. The Complete Subtree Method
The complete subtree (CS) method is one instance of the subset cover revocation framework of Naor et al. [29]. The simplified CS method is given as follows:
- :
- Let N be the number of all users where for simplicity. It sets a perfect binary tree of depth n. Each user is assigned to a different leaf node in . It outputs the binary tree .
- :
- Let v be a leaf node assigned to a user. Let be the path from the root node to the leaf node . It initializes a private set . For all , it adds into . It outputs the private set .
- :
- Let R be a set of revoked users which consists of leaf nodes. It computes the Steiner tree . Let be all the subtrees of that hang off , that is all subtrees whose roots are not in but adjacent to nodes of outdegree 1 in . It initializes a cover set . For all , it adds into . It outputs the cover set .
- :
- It finds a common node with and . If there exists a common node, it outputs . Otherwise, it outputs ⊥.
The correctness of the CS scheme requires that if , then for the same where and are associated with R and v, respectively.
3. Anonymous RIBE with Anonymous Revocation
In this section, we define the syntax and security models of RIBE-AR that provides message privacy, identity privacy, and revocation privacy.
3.1. Definition
Revocable IBE with anonymous revocation (RIBE-AR) is an extension of IBE and supports the revocation of user private keys through the issuance of update keys [6]. In an RIBE-AR scheme, a trusted center creates a user’s private key using the master key and status information and maintains a revocation list. If the private key of a user is revealed or expires, then the trusted center updates the revocation list by including the identity of the revoked user. And the trusted center periodically issues an update key using the revocation list and broadcasts it for non-revoked users. A sender creates a ciphertext by specifying the identity of a recipient and current time. A receiver can derive a decryption key by combining his private key with the update key if his private key is not revoked in the update key. By using the decryption key, the recipient can decrypt the corresponding ciphertext. The more detailed syntax of RIBE is given as follows.
Definition 4
(RIBE with Anonymous Revocation, RIBE-AR). An RIBE-AR scheme consists of seven algorithms Setup, GenKey, UpdateKey, DeriveKeyEncrypt, Decrypt, and Revoke, which are defined as follows:
- : The setup algorithm takes as input a security parameter and the maximum number of users N. It outputs a master key , an (empty) revocation list , and public parameters .
- : The private key generation algorithm takes as input an identity , the master key , and public parameters . It outputs a private key .
- : The update key generation algorithm takes as input update time , the revocation list , the master key , and public parameters . It outputs an update key .
- : The decryption key derivation algorithm takes as input a private key , an update key , and public parameters . It outputs a decryption key .
- : The encryption algorithm takes as input an identity , time T, a message , and public parameters . It outputs a ciphertext .
- : The decryption algorithm takes as input a ciphertext , a decryption key , and public parameters . It outputs a message M.
- : The revocation algorithm takes as input an identity to be revoked and revocation time T, and a revocation list . It outputs an updated revocation list .
The correctness of RIBE-AR is defined as follows: For all , , and generated by , generated by for any , generated by for any T and such that for all , generated by for , T, and M, it is required that
- .
3.2. Security Model
The selective IND-CPA security model of RIBE-AR is an extension of the selective IND-CPA security model of IBE that allows the revocation of private keys [6,8]. In this model, an attacker first submits the challenge identity and challenge time and receives public parameters. Afterwards, the attacker can request private key, update key, decryption key, and revocation queries that satisfy some restrictions to prevent trivial attacks. In the challenge phase, the attacker submits challenge messages and receives a challenge ciphertext for and that encrypts or . The attacker can then make additional queries and succeed if he correctly guesses the challenge ciphertext message. The detailed definition of this security model is given as follows:
Definition 5
(Message Privacy, SE-IND-CPA). The selective IND-CPA (SE-IND-CPA) security of RIBE-AR is defined in terms of the following experiment between a challenger and a PPT adversary :
- Init: submits a challenge identity and challenge time .
- Setup: generates a master key , a revocation list , a state , and public parameters by running . It initializes a current time period and gives to .
- Phase 1: adaptively request a polynomial number of queries. handles these queries as follows:
- Private key query for an identity : It checks that if , then for some . It generates by running and gives to .
- Update key query: It generates by running , sets , and gives to .
- Decryption key query for an identity and time T: It checks that and . It generates by running and gives to .
- Revocation query for an identity : It updates by running .
- Challenge: submits two challenge messages with equal length. flips random . It obtains a challenge ciphertext by running and gives to .
- Phase 2: may continue to request additional queries. handles these queries as the same as the phase 1.
- Guess: Finally, outputs a guess , and wins the game if .
The advantage of is defined as where the probability is taken over all the randomness of the experiment. An RIBE-AR scheme is SE-IND-CPA secure if for all PPT adversary , the advantage of is negligible in the security parameter λ.
The selective ANO-CPA security model of RIBE-AR is an extension of the selective ANO-CPA security model of AIBE to allow the revocation of private keys. In this model, an attacker first submits challenge identities and challenge time and receives public parameters. Afterwards, the attacker can request private key, update key, decryption key, and revocation queries that satisfy some restrictions to prevent trivial attacks. In the challenge phase, the attacker submits a challenge message and receives a challenge ciphertext encrypted with or for and . The attacker can then make additional queries and succeed by correctly guessing the challenge identity in the challenge ciphertext. The detailed definition of this security model is given as follows:
Definition 6
(Identity Privacy, SE-ANO-CPA). The selective ANO-CPA (SE-ANO-CPA) security of RIBE-AR is defined in terms of the following experiment between a challenger and a PPT adversary :
- Init: submits two challenge identities and challenge time .
- Setup: generates a master key , a revocation list , a state , and public parameters by running . It initializes a current time period and gives to .
- Phase 1: adaptively request a polynomial number of queries. handles these queries as follows:
- Private key query for an identity : It checks that if for some , then for some . It generates by running and gives to .
- Update key query: It generates by running , sets , and gives to .
- Decryption key query for an identity and time T: It checks that for all and . It generates by running and gives to .
- Revocation query for an identity : It updates by running .
- Challenge: submits a challenge message . flips random . It obtains a challenge ciphertext by running and gives to .
- Phase 2: may continue to request additional queries. handles these queries as the same as the phase 1.
- Guess: Finally, outputs a guess , and wins the game if .
The advantage of is defined as where the probability is taken over all the randomness of the experiment. An RIBE-AR scheme is SE-ANO-CPA secure if for all PPT adversary , the advantage of is negligible in the security parameter λ.
The selective REV-PRV security of RIBE-AR models ensures that external users who only have revoked private keys cannot obtain revocation information from update keys. In this model, an attacker first submits challenge revocation sets and challenge time and receives public parameters. Afterwards, the attacker can request private key, update key, decryption key, and revocation queries that satisfy some restrictions. One restriction is that an attacker can only query private keys belonging to . In the challenge phase, the attacker receives a challenge update key for or . Afterwards, the attacker can make additional queries and finally succeed if he can guess the revoked set of the challenge update key. The detailed definition of this security model is given as follows:
Definition 7
(Revocation Privacy, SE-REV-PRV). The selective REV-PRV (SE-REV-PRV) security of RIBE-AR is defined in terms of the following experiment between a challenger and a PPT adversary :
- Init: submits two challenge revoked sets and challenge time such that .
- Setup: generates a master key , a revocation list , a state , and public parameters by running . It initializes a current time period and gives to .
- Phase 1: adaptively request a polynomial number of queries. handles these queries as follows:
- Private key query for an identity : It checks that . It generates by running and gives to .
- Update key query: It checks that . It generates by running , sets , and gives to .
- Decryption key query for an identity and time T: It checks that . It generates by running and gives to .
- Revocation query for an identity : It updates by running .
- Challenge: flips random and proceeds as follows:
- (a)
- For each , it updates by adding if for some .
- (b)
- It obtains a challenge update key by running . It sets and gives to .
- Phase 2: may continue to request additional queries. handles these queries as the same as the phase 1.
- Guess: Finally, outputs a guess , and wins the game if .
The advantage of is defined as where the probability is taken over all the randomness of the experiment. An RIBE-AR scheme is SE-REV-PRV secure if for all PPT adversary , the advantage of is negligible in the security parameter λ.
Remark 1.
The selective REV-PRV security model we defined is a weak security model because it considers outsider attackers that only query private keys belonging to (private keys of revoked users). A stronger security model is to consider inside attackers that can query private keys belonging to (private keys of non-revoked users) as well as (private keys of revoked users) where is the set of all users. However, our RIBE-AR scheme in this paper only satisfies this weak security model.
4. Construction from Bilinear Maps
In this section, we propose an anonymous RIBE-AR scheme that provides revocation privacy in bilinear groups.
4.1. Bilinear Groups
A bilinear group generator takes as input a security parameter and outputs a tuple where p is a random prime and , and be three cyclic groups of prime order p. Let g and be generators of and , respectively. The bilinear map has the following properties:
- Bilinearity: and , .
- Non-degeneracy: such that has order p in .
We say that are asymmetric bilinear groups with no efficiently computable isomorphisms if the group operations in , and as well as the bilinear map e are all efficiently computable, but there are no efficiently computable isomorphisms between and .
4.2. Complexity Assumptions
In this section, we introduce complexity assumptions for the security proof of our RIBE scheme.
Assumption 1
(Decisional Bilinear Diffie–Hellman, DBDH [3]). Let be an asymmetric bilinear group generated by . Let be random generators of , respectively. The decisional bilinear Diffie–Hellman (DBDH) assumption is that if the challenge tuple
are given, no PPT algorithm can distinguish from with more than a negligible advantage. The advantage of is defined as where the probability is taken over random choices of .
Assumption 2
(Decisional eXternal Diffie–Hellman, XDH). Let be an asymmetric bilinear group generated by . Let be random generators of , respectively. The decisional XDH assumption in is that if the challenge tuple
are given, no PPT algorithm can distinguish from with more than a negligible advantage. The advantage of is defined as where the probability is taken over random choices of .
Assumption 3
(Decisional P-Bilinear Diffie–Hellman, PBDH, [11]). Let be an asymmetric bilinear group generated by . Let be random generators of , respectively. The decisional PBDH assumption is that if the challenge tuple
are given, no PPT algorithm can distinguish from with more than a negligible advantage. The advantage of is defined as where the probability is taken over random choices of .
4.3. AIBE and IBE Schemes
We describe AIBE and IBE schemes, which are the basis for the design of our RIBE-AR scheme. The underlying AIBE scheme we describe is a modified key encapsulation mechanism (KEM) version of the AHIBE scheme proposed by Ducas that supports private key re-randomization [11]. And the underlying IBE scheme we described is a modified KEM version of the IBE scheme of Boneh and Boyen [12]. In addition, we added RandKey and ChangeKey algorithms to the existing AIBE and IBE schemes to enable private key randomization and master-key part randomization in private keys. Using this modification, our RIBE-AR scheme can be simply described by using the AIBE and IBE schemes in a modular way.
The AIBE scheme for from the AHIBE scheme of Ducas is described as follows:
- :
- Let be the description of a bilinear group with generators . It selects random exponents and sets . It chooses a random exponent and outputs a master key , master parameters , and public parameters .
- :
- It chooses random exponents and outputs a private key with a rand key .
- :
- Let and . It chooses random exponents and outputs a new private key .
- :
- Let . It sets . It outputs a new private key by running .
- :
- It outputs a ciphertext header and a session key .
- :
- Let and . It outputs a session key by calculating .
The IBE scheme for from the IBE scheme of Boneh and Boyen is described as follows:
- :
- Let be the group description string of a bilinear group with a generator . It selects random exponents and sets . It chooses a random exponent and outputs a master key and public parameters .
- :
- It chooses a random exponent and outputs a private key .
- :
- Let . It chooses a random exponent and outputs a randomized private key .
- :
- Let . It sets . It outputs a new private key by running .
- :
- Let t be a random exponent in . It outputs a ciphertext header and a session key .
- :
- Let and . If , then it outputs a session key by computing . Otherwise, it outputs ⊥.
4.4. RIBE-AR Construction
The basic idea of designing our RIBE-AR scheme is to follow the existing design method of combining two IBE schemes and a tree-based revocation system [6,8]. For ciphertext anonymity, we use an AIBE scheme instead of the first IBE scheme. For revocation privacy, we encrypt each node update key in an RIBE-AR update key by using an SKE scheme. At this time, a symmetric key used for the encryption of the node update key is uniquely associated with each node of a binary tree, and an RIBE-AR private key has symmetric keys corresponding to the path nodes of the binary tree. In this case, if a common node is associated with the path node in the private key and the cover nodes in the update key exist, it is possible to decrypt the node update key by using the common symmetric key associated with the common node. However, the algorithm for deriving a decryption key has the problem of being slow since it is needed to try all tree nodes included in the update key. To overcome this, we use an efficient method that can quickly find the matching node by providing hint information in an update key, which was devised for anonymous broadcast encryption [13,14]. Additionally, we randomly mix all node update keys in the update key.
Let PRF be a pseudo-random function for , , and . Let Label be a function that uniquely maps a leaf node to a bit string in . Our RIBE-AR scheme for , , and is described as follows:
- :
- Let be a security parameter and N be the maximum number of users.
- It generates asymmetric bilinear groups of prime order p with two random generators of , respectively. It sets .
- It obtains , and by running . It also obtains and by running . It obtains by running and selects a random PRF key z.
- Finally, it chooses a random exponent and outputs a master key , an empty revocation list , a state , and public parameters .
- :
- Let and .
- It assigns to a random leaf node and obtains a private set by running .
- For , it computes and proceeds as follows: It obtains and by running . It creates a node private key .
- Finally, it sets and outputs a private key .
- :
- Let and .
- It derives a revoked set R on time T from and obtains a cover set by running . Let , , and . It selects a random exponent and sets .
- For , it computes and proceeds as follows: It obtains by running . It computes . It creates a node update key by setting a hint value .
- For , it proceeds as follows: It sets a random by selecting random . It computes by using a random . It creates a node update key by selecting a random .
- Finally, it selects a random permutation and outputs an update key .
- :
- Let and .
- It retrieves from for all and sets a list . It also retrieves from for all and sets a list .
- It finds two indexes and such that in the lists, then it retrieves the corresponding and . Next, it computes .
- It selects a random exponent . It obtains by running . It also obtains by running . Finally, it outputs a decryption key .
- :
- It chooses a random exponent . It obtains and by running . Next it obtains and by running . It outputs a ciphertext .
- :
- Let and . It derives and by running and , respectively. It outputs a decrypted message .
- :
- If is not assigned in , then it outputs ⊥. Otherwise, it updates by adding to .
4.5. Correctness
To show the correctness of the above RIBE-AR scheme, we first show that a decryption key is correctly derived from a private key and an update key . Let for and for where and . If , then . Thus, there exists a node and such that where and . By decrypting with a valid key , is derived. From the RIBE-AR.GenKey and RIBE-AR.UpdateKey algorithms, the master key parts of and are associated with and , respectively. The master key part of derived from AIBE.ChangeKey still associated with and the master key part of derived from IBE.ChangeKey still associated with . Thus the RIBE-AR.DeriveKey algorithm is correct since we have if we add two master key parts of the decryption key.
Next, we show that a message is correctly decrypted by the decryption algorithm. The correctness of the RIBE-AR.Decrypt algorithm can be shown by the correctness of the AIBE.Decaps and IBE.Decaps. That is, we have from the correctness of AIBE and from the correctness of IBE. Thus, the message M can be easily obtained by using these session keys.
4.6. Discussion
Efficiency Analysis. The public parameters, private key, update key, and ciphertext sizes of our RIBE-AR scheme are almost like those of existing efficient RIBE schemes, as shown in Table 1. Our RIBE-AR scheme differs in the computational complexity of its decryption key derivation algorithm compared with existing RIBE schemes. Because the DeriveKey algorithm of our RIBE-AR scheme hides the update key nodes, it requires n additional exponentiation operations and additional comparison operations to find the matching node where , , and N is the maximum number of users. To improve the efficiency of finding a matching node, merge sorting can be used instead of simple comparison operations, allowing the matching node to be found with comparison operations. Note that finding the matching node can be very fast because it only requires comparison operations.
Adaptive Security. Our RIBE-AR scheme is proven secure under the selective model. A better security model than the selective security model is the adaptive security model, where an adversary can select a target at the challenge step. A common approach to converting a selectively secure RIBE-AR scheme into an adaptively secure scheme is for a simulator to predict the attack of the attacker during the initial phase. While this approach can transform a selectively secure scheme into an adaptive one, it suffers from the disadvantage of exponentially degrading the reduction efficiency due to the low probability of the simulator’s guess being successful.
Construction from Lattices. It is possible to design an RIBE-AR scheme that provides revocation privacy based on lattices. A lattice-based RIBE-AR scheme was previously proposed [30,31], but revocation privacy was not provided. To provide revocation privacy, a similar method to our pairing-based RIBE-AR scheme that uses symmetric key encryption to hide node update keys can be used. And to quickly search for tree nodes that match in a private key and an update key, a hint system based on the LWR assumption that does not include noise can be used. A detailed description of the lattice-based RIBE-AR scheme is provided in Appendix A.
5. Security Analysis
In this section, we prove the three security features that our RIBE-AR scheme must satisfy: message privacy, identity privacy, and revocation privacy.
5.1. AIBE and IBE Security
The underlying AIBE scheme in this paper is an AIBE scheme capable of private key re-randomization by modifying the AHIBE scheme of Ducas [11]. For reference, Ducas also described the AIBE scheme, but it is not suitable for the RIBE-AR scheme, which requires decryption key derivation since this AIBE scheme does not support private key re-randomization. The AHIBE scheme of Ducas provides selective IND-CPA security under the DBDH assumption and selective ANO-CPA security under the PBDH assumption.
Theorem 1
([11]). The above AIBE scheme is selectively IND-CPA secure if the DBDH assumption holds.
Theorem 2
([11]). The above AIBE scheme is selectively ANO-CPA secure if the PBDH assumption holds.
The underlying IBE scheme in this paper is a KEM version of the IBE scheme of Boneh and Boyen [12], which provides selective IND-CPA security under the DBDH assumption.
Theorem 3
([12]). The above IBE scheme is selectively IND-CPA secure if the DBDH assumption holds.
5.2. IND-CPA Security
The IND-CPA security proof of our RIBE-AR scheme is almost similar to the IND-CPA security proof of the existing RIBE scheme. In other words, the simulator of the security proof divides attackers into two types: one that does not query the private key corresponding to the challenge identity and another that queries the private key for . And then the simulator handles the simulation of private keys and update keys differently for each type of attacker. To simplify the simulation of the RIBE-AR security proof, we use simulators of the AIBE and IBE schemes as sub-simulators.
Theorem 4.
The above RIBE-AR scheme is SE-IND-CPA secure if the PRF scheme is secure and the DBDH assumption holds.
Proof.
Let be the challenge identity submitted by an adversary. To prove the SE-IND-CPA security of our RIBE-AR scheme, we classify the type of adversaries into two types.
- Type-1.
- An adversary is Type-1 if it does not request a private key for .
- Type-2.
- An adversary is Type-2 if it requests a private key for .
Suppose that an adversary is -type. The security proof for the -type adversary consists of the sequence of hybrid games. We define the games as follows:
- Game .
- This game is the original security game. That is, a simulator obtains for a node by running PRF.
- Game .
- This game is similar to the game except that the PRF is replaced by a truly random function. That is, selects fixed random for a node if is used for the generation of a private key (or an update key).
- Game .
- This final game is similar to the game except the generation of the challenge ciphertext . Let be the challenge ciphertext. In this game , is replaced by a random element in . Note that the advantage of in this game is zero since the challenge ciphertext is not related to .
Let be the advantage of in a game . Let be the event that the adversary behaves like -type. From the Lemmas 1 and 2, we obtain the following equation
This completes our proof. □
Lemma 1.
If the PRF scheme is secure, then no PPT type-τ adversary can distinguish between and with a non-negligible advantage.
Proof.
The proof is relatively straightforward if a simulator that distinguishes whether an oracle is PRF or not simply generates the master key of RIBE-AR by himself. We omit the details of this proof. □
Lemma 2.
If the DBDH assumption holds, then no PPT type-τ adversary can distinguish between and with a non-negligible advantage.
Proof.
Suppose there exists an adversary that attacks the above RIBE-AR scheme with a non-negligible advantage. A meta-simulator that solves the DBDH assumption using is given: a challenge tuple and Z where or . Let be the simulator for AIBE and be the simulator for IBE. Then that interacts with is described as follows:
- Init: initially submits a challenge identity and challenge time . runs by giving D and Z, and runs by giving D and Z.
- Setup: proceeds as follows:
- It submits to and receives . It also submits to and receives .
- It obtains by running . It sets as an empty one and sets . It fixes a random leaf node that will be assigned to .
- If , it sets . Otherwise , it sets .
- It publishes public parameters .
- Phase 1: adaptively requests a polynomial number of private key, update key, and decryption key queries.
- If this is a private key query for an identity , then proceeds as follows:
- Case : In this case, we have and .
- It queries an AIBE private key for to and receives and .
- It assigns to a new leaf node and obtains by running .
- For , it retrieves of the node and performs the steps: It obtains by running . It sets .
- It creates .
- Case : In this case, we have .
- It queries an AIBE private key for to and receives and .
- It assigns to a new leaf node and obtains by running .
- For , it retrieves of the node and performs the steps:
- (a)
- If , then it obtains and by running .
- (b)
- Otherwise (), it obtains by running.
- (c)
- It sets .
- It creates .
- Case : In this case, we have .
- It retrieves the leaf node and obtains by running .
- For , it retrieves of the node and performs the steps: It obtains and by running . It sets .
- It creates .
If this is an update key query for time T, then proceeds as follows:
- Case : In this case, we have .
- It defines a revoked set R on time T from and obtains by running . Let , , and . It sets by selecting a random .
- For , it retrieves of the node and performs the steps: It obtains by running . It computes and sets .
- For , it performs the steps: It sets a random by selecting random elements and computes by using a random key . It selects a random and creates .
- It creates where is a random permutation.
- Case and : In this case, we have .
- It queries an IBE private key for to and receives .
- It defines a revoked set R on time T from obtains by running . Let , , and . It sets by selecting a random .
- For , it retrieves of the node and performs the steps:
- (a)
- If , then it obtains by running .
- (b)
- Otherwise (), it obtains by running .
- (c)
- It computes and sets .
- For , it performs the steps: It sets a random by selecting random elements and computes by using a random key . It selects a random and creates .
- It creates where is a random permutation.
- Case and : In this case, we have since is revoked on time .
- It defines a revoked set on time from and obtains by running . Let , , and . It sets by selecting a random .
- For , it retrieves of the node and performs the steps: It obtains by running . It computes and sets .
- For , it performs the steps: It sets a random by selecting random elements and computes by using a random key . It selects a random and creates .
- It creates where is a random permutation.
If this is a decryption key query for an identity and time T, then proceeds as follows:
- Case : It queries an AIBE private key for to and receives and . It selects a random exponent . It obtains by running . It obtains by running . It creates .
- Case and : It queries an IBE private key for to and receives . It selects a random exponent . It obtains and by running . It obtains by running . It creates .
- If this is a revocation query for an identity and time T, then updates by running .
- Challenge: submits two challenge messages . flips a random bit and proceeds as follows:
- It submits to and receives a challenge and . It also submits to and receives a challenge and .
- It creates and gives it to .
- Phase 2: Same as Phase 1.
- Guess: Finally, outputs a guess . outputs 0 if or 1 otherwise. This completes our proof. □
5.3. ANO-CPA Security
In order to argue the selective ANO-CPA security proof of our RIBE-AR scheme, we first classify attackers into four types. And we use the simulators of AIBE and IBE schemes as sub-simulators to configure an RIBE-AR simulator to easily handle private keys and update keys for individual types of attackers. Then, we play hybrid games that change the elements of an AIBE ciphertext header into random elements, showing that the challenge identity is not revealed in the ciphertext.
Theorem 5.
The above RIBE-AR scheme is SE-ANO-CPA secure if the PRF scheme is secure and the PBDH assumption holds.
Proof.
Let be the challenge identities submitted by an adversary. To prove the SE-ANO-CPA security of our RIBE-AR scheme, we classify the type of adversaries into four types.
- Type-1.
- An adversary is Type-1 if it does not request a private key for and .
- Type-2.
- An adversary is Type-2 if it does not request a private key for , but it requests a private key for .
- Type-3.
- An adversary is Type-3 if it requests a private key for , but it does not request a private key for .
- Type-4.
- An adversary is Type-4 if it requests private keys for and .
Suppose that an adversary is type-. The security proof for the type- adversary consists of the sequence of hybrid games. We define the games as follows:
- Game .
- This game is the original security game. That is, a simulator obtains for a node by running PRF.
- Game .
- This game is similar to the game except that the PRF is replaced by a truly random function. That is, selects fixed random for a node if is used for the generation of a private key (or an update key).
- Game .
- This game is similar to the game except the generation of the challenge ciphertext . Let be the challenge ciphertext. In this game , is replaced by a random element in .
- Game .
- This final game is similar to the game except the generation of the challenge AIBE ciphertext header . Let be the challenge AIBE ciphertext header. In this game, and are replaced by random elements in . Note that the advantage of in this game is zero since the challenge ciphertext is not related to .
Let be the advantage of in a game . Let be the event that the adversary behaves like type-. From the Lemmas 3–5, we obtain the following equation
This completes our proof. □
Lemma 3.
If the PRF scheme is secure, then no PPT type-τ adversary can distinguish between and with a non-negligible advantage.
We omit the proof of this lemma since it is the same as Lemma 1.
Lemma 4.
If the DBDH assumption holds, then no PPT type-τ adversary can distinguish between and with a non-negligible advantage.
We omit the proof of this lemma since it is the same as Lemma 2.
Lemma 5.
If the PBDH assumption holds, then no PPT type-τ adversary can distinguish between and with a non-negligible advantage.
Proof.
Suppose there exists an adversary that attacks the above RIBE-AR scheme with a non-negligible advantage. A meta-simulator that solves the A3DH assumption using is given: a challenge tuple and Z where or . Note that a challenge tuple for the DBDH assumption can be derived from the given D. Let be the simulator for AIBE and be the simulator for IBE. Then, that interacts with is described as follows:
- Init: initially submits challenge identities and challenge time . runs by giving and Z, and runs by giving and Z.
- Setup: proceeds as follows:
- It submits to and receives . It also submits to and receives .
- It obtains by running . It initializes as an empty one. It sets as an empty one and sets . It fixes random leaf nodes that will be assigned to , respectively.
- If , it sets . If , it sets . If , it sets . If , it sets .
- It publishes public parameters .
Phase 1: adaptively requests a polynomial number of private key, update key, and decryption key queries.
If this is a private key query for an identity , then proceeds as follows:
- Case : In this case, we have for any and .
- It queries an AIBE private key for to and receives and .
- It assigns to a new leaf node and obtains by running .
- For , it retrieves of the node and performs the steps: It obtains by running . It sets .
- It creates .
- Case : In this case, we have for any and .
- It queries an AIBE private key for to and receives and .
- It assigns to a new leaf node and obtains by running .
- For , it retrieves of the node and performs the steps:
- (a)
- If , then it obtains by running .
- (b)
- Otherwise (), it obtains by running .
- (c)
- It sets .
- It creates .
- Case or or : In this case, we have .
- It retrieves the leaf node of and obtains by running .
- For , it retrieves of the node and performs the steps: It obtains and by running . It sets .
- It creates .
If this is an update key query for time T, then proceeds as follows:
- Case : In this case, we have since .
- It defines a revoked set R on time T from and obtains by running . Let , , and . It sets by selecting a random .
- For , it retrieves of the node and performs the steps: It obtains by running . It computes and sets .
- For , it performs the steps: It sets a random by selecting random elements and computes by using a random key . It selects a random and creates .
- It creates where is a random permutation.
- Case : In this case, we have and .
- It queries an IBE private key for to and receives .
- It defines a revoked set R on time T from and obtains by running . Let , , and . It sets by selecting a random .
- For , it retrieves of the node and performs the steps:
- (a)
- If , then it obtains by running .
- (b)
- Otherwise (), it obtains by running .
- (c)
- It computes and sets .
- For , it performs the steps: It sets a random by selecting random elements and computes by using a random key . It selects a random and creates .
- It creates where is a random permutation.
- Case : In this case, we have since is revoked on time .
- It defines a revoked set on time from and obtains by running . Let , , and . It sets by selecting a random .
- For , it retrieves of the node and performs the steps: It obtains by running . It computes and sets .
- For , it performs the steps: It sets a random by selecting random elements and computes by using a random key . It selects a random and creates .
- It creates where is a random permutation.
If this is a decryption key query for an identity and time T, then proceeds as follows:
- Case : It queries an AIBE private key for to and receives and . It selects a random exponent . It obtains by running . It obtains by running . It creates .
- Case and : It queries an IBE private key for to and receives . It selects a random exponent . It obtains and by running . It obtains by running . It creates .
- If this is a revocation query for an identity and time T, then updates by running .
- Challenge: submits a challenge message . proceeds as follows:
- It submits to and receives a challenge and . It also submits to and receives a challenge and .
- It creates by selecting a random d and gives it to .
- Phase 2: Same as Phase 1.
- Guess: Finally, outputs a guess . also outputs . This completes our proof. □
5.4. REV-PRV Security
In order to prove the selective REV-PRV security of our RIBE-AR scheme, we construct hybrid games that change all challenge node update keys included in the challenge update key to random elements one by one. In this way, if all challenge node update keys are changed to random elements, an attacker will not be able to distinguish the challenge update key because the challenge-revoked set is not exposed. The reason why all elements of the challenge update key can be converted into random elements is because the security model does not allow querying a private key that can be derived to a correct decryption key in combination with the challenge update key.
Theorem 6.
The above RIBE-AR scheme is SE-REV-PRV secure if the PRF is secure, the SKE scheme is IND-CPA and KEY-PRV secure, and the XDH assumption holds.
Proof.
The security proof consists of a sequence of hybrid games . The first game will be the original security game, and the last one will be a game in which an adversary has no advantage. We define the games as follows:
- Game .
- This game is the original security game. That is, a simulator obtains for a node by running PRF.
- Game .
- This game is similar to the game except that the PRF is replaced by a truly random function. That is, selects fixed random for a node if is used for the generation of a private key (or an update key).
- Game .
- This final game is similar to the game except that generation of the challenge update key . Let be the challenge update key where is the challenge node update key. In this game, each is replaced by random. That is, is replaced by SKE encryption of a random message with a random key and is replaced by a random element in . Note that the advantage of in this game is zero since the challenge update key is not related to .
To argue that the adversary cannot distinguish from , we also define a sequence of hybrid games which are defined as follows:
- Game .
- This game is equal to the game . That is, all challenge node update keys in the challenge update key are generated normally.
- Game .
- In this game , each challenge node update key for is generated randomly, but each challenge node update key for is generated normally.
- Game .
- This game is equal to the game . That is, all challenge node update keys in the challenge update key are generated randomly.
To argue the indistinguishability of and , we additionally define a sequence of hybrid games . Let be the challenge node update key of the node . Through these hybrid games, we change the generation of this node update key. We define the games as follows:
- Game .
- This game is equal to the game . That is, and are generated normally.
- Game .
- In this game , is generated by encrypting random elements with a valid key, but is generated normally. That is, by selecting random .
- Game .
- In this game , is generated by encrypting random elements with a random key, but is generated normally. That is, by selecting random and a random key .
- Game .
- This game is equal to the game . In this game, is generated by encrypting random elements with a random key and is also generated randomly. That is, is replaced by a random element .
Let be the advantage of in the game . We have that and . From the following Lemmas 6, 7, 8, and 9, we obtain the equation
where r is the maximum number of revoked users in an update key. This completes the proof. □
Lemma 6.
If the PRF is secure, then no PPT adversary can distinguish from with a non-negligible advantage.
The proof of this lemma is the same as Lemma 1.
Lemma 7.
If the SKE scheme is IND-CPA secure, then no PPT adversary can distinguish from with a non-negligible advantage.
Proof.
Suppose there exists an adversary that attacks the above RIBE-AR scheme with a non-negligible advantage. A simulator that breaks the IND-CPA security of an SKE scheme using is described as follows:
- Init: initially submits challenge revoked sets and challenge time . chooses a random bit and obtains a challenge cover set by running . Let , , and .
- Setup: obtains by running . Note that the random of the node is unknown to since is implicitly associated with the encryption key of the SKE scheme.
- Phase 1: handles private key, update key, and decryption key queries as follows: It can create a private key by using and although of the node is unknown since by the restriction of the security model. It can create an update key by using and by using the encryption oracle of the SKE scheme for the node . It can also easily create a decryption key by using .
- Challenge: creates a challenge update key as follows:
- It selects a random exponent and sets .
- For , it retrieves of the node and proceeds as follows: It sets a random by selecting random . It computes . It creates .
- For , it retrieves of the node and proceeds as follows:
- (a)
- It sets a random by selecting random . It obtains a normal by running .
- (b)
- It submits challenge messages to the challenge oracle of the SKE scheme and obtains a challenge ciphertext from the challenge oracle of SKE.
- (c)
- It creates .
- For , it retrieves of the node and proceeds as follows: It obtains a normal by running . It computes . It creates a normal .
- For , it proceeds as follows: It sets a random by selecting random . It computes by using a random key . It creates a random by selecting a random .
- It creates where is a random permutation.
- Phase 2: Same as Phase 1.
- Guess: Finally, outputs a guess . also outputs .
If a right message is encrypted in the IND-CPA game, then which is equal to the game . Otherwise (a left message is encrypted), which is equal to the game . This completes our proof. □
Lemma 8.
If the SKE scheme is KEY-PRV secure, then no PPT adversary can distinguish from with a non-negligible advantage.
Proof.
The proof of this lemma is almost similar to that of Lemma 7 except the generation of in . Let be an adversary that attacks the above RIBE-AR scheme with a non-negligible advantage and be a simulator that breaks the KEY-PRV security of an SKE scheme using . The generation of private keys, update keys, and decryption keys is the same since the encryption oracle of the SKE scheme is given. The generation of in a challenge update key is also similar except the generation of . The k-th node update key is generated as follows:
- For , it retrieves of the node and proceeds as follows:
- It sets a random by selecting random .
- It submits a challenge message to the challenge oracle of the SKE scheme and receives a challenge ciphertext from the challenge oracle of SKE.
- It creates .
If a valid encryption key is used in the KEY-PRV game, then which is equal to the game . Otherwise (a random encryption key is used), which is equal to the game . This completes our proof. □
Lemma 9.
If the XDH assumption holds, then no PPT adversary can distinguish from with a non-negligible advantage.
Proof.
Suppose there exists an adversary that attacks the above RIBE-AR scheme with a non-negligible advantage. A simulator that solves the XDH assumption using is given: a challenge tuple and Z where or . Then that interacts with is described as follows:
- Init: initially submits challenge revoked sets and challenge time . chooses a random bit and obtains a challenge cover set by running . Let , , and .
- Setup: obtains by running . Note that the random of the node is unknown to since is implicitly associated with of the XDH assumption.
- Phase 1: handles private key, update key, and decryption key queries as follows: It can create a private key by using and although of the node is unknown since by the restriction of the security model. It can create an update key by using and by using for the node and selecting a random exponent s.
- Challenge: Let be the challenge update key that should be created in this step. sets by implicitly setting and creates all in randomly. Next it creates the hint values of as follows:
- For , it retrieves of the node and sets a random .
- For , it retrieves of the node and sets by implicitly setting .
- For , it retrieves of the node and sets .
- For , it retrieves of the node and sets a random .
- Phase 2: Same as Phase 1.
- Guess: Finally, outputs a guess . also outputs .
If a valid is given, then a valid hint is created like in the game . Otherwise (a random is given), a random hint is created like in the game . This completes our proof. □
6. Conclusions
In this paper, we introduced the concept of RIBE-AR that provides ciphertext anonymity with revocation privacy and proposed an efficient RIBE-AR scheme by combining AIBE and IBE schemes with the CS method in bilinear groups. Our RIBE-AR scheme has similar private key size, update key size, and ciphertext size compared with the previous efficient RIBE schemes, despite the revocation set of an update key is hidden. We proved the selective IND-CPA, selective ANO-CPA, and selective REV-PRV security of our RIBE-AR scheme under complexity assumptions in bilinear groups with the security of underlying PRF and SKE schemes. Since our RIBE-AR scheme can provide the weak revocation privacy that hides revocation set against outsider attackers who can only obtain revoked private keys, it is an interesting problem to design an RIBE-AR scheme that provides strong revocation privacy that hides the revoked set against internal attackers who have access to private keys that were not revoked.
Funding
This work was supported by Institute of Information & communications Technology Planning & Evaluation (IITP) grant funded by the Korea government (MSIT) (No. 2021-0-00518, Blockchain privacy preserving techniques based on data encryption).
Data Availability Statement
No new data were created or analyzed in this study.
Conflicts of Interest
The authors declare no conflicts of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.
Appendix A. Construction from Lattices
In this section, we present an RIBE-AR scheme from lattices without DKER. By following the method of Katsumata et al. [31], our RIBE-AR scheme can be modified to provide DKER.
Appendix A.1. Lattices
Lemma A1.
Let be positive integers with and q prime. There are polynomial time algorithms for generating short basis of lattices as follows:
- : It is a randomized algorithm that outputs a full rank matrix and a trapdoor basis for such that A is statistically close to uniform and with overwhelming probability in n [32,33,34].
- : It is a randomized algorithm that, given as input matrices , , a basis of , and a Gaussian parameter , outputs a matrix distributed statistically close to D [35].
- : It is a randomized algorithm that, given as input a full rank matrix , a matrix , a basis of , and a Gaussian parameter , outputs a matrix distributed statistically close to D [36].
- There exists a fixed full rank matrix such that the lattice has a publicly known basis with [34].
Lemma A2.
There are polynomial time algorithms for sampling a short vector as follows:
- : It is a randomized algorithm that, given as input a full rank matrix , a matrix , a basis of , a vector , and a Gaussian parameter , outputs a vector sampled from a distribution statistically close to [34,36].
Assumption A1
(Learning with Errors, LWE [37]). The LWE problem is to distinguish the following distributions:
where , , , are independently sampled. The advantage of LWE is defined as . We say that the LWE assumption holds if the above advantage is negligible for all PPT adversaries.
Assumption A2
(Learning with Rounding, LWR [38]). The LWR problem is to distinguish the following distributions:
where , , , are independently sampled. The advantage of LWR is defined as . We say that the LWR assumption holds if the above advantage is negligible for all PPT adversaries.
Appendix A.2. Construction
Let PRF be a pseudo-random function for , , and . Our RIBE-AR scheme for , , and is described as follows:
- :
- Let be a security parameter and N be the maximum number of users. Let .
- It obtains and by running and , respectively. It also samples uniformly random matrix and vector .
- It generates two PRF keys and obtains by running .
- Finally, it outputs a master key , a revocation list , a state , and public parameters .
- :
- Let and .
- It assigns to a random leaf node and obtains a private set by running .
- For to , it proceeds as follows: Let be a label string. It computes and where . It samples a vector by running such thatNext, it creates a node private key .
- It obtains an extended basis by running .
- Finally, it outputs a private key .
- :
- Let and .
- It derives a revoked set R on time T from and obtains a cover set by running . Let , , and .
- It selects a uniformly random matrix .
- For , it proceeds as follows: Let be a label string. It computes and where . It samples a vector by running such thatIt obtains a ciphertext . Next, it sets a hint vector and creates a node update key .
- For , it proceeds as follows: It selects random and obtains by using a random key . It creates a node update key .
- Finally, it selects a random permutation and outputs an update key .
- :
- Let and .
- It retrieves from for all and sets a list . It also retrieves from for all and sets a list .
- It finds two indexes and such that in the lists, then it retrieves the corresponding and . Next, it decrypts .
- It parses and where . Then, it computes such that
- It also samples by running such that
- Finally, it outputs a decryption key .
- :
- It first samples uniformly random vectors . It also samples , and setsFinally, it outputs a ciphertext .
- :
- Let and . From the ciphertext and the decryption key, it computesIt outputs 1 if and 0 otherwise.
- :
- If is not assigned in , then it outputs ⊥. Otherwise, it updates by adding to .
References
- Boneh, D.; Franklin, M.K. Identity-Based Encryption from the Weil Pairing. In Advances in Cryptology—CRYPTO 2001; LNCS; Kilian, J., Ed.; Springer: Berlin/Heidelberg, Germany, 2001; Volume 2139, pp. 213–229. [Google Scholar]
- Abdalla, M.; Bellare, M.; Catalano, D.; Kiltz, E.; Kohno, T.; Lange, T.; Malone-Lee, J.; Neven, G.; Paillier, P.; Shi, H. Searchable Encryption Revisited: Consistency Properties, Relation to Anonymous IBE, and Extensions. In Advances in Cryptology—CRYPTO 2005; LNCS; Shoup, V., Ed.; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3621, pp. 205–222. [Google Scholar]
- Boyen, X.; Waters, B. Anonymous Hierarchical Identity-Based Encryption (Without Random Oracles). In Advances in Cryptology—CRYPTO 2006; LNCS; Dwork, C., Ed.; Springer: Berlin/Heidelberg, Germany, 2006; Volume 4117, pp. 290–307. [Google Scholar]
- Boneh, D.; Crescenzo, G.D.; Ostrovsky, R.; Persiano, G. Public Key Encryption with Keyword Search. In Advances in Cryptology—EUROCRYPT 2004; LNCS; Cachin, C., Camenisch, J., Eds.; Springer: Berlin/Heidelberg, Germany, 2004; Volume 3027, pp. 506–522. [Google Scholar]
- Waters, B.R.; Balfanz, D.; Durfee, G.; Smetters, D.K. Building an Encrypted and Searchable Audit Log; NDSS 2004; The Internet Society: Fredericksburg, VA, USA, 2004. [Google Scholar]
- Boldyreva, A.; Goyal, V.; Kumar, V. Identity-based encryption with efficient revocation. In ACM Conference on Computer and Communications Security—CCS 2008; Ning, P., Syverson, P.F., Jha, S., Eds.; ACM: New York, NY, USA, 2008; pp. 417–426. [Google Scholar]
- Libert, B.; Vergnaud, D. Adaptive-ID Secure Revocable Identity-Based Encryption. In Topics in Cryptology—CT-RSA 2009; LNCS; Fischlin, M., Ed.; Springer: Berlin/Heidelberg, Germany, 2009; Volume 5473, pp. 1–15. [Google Scholar]
- Seo, J.H.; Emura, K. Revocable Identity-Based Encryption Revisited: Security Model and Construction. In Public-Key Cryptography—PKC 2013; LNCS; Kurosawa, K., Hanaoka, G., Eds.; Springer: Berlin/Heidelberg, Germany, 2013; Volume 7778, pp. 216–234. [Google Scholar]
- Lee, K.; Lee, D.H.; Park, J.H. Efficient Revocable Identity-Based Encryption via Subset Difference Methods. Des. Codes Cryptogr. 2017, 85, 39–76. [Google Scholar] [CrossRef]
- Watanabe, Y.; Emura, K.; Seo, J.H. New Revocable IBE in Prime-Order Groups: Adaptively Secure, Decryption Key Exposure Resistant, and with Short Public Parameters. In Topics in Cryptology—CT-RSA 2017; LNCS; Handschuh, H., Ed.; Springer: Berlin/Heidelberg, Germany, 2017; Volume 10159, pp. 432–449. [Google Scholar]
- Ducas, L. Anonymity from Asymmetry: New Constructions for Anonymous HIBE. In Topics in Cryptology—CT-RSA 2010; LNCS; Pieprzyk, J., Ed.; Springer: Berlin/Heidelberg, Germany, 2010; Volume 5985, pp. 148–164. [Google Scholar]
- Boneh, D.; Boyen, X. Efficient Selective-ID Secure Identity-Based Encryption Without Random Oracles. In Advances in Cryptology—EUROCRYPT 2004; LNCS; Cachin, C., Camenisch, J., Eds.; Springer: Berlin/Heidelberg, Germany, 2004; Volume 3027, pp. 223–238. [Google Scholar]
- Fazio, N.; Perera, I.M. Outsider-Anonymous Broadcast Encryption with Sublinear Ciphertexts. In Public-Key Cryptography—PKC 2012; LNCS; Fischlin, M., Buchmann, J., Manulis, M., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7293, pp. 225–242. [Google Scholar]
- Libert, B.; Paterson, K.G.; Quaglia, E.A. Anonymous Broadcast Encryption: Adaptive Security and Efficient Constructions in the Standard Model. In Public-Key Cryptography—PKC 2012; LNCS; Fischlin, M., Buchmann, J., Manulis, M., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7293, pp. 206–224. [Google Scholar]
- Boyen, X. Multipurpose Identity-Based Signcryption (A Swiss Army Knife for Identity-Based Cryptography). In Advances in Cryptology—CRYPTO 2003; LNCS; Boneh, D., Ed.; Springer: Berlin/Heidelberg, Germany, 2003; Volume 2729, pp. 383–399. [Google Scholar]
- Gentry, C. Practical Identity-Based Encryption Without Random Oracles. In Advances in Cryptology—EUROCRYPT 2006; LNCS; Vaudenay, S., Ed.; Springer: Berlin/Heidelberg, Germany, 2006; Volume 4004, pp. 445–464. [Google Scholar]
- Gentry, C.; Peikert, C.; Vaikuntanathan, V. Trapdoors for hard lattices and new cryptographic constructions. In ACM Symposium on Theory of Computing—STOC 2008; Dwork, C., Ed.; ACM: New York, NY, USA, 2008; pp. 197–206. [Google Scholar]
- Boneh, D.; Waters, B. Conjunctive, Subset, and Range Queries on Encrypted Data. In Theory of Cryptography—TCC 2007; LNCS; Vadhan, S.P., Ed.; Springer: Berlin/Heidelberg, Germany, 2007; Volume 4392, pp. 535–554. [Google Scholar]
- Katz, J.; Sahai, A.; Waters, B. Predicate Encryption Supporting Disjunctions, Polynomial Equations, and Inner Products. In Advances in Cryptology—EUROCRYPT 2008; LNCS; Smart, N.P., Ed.; Springer: Berlin/Heidelberg, Germany, 2008; Volume 4965, pp. 146–162. [Google Scholar]
- Qin, B.; Deng, R.H.; Li, Y.; Liu, S. Server-Aided Revocable Identity-Based Encryption. In Computer Security—ESORICS 2015; LNCS; Pernul, G., Ryan, P.Y.A., Weippl, E.R., Eds.; Springer: Berlin/Heidelberg, Germany, 2015; Volume 9326, pp. 286–304. [Google Scholar]
- Park, S.; Lee, K.; Lee, D.H. New Constructions of Revocable Identity-Based Encryption from Multilinear Maps. IEEE Trans. Inf. Forensic Secur. 2015, 10, 1564–1577. [Google Scholar] [CrossRef]
- Seo, J.H.; Emura, K. Efficient Delegation of Key Generation and Revocation Functionalities in Identity-Based Encryption. In Topics in Cryptology—CT-RSA 2013; LNCS; Dawson, E., Ed.; Springer: Berlin/Heidelberg, Germany, 2013; Volume 7779, pp. 343–358. [Google Scholar]
- Seo, J.H.; Emura, K. Revocable Hierarchical Identity-Based Encryption: History-Free Update, Security Against Insiders, and Short Ciphertexts. In Topics in Cryptology—CT-RSA 2015; LNCS; Nyberg, K., Ed.; Springer: Berlin/Heidelberg, Germany, 2015; Volume 9048, pp. 106–123. [Google Scholar]
- Lee, K.; Park, S. Revocable Hierarchical Identity-Based Encryption with Shorter Private Keys and Update Keys. Des. Codes Cryptogr. 2018, 86, 2407–2440. [Google Scholar] [CrossRef]
- Ma, X.; Lin, D. Generic Constructions of Revocable Identity-Based Encryption. In Information Security and Cryptology—Inscrypt 2019; LNCS; Liu, Z., Yung, M., Eds.; Springer: Berlin/Heidelberg, Germany, 2019; Volume 12020, pp. 381–396. [Google Scholar]
- Lee, K.; Kim, J.S. A Generic Approach to Build Revocable Hierarchical Identity-Based Encryption. IEEE Access 2022, 10, 44178–44199. [Google Scholar] [CrossRef]
- Lee, K. Delegate and Verify the Update Keys of Revocable Identity-Based Encryption. IEEE Access 2023, 11, 52636–52652. [Google Scholar] [CrossRef]
- Bellare, M.; Boldyreva, A.; Desai, A.; Pointcheval, D. Key-Privacy in Public-Key Encryption. In Advances in Cryptology—ASIACRYPT 2001; LNCS; Boyd, C., Ed.; Springer: Berlin/Heidelberg, Germany, 2001; Volume 2248, pp. 566–582. [Google Scholar]
- Naor, D.; Naor, M.; Lotspiech, J. Revocation and Tracing Schemes for Stateless Receivers. In Advances in Cryptology—CRYPTO 2001; LNCS; Kilian, J., Ed.; Springer: Berlin/Heidelberg, Germany, 2001; Volume 2139, pp. 41–62. [Google Scholar]
- Chen, J.; Lim, H.W.; Ling, S.; Wang, H.; Nguyen, K. Revocable Identity-Based Encryption from Lattices. In Information Security and Privacy—ACISP 2012; LNCS; Susilo, W., Mu, Y., Seberry, J., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7372, pp. 390–403. [Google Scholar]
- Katsumata, S.; Matsuda, T.; Takayasu, A. Lattice-Based Revocable (Hierarchical) IBE with Decryption Key Exposure Resistance. In Public-Key Cryptography—PKC 2019; LNCS; Lin, D., Sako, K., Eds.; Springer: Berlin/Heidelberg, Germany, 2019; Volume 11443, pp. 441–471. [Google Scholar]
- Ajtai, M. Generating Hard Instances of the Short Basis Problem. In Automata, Languages and Programming—ICALP’99; LNCS; Wiedermann, J., van Emde Boas, P., Nielsen, M., Eds.; Springer: Berlin/Heidelberg, Germany, 1999; Volume 1644, pp. 1–9. [Google Scholar]
- Alwen, J.; Peikert, C. Generating Shorter Bases for Hard Random Lattices. Theory Comput. Syst. 2011, 48, 535–553. [Google Scholar] [CrossRef]
- Micciancio, D.; Peikert, C. Trapdoors for Lattices: Simpler, Tighter, Faster, Smaller. In Advances in Cryptology—EUROCRYPT 2012; LNCS; Pointcheval, D., Johansson, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7237, pp. 700–718. [Google Scholar]
- Cash, D.; Hofheinz, D.; Kiltz, E.; Peikert, C. Bonsai Trees, or How to Delegate a Lattice Basis. In Advances in Cryptology—EUROCRYPT 2010; LNCS; Gilbert, H., Ed.; Springer: Berlin/Heidelberg, Germany, 2010; Volume 6110, pp. 523–552. [Google Scholar]
- Agrawal, S.; Boneh, D.; Boyen, X. Efficient Lattice (H)IBE in the Standard Model. In Advances in Cryptology—EUROCRYPT 2010; LNCS; Gilbert, H., Ed.; Springer: Berlin/Heidelberg, Germany, 2010; Volume 6110, pp. 553–572. [Google Scholar]
- Regev, O. On lattices, learning with errors, random linear codes, and cryptography. In ACM Symposium on Theory of Computing—STOC 2005; Gabow, H.N., Fagin, R., Eds.; ACM: New York, NY, USA, 2005; pp. 84–93. [Google Scholar]
- Banerjee, A.; Peikert, C.; Rosen, A. Pseudorandom Functions and Lattices. In Advances in Cryptology—EUROCRYPT 2012; LNCS; Pointcheval, D., Johansson, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7237, pp. 719–737. [Google Scholar]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the author. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).