Next Article in Journal
Dynamic Community Structure in Online Social Groups
Previous Article in Journal
An IT Service Management Literature Review: Challenges, Benefits, Opportunities and Implementation Practices
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Identity-Based Cross-Domain Authenticated Asymmetric Group Key Agreement

1
School of Cyberspace Security, Hangzhou Dianzi University, Hangzhou 310018, China
2
Hangzhou Innovation Institute, Beihang University, Hangzhou 310051, China
*
Author to whom correspondence should be addressed.
Information 2021, 12(3), 112; https://doi.org/10.3390/info12030112
Submission received: 10 January 2021 / Revised: 23 February 2021 / Accepted: 2 March 2021 / Published: 5 March 2021
(This article belongs to the Section Information and Communications Technology)

Abstract

:
Cross-domain authenticated asymmetric group key agreement allows group members in different domains to establish a secure group communication channel and the senders can be anyone. However, the existing schemes do not meet the requirement of batch verification in the group key negotiation phase, which makes the schemes have low efficiency. To address this problem, an identity-based cross-domain authenticated asymmetric group key agreement is proposed that supports batch verification. The performance analysis shows that this protocol is highly efficient. Finally, the proposed protocol is proved to be secure under the k-Bilinear Diffie–Hellman Exponent assumption.

1. Introduction

With the rapid proliferation of the mobile network, secure group communication is usually required in many emerging applications [1], such as teleconference, telemedicine, social group networks, ad hoc networks, and mobile cloud computing [2,3,4,5,6]. A popular approach is to employ the group key agreement (GKA) protocols. The conventional GKA protocols enable group members to exchange information confidentially by negotiating a shared symmetric key over an open network [7]. Nevertheless, this symmetric key is only known to the group members, which results in the problem of sender restriction. This problem means that if an outsider wants to broadcast secret messages to the group, he/she must join this group first. Motivated by the mentioned observation, Wu et al. [8] introduced an asymmetric group key agreement (AGKA) protocol that a common public encryption key (access to outsiders) is negotiated among group members and each member can respectively compute a private decryption key. This protocol is only proved secure to passive attackers who simply eavesdrop on the group communications. By considering active attacks, such as a man in the middle attack, Zhang et al. [9] designed an authenticated AGKA (AAGKA) protocol based on Public Key Infrastructure (PKI). To alleviate the overhead of complicated certificate management, an identity-based AAGKA protocol [10] is presented. However, the above studies only consider the scenarios in a single domain.
In cross-domain scenarios, such as telemedicine [11] and mobile cloud computing networks [12], members physically belong to different regions, clouds, institutions or networks. Each domain has its own domain administrator (DA), resources and members. When there is collaborative work between several domains, members in a domain may ask for resources in other domains [13]. For instance, in an electronic health social system, patients in different hospitals with the same symptoms need to form a group to securely share treatment or rehabilitation information [14] and get medical advice from outside experts. Another example in mobile cloud computing [12], group terminals distributed in different clouds or heterogeneous networks can also share resources with other groups when in collaborative work. In recent years, some cross-domain AAGKA protocols [11,12,15] have been proposed to establish a secure connection between different domains. In the literature [11,15], group members from different domains will authenticate each other with digital signatures before calculating the group session keys. Despite realizing mutual authentication, the digital signature schemes cannot support batch verification so that the number of complex operations (e.g., bilinear pairing) grows linearly with the number of group members. It seems inefficient and impractical that group members may be mobile terminals with limited energy, computation and communication resources. To reduce the computational overhead of group members, a semi-centered scheme [12] was proposed that DAs need to authenticate other group members for their domain members, while DAs may become the bottleneck [16] of the whole system.

Our Contributions

  • Inspired by Zhang et al. [10], this work extends a hierarchical batch signature scheme [17] to a batch multi-signature scheme. Then, we apply it into the construction of the proposed identity-based cross-domain AAGKA (ID-CD-AAGKA) protocol, which is distributed without any trusted party and supports batch verification.
  • The security proof is given that this protocol offers secrecy, known-key security and partial forward secrecy. Meanwhile, as the performance analysis shows, the IB-CD-AGAKA protocol is more efficient than existing works.
The remainder of this paper is organized as follows. Section 2 gives a brief review of the related works. Section 3 presents bilinear pairing and the complexity assumption. Our IB-CD-AAGKA protocol is described in Section 4. The proof of correctness is provided in Section 5, and the security aspect of the proposed protocol is analyzed in Section 6. Section 7 gives the performance comparison between the IB-CD-AAGKA protocol and the previous works. Finally, Section 8 concludes our work.

2. Related Works

Studies to secure group communications in cross-domain scenarios can be divided into two categories, i.e., conventional authenticated GKA protocol and AAGKA protocol.

2.1. Cross-Domain Conventional Authenticated GKA (CCAGKA) Protocols

In 2015, Guo et al. [18] first put forth a multi-participant cross-domain group password-based authenticated key exchange (MCGPAKE) protocol. In this protocol, a domain member shares passwords with trusted domain servers. A header is selected as a proxy of each domain to negotiate a cross-domain session key with other headers. If all the headers are malicious attackers, they can predetermine the session key. Subsequently, Zhu et al. [19] proposed a novel MCGPAKE protocol with explicit authentication and contributiveness in the universally composable (UC) framework. The scheme realizes ( n 2 , n ) contributions that if the adversary corrupts less than half of the participants, the session key still cannot be predetermined. On the other hand, the communication rounds in the aforementioned works [18,19] are no less than eight rounds, which is not round-efficient. In 2016, Lan et al. [13] presented a one-round CCAGKA protocol in which group members use different cryptographic settings and signature schemes. An indistinguishability obfuscation program is published by a trusted third party to make all the participants have the uniform computation as the group session key. In 2018, Yang et al. [14] utilized a three-layer tree structure to construct a CCAGKA protocol with symptom-matching for an e-health system. In the group key agreement phase, a powerful patient is chosen to authenticate other group patients. In 2020, Luo et al. [20] pointed out Yang’s scheme does not meet the requirement that different domains may have different cryptographic system parameters. In this scheme, a group controller is set up to generate a group session key for all the participants. However, it may lead to single node failure when the group controller is corrupted. All the above CCAGKA protocols have the same shortcoming, i.e., sender restriction [21].

2.2. Cross-Domain AAGKA Protocols

In 2014, Qikun et al. [15] proposed a distributed cross-domain AAGKA protocol. Each domain member is assigned with a register key binding to his public key and the domain public key of the corresponding DA. The domain public keys lack an authentication mechanism. Thus, domain members need to store all the domain public keys. In the resource-constrained environment, terminals may not have enough memories to keep them. Besides, when a domain public key is updated, terminals in all domains also need to update this key. In 2018, Zheng et al. proposed a semi-centered scheme to solve the problems in [15] where DAs participate in the key agreement phase as intermediated nodes between users. All the messages received or sent by the group users must be authenticated and transferred by DAs. Moreover, DAs form a pair of alliance public/private keys to validate the domain public keys. In this way, each member only needs to store the corresponding domain public key. It will reduce the computational overhead of group users. Nevertheless, DAs can also compute the group session keys. If a DA fails, the group session keys and the previous group messages would be leaked, which is the single node failure to make DA become the system’s bottleneck [16]. In the same year, Qikun et al. [11] proposed a distributed cross-domain AAGKA protocol based on a new signature scheme in the above alliance structure. However, in the verification phase of this signature scheme, the number of bilinear pairings grows linearly with the number of group members. When the group size is large, the consumption of computing resources is considerable so that the resource-constrained terminals cannot afford it.
Then, we give the comparisons between the IB-CD-AAGKA protocol and the above schemes in Table 1.

3. Preliminaries

3.1. Bilinear Pairing

As our protocol is constructed from bilinear pairing [22], we give a brief introduction of it in this section.
Let G 1 be an additive group and G 2 be a multiplicative group. Both of them have the same prime order q. e ^ : G 1 × G 1 G 2 is called a bilinear pairing if the following properties hold:
  • Bilinearity: For all P , Q G 1 and a , b Z q * , there is e ^ ( a P , b Q ) = e ^ ( P , Q ) a b .
  • Nondegeneracy: There exists P , Q G 1 , such that e ^ ( P , Q ) 1 .
  • Computability: For all P , Q G 1 , there exists an efficient algorithm to compute e ^ ( P , Q ) G 2 .

3.2. Complexity Assumptions

The security of the proposed protocol bases on k-Bilinear Diffie–Hellman Exponent (BDHE) assumption [8,23], which is described as follows:
k-BDHE problem: Given P , I and t φ = a φ P ( φ = 1 , 2 , 3 , , k , k + 2 , , 2 k ) as input, compute e ^ ( P , I ) a k + 1 . As the input vector lacks the term a k + 1 P , the bilinear pairing seems to be of no help in calculating e ^ ( P , I ) a k + 1 .
k-BDHE assumption: Let B be an algorithm which has advantage
A d v ( B ) = P r [ B ( P , I , t 1 , , t k , t k + 2 , , t 2 k ) = e ^ ( P , I ) a k + 1 ]
in solving the k-BDHE problem. The k-BDHE assumption is that A d v ( B ) is negligible for any polynomial-time algorithm B .

4. Our IB-CD-AAGKA Protocol

In this section, we present the proposed IB-CD-AAGKA protocol in detail.

4.1. Network Architecture

The cross-domain network architecture used in this protocol is illustrated in Figure 1. There are three types of entities in this architecture. The root private key generator ( R P K G ) is at the top level. The domain private key generators ( D P K G ) are at the second level. The users are at the third level. A brief workflow of our protocol is as follows.
  • The R P K G generates a master private key, a master public key, and other system parameters. Then, the R P K G keeps the master private key secret and publishes the master public key and the other system parameters.
  • Each D P K G manages a domain independently and registers to the R P K G . The R P K G generates all the D P K G s’ private keys, and sends them to the D P K G s separately in a secure channel.
  • When a user joins a domain, he/she registers to the corresponding D P K G . The D P K G generates the user’s private key, which is sent to the user securely.
  • When users from different domains want to establish a group, they generate and publish their parameters of group keys.
  • The group members verify whether the received parameters of group keys are from other group members or not. If the verification passes, each group member can calculate his/her group decryption private key and a common group encryption public key.
An outside sender can encrypt the messages with the group encryption key and broadcast the ciphertexts to a group. Then, the group members can decrypt the ciphertexts with their group decryption keys.

4.2. Detailed Construction

Assume the number of group members in domain D i ( 1 i n ) is m i , and D P K G i generates private keys for D i ’s domain users. Let U i , j ( 1 i n , 1 j m i ) denote the jth domain member of D i in the group, who negotiates the asymmetric group keys with other group members. I D i , I D i , j are identities of D P K G i and U i , j , respectively. For simplicity, we also assume the number of group members in each domain is equal, i.e., m 1 = m 2 = = m n = m . The group size is N = n · m .
In the following, we provide a detailed description of our proposed IB-CD-AAGKA protocol, which comprises three phases: system setup and private key distribution, cross-domain group key agreement, group encryption and group decryption.
  • System setup and private key distribution.
    First, the R P K G runs Setup to initialize the system parameters, including the master private key and master public key. Second, the R P K G executes DPKG.Register to generate the private key for each D P K G i . Third, each D P K G i generates private keys for D i ’s domain members by Member.Register.
    (a)
    Setup: On input a security parameter 1 λ , the R P K G generates system parameters { G 1 , G 2 , q, P, Q, e ^ , s, P K r o o t } , where G 1 is an additive group, G 2 is a multiplicative group, q is the prime order of G 1 and G 2 , P and Q are generators of G 1 , e ^ denotes a bilinear pairing G 1 × G 1 G 2 , a random number s Z q * is the master private key, and P K r o o t = s · P is the master public key. The R P K G chooses four hash functions H 1 , H 2 , H 3 : { 0 , 1 } * Z q * and H 4 : G 2 { 0 , 1 } τ ( τ is the bit-length of plaintexts). Then, the R P K G keeps s secret, and publishes the remaining system parameters and the hash functions.
    (b)
    DPKG.Register: When D P K G i registers to the R P K G , the R P K G runs this algorithm to generate the public/private key pair for D P K G i . The R P K G first chooses a random number r i Z q * to compute R i = r i · P , α i = H 1 ( I D i R i ) , and S K i = ( r i + α i · s ) · Q , where the tuple ( R i , α i ) is D P K G i ’s public key and S K i is D P K G i ’s private key. Then, the R P K G transmits ( R i , S K i ) to D P K G i over a secure channel.
    (c)
    Member.Register: When U i , j joins the D i , D P K G i generates public/private key pair for U i , j in this algorithm. First, D P K G i randomly selects r i , j Z q * . Second, D P K G i computes R i , j = r i , j · P , α i , j = H 2 ( I D i R i I D i , j R i , j ) , and S K i , j = S K i + α U i , j · r i , j · Q , where the tuple ( R i , j , α i , j ) is U i , j ’s public key and S K i , j is U i , j ’s private key. Third, D P K G i transmits ( I D i , R i , I D i , j , R i , j , α i , j , S K i , j ) to U i securely.
  • Cross-domain group key agreement.
    All group members’ common encryption key and group decryption keys are generated in this phase. The process of cross-domain group key agreement involves four algorithms, namely GenKeyParams, BVerify, GenEncKey and GenDecKey, which are executed by U i , j sequentially. Let U x , y ( 1 x n , 1 y m ) symbolize the yth member of D x in the group and { U x , y } ( 1 x n , 1 y m ) represent a set of all the group members. { ( x , y ) } ( 1 x n , 1 y m ) is a set of group indexes of { U x , y } ( 1 x n , 1 y m ) .
    (a)
    GenKeyParams: U i , j executes this algorithm to generate the parameters of group keys which includes U i , j ’s signatures on all the group members’ indexes { ( x , y ) } ( 1 x n , 1 y m ) . U i , j chooses a random number η i , j Z q * , computes T i , j = η i , j · P . For 1 x n , 1 y m , U i , j computes f x , y = H 3 ( x y ) and S i , j ( x , y ) = S K i , j + f x , y · η i , j · Q . So far, U i , j has generated his/her signatures on { ( x , y ) } ( 1 x n , 1 y m ) , which are ( R i , R i , j , T i , j , { S i , j ( x , y ) } ( 1 x n , 1 y m ) ) . Note that, { S i , j ( x , y ) } ( 1 x n , 1 y m ) is a set including S i , j ( i , j ) , when x = i and y = j . Then, U i , j keeps S i , j ( i , j ) secret and broadcasts M i , j = ( R i , I D i , R i , j , I D i , j , T i , j , { S i , j ( x , y ) } ( 1 x n , 1 y m , x i or y j ) ) .
    (b)
    BVerify: U i , j receives { R x , I D x , R x , y , I D x , y , T x , y , S x , y ( i , j ) } ( 1 x n , 1 y m , x i or y j ) , where { R x , R x , y , T x , y , S x , y ( i , j ) } ( 1 x n , 1 y m , x i or y j ) are other group members’ signatures on ( i , j ) . Then, U i , j runs this algorithm to take a batch verification of the signatures. First, U i , j computes f i , j = H 3 ( i j ) . Second, for 1 x n , 1 y m , x i or y j , U i , j computes α x = H 1 ( I D x R x ) and α x , y = H 2 ( I D x R x I D x , y R x , y ) . Then, U i , j checks Equation (1). If Equation (1) holds, U i , j ensures that the received messages are really from other group members.
    e ^ ( x = 1 n y = 1 m S x , y ( i , j ) , P ) = e ^ ( x = 1 n y = 1 m ( α x · P K r o o t + R x + α x , y · R x , y + f i , j · T x , y , Q ) ( x i o r y j )
    (c)
    GenEncKey: When someone wants to broadcast secret messages to the group, he/she runs this algorithm to calculate the group encryption public key e k . For 1 x n , 1 y m , the sender calculates e k : ( W , Ω ) , in which W = x = 1 n y = 1 m T x , y and Ω = e ^ ( x = 1 n y = 1 m ( α x · P K r o o t + R x + α x , y · R x , y ) , Q ) .
    (d)
    GenDecKey: This algorithm helps U i , j calculate his/her unique group private decryption key d k i , j = x = 1 n y = 1 m S x , y ( i , j ) . The parameters to generate all the group members’ decryption keys are listed in Table 2, in which S i , j ( i , j ) is kept secretly by U i , j . { S x , y ( i , j ) } ( ( 1 i n , 1 j m , 1 x n , 1 y m ) ) in each column are utilized to compute U i , j ’s group decryption key.
  • Group encryption and group decryption.
    Once group members finish the above algorithms and establish a confidential group communication channel, any sender can send encrypted messages to the group in this phase.
    (a)
    Encryption: If someone wants to send a message m * secretly to the group, he/she should run this algorithm to encrypt it. The sender chooses a random number ρ Z q * and computes C 1 = ρ · P , C 2 = ρ · W , C 3 = m * H 4 ( Ω ρ ) . Then, the sender outputs the ciphertext ( C 1 , C 2 , C 3 ) .
    (b)
    Decryption: When receiving the ciphertext ( C 1 , C 2 , C 3 ) , U i , j runs this algorithm to decrypt it. U i , j computes m * in Equation (2).
    m * = C 3 H 4 ( e ^ ( d k i , j , C 1 ) · e ^ ( f i , j · Q , C 2 ) ) .

5. Correctness Analysis

The correctness of this protocol depends on two conditions. Condition 1. U i , j ensures that the received group key parameters are from other legitimate group members with batch verification. Then, they can use the received parameters to calculate the proper pair of group encryption/decryption keys. To meet this condition, Equation (1) must hold. Condition 2. When receiving the ciphertext encrypted by the group encryption key, U i , j can use his/her decryption key to decrypt it and obtain the correct plaintext. To satisfy this condition, Equation (2) must hold.
  • Equation (1) is proved as follows.
    e ^ ( x = 1 n y = 1 m S x , y ( i , j ) , P ) ( x i o r y j ) = e ^ ( x = 1 n y = 1 m ( S K x , y + f i , j · η x , y · Q ) , P ) ( x i o r y j ) = e ^ ( x = 1 n y = 1 m ( S K x + α x , y · r x , y · Q + f i , j · η x , y · Q ) , P ) ( x i o r y j ) = e ^ ( x = 1 n y = 1 m ( ( r x + α x · s ) · Q + α x , y · r x , y · Q + f i , j · η x , y · Q ) , P ) ( x i o r y j ) = e ^ ( x = 1 n y = 1 m ( ( r x + α x · s ) · P + α x , y · r x , y · P + f i , j · η x , y · P ) , Q ) ( x i o r y j ) = e ^ ( x = 1 n y = 1 m ( R x + α x · P K r o o t + α x , y · R x , y + f i , j · T x , y ) , Q ) ( x i o r y j )
  • Equation (2) is proved as follows.
    C 3 H 4 ( e ^ ( d k i , j , C 1 ) · e ^ ( f i , j · Q , C 2 ) ) = C 3 H 4 ( e ^ ( x = 1 n y = 1 m S x , y ( i , j ) , ρ · P ) · e ^ ( f i , j · Q , ρ · x = 1 n y = 1 m T x , y ) ) = C 3 H 4 ( e ^ ( x = 1 n y = 1 m ( S K x , y + f i , j · η x , y · Q ) , ρ · P ) · e ^ ( x = 1 n y = 1 m f i , j · Q , ρ · x = 1 n y = 1 m η x , y · P ) ) = C 3 H 4 ( e ^ ( x = 1 n y = 1 m S K x , y , ρ · P ) · e ^ ( x = 1 n y = 1 m f i , j · η x , y · Q , ρ · P ) · e ^ ( x = 1 n y = 1 m f i , j · η x , y · Q , ρ · P ) 1 ) = C 3 H 4 ( e ^ ( x = 1 n y = 1 m S K x , y + α x , y · r x , y · Q , ρ · P ) ) = C 3 H 4 ( e ^ ( x = 1 n y = 1 m ( r x + α x · s ) · P + α x , y · r x , y · P , Q ) ρ ) = C 3 H 4 ( e ^ ( x = 1 n y = 1 m ( R x + α x · P K r o o t + α x , y · R x , y ) , Q ) ρ ) = C 3 H 4 ( Ω ρ ) = m * H 4 ( Ω ρ ) H 4 ( Ω ρ ) = m *

6. Security Analysis

This section gives the proofs that the proposed protocol achieves three security properties [10], i.e., the partial forward secrecy, the known key security, and the secrecy. The partial forward secrecy requires that even if some group members’ long term keys are leaked, the group decryption keys previously established by these group members would not be compromised. The known-key security ensures that if an adversary learns the encryption/decryption keys of some groups, he cannot calculate other groups’ decryption keys. The secrecy means that only the legitimate group members can decrypt the encrypted message under the corresponding group encryption key.

6.1. Known Key Security and Partial Forward Secrecy

Because U i , j needs to pick a random number η i , j to generate his/her group key parameters, the encryption/decryption keys of a group are generated independently to the corresponding keys of other groups. As a result, the decryption keys of a group cannot be computed even if all encryption/decryption keys of other groups are leaked, i.e., our protocol satisfies the known key security.
Furthermore, an attacker cannot recover the S i , j ( i , j ) without the knowledge of η i , j , even if the U i , j ’s private key S K i , j is corrupted. Therefore, the proposed protocol satisfies the partial forward secrecy.

6.2. Secrecy

6.2.1. Security Model

In this model, secrecy means the indistinguishability of a message encrypted under the negotiated public encryption key from a random string in the ciphertext space [10]. Specifically, we construct a game between a challenger C and an adversary A who has full control of the communication channel to prove the secrecy of our protocol. This game has three phases, which are described as follows:
Initial: The challenger C initiates the system and transmits the system parameters to A .
Training: C answers A ’s queries as follows:
  • DPKG.Extract: C generates the D P K G i ’s public and private keys, then outputs the public key.
  • Member.Extract: C generates the U i , j ’s public and private keys, then outputs the public key.
  • Execute: C executes an asymmetric group key agreement.
  • Test: A sends m 1 and m 2 ( m 1 = m 2 ) to C . C randomly chooses a bit b { 0 , 1 } , and encrypts m b using e k . A can submit this query only once and this query is used to model secrecy.
Response: Finally, A returns a bit b { 0 , 1 } as the guess. If b = b , A wins the game. The advantage of A is A d v ( A ) = P r [ b = b ] 1 2 . As defined in the literature [10], we consider that if A d v ( A ) is negligible, our protocol is secure against semantically indistinguishable chosen identity and plaintext attacks (Ind-ID-CPA).

6.2.2. Security Proof

This section proves that if an adversary A can corrupt the secrecy of the proposed protocol with a non-negligible advantage, C can solve the k-BDHE problem with a non-negligible advantage.
Proof. 
Assume N < k and given ( P , I , t 1 , , t k , t k + 2 , , t 2 k ) , C computes e ^ ( P , I ) a k + 1 is a k-BDHE problem, where P , I are generators of G 1 and t φ = a φ · P ( φ = 1 , 2 , 3 , , k , k + 2 , , 2 k ) with an unknown a Z q * . In the following, we show the process that C computes e ^ ( P , I ) a k + 1 .
Initial: At the beginning of the game, C chooses system parameters { G 1 , G 2 , e ^ , P , Q , P K r o o t } where P K r o o t = t 1 = a · P and Q = a k · P and sends them to A . Then, C randomly picks a D P K G ’s identity I D D P K G * and a group member’s identity I D U * as challenge identities.
Training: In this phase, C answers A ’s queries as follows.
  • H 1 query: C keeps an initially empty list L H 1 . On input I D i , R i ( 1 i n ) , C does the following:
    • If there is a tuple ( I D i , R i , α i ) on L H 1 , C returns α i as the answer;
    • Otherwise, C chooses a random number α i Z q * and adds ( I D i , R i , α i ) to L H 1 . Then, C returns α i as the answer.
  • H 2 query: C keeps an initially empty list L H 2 . On input I D i , R i , I D i , j , R i , j ( 1 i n , 1 j m ) , C does the following:
    • If there is a tuple ( I D i , R i , I D i , j , R i , j , α i , j ) on L H 2 , C returns α i , j as the answer.
    • Otherwise, C chooses a random number α i , j Z q * and adds ( I D i , R i , I D i , j , R i , j , α i , j ) to L H 2 . Then C returns α i , j as the answer.
  • H 3 query: C keeps an initially empty list L H 3 . On input x , y ( 1 x n , 1 y m ) , C does the following:
    • If there is a tuple ( x , y , f x , y ) on L H 3 , C returns f x , y as the answer.
    • Otherwise, C chooses a random number f x , y Z q * and adds ( x , y , f x , y ) to L H 3 . Then, C returns f x , y as the answer.
  • H 4 query: C keeps an initially empty list L H 4 . On input a message ℧, C does the following:
    • If there is a tuple ( , ϖ ) on L H 4 , C returns ϖ as the answer.
    • Otherwise, C chooses a random number string ϖ { 0 , 1 } τ and adds ( , ϖ ) to L H 4 . Then, C returns ϖ as the answer.
  • DPKG.Extract: C keeps an initially empty list L D P K G . On input I D i ( 1 i n ) , C does the following:
    • If there is a tuple ( I D i , r i , R i , S K i ) on L D P K G , C returns R i as the answer.
    • Otherwise, C randomly chooses α i , r i Z q * and proceeds as follows:
      (a)
      If I D i I D D P K G * , C computes R i = r i · P α i · P K r o o t and S K i = r i · Q .
      (b)
      Else, C computes R i = α i · P , and sets S K i = n u l l .
      Then, C adds ( I D i , r i , R i , S K i ) to L D P K G and adds ( I D i , R i , α i ) to L H 1 . Then C returns R i as the answer.
  • Member.Extract: C keeps an initially empty list L m e m b e r . On input ( I D i , I D i , j ) , C does the following:
    • If there is a tuple ( I D i , R i , I D i , j , r i , j , R i , j , S K i , j ) on L m e m b e r , C returns R i , j as the answer.
    • Otherwise, C randomly chooses α i , j , r i , j Z q * and proceeds as follows:
      (a)
      If I D i I D D P K G * , C computes R i , j = r i , j · P and S K i , j = S K i + α i , j · r i , j · Q .
      (b)
      Else, C does the following:
      i.
      If I D i , j I D U * , C computes R i , j = α i , j 1 · ( r i , j · P α i · P K r o o t R i ) and S K i , j = r i , j · Q .
      ii.
      Else, C computes R i , j = r i , j · P , and sets S K i , j = n u l l .
      Subsequently, C adds ( I D i , R i , I D i , j , r i , j , R i , j , S K i , j ) to L m e m b e r and adds ( I D i , R i ,
      I D i , j , R i , j , α i , j ) to L H 2 . Then, C returns R i , j as the answer.
  • Execute: C keeps an initially empty list L E x e c u t e . C does the following:
    • If I D i I D D P K G * and I D i , j I D U * , or I D i = I D D P K G * and I D i , j I D U * :
      (a)
      C chooses a random number η i , j Z q * and computes T i , j = r i , j · P + f x , y 1 · t 1 ( i 1 ) · n j .
      (b)
      For 1 x n , 1 y m , x i or y j , C computes S i , j ( x , y ) = S K i , j + f x , y · r i , j · Q + t k + 1 ( i 1 ) · n j .
      (c)
      C adds ( I D i , j , η i , j , n u l l ) to L E x e c u t e .
    • Else I D i = I D D P K G * and I D i , j = I D U * :
      (a)
      C chooses a random number η i , j Z q * and computes T i , j = f x , y 1 ( r i , j · P h = 1 N , h ( i 1 ) · n + j t k h + 1 R i α i · P K r o o t α i , j · P ) .
      (b)
      For 1 x n , 1 y m , x i or y j , C calculates S i , j ( x , y ) = r i , j · Q h = 1 N , h ( i 1 ) · n + j t 2 k h + 1 .
      (c)
      C adds ( I D i , j , η i , j , n u l l ) to L E x e c u t e .
      C publishes M i , j = ( R i , R i , j , T i , j , { S i , j ( x , y ) } ( 1 x n , 1 y m , x i or y j ) )
  • Ek.Reveal: C returns e k = ( W , Q ) .
  • Test: At some point, A chooses two messages m 0 , m 1 ( m 1 = m 2 ) on which A wishes to be challenged and send these messages to C . Then, C does the following:
    • For 1 i n , 1 j m , C obtains ( I D i , r i , R i , S K i ) from L and ( I D i , R i , I D i , j , r i , j ,
      R i , j , S K i , j ) from L m e m b e r .
    • C obtains ( η 1 , 1 , , η 1 , m , , η n , 1 , , η n , m ) from L S e n d .
    • C computes the group public encryption key e k = ( W , Ω ) . Then, C does as follows:
      (a)
      W = i = 1 n j = 1 m η i , j · P .
      (b)
      Ω = e ^ ( i = 1 n j = 1 m ( α i · P K r o o t + R i + α i , j · R i , j ) , Q ) = e ^ ( i = 1 n j = 1 m ( α i · P K r o o t + R i + α i , j · R i , j ) , a k · P ) .
    • C generates the ciphertext ( C 1 , C 2 , C 3 ) . Then, C does the following:
      (a)
      C sets C 1 = I and C 2 = I · ( i = 1 n j = 1 m η i , j ) .
      (b)
      C chooses a random string Λ { 0 , 1 } τ and b { 0 , 1 } . Then C computes C 3 = m b Λ .
    • A returns ( C 1 , C 2 , C 3 ) to A . Note that, A cannot recognize that ( C 1 , C 2 , C 3 ) is not a proper ciphertext, unless A has executed an H 4 query on D = e ^ ( i = 1 n j = 1 m ( α i · P K r o o t + R i + α i , j · R i , j ) · a k , I ) .
Response: A finishes querying and returns b { 0 , 1 } as the guess. If b = b , A has recognized that ( C 1 , C 2 , C 3 ) is not a proper ciphertext and has executed an H 4 query on D = e ^ ( i = 1 n j = 1 m ( α i · P K r o o t + R i + α i , j · R i , j ) · a k , I ) . Then, C randomly chooses a tuple ( , ϖ ) from L H 4 .
Subsequently, C constructs another random number oracle H 1 which has the same probability distribution as H 1 . C uses H 1 to replace H 1 and executes the game with A again. If A can also return the right guess, A has executed an H 4 query on D = e ^ ( i = 1 n j = 1 m ( α i · P K r o o t + R i + α i , j · R i , j · a k ) , I ) . Then, C randomly chooses a tuple ( , ϖ ) from H 4 , and returns ( ϖ i , j · ( ϖ i , j ) 1 ) i = 1 n m · ( α i α i ) as the answer to this k-BDHE challenge. Note that, only if ϖ = D and ϖ = D , that the above answer ( ϖ i , j · ( ϖ i , j ) 1 ) i = 1 n m · ( α i α i ) is equal to e ^ ( P , I ) a k + 1 . The proof is as follows.
ϖ i , j · ( ϖ i , j ) 1 = N · ( N ) 1 = e ^ ( i = 1 n j = 1 m ( α i · P K r o o t + R i + α U i , j · R i , j ) · a k , I ) · e ^ ( i = 1 n j = 1 m ( α i · P K r o o t + R i + α i , j · R i , j ) · a k , I ) 1 = e ^ ( i = 1 n j = 1 m ( α i · P K r o o t + R i + α i , j · R i , j α i · P K r o o t + R i + α i , j · R i , j ) · a k , I ) = e ^ ( i = 1 n m · ( α i · P K r o o t α i · P K r o o t ) · a k , I ) = e ^ ( i = 1 n m · ( α i · a · P α i · a · P ) · a k , I ) = e ^ ( i = 1 n m · ( α i α i ) · a k + 1 · P , I ) = e ^ ( i = 1 n a k + 1 · P , I ) i = 1 n m · ( α i α i )
 □

7. Performance Analysis

In this section, the performance of the IB-CD-AAGKA protocol is analyzed. Due to the limited resources of mobile terminals, we adopt the following five metrics, i.e., the computational complexity, the computational cost, the communication complexity, the communication cost and the energy consumption. As mentioned in Section 2, most works have shortcomings in security or functionalities. Specifically, the CCAGKA protocols [13,18,19,20,24] have the limitation of sender restriction. In addition, the semi-centered AAGKA protocol [12] faces single node failure. To our best knowledge, only schemes [11,15] are distributed and sender-unrestricted. Thus, we take a performance comparison between the proposed protocol and the schemes [11,15].

7.1. Computational Complexity and Cost

The computational complexity relates to the number of cryptographic operations of a group member in the cross-domain group key agreement phase. The symbols T m u l , T a d d , T b p , and T h denote the computing time for a scalar multiplication in G 1 , an addition in G 1 , a bilinear pairing, and a hash function, respectively. The computational complexity is analyzed in the following.
The cross-domain group key agreement in the IB-CD-AAGKA protocol comprises four algorithms, namely GenKeyParams, BVerify, GenEncKey, and GenDecKey. The computational complexity of GenKeyParams is ( 2 N + 1 ) T m u l + N · T a d d + N · T h . The computational complexity of BVerify is 3 ( N 1 ) · T m u l + ( 5 N 7 ) T a d d + ( 2 N 1 ) T h + 2 T b p . The computational complexity of GenEncKey is 2 T m u l + ( N + 2 ) T a d d + 2 T h + T b p . Because, the part of Ω , which is x = 1 n y = 1 m ( α x · P K r o o t + R x + α x , y · R x , y ) ( x i or y j ) , has been computed in BVerify. In GenDecKey, the computational complexity is T a d d , because x = 1 n y = 1 m S x , y ( i , j ) ( x i or y j ) has also been calculated in BVerify. The computational complexity of the IB-CD-AAGKA protocol is 5 N · T m u l + ( 7 N 4 ) T a d d + 3 T b p + ( 3 N + 1 ) T h . Moreover, as shown in the Table 3, the computational complexity of scheme [11] is ( 3 N + 2 ) T m u l + 2 N · T b p and the computational complexity of scheme [15] is ( N + 4 ) T m u l + ( 2 N 1 ) T a d d + 3 N · T b p .
To calculate the computational cost, we adopt the values provided by the literature [25], where T m u l = 0.817 ms, T a d d = 0.002 ms, T b p = 5.5832 ms, and T h = 0.0012 ms. Their experiment was run on a Windows 7 machine with an Intel I7-6700 processor ( 3.40 GHZ) and 8GB memory, and the cryptographic operations were implemented using the MIRACL [26] cryptographic library. The bilinear pairing e ^ : G 1 × G 1 G 2 is built on 80-bit security levels. q is the order of the additive group G 1 . p is a generator of G 1 and it is a point on the super singular elliptic curve y 2 = x 3 + x ( mod p ) with the embedding degree 2. Moreover, p is a 512-bit prime number and q is a 160-bit Solinas prime number. Then, the computational cost of our protocol is ( 5 N ) × 0.817 + ( 7 N 4 ) × 0.002 + 3 × 5.5832 + ( 3 N + 1 ) × 0.0012 = ( 4.103 N + 16.743 ) ms. The computational cost of [11] is ( 3 N + 2 ) × 0.817 + 2 N × 5.5832 = ( 13.621 N + 1.634 ) ms and the one of [15] is ( N + 4 ) × 0.817 + ( 2 N 1 ) × 0.002 + 3 N × 5.5832 = ( 17.571 N + 3.266 ) ms. As we can see, the number of bilinear pairing in our protocol is 3. By comparison, the ones in the schemes [11,15] are 2 N and 3 N . The reason for this is that the proposed protocol employs batch verification while in other schemes, group members can only verify one signature at a time. Moreover, our protocol has less computational cost than that of [11,15], when N 2 and N 1 , respectively.

7.2. Communication Complexity and Cost

The communication complexity is relevant to the length of sent messages, the length of received messages and the length of total messages in the group key agreement phase. We also employ the symbols and values from [25], in which | G | = 1024 bits denotes the length of an element in G 1 or G 2 , and l = 160 bits is the length of an identity. The analysis of communication complexity and communication cost is as follows.
As for each group member U i , j , his/her sent messages are M i , j = ( R i , I D i , R i , j , I D i , j , T i , j , { S i , j ( x , y ) } ( 1 x n , 1 y m , x i , y j ) ) and the received messages are { R x , I D x , R x , y , I D x , y , T x , y , S x , y ( i , j ) } ( 1 x n , 1 y m , x i , y j ) , where R i , R i , j , T i , j , S i , j ( x , y ) , R x , R x , y , T x , y , S x , y ( i , j ) G 1 and I D i , I D i , j , I D x , I D x , y are identities of D P K G i , U i , j , D P K G x and U x , y . Thus, the length of sent messages is ( N + 2 ) G + 2 l and the length of received messages is 4 ( N 1 ) G + 2 ( N 1 ) l . The length of total messages is ( 5 N 2 ) G + 2 N · l . The communication cost is ( 5 N 2 ) × 1024 + ( 2 N ) × 160 = ( 5440 N 2048 ) bits.
Moreover, as shown in the Table 3, the communication cost of scheme [11] is ( 3392 N 2048 ) bits and the one of scheme [15] is ( 6304 N 2048 ) bits. Thus, the proposed protocol has more communication cost than that of [11] and less communication cost in than [15]. However, we found that in the group key agreement phase of [11], a group member’s sent messages do not include his/her own public key and the corresponding domain key. Both of them are not known by other members in the group. The length of the two keys is 2 | G | . Then, we recompute the communication complexity of [11], where the length of sent messages is ( N + 2 ) | G | + 2 l , the length of received messages is 4 ( N 1 ) | G | + 2 ( N 1 ) l , the length of total messages is ( 5 N 2 ) | G | + 2 N · l and the communication cost is ( 5444 N 2048 ) bits. In this condition, the IB-CD-AAGKA protocol has the same communication complexity and communication cost.

7.3. Energy Consumption

The computational and communication costs are the main factors that impact the energy consumption. We adopt the energy consumption values of cryptographic operations and transmission data provided by Tan et al. [28] and Xu et al. [27], where a “Strong ARM” microprocessor running at 133 MHz performing a scalar multiplication, a point addition, hash function and bilinear pairing consumes 8.8 , 0.001085 , 0.000108 and 47 mJ, respectively. An IEEE 802.11 Spectrum24 WLAN card requires 0.00066 mJ for the transmission of 1 bit and 0.00031 mJ for the reception of 1 bit.
Then, we calculate the energy consumption of our protocol, which is ( 5 N ) × 8.8 + ( 7 N 4 ) × 0.001085 + 3 × 47 + ( 3 N + 1 ) × 0.000108 + ( ( N + 2 ) × 1024 + 2 × 160 ) × 0.00066 + ( ( 5 N 2 ) × 1024 + ( 2 N ) × 160 ) × 0.00031 = ( 46.053 N + 141.190 ) mJ. From Table 3, the energy cost of the scheme in [11] is ( 121.810 N + 17.077 ) mJ and the one of the scheme in [15] is ( 152.115 N + 35.694 ) mJ. Our protocol is more efficient than [11,15], when N 2 and N 1 . The reason is the same as explained in Section 7.2.

8. Conclusions

To solve the efficiency problem of the existing cross-domain AAGKA protocols, this paper proposed a distributed IB-CD-AAGKA protocol with batch verification. The security analysis shows that our work achieves some typical security properties, i.e., secrecy, known-key security, and partial forward secrecy. Furthermore, the performance analysis indicates that the IB-CD-AAGKA protocol has lower computational and energy costs than those of [11,15]. With strong security and efficient performance, the proposed protocol is suitable for some resource-constrained environments, e.g., mobile computing networks.

Author Contributions

Q.C. and T.W. conceived of the presented idea. Q.C., T.W. and Q.Z. mainly wrote the manuscript. T.W. and Q.Z. reviewed the manuscript. Q.C., C.H. and A.C. processed the experimental data and performed the analysis. All authors have read and agreed to the published version of the manuscript.

Funding

This work is supported by Zhejiang Province key R&D Program, China (No.2019C01012 & No.2020C01078).

Acknowledgments

The authors thank the anonymous reviewers for their helpful comments and suggestions.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Daghighi, B.; Kiah, M.L.M.; Shamshirband, S.; Iqbal, S.; Asghari, P. Key management paradigm for mobile secure group communications: Issues, solutions, and challenges. Comput. Commun. 2015, 72, 1–16. [Google Scholar] [CrossRef]
  2. Shin, Y.; Choi, M.; Koo, J.; Choi, S. Video multicast over WLANs: Power saving and reliability perspectives. IEEE Netw. 2013, 27, 40–46. [Google Scholar] [CrossRef]
  3. Shen, J.; Zhou, T.; Chen, X.; Li, J.; Susilo, W. Anonymous and traceable group data sharing in cloud computing. IEEE Trans. Inf. Forensics Secur. 2017, 13, 912–925. [Google Scholar] [CrossRef]
  4. Gentry, M.T.; Lapid, M.I.; Clark, M.M.; Rummans, T.A. Evidence for telehealth group-based treatment: A systematic review. J. Telemed. Telecare 2019, 25, 327–342. [Google Scholar] [CrossRef] [PubMed]
  5. He, Y.; Yu, F.R.; Zhao, N.; Yin, H. Secure social networks in 5G systems with mobile edge computing, caching, and device-to-device communications. IEEE Wirel. Commun. 2018, 25, 103–109. [Google Scholar] [CrossRef]
  6. Zhao, X.; Zhang, F.; Tian, H. Dynamic asymmetric group key agreement for ad hoc networks. Hoc Netw. 2011, 9, 928–939. [Google Scholar] [CrossRef]
  7. Burmester, M.; Desmedt, Y. A secure and efficient conference key distribution system. In Proceedings of the Workshop on the Theory and Application of of Cryptographic Techniques, Perugia, Italy, 9–12 May 1994; Springer: Berlin/Heidelberg, Germany, 1994; pp. 275–286. [Google Scholar]
  8. Wu, Q.; Mu, Y.; Susilo, W.; Qin, B.; Domingo-Ferrer, J. Asymmetric group key agreement. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, Cologne, Germany, 26–30 April 2009; Springer: Berlin/Heidelberg, Germany, 2009; pp. 153–170. [Google Scholar]
  9. Zhang, L.; Wu, Q.; Qin, B. Authenticated asymmetric group key agreement protocol and its application. In Proceedings of the 2010 IEEE International Conference on Communications, Cape Town, South Africa, 23–27 May 2010; pp. 1–5. [Google Scholar]
  10. Zhang, L.; Wu, Q.; Qin, B.; Domingo-Ferrer, J. Provably secure one-round identity-based authenticated asymmetric group key agreement protocol. Inf. Sci. 2011, 181, 4318–4329. [Google Scholar] [CrossRef]
  11. Zhang, Q.; Gan, Y.; Zhang, Q.; Wang, R.; Tan, Y.A. A dynamic and cross-domain authentication asymmetric group key agreement in telemedicine application. IEEE Access 2018, 6, 24064–24074. [Google Scholar]
  12. Zheng, J.; Zhang, X.; Zhang, Q.; Zhang, Q.; Zhang, C. Multi-domain lightweight asymmetric group key agreement. Chin. J. Electron. 2018, 27, 1085–1091. [Google Scholar] [CrossRef]
  13. Lan, X.; Xu, J.; Guo, H.; Zhang, Z. One-round cross-domain group key exchange protocol in the standard model. In International Conference on Information Security and Cryptology; Springer: Berlin/Heidelberg, Germany, 2016; pp. 386–400. [Google Scholar]
  14. Yang, Y.; Zheng, X.; Liu, X.; Zhong, S.; Chang, V. Cross-domain dynamic anonymous authenticated group key management with symptom-matching for e-health social system. Future Gener. Comput. Syst. 2018, 84, 160–176. [Google Scholar] [CrossRef]
  15. Zhang, Q.; Wang, R.; Tan, Y. Identity-Based Authenticated Asymmetric Group Key Agreement. J. Comput. Res. Dev. 2014, 51, 1727. [Google Scholar]
  16. Liu, X.; Ma, W. Cdaka: A provably-secure heterogeneous cross-domain authenticated key agreement protocol with symptoms-matching in tmis. J. Med. Syst. 2018, 42, 135. [Google Scholar] [CrossRef] [PubMed]
  17. He, D.; Kumar, N.; Choo, K.K.R.; Wu, W. Efficient hierarchical identity-based signature with batch verification for automatic dependent surveillance-broadcast system. IEEE Trans. Inf. Forensics Secur. 2016, 12, 454–464. [Google Scholar] [CrossRef]
  18. Guo, C.; Zhang, Z.; Zhu, L.; Tan, Y.a.; Yang, Z. Scalable protocol for cross-domain group password-based authenticated key exchange. Front. Comput. Sci. 2015, 9, 157–169. [Google Scholar] [CrossRef]
  19. Zhu, L.; Guo, C.; Zhang, Z.; Fu, W.; Xu, R. A Novel Contributory Cross-domain group password-based authenticated key exchange protocol with adaptive security. In Proceedings of the 2017 IEEE Second International Conference on Data Science in Cyberspace (DSC), Shenzhen, China, 26–29 June 2017; pp. 213–222. [Google Scholar]
  20. Luo, M.; Wu, J.; Li, X. Cross-domain certificateless authenticated group key agreement protocol for 5G network slicings. Telecommun. Syst. 2020, 74, 437–449. [Google Scholar] [CrossRef]
  21. Zhang, L.; Wu, Q.; Domingo-Ferrer, J.; Qin, B.; Dong, Z. Round-efficient and sender-unrestricted dynamic group key agreement protocol for secure group communications. IEEE Trans. Inf. Forensics Secur. 2015, 10, 2352–2364. [Google Scholar] [CrossRef]
  22. Zhang, L.; Wu, Q.; Qin, B.; Deng, H.; Li, J.; Liu, J.; Shi, W. Certificateless and identity-based authenticated asymmetric group key agreement. Int. J. Inf. Secur. 2017, 16, 559–576. [Google Scholar] [CrossRef]
  23. Boneh, D.; Boyen, X.; Goh, E.J. Hierarchical identity based encryption with constant size ciphertext. In Annual International Conference on the Theory and Applications of Cryptographic Techniques; Springer: Berlin/Heidelberg, Germany, 2005; pp. 440–456. [Google Scholar]
  24. Yang, A.; Tan, X.; Baek, J.; Wong, D.S. A new ADS-B authentication framework based on efficient hierarchical identity-based signature with batch verification. IEEE Trans. Serv. Comput. 2015, 10, 165–175. [Google Scholar] [CrossRef]
  25. Cui, J.; Tao, X.; Zhang, J.; Xu, Y.; Zhong, H. HCPA-GKA: A hash function-based conditional privacy-preserving authentication and group-key agreement scheme for VANETs. Veh. Commun. 2018, 14, 15–25. [Google Scholar] [CrossRef]
  26. Scott, M. MIRACL—A Multiprecision Integer and Rational Arithmetic C/C++ Library; Shamus Software Ltd.: Dublin, Ireland, 2003; Available online: https://github.com/miracl/MIRACL (accessed on 3 March 2021).
  27. Xu, Z.; Li, F.; Deng, H.; Tan, M.; Zhang, J.; Xu, J. A Blockchain-Based Authentication and Dynamic Group Key Agreement Protocol. Sensors 2020, 20, 4835. [Google Scholar] [CrossRef] [PubMed]
  28. Tan, C.H.; Teo, J.C.M. Energy-efficient ID-based group key agreement protocols for wireless networks. In Proceedings of the 20th IEEE International Parallel & Distributed Processing Symposium, Rhodes Island, Greece, 25–29 April 2006; p. 8. [Google Scholar]
Figure 1. The three-layer cross-domain network architecture.
Figure 1. The three-layer cross-domain network architecture.
Information 12 00112 g001
Table 1. Comparison between the above cross-domain group key agreement protocols and the IB-CD-AAGKA protocol.
Table 1. Comparison between the above cross-domain group key agreement protocols and the IB-CD-AAGKA protocol.
SchemesDistributedSender-UnrestrictedConstant or No Bilinear Pairing of Each User
Guo et al. [18]nonoyes
Zhu et al. [19]nonoyes
Lan et al. [13]nonoyes
Yang et al. [14]nonoyes
Luo et al. [20]nonoyes
Zhang et al. [15]yesyesno
Zheng et al. [12]noyesyes
Zhang et al. [11]yesyesno
The proposed protocolyesyesyes
Table 2. The parameters to generate the group decryption key.
Table 2. The parameters to generate the group decryption key.
Members U 1 , 1 U 1 , m U 2 , 1 U n , m
U 1 , 1 S 1 , 1 ( 1 , 1 ) S 1 , 1 ( 1 , m ) S 1 , 1 ( 2 , 1 ) S 1 , 1 ( n , m )
U 1 , m S 1 , m ( 1 , 1 ) S 1 , m ( 1 , m ) S 1 , m ( 2 , 1 ) S 1 , m ( n , m )
U 2 , 1 S 2 , 1 ( 1 , 1 ) S 2 , 1 ( 1 , m ) S 2 , 1 ( 2 , 1 ) S 2 , 1 ( n , m )
U n , m S n , m ( 1 , 1 ) S n , m ( 1 , m ) S n , m ( 2 , 1 ) S n , m ( n , m )
Keys d k 1 , 1 d k 1 , m d k 2 , 1 d k n , m
Table 3. The performance comparison between the proposed protocol and the schemes [11,15].
Table 3. The performance comparison between the proposed protocol and the schemes [11,15].
Performance MetricsProposed ProtocolZhang et al. [11]Zhang et al. [15]
Computational complexity 5 N · T m u l
+ ( 7 N 4 ) T a d d
+ 3 T b p + ( 3 N + 1 ) T h
( 3 N + 2 ) T m u l
+ 2 N · T b p
( N + 4 ) T m u l
+ ( 2 N 1 ) T a d d + 3 N · T b p
Computational cost (ms) 4.103 N + 16.743 13.621 N + 1.634 17.571 N + 3.266
Length of sent messages ( N + 2 ) G + 2 l N · G + 2 l ( N + 3 ) G + l
Length of received messages 4 ( N 1 ) G
+ 2 ( N 1 ) l
2 ( N 1 ) G 1
+ 2 ( N 1 ) l
5 ( N 1 ) G 2
+ ( N 1 ) l
Length of total messages ( 5 N 2 ) G
+ 2 N · l
( 3 N 2 ) | G |
+ 2 N · l
( 6 N 2 ) G
+ N · l
Communication cost (bits) 5440 N 2048 3392 N 2048 6304 N 2048
Energy Consumption (mJ) 46.053 N + 141.190 121.810 N + 17.077 152.115 N + 35.694
1 The authors of [15] believe, in their scheme, the number of parameters in received messages is N + 4 . However, the authors of [27] point out that this value is incorrect and give a new value, which is 4 ( N 1 ) . We further recounted the number of parameters in received messages based on two types of parameters, i.e., identities, and points on group G 1 or G 2 . The results are shown in the Table 3, which is 2 ( N 1 ) | G | + 2 ( N 1 ) l . The total number of parameters is 2 ( N 1 ) + 2 ( N 1 ) = 4 ( N 1 ) , which is the same as the value provided by [27]; 2 In the schemes [11,15], each group member’s secret parameter of group keys is encrypted separately by other members’ public keys, and the encrypted parameters are published. The scheme [11] assumes that each group member only receives the parameters encrypted by his/her public key, while the scheme [15] assumes that group members receive all the encrypted parameters. For comparison, we adopt the assumption in the scheme [11] and recalculate the length of received messages in scheme [15]. Compared with [15], the recalculated length of received messages is smaller.
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Chen, Q.; Wu, T.; Hu, C.; Chen, A.; Zheng, Q. An Identity-Based Cross-Domain Authenticated Asymmetric Group Key Agreement. Information 2021, 12, 112. https://doi.org/10.3390/info12030112

AMA Style

Chen Q, Wu T, Hu C, Chen A, Zheng Q. An Identity-Based Cross-Domain Authenticated Asymmetric Group Key Agreement. Information. 2021; 12(3):112. https://doi.org/10.3390/info12030112

Chicago/Turabian Style

Chen, Qingnan, Ting Wu, Chengnan Hu, Anbang Chen, and Qiuhua Zheng. 2021. "An Identity-Based Cross-Domain Authenticated Asymmetric Group Key Agreement" Information 12, no. 3: 112. https://doi.org/10.3390/info12030112

APA Style

Chen, Q., Wu, T., Hu, C., Chen, A., & Zheng, Q. (2021). An Identity-Based Cross-Domain Authenticated Asymmetric Group Key Agreement. Information, 12(3), 112. https://doi.org/10.3390/info12030112

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop