# An Improved Secure Key Generation Using Enhanced Identity-Based Encryption for Cloud Computing in Large-Scale 5G

Authors: Rajeev Kumar Gupta; Khalid K. Almuzaini; R. K. Pateriya; Kaushal Shah; Piyush Kumar Shukla; Reynah Akwafo
Journal: Wireless Communications and Mobile Computing
 (2022)

---

## Abstract

The demand of cloud computing and 5G networks has increased in the current scenario due to their attractive features and also the security related to the data over the cloud. In the context of cloud security, there is a number of computationally hard methods available. One of the most popular methods used to secure data over the cloud is the identity-based encryption (IBE). It is an access policy that allows only authorized users to access legible data in order to avoid a malicious attack. IBE comprises of four stages, namely, setup, key generation or extract, encryption, and decryption. Key generation is one of the important and time-consuming phases in which a security key is generated. It is a computational and decisional hard problem for generating unbreakable and nonderivable secure keys. This paper proposes an enhanced identity-based encryption approach where a secure key is generated using part of an identity bit string in order to avoid leakage of users’ identity even if an adversary or attacker decodes the key or encrypted data. Experiment results show that the prosed algorithm takes less time in the encryption and decryption as compared to the competitive approach named efficient selective-ID secure identity-based encryption approach. One of the most important features of the proposed approach is that it hides the user’s identity by using the Lagrange coefficient, which consists of a polynomial interpolation function. The security of the system depends on the hardness of computing the bilinear Diffie-Hellman problem.


---

## Body

## 1. Introduction

Public key infrastructure (PKI) is one of the most common approaches which is used to secure the communication between two parties. PKI is based on private and public keys where public key is a simple identity of the user like email and organization name and known to everyone, whereas private key is generated at the time of communication. It is observed that success rate of encryption and decryption accuracy is very less because it requires prior knowledge of cryptography [1].In 1984, Shamir [2] introduced first RSA-inspired identity-based cryptography approach to secure the communication between two users. This approach uses two keys, i.e., master public key and master private key. Private key generator (PKG) is used to generate master public key and master private key which is used for encryption and decryption, respectively. Providing an efficient key generation method for a large number of service accessors or users in identity-based approach is a challenge task because most of the computational time is spent in generating the private key [3, 4]. Every time, the key generator authority has to give key to users because keys are time based; i.e., key gets expired after certain period of time. In addition to this, key is the most important factor in providing security to the data of the user. Therefore, generating secure key with least computational overhead is the primary goal. The limitation of generating key efficiently led to a wide area of research in identity-based encryption (IBE) construction. The encryption and decryption techniques used in (IBE) heavily rely on the size of generated key. The encryption is implemented such that an unauthorized user cannot extract the identity, key, and other useful information from the encrypted data. Decryption method requires the identity vector, its associated secret key, and the encrypted data.The main limitation of IBE approach is that it takes more time in encryption and decryption. The key generated in IBE approach can be made short or computationally fast either by using least possible bits or by performing least number of bilinear pairings and group multiplications. The primary goal of this paper is to propose a proficient key generation method which is computationally fast and boosts the security of cloud data.


### 1.1. Definition of Identity-Based Encryption

In IBE, all identities (unique number for all entity) are represented by binary strings. The length of all identities is “n,” and each identity consists of four tuples, namely, Setup, Key Gen, Enc, and Dec. Description of each algorithm is as follows:
(i)
Setup: setup algorithm accept1⋋ (security parameter) as input and generate a master public key PK and a master secret key SK as an output (n=n⋋, where n is a polynomial about ƛ)(ii)
Key Gen: this algorithm takes ID-vectorv′ε0,1n as input and returns a secret key Skv(iii)
Enc: this algorithm takes PK (master key), ID-vectorv, and a message M. It returns a cipher text c as an output(iv)
Dec: this algorithm takes ID-vectorv, associate secrete key Skv and a cipher text c as input and return a message M or symbol ⟂


### 1.2. System Correctness: ifv=v′, then DecSKv,c=M.

In Figure1, Bob and Alice are two users communicating with each other. In order to communicate, two keys, namely, master public key and master private key, are required. PKG is used to generate master public key and master private key which are used for encryption and decryption, respectively. Firstly, Alice will communicate with PKG and obtains master public key for the encryption purpose. For generating the master private key, PKG uses Alice’s personal information and timestamp as another parameter [5, 6]. PKG authenticates Alice first, and then, Alice receives master private key. After this step, Alice sends protected message to Bob. Bob also follows authentication procedure using email-ID, and then, Bob also obtains master private key to decrypt and verify the message sent by Alice.Figure 1
Identity-based encryption involving two users and key generator.The main limitation of IBE approach is that it takes more time in encryption and decryption. The key generated in IBE approach can be made short or computationally fast either by using least possible bits or by performing least number of bilinear pairings and group multiplications. The primary goal of this paper is to propose a proficient key generation method which is computationally fast and boosts the security of cloud data.


## 1.1. Definition of Identity-Based Encryption

In IBE, all identities (unique number for all entity) are represented by binary strings. The length of all identities is “n,” and each identity consists of four tuples, namely, Setup, Key Gen, Enc, and Dec. Description of each algorithm is as follows:
(i)
Setup: setup algorithm accept1⋋ (security parameter) as input and generate a master public key PK and a master secret key SK as an output (n=n⋋, where n is a polynomial about ƛ)(ii)
Key Gen: this algorithm takes ID-vectorv′ε0,1n as input and returns a secret key Skv(iii)
Enc: this algorithm takes PK (master key), ID-vectorv, and a message M. It returns a cipher text c as an output(iv)
Dec: this algorithm takes ID-vectorv, associate secrete key Skv and a cipher text c as input and return a message M or symbol ⟂


## 1.2. System Correctness: ifv=v′, then DecSKv,c=M.

In Figure1, Bob and Alice are two users communicating with each other. In order to communicate, two keys, namely, master public key and master private key, are required. PKG is used to generate master public key and master private key which are used for encryption and decryption, respectively. Firstly, Alice will communicate with PKG and obtains master public key for the encryption purpose. For generating the master private key, PKG uses Alice’s personal information and timestamp as another parameter [5, 6]. PKG authenticates Alice first, and then, Alice receives master private key. After this step, Alice sends protected message to Bob. Bob also follows authentication procedure using email-ID, and then, Bob also obtains master private key to decrypt and verify the message sent by Alice.Figure 1
Identity-based encryption involving two users and key generator.The main limitation of IBE approach is that it takes more time in encryption and decryption. The key generated in IBE approach can be made short or computationally fast either by using least possible bits or by performing least number of bilinear pairings and group multiplications. The primary goal of this paper is to propose a proficient key generation method which is computationally fast and boosts the security of cloud data.


## 2. Literature Review

Cloud security is one of the hottest area of research, and a large number of approaches have been proposed in the past few decades [7–11]. Identity-based cryptosystem instigated by Shamir [2] where user’s identities are used as public key and private key generator (PKG) generates private keys corresponding to their identities. This paper also introduced identity-based signature and authentication scheme.First, IBE scheme is proposed by Boneh and Franklin [7] in 2005 which is based on random oracle model (ROM). This paper devolved two efficient and provably secure IBE schemes which use the selective-ID approach in order to provide the security from the cipher text attack (CCA). In 2005, Waters [10] introduced a standard model which implements the full secure IBE scheme. An extended version of full secure IBE scheme is proposed by Fan et al. [12] without ROM. After the development of full secure IBE, dual system encryption is come into the picture for providing the security of encryption systems. Most of the security scheme involves three security model and two security attack models. Three security models, namely, selective-ID model, random oracle model (ROM), and fully secure model, and two security attack models, namely, chosen plaintext attack (CPA) and chosen cipher text attack (CCA), are involved in all security schemes. In CPA, two messages and one cipher text (which is the encryption of one of these message) is given to the challenger. It is very difficult to find which message was actually encrypted. It is mainly used for the semantic security and does not give any guarantee against CCA. Boneh [13] introduced nonadaptive CCA where adversary can decrypt the data only after receiving the cipher text. Rackoff et al. [14] proposed a stronger idea for securing the data against adaptive chosen cipher text attack, whereby a challenger could demand for the decrypting cipher text even after observing the challenge cipher text. Shamir [2] introduced Random oracle model (ROM) also known as random oracle where a function defined as H:X➔Y picked uniformly at random from function h, where h defines the set of all functions {h:X➔Y} (assume Y is a finite set).In other words, it is a collision-free hash function; that is, if a query is rerun, it answers the same way every time when that query is submitted. It restricts the private key generator from creating the same secret key for two different users’ identities or more. The issue related with ROM implementation is that it does not give any assurance to provide security in the real world, even though it is used as a tool to validate natural cryptographic constructions. On the basis of the implementation of bilinear map, IBE scheme can be categorized into IBE using bilinear mapping in random oracle model [10] and IBE without using bilinear mapping in standard model [15]. Han et al. [16] introduced identity-based plaintext-checkable encryption for the mobile e-commerce. In this approach, the authors claim that security in mobile e-commerce is more challenging as compared to the traditional desktop e-commerce due to the moving of mobile from one location to another. To resolve this issue in this approach, first they proposed an identity-based plaintext-checkable encryption (IBPCE) scheme in which anyone can check their cipher text by providing their specific identity without knowing the secret key, and then, IBPCE is integrated with the mobile e-commerce scenario. Ma [17] proposed an identity-based security mechanism named identity-based encryption with outsourced equality test (IBEET) in the cloud environment. This approach based on the equality test allows the provider to perform equality test on multiple users’ cipher texts. This approach is suitable for the real application due to the bilinear map and hash to point operation. Both operations are time-consuming. Qin et al. [18] proposed an identity-based encryption scheme for the cloud computing environment which also uses the equality test and overcomes the limitation of Ma [17]. This approach consists of six phases, namely, Setup, Extract, Trapdoor, Encrypt, Decrypt, and Test. The first five phases are used for encrypt the data, and the last phase named Test is used for the equality test. It takes IDA, CA, and tdA and IDB, CB, and tdB as the input and returns binary value. If the output of the algorithm is 1, then plaintexts of CA and CB are the same; otherwise, the result is 0.Ma [17] anticipated an identity-based security mechanism named identity-based encryption with subcontracted impartiality test (IBEET) in the cloud environment. This approach based on the equality test allows the benefactor to accomplish the equivalence test on multiple users’ cipher texts. This approach is suitable for the real application due to the bilinear map and hash to point operation. Both operations are time-consuming. Qin et al. [18] recommended an identity-based encryption structure for the cloud computing environment which also uses the equality test and overcomes the limitation of Ma [17]. This approach comprises of six segments explicitly: Setup, Extract, Trapdoor, Encrypt, Decrypt, and Test. The first five phases are used to encrypt the data, and the last phase named Test is used for the equality test. It takes IDA, CA, and tdA and IDB, CB, and tdB as the input and returns binary value. If the algorithm’s output is one, then the plaintexts of CA and CB are the same. Otherwise, the result is 0. Sudarsono et al. [19] proposed an identity-based encryption scheme to provide security for the health-care system. Nowadays, cloud services are heavily used by the health-care organization. The organization stores patient-related secret information to the cloud server which needs to be secured. This paper uses IBE with a signature approach to secure the data during the transmission from the attacker. This approach uses unique public identity (ID) to ensure that information can only be received by the authenticate user.Colaco and Krishna [20] proposed random-oriented IBE scheme for securing the communication between the users. In this paper, user ID is the unique number along with some global parameter and master private key if generated by the Euler’s totient function. This paper uses user ID as a key to encrypt and transfer message. In order to decrypt the message at the other side, private key is generated by using key generator which uses the inverse of user ID and master private key. So there is no need of CA. Boneh and Franklin [21] introduced fully functional IBE which provides the security to the cipher text by using Diffie-Hellman. This paper used Weil pairing on elliptic curves to provide the security for the stored data. Sakai and Kasahara [22] proposed pairing-based secure cryptosystem which is used to avoid collusion attacks. The main purpose of this paper is to reduce the computation time which is required to generate private and public key. In addition, this paper also proposed a cryptosystem which used signature and public key for encrypting and decrypting data. Boneh and Boyen [23] proposed IBE system without using random oracle concept (a theoretical black box model) which is mainly used to respond to each unique query. The proposed method used bilinear Diffie-Hellman assumption and then use hierarchical IBE secure method without random oracles to generate private and public key. Waters [24] proposed fully secure IBE system without using random oracle. This paper used bilinear Diffie-Hellman (BDH) approach to create secure cryptosystem. The main limitation of the methods discussed in [22–24] is that it is possible to compromise the security keys produced by these approaches. Y. Wang et al. [25] proposed IBE and signature-based method for the cyclotomic fields. J. Lee et al. [26] introduced scalable IBE-based encryption method for securing the cloud data.H. Deng et al. [27] proposed a novel IBE scheme that addressed the decryption by designating initials to users assigned initially. In IBE scheme, users are provided with authorization to access data, but increasing the number of users later is a tedious task. The author combined IBE with identity-based broadcast encryption. Farjana et al. [28] proposed IBE scheme to secure the data in fog computing. Unlike single-level IBE implementation in case of cloud computing, the author proposed multilevel IBE architecture. Sun et al. [29] addressed the issue of user revocation in IBE scheme. The author proposed a revocable IBE scheme with cipher text evolution. It is a good scheme to share group data over the cloud. The authors of [30, 31] proposed a privacy-preserving secure data aggregation scheme based on lightweight key management [32]. The improved IBE for wireless sensor network security is proposed in [33].The rest of the paper is organized as follows: In Section3, preliminaries are introduced regarding computational assumptions and bilinear mapping. Section 4 presents a security definition. In Section 5, the proposed work is discussed; in Section 6, comparison with waters-IBE is carried out. In Section 7, the proposed framework is outlined. The Results and Discussions are presented with timing graphs (Section 8), and finally, Section 9 discusses the conclusion and future work. Table 1 shows the symbol notation used throughout the paper.Table 1
Symbol table.
SymbolName descriptionGCyclic group of prime orderZFinite group of prime ordere::X⟶YBilinear mapping from cyclic group X to YP,Q,R,andgGenerator of group GMMessageCCipher textα,r, ⋋Random numbersPPPublic parametersdLevel of authenticationkIBE private keyG1Elliptic curve groupGTMultiplicative group


## 3. Preliminaries

### 3.1. Computational Assumptions

These assumptions tell us about the computational hardness of breaking the encryption standard based on either identity or attribute scheme. In order to explain these assumptions, let us consider two cyclic groups, namelyG1 and G2, with same order q.e:G1×G1➔G2 is a valid bilinear mapping and P is a generator of G1. The following are the assumptions; beside this, one can modify these assumptions for better security:
(i)
Computational Diffie-Hellman (CDH) problem:IfP,Pa,Pb for some a,bЄZq∗, then computing Pab is hard in G1(ii)
Decisional Diffie-Hellman (DDH) [16] problem:IfP,Pa,Pb for some unknown a,bЄG1, then it is hard to predict PabЄG2 from PcЄG2(iii)
Bilinear Diffie-Hellman(BDH) [3] problem:IfP,Pa,Pb for some a,b,cЄZq∗, then computing eP,PabcЄG2 is hard


### 3.2. Bilinear Groups

Bilinear groups are formed by mapping two cyclic groups with orderq onto target group of cyclic nature. If G1 and G2 are two cyclic groups of order q, let g be a generator of G1. A bilinear mapping can be defined from G1 to G2 as
(1)e:G1×G1➔G2.This bilinear mapping has the following properties:(i)
Bilinearity:eaP;bQ=eP,Qab∀P, QЄG1, and a,bЄZq(ii)
Nondegeneracy: lete′ = eP,Q, and then, ∃e′: e′≠1. If a bilinear group has all its mapping equivalent to 1, then such group will be linear not bilinear; i.e., if eP,Q=1∀P, QЄG1, then G1 will be called as linear group(iii)
Computability:eP;Q is computable using an efficient algorithm ∀P,QЄGThe properties mentioned above are also derived from [11].
(2)eP+Q,R=eP,R∗eQ,R∀P,Q,RЄG1,eP,Q+R=eP,Q∗eP,R∀P,Q,RЄG1.


## 3.1. Computational Assumptions

These assumptions tell us about the computational hardness of breaking the encryption standard based on either identity or attribute scheme. In order to explain these assumptions, let us consider two cyclic groups, namelyG1 and G2, with same order q.e:G1×G1➔G2 is a valid bilinear mapping and P is a generator of G1. The following are the assumptions; beside this, one can modify these assumptions for better security:
(i)
Computational Diffie-Hellman (CDH) problem:IfP,Pa,Pb for some a,bЄZq∗, then computing Pab is hard in G1(ii)
Decisional Diffie-Hellman (DDH) [16] problem:IfP,Pa,Pb for some unknown a,bЄG1, then it is hard to predict PabЄG2 from PcЄG2(iii)
Bilinear Diffie-Hellman(BDH) [3] problem:IfP,Pa,Pb for some a,b,cЄZq∗, then computing eP,PabcЄG2 is hard


## 3.2. Bilinear Groups

Bilinear groups are formed by mapping two cyclic groups with orderq onto target group of cyclic nature. If G1 and G2 are two cyclic groups of order q, let g be a generator of G1. A bilinear mapping can be defined from G1 to G2 as
(1)e:G1×G1➔G2.This bilinear mapping has the following properties:(i)
Bilinearity:eaP;bQ=eP,Qab∀P, QЄG1, and a,bЄZq(ii)
Nondegeneracy: lete′ = eP,Q, and then, ∃e′: e′≠1. If a bilinear group has all its mapping equivalent to 1, then such group will be linear not bilinear; i.e., if eP,Q=1∀P, QЄG1, then G1 will be called as linear group(iii)
Computability:eP;Q is computable using an efficient algorithm ∀P,QЄGThe properties mentioned above are also derived from [11].
(2)eP+Q,R=eP,R∗eQ,R∀P,Q,RЄG1,eP,Q+R=eP,Q∗eP,R∀P,Q,RЄG1.


## 4. Security Definitions

This section shows how adversary in simulator environment responds for the encryption done by challenger using identity-based encryption. It is a security game initiated by the adversary and queries are made by the challenger. The task of the adversary is to decrypt the plaintext successfully using an initially defined identity. The game is played in four stages as explained below:(i)
Setup: the following steps are required to create the simulation environment:(i)
Simulator runs setup (1⋋; 1d). In this case, d=1 because only one layer of authentication is available, in multilevel IBE that is hierarchical IBE d>1(ii)
Generate public parameters (PP) and master key (MK)(iii)
Provide PP to adversary(iv)
Keep master key secret(ii)
Phase 1: adversarial queries are made in this stage.Key extraction phase: queries for the private key related to identitiesid1, id2-----------idn are made. Adversary can repeat this step multiple times for the number of identities unless adversary gets satisfied amount of private keys for different possible identities. There is restriction for adversary that he cannot send query for the identity for id∗.
(iii)
Challenge: once the phase 1 is complete, the challenger submits a plaintext M ∈M⋋ on which adversary has to be challenged, and the challenger chooses a random bit t∈0,1 and random cipher text C∈C⋋.If t =0, then it setsC∗=EncryptPP,id∗,M.If t =1,thenC=C∗.The challenger sendsC∗ to adversary as a challenge.
(iv)
Phase 2: phase 1 is repeated and issues additional adaptive private key to the challenger. Again, restriction is made for identity id∗.Guess: The adversary comes up with a guesst′∈ {0, 1} and wins the game, if t=t′.Such an adversaryA is referred as an IND-sID-CPA adversary and defines its advantage in attacking as
(3)Advξ,A,d⋋=Prt=t,−1/2.The security game of the same is as shown in Figure2.Figure 2
Demonstration of security game.In order to prove the security, we will prove that the advantage that an adversary has is zero. The worst case scenario would occur whenk=N−2. Here, N is the total number of identities, and k is the maximum identity disclosure to an attacker. Therefore, there are two uncompromised identities idi and idj of security game shown in Figure 2. It is impossible for an adversary to guess through which identity, correct plaintext can be derived. Therefore, we can conclude with a high probability that the advantage the adversary has is negligible. Therefore, the proposed system is secure against an IND-sID-CPA attack.These types of security games are designed to analyze the strength of adversary. Each time, when an adversary breaks the encrypted text, consequently, the challenger enhances the security of the system. Research paper related to IBE, CPABE (cipher text policy attribute-based encryption), KPABE (key policy attribute-based encryption), HIBE (hierarchical IBE), lattice-based HIBE [34], etc., all contains this type of game.


## 5. Proposed Framework

Identity-based encryption is the faster version of role-based classification. In these methods, the users are allowed to access the data using their identity as a way of authentication. This scheme is first implemented in proxy servers for revoking the unauthorized users. In proxy servers, the identity of authorized users is stored, and whenever an unauthorized user tries to access the server’s service, they get revoked as there is no key matching for that particular identity. Hence, each user has to register their identity for accessing the service. With advancement in technology like cloud computing, demand for security is increasing exponentially. A number of security providers implement this scheme for securing user data and information. When the security mechanism is implemented in the cloud, uploading and downloading of data or file is also an important factor. Moreover, network congestion and speed of service also plays an important role in determining the efficiency of an IBE scheme. But the proposed method introduced in Section6 is primarily focused on key generation, encryption, and decryption in order to increase the time efficiency. Figure 3 depicts the cloud environment where two users named Bob and Alice use the cloud resources and a private key generator which authenticates both for accessing the cloud database. In the proposed approach, only key generation, encryption, and decryption time are calculated. Network overhead is compromised at this moment.Figure 3
Framework for proposed work.This framework depicts how Bob and Alice access the data of each other’s by using IBE as an authentication, authorization, and security tool.Algorithm 1
1. Private key generator (PKG) starts the setup process and decides the security parameters like the level of bits and type of curves.2. Bob obtains the master public key from PKG.3. Bob authenticates himself by issuing his identity to PKG and receives the private key for encrypting the data.4. Similarly, Alice obtains the master public key from PKG.5. Alice authenticates herself by issuing his identity to PKG and receives the private key for encrypting the data.6. Bob sends his identity to Alice for generating the public key related to Bob’s identity. Alice will use this key to decrypt the data authenticated by Bob.7. Alice gets the Bob’s data from database and decrypts it for accessing.An unauthorized user cannot get identity of authorized user because PKG saves the identity of a user in Lagrange polynomial equation form which is computationally hard for an outsider to crack and get original identity [45]. When Bob sends his identity to Alice in midway of network, an attacker cannot get the identity because they share these identities using secure socket connection (SSL) [35–38]. Hash-based key generation methods are computational expensive, so pairing-based key generation methods can be used [21–24]. Table 2 shows the comparative analysis of different key generation methods.Table 2
Comparison of IBE methods.
SchemeUsed toolEncryption operationLimitationsBoneh and Franklin [21]PairingG1GTeHGDepending upon theGT primitiveSakai and Kasahara [22]Pairing√√√√Inefficient key generationBoneh and Boyen [23]Pairing√√××Inefficient key generationWaters [24]Pairing√√××Inefficient key generation


## 6. Proposed IBE Algorithm

LetG represents a group of prime order p. Group G forma proficiently computable bilinear map into G1. Bilinear map representation of G1 is defined as e:G×G1➔G2, and g is the generator of group G. Security parameter is used to find the group size, and each identities are represented by the 4 strings of length n.4.
(4)ID=id1,id2,id3⋯.idn.The collision-free hash function can be used to generate fixed lengthn bit strings from the arbitrary length ID bit strings. The following phases are involved in the proposed IBE algorithm:


### 6.1. Setup Phase

First, generate the system parameters. A secret is selected at random fromZp. Choose a random generator g from G such that g∈G, and fix the value g1=gα and select g2 randomly in G. After choosing all authority parameter, select a random number u such that u′∈G and a random n-length vector such that U=ui. Finally, g,g1,g2,u′andU are published as public parameters and g2α as master key.Algorithm 2
Input: finite groupZp and cyclic group GOutput: Public parameters(1)
Select randomα from Zp(2)
Choose a generatorg and g2 for group G(3)
Setg1=gα(4)
Selectu′(5)
Return master key,MK⟵g2α


### 6.2. Generation Phase

Letv represents n bit string identity for a user, ith bit of v is denoted by vi, where V⊆1,⋯,n be the set of all i for which vi=1. V is divided into 2 different, i.e., V=v1,v2,⋯,vm and {vr1, vr2,.., vrm} such that m+rm=n, where vri denotes random value which is added to provide security to the proposed method. Identity v is generated by choosing a random value then the private key corresponding to identity as shown in Equation (1).
(5)dv=g2αu′∏i∈Vvir,gr.U=u1,u2−−−−un and V=v1,v2−−−−umsuch that m<n. Now, use Lagrange coefficient method to generate polynomial function to perform polynomial interpolation. Polynomial interpolation helps us to hide some values of v which can be successfully recovered from the existing data points. Polynomial equation for the proposed approach is
(6)Px=x−x1x−x2−−−−x−xnx0−x1x0−x2−−−x0−xny0+x−x0x−x1−−−−x−xn−1x1−x0x1−x2−−−x1−xny1−−−−−−−−x−x1x−x2−−−−x−xnxn−x0xn−x1−−−xn−xn−1yn.Lagrange coefficient is(7)Δi,vx=∑i=0,k∈Vn∏0<i<n,j≠ix−xjxi−xjyk,where x=ui and y=vk.The random setui is generated once for each user identity and generated Lagrange coefficient for each identity using same ui value. Authority will use m-terms of identity value due to which a challenger will never get to know the original identity of authorized user. Hence, it will be difficult to obtain or guess the key generated for particular ID. Now, the case is what if all the values of user identity and U are same; in such case, error produced by Px is zero; that is, the challenger will not be able to guess anything from the key. This is a special case. Note that the error produced will be zero, and between two successive nodes, max error will be identified.Algorithm 3
Input: ID (identity of the user)Output: secret key1) Convert ID in binary format,ID=id1,id2,⋯⋯.,idn2) Extract m bits from ID3) SetV=id1,id2,⋯..,idm,vr1,vr2,⋯.,vrm, where m+rm=n4) Generate secret key using Equation (5)5) Returndv6) Store the ID value in polynomial equation form


### 6.3. Encryption Phase

Let “c” be a random value chosen from Zp and message MM∈G1. For some identity v, encryption can be performed using Equation (8).
(8)C=eg1,g2M,gc,u′∏i=Vvic.Algorithm 4
Input: messagesM and VOutput: encrypted message,C1) Convert M into binary2) Calculate pairing for (g1,g2), i.e., eg1,g23) Saveeg1,g2 for faster execution4) Encrypt message using Equation (8).5) ReturnC


### 6.4. Decryption Phase

LetC=C1,C2,C3 be a valid cipher text for message M under the user identity v. Then, cipher text C can be decrypted using dv=d1,d2 as given in Equation (9)–(12):
(9)=eg1,g2cMegr,u′∏i=Vviceg2α,u,∏i=Vvir,gc,(10)=eg1,g2cMeg,u′∏i=Vvirceg1,g2ceu′∏i=Vvirc,g,(11)=eg1,g2cMeg,u′∏i=Vvirceg1,g2ceg,u′∏i=Vvirc,(12)=M.Algorithm 5
Input: cipher text C, secret key dvOutput: original message M1. Divide cipher text, sayC=C1,C2,C32. Divide secret key, saydv=d1,d23. CalculateC1ed2,C3/ed1,C24. ReturnM


## 6.1. Setup Phase

First, generate the system parameters. A secret is selected at random fromZp. Choose a random generator g from G such that g∈G, and fix the value g1=gα and select g2 randomly in G. After choosing all authority parameter, select a random number u such that u′∈G and a random n-length vector such that U=ui. Finally, g,g1,g2,u′andU are published as public parameters and g2α as master key.Algorithm 2
Input: finite groupZp and cyclic group GOutput: Public parameters(1)
Select randomα from Zp(2)
Choose a generatorg and g2 for group G(3)
Setg1=gα(4)
Selectu′(5)
Return master key,MK⟵g2α


## 6.2. Generation Phase

Letv represents n bit string identity for a user, ith bit of v is denoted by vi, where V⊆1,⋯,n be the set of all i for which vi=1. V is divided into 2 different, i.e., V=v1,v2,⋯,vm and {vr1, vr2,.., vrm} such that m+rm=n, where vri denotes random value which is added to provide security to the proposed method. Identity v is generated by choosing a random value then the private key corresponding to identity as shown in Equation (1).
(5)dv=g2αu′∏i∈Vvir,gr.U=u1,u2−−−−un and V=v1,v2−−−−umsuch that m<n. Now, use Lagrange coefficient method to generate polynomial function to perform polynomial interpolation. Polynomial interpolation helps us to hide some values of v which can be successfully recovered from the existing data points. Polynomial equation for the proposed approach is
(6)Px=x−x1x−x2−−−−x−xnx0−x1x0−x2−−−x0−xny0+x−x0x−x1−−−−x−xn−1x1−x0x1−x2−−−x1−xny1−−−−−−−−x−x1x−x2−−−−x−xnxn−x0xn−x1−−−xn−xn−1yn.Lagrange coefficient is(7)Δi,vx=∑i=0,k∈Vn∏0<i<n,j≠ix−xjxi−xjyk,where x=ui and y=vk.The random setui is generated once for each user identity and generated Lagrange coefficient for each identity using same ui value. Authority will use m-terms of identity value due to which a challenger will never get to know the original identity of authorized user. Hence, it will be difficult to obtain or guess the key generated for particular ID. Now, the case is what if all the values of user identity and U are same; in such case, error produced by Px is zero; that is, the challenger will not be able to guess anything from the key. This is a special case. Note that the error produced will be zero, and between two successive nodes, max error will be identified.Algorithm 3
Input: ID (identity of the user)Output: secret key1) Convert ID in binary format,ID=id1,id2,⋯⋯.,idn2) Extract m bits from ID3) SetV=id1,id2,⋯..,idm,vr1,vr2,⋯.,vrm, where m+rm=n4) Generate secret key using Equation (5)5) Returndv6) Store the ID value in polynomial equation form


## 6.3. Encryption Phase

Let “c” be a random value chosen from Zp and message MM∈G1. For some identity v, encryption can be performed using Equation (8).
(8)C=eg1,g2M,gc,u′∏i=Vvic.Algorithm 4
Input: messagesM and VOutput: encrypted message,C1) Convert M into binary2) Calculate pairing for (g1,g2), i.e., eg1,g23) Saveeg1,g2 for faster execution4) Encrypt message using Equation (8).5) ReturnC


## 6.4. Decryption Phase

LetC=C1,C2,C3 be a valid cipher text for message M under the user identity v. Then, cipher text C can be decrypted using dv=d1,d2 as given in Equation (9)–(12):
(9)=eg1,g2cMegr,u′∏i=Vviceg2α,u,∏i=Vvir,gc,(10)=eg1,g2cMeg,u′∏i=Vvirceg1,g2ceu′∏i=Vvirc,g,(11)=eg1,g2cMeg,u′∏i=Vvirceg1,g2ceg,u′∏i=Vvirc,(12)=M.Algorithm 5
Input: cipher text C, secret key dvOutput: original message M1. Divide cipher text, sayC=C1,C2,C32. Divide secret key, saydv=d1,d23. CalculateC1ed2,C3/ed1,C24. ReturnM


## 7. Comparison with Water’s IBE

Water’s algorithm for identity-based encryption efficiency was based on Boneh and Boyen’s [34] in which Water replaced the group operation of key generation phase from u′ tou′∏i∈Vui. For the faster execution, proposed approach further modified the group operation into u′∏i∈Vvi as shown in Table 2. Here, the size (bit string length) of vi is comparatively small to execute faster group operations. This concept will remarkably increase the key generation phase. The proposed work also introduces Lagrange coefficient for hiding the identity of user, which is not applicable to Water’s IBE. In recent period, researchers implement this Lagrange coefficient in cipher text policy attribute-based encryption (CPABE) [39] for anonymity and strong security purpose.According to the Table3, it can be concluded that there is no further optimization [33] in the proposed decryption phase, yet due to use of Lagrange coefficient, higher level of security is achieved. The security is achieved because of hiding the original identity and instead using part of original identity and performing key generation. The benefit is that when adversary tries to decode the generated key for particular identity, then he will get part of that identity and the rest of the bit strings cannot be guessed by the adversary [40]. The important point to be noted is that even though the proposed approach used the same decryption method as that of Water’s IBE, our proposed approach is much secure because one who knows that the method of decoding the key (such as key generator) can never come to the conclusion that what will be the identity for which key has been generated [41].Table 3
Comparison between the proposed method and Water’s algorithm in encryption phase.
Encryption phaseWater’s IBEProposed approachNo of group operation in Gn/1 (avg case or n (worst case)m/2 (avg case or m (worst caseNo of exponentiation inG22No of group operation inG111No of exponentiation inG111Polynomial interpolationNoYesSize of the generated keyLarge (relative to n)Small (relative to m)Formula for group operation during the key generationu′∏i∈Vuiu′∏i∈Vvi


## 8. Results and Discussions

Java pairing-based cryptographic (JPBC) library is one of the efficient libraries for performing identity-based encryption with types A, A1, D (159,201,224), E, F, and G (149) [14] pairings for implementing bilinear mapping. Type A curve pairing is used as it is the best curve for cryptosystems because it uses super singular curve Y2=X3+X. Ubuntu Intel CoreTM i7-3770 CPU with 2GB RAM and 3.4GHz processor is used to evaluate the performance of the proposed approach. Type A pairing is one of the fastest pairing methods [42] in comparison to other pairing types. In Figures 3 and 4, the execution time of performing pairing using JPBC library and crypto PBC library versions is compared. Table 4 represents the bits required by curve type, say types “a” and k represent the embedding degree of each curve. Discrete log (Dlog) bits are required for implementing logarithmic computations which cause pairing to be computationally hard. Type “g” pairing is not worth using as it is slow with 12 pairings, and type “a” curve is mostly used in cryptographic [43] computation. Table 5 shows the bits required for pairing on different curve type with corresponding embedding degree.Figure 4
Execution time of bilinear mapping using JPBC and PBC version (in preprocessing stage).Table 4
Comparison between the proposed method and Water’s method in decryption phase.
Decryption phaseWater’s IBEProposed constructionBilinear map computation22Group operation inG111Inversion inG111Table 5
Bits required for pairing on different curve type with corresponding embedding degree.
TypeBase field size (bits)kDlog security (bits)a51221024dnn66ne102411024f160121920gnn1010na1102422048JPBC library is a java-based pairing method which is implementable in both Windows- and Linux (Ubuntu)-based system. PBC versions and JPBC library performance are different for same system configuration. The graph is obtained for pairing implementation in preprocessing stage. The performance of JPBC is far better than PBC versions.Figure3 shows bilinear pairing in preprocessing stage where the JPBC performance is better than PBC version. x-axis represents the type of pairing method used: (1) Type a, (2) d-159, (3) d-201, (4) d-224, (5) e, (6) f, (7) g(149), and (8) a1.These pairing strategies are effective in different scenarios, like type f curve pairing is the slowest and type a pairing is the strongest pairing scheme according to cryptographic aspect.From Figure5, it can be concluded that during the run time performance of JPBC better than PBC. IBE toolkit is also a very efficient toolkit used for implementation of IBE approach on Ubuntu-based system, but using JPBC library for executing the code faster is a better option than traditional PBC library.Figure 5
Execution time of bilinear mapping using JPBC and PBC version.Here, graphs related to the time of performing the proposed method are presented and compared with others. Waters’05 is included by David Naccache and originally implemented by charm crypto team. Improved Waters’05 is implemented by Fan Zhang, and improved Waters [44] is also implemented by Fan Zhang using charm crypto tool. But the proposed framework is implemented using java-based pairing cryptography.Figure6 shows time required to setup the identity-based encryption environment. It can be concluded from the graph that for curve SS512 (type A curve), MNT159 (type D159 curve), and MNT224 (type D224 curve), different IBE schemes are implemented. For curve SS512, BBibe shows the best result, and curve MNT224 is implemented with less efficiency.Figure 6
Timing graph of IBE schemes for setup phase.Figure7 shows time required to generate the key using curve SS512, MNT159, and MNT224. Again, BBibe shows the best result in terms of efficiency under SS512 curve and improved W09 is least efficient. Figure 8 shows time required to perform encryption using curve SS512, MNT159, and MNT224. BBibe encryption time is less than improved W05 for MNT159 curve, and the overall performance of improved W05 is better with respect to other IBE schemes. In this case, MNT224 curve performs better than SS512 curve, but it is not the case in setup and key generation phase. Figure 6 shows time lapsed to generate the key using curve SS512, MNT159, and MNT224. Again, BBibe shows the best result in terms of efficiency under SS512 curve, and improved W09 is least efficient for all curve types. The proposed method is based on Water’s IBE [5], and the graph is plotted for SS512 type curve which is most secure with respect to other curves like MNT159 and MNT224.Figure 7
Timing graph of IBE schemes for key generation phase.Figure 8
Timing graph of IBE schemes for encryption phase.Figure9 shows the timing graph of IBE schemes for decryption phase, and Figure 10 shows the computation time required by proposed IBE, improved W09, improved W05, Water 05, and Bbibe for SS512 curve in the key generation phase. It can be seen that BBibe method take less computation time for the key generation as compared to others. Hence, BBibe method is more time efficient as compared to the proposed method; this is because we are using more complex function for the key generation which leads to increase the security of the model.Figure 9
Timing graph of IBE schemes for decryption phase.Figure 10
Timing comparison graph for proposed work in key generation phase.Figure11 shows the computation time taken by the different approaches during the encryption phase. As shown in Figure 11, the proposed approach is more efficient and takes less computation time in encryption phase while implementing the encryption using SS512 curve. The proposed encryption approach is more computational efficient as we are using Equation (8) for the encryption which is easy to compute.Figure 11
Timing comparison graph for the proposed work in encryption phase.Figure12 shows the computation time taken by the different approaches during the decryption phase. As shown in Figure 12, the proposed approach is more efficient and takes less computation time in decryption phase while implementing the decryption using SS512 curve. The proposed decryption approach is more computational efficient as we are using Equation (9)–(12) for the decryption which is easy to compute.Figure 12
Timing comparison graph for proposed work in decryption phase.Figure13 shows the encryption, decryption, and authorization time taken by the proposed approach for various number of messages.Figure 13
Computation time for various number of message.It is shown in Figure13 that as the number of messages is increases, computation time for the authentication, encryption, and decryption is increasing linearly. It can also be seen that the proposed approach takes longer to decrypt than it does to encrypt, which is due to the fact that decryption requires more computation, as shown in Equation (9)–(12).


## 9. Conclusion and Future Work

Identity-based encryption (IBE) is one of the most popular user authentication and authorization method in the field of cryptography. We have used JPBC library as a tool to implement IBE approach. This paper presents an improved IBE method which takes lesser time as compared to the competitive approach. One of the most important features of the proposed approach is that it hides the user identity by using Lagrange coefficient which consists of polynomial interpolation function. Security of the approach depends on the hardness of computing bilinear Diffie-Hellman problem. This approach can also be implemented without using bilinear pairing for further enhancement in time complexity of key generation, encryption, and decryption.



---

*Source: 7291250-2022-03-10.xml*