1. Introduction
With advancements in technology—mainly driven by big data, artificial intelligence, distributed systems, and other innovative applications—the scenarios for multi-party communication are becoming increasingly diverse. However, multi-party communication also brings significant security challenges. If data is not well protected during transmission, it becomes susceptible to breaches and leaks. Since multi-party communication frequently involves exchanging sensitive information, maintaining secure and effective collaboration among all parties without exposing critical data is critical.
In traditional multi-party secure communication, symmetric group key agreement methods enable participants to agree on a shared symmetric key, ensuring secure communication among all members. When an external member wishes to send confidential information to the group, they are required to join the group first to obtain the shared key, which can be a cumbersome procedure. In contrast, asymmetric group key agreement (AGKA) enables external members to encrypt messages using the group’s public key without joining the group, broadening its range of applications.
Asymmetric group key agreement methods were introduced to simplify key management in multi-party communication. Zhang et al. [
1] introduced a blockchain-based AGKA method, where all group members collaboratively establish a shared group public and group private key. However, employing a single shared group private key for all members restricts the ability to expand the functionality, such as applying the method to broadcast encryption. Notably, as early as 2009, Wu et al. [
2] proposed an asymmetric group key agreement method that goes beyond simply concatenating the group members’ public keys. Instead, the technique allows all members to agree on a shared group public key while each group member possesses a distinct group private key. This approach reduces the significant computational overhead and large ciphertexts associated with public key concatenation. Zhang et al. [
3] later provided a security proof for this scheme and extended it to a broadcast encryption system. Additionally, Zhang et al. [
4] introduced an identity-based AGKA protocol that is resilient to passive and active attacks. This identity-based method removes the requirement for certificates, thereby solving the certificate management issues typically associated with conventional public key cryptosystems.
However, in refs. [
2,
4], group members agree on a common group public key and distinct group private keys, which do not support the dynamic joining of external members. To overcome this limitation, Zhang et al. [
5] introduced an identity-based dynamic AGKA protocol that facilitates secure message transmission without requiring the sender to join the group while supporting dynamic member changes and ensuring provable key escrow freeness. Li et al. [
6] introduced an identity-based dynamic AGKA protocol that ensures secure communication and privacy preservation without the need for the sender to join the group. Similarly, Zhang et al. [
7] introduced a one-round dynamic AGKA method that facilitates secure communication and privacy protection without the need for the sender to join the group.
Although the schemes in refs. [
5,
6] propose identity-based dynamic AGKA protocols, these identity-based public key cryptography methods they rely on are currently limited in practical applications, which makes their deployment challenging. In contrast, the identity-based SM9 algorithm offers broader applicability and lower computational overhead. Therefore, exploring identity-based dynamic AGKA protocols relying on the SM9 algorithm is crucial.
The principal contributions of our scheme can be outlined in the following manner:
(1) We are the first to integrate the SM9 identity-based signature algorithm into a dynamic AGKA protocol from the SM series. We first propose a batch multi-signature based on SM9, and based on this method, we implement an AGKA protocol. Given that the SM9 algorithm is technically mature and widely adopted, our solution offers easier deployment and better compatibility than other dynamic AGKA protocols.
(2) Our SMDAGKA scheme leverages the dynamic SM9 signature method, enabling external members to join and internal members to leave the group, making it highly suitable for group communication applications. Compared to a naive approach where each group member uses the SM9 key exchange protocol individually, resulting in O(n) encryption operations and O(n) ciphertext transmission, our proposed scheme significantly reduces the computational burden to only O(1) encryption operation and O(1) ciphertext transmission, achieving substantial efficiency gains.
(3) Performance analysis demonstrates that our SMDAGKA scheme achieves superior computational efficiency compared to related schemes, significantly reducing the time complexity and resource consumption associated with key management and group updates. This enhanced efficiency ensures faster response times, lower overhead, and improved scalability, making it a more practical solution for real-world group communication scenarios.
The rest of this paper is structured as follows:
Section 2 provides an overview of prior research on the DAGKA scheme.
Section 3 outlines the cryptographic techniques utilized in the DAGKA scheme.
Section 4 introduces the fundamental components of our SMDAGKA scheme. A comprehensive description and security analysis of the SMDAGKA scheme can be found in
Section 5. The performance of the SMDAGKA scheme is assessed in
Section 6. Lastly,
Section 7 summarizes the paper’s main conclusions.
2. Related Work
Group key agreement (GKA) is a mechanism used in multi-party communication networks where participants collaboratively produce a shared symmetric key. This key is then employed to encrypt and secure communication within the group. Kemmoe et al. [
8] introduced an asynchronous symmetric GKA scheme that utilizes blockchain and smart contracts for storing security-related data. This approach eliminates the security risks associated with relying on a trusted third party for key generation and management while reducing the computational burden on participants. Li et al. [
9] introduced a physical-layer symmetric GKA architecture that incorporates fully and partially trusted third parties in the key generation process, aiming to enhance secure communication among resource-constrained devices. Wang et al. [
10] proposed a physical-layer symmetric GKA scheme based on satellite cluster state information. Their method utilizes signal status data from all visible navigation satellites to generate the group key and includes an updating framework based on a fuzzy generator and hash chain. This design improves the robustness of key updates and ensures alignment during key generation. In all the above schemes, the encryption and decryption keys are symmetric, meaning they are identical. As a result, external members must first join the group to enable secure communication with its existing members.
The common AGKA method has been introduced to facilitate secure communication between external users and group members without requiring external users to join the group. Zhang et al. [
1] proposed a blockchain-based common AGKA protocol that employs anonymous authentication to safeguard user privacy. Braeken et al. [
11] developed a one-round, pairing-free common AGKA protocol suitable for users authenticated by different certificate authorities. Nevertheless, in both protocols, every group member utilizes the same group public and group private keys, which restricts the scalability and flexibility of the method, particularly in use cases such as broadcast encryption.
Wu et al. [
2] were the first to propose an AGKA protocol utilizing multi-signatures, where all group members share a common group public key while maintaining distinct group private keys. This approach reduces ciphertext size and computational overhead compared to each group member’s cascading of individual public keys. However, the protocol lacks formal security proof and is vulnerable to active attacks. Zhang et al. [
3] addressed these issues by providing security proof for Wu’s protocol and proposing an improved version resistant to active attacks. They further applied this enhanced protocol to the broadcast encryption scenario, enabling the message sender to select a subset of recipients who can decrypt the message while preventing unselected group members from accessing it.
To defend against active attacks, Zhang et al. [
4] defined a formal security model for identity-based authenticated AGKA protocols. They introduced a one-round protocol utilizing bilinear maps, guaranteeing key secrecy, partial forward secrecy, and known-key security. However, it was noted that the protocol did not account for the dynamic joining and leaving of group members. Zhang et al. [
5] introduced a one-round dynamic AGKA protocol that enables group members to generate a public group encryption key dynamically. Building on this, Li et al. [
6] introduced the concept of sender non-repudiation, requiring users who hold the group encryption key to transmit messages that are both non-repudiable and privacy-preserving to the group. Zhang et al. [
7] further enhanced the protocol by introducing a dynamic AGKA scheme with restricted group size, ensuring privacy protection and sender non-repudiation. However, the identity-based public key cryptography mechanisms used in these dynamic asymmetric group key agreement protocols have seen limited adoption, hindering their potential for large-scale deployment and scalability. Therefore, it is essential to explore the dynamic AGKA scheme relying on the widely adopted SM9 identity-based algorithm.
Mu et al. [
12] integrated the SM9-based digital signature algorithm with the Paillier encryption scheme [
13] and introduced a randomization method to prevent direct encryption of elliptic curve points used in the signature algorithm. This approach enhances both the authenticity and confidentiality of the communication system. Liu et al. [
14] developed a multi-key generation center (KGC) identity authentication encryption scheme based on SM9, extending its functionality from single-user to multi-user signatures. This scheme guarantees non-repudiation, unforgeability, anonymity, and defense against malicious users and KGCs threats. Subsequently, Yan et al. [
15] introduced a hierarchical multi-KGC signature scheme relying on SM9, which reduces the workload of individual KGCs. In this scheme, if a lower-level KGC is compromised, higher-level KGCs remain unaffected, improving system reliability. Liu et al. [
16] further introduced an SM9-based two-party collaborative signature scheme, where two KGCs generate the user’s private key by splitting the secret integer across two devices. These devices collaborate during the signing process, preventing the total leakage of the private key. Finally, Zhang et al. [
17] introduced an FPGA-based SM9 aggregation signature scheme that combines hardware acceleration with efficient algorithms to enhance signature verification performance.
Based on the schemes discussed above, it is evident that the SM9 signature algorithm has undergone significant improvements and has found broad applications. To improve the efficiency of group communication, exploring asymmetric group key agreement methods based on SM9 signatures is essential, particularly for large-scale group communication scenarios.
3. Preliminaries
3.1. Definition
The content below represents the fundamental information necessary for our scheme.
Definition 1 (Bilinear pairing [
18]).
Let and be two additive cyclic groups, is a multiplicative cyclic group, and the orders of the three groups are all prime q. The generators of the two additive cyclic groups are and , respectively. The bilinear map should satisfy the following attributes:1. Bilinear: For any , , and (, there is .
2. Non-degenerate: There exists , , such that .
3. Computable: For any , , there exists an effective algorithm to compute .
Definition 2 (SM9 signature algorithm [
19,
20]).
The detailed procedure for the SM9 signature scheme can be described as:(1) The key generation center (KGC) chooses a nonce as the master private key and computes = as the master public key, where q is the order of the cyclic groups , , and .
(2) The KGC selects and publishes the one byte identifier for .
(3) The KGC calculates . If mod , then it rechooses the master private key , calculates and publishes the master public key , and updates all registered users’ signing private keys. Else, it calculates q and, then, calculates .
The detailed procedure for the SM9 signature and verification method can be described as:
| SM9 Signature
Algorithm of |
| Input: SM9 system parameters, message m |
| Output: signature (h,S) |
| 1. Calculate in |
| 2. Generate a nonce |
| 3. Calculate in and convert the type of w to bit string |
| 4. Calculate |
| 5. Calculate mod q |
| 6. if then |
| 7. goto (2) |
| 8. else |
| 9. Calculate in |
| 10. return Signature of message m |
| SM9 Verification Algorithm of |
| Input: signature , message m |
| Output: “True” or “False” |
| 1. Check if , otherwise, the verification algorithm terminates |
| 2. Convert the type of S to a point on the elliptic curve, and then check
if ; |
| otherwise, the verification terminates |
| 3. Calculate in |
| 4. Calculate in |
| 5. Calculate |
| 6. Calculate in |
| 7. Calculate in |
| 8. Calculate · in , and convert the type of to a bit string |
| 9. Calculate , and check whether output is true; |
| otherwise output false |
To prove the security of the proposed scheme, we review several fundamental hard problems in cryptography, which are formally defined as follows.
Definition 3 (CDH Problem [
21]).
Random selects ; given (g, , ) , the adversary can solve the computational Diffie–Hellman (CDH) problem if it can compute with a non-negligible probability. Definition 4 (
k-BDHE Problem [
22]).
Given , , and = in for i = as input with unknown , the adversary can solve the k-Bilinear Diffie–Hellman Exponent (k-BDHE) problem if it can compute with a non-negligible probability. Definition 5 (
n-BCAA1 Problem [
23]).
For , , and an integer n, given (P, Q, , , (, ), …, (, )), where and are different from each other for , the adversary can solve the n-Bilinear Collision Attack Assumption (n-BCAA1) if it can compute with a non-negligible probability. 3.2. Security Model
Considering the existence of passive and active adversaries in communication systems, messages transmitted over open channels may be not only eavesdropped, but also captured, deleted, and tampered with. In addition, adversaries can inject forged messages arbitrarily. The security model introduced in this section is applicable to group key agreements. The challenger executes the entire scheme and accesses all private and public messages related to the protocol. The adversary can adaptively issue multiple types of queries as follows:
: outputs the current private key of group users to simulate forward secrecy.
: This query triggers the execution of the protocol.
: outputs the group encryption key.
: outputs the group decryption key.
: It triggers the operation of user group joining.
: It triggers the operation of group member revocation.
: The adversary selects two messages with the same format and sends them to . Then, randomly selects a bit , encrypts with the group encryption key to generate the ciphertext c, and returns c to . This query can be executed only once to model message confidentiality.
Security Game: The security game terminates once
outputs its guess
for
b. The adversary
wins the game if
. The advantage of
is defined as
where
b denotes the random bit chosen in the game, and
is the bit guessed by
.
4. The Fundamental Block
Our SMDAGKA scheme is built upon a newly devised batch multi-signature (BMSS) method based on the SM9 signature algorithm. The method includes the initialization phase, member key generation phase, batch multi-signature generation phase, and verification phase, and the details of the BMSS method are provided below:
The trusted authority generates sets
as in
Table 1; where different users belong to a group, they share the same group identifier
, and the calculation process of
is as follows.
(1) The KGC chooses a nonce as the master private key and computes = as the master public key.
(2) The KGC selects and publishes the one byte identifier for .
(3) The KGC calculates . If mod , then it rechooses the master private key , calculates and publishes the master public key , and updates all registered users’ signing private keys. Else, it calculates as the user signature private key.
(4) The KGC calculates for and then sends to through a public channel, and sends to through a secure channel.
(1) After receives (), calculates , and ; if = , then it sets .
(2) randomly selects a nonce , and then calculates .
(3) publishes its public key and a nonce throughout the system by broadcasting them.
(4)
acquires
for
and
. Then,
calculates the group public key
and random number
R as follows:
(1) calculates in .
(2) calculates , q, where , if , reselects the nonce and goto KeyGen phase.
(3) For message
where
,
calculates signature
Any member can consolidate batch signatures into a BMSS characterized by (
). The formulation proceeds as detailed below:
The correctness of the above equation is shown below:
(1) The verifier computes
R,
as follows:
(2) The verifier checks
for
{
} as follows:
If every equation is satisfied, the verifier will produce a valid result; otherwise, the result will be invalid.
The validity of the above equation is demonstrated below:
5. The SMDAGKA Protocol
Our proposed SMDAGKA scheme network model is illustrated in
Figure 1. The SMDAGKA scheme is constructed on the basis of the BMSS method. Different from the BMSS method, each group member in the SMDAGKA scheme retains the batch multi-signature
, defined in BMSS method as its group private key. Meanwhile, compared with the BMSS method, the proposed SMDAGKA scheme supports dynamic joining and leaving of group members, as well as group message encryption and decryption. The process of the scheme includes system initialization, generation of public and private keys for group members, creation of batch multi-signatures (agreement), generation of group encryption and decryption keys, addition of external members to the group, removal of group members, encryption of messages, and decryption of messages, and the details of the SMDAGKA protocol are provided below:
It is almost identical to the Setup algorithm described in
Section 4, the only difference being the addition of two hash functions
,
.
It is identical to the KeyGen algorithm (1–3) described in
Section 4. The user
’s secret key is
, the secret random number is
, the public key is
, and the public random number is
.
It is identical to the Sign algorithm described in
Section 4 except
(
) serves as the group private key for each group member
and is not published. As shown in
Figure 2, the symbol {} represents the user’s private information. Group member
publishes its identity
, signature information
where
and
, personal public key
, and public random number
.
Every group member, denoted as
, is capable of executing the outlined steps to acquire the shared group encryption key
and random number
R.
Each group member
can execute the subsequent procedure to acquire their own group decryption key
. Initially,
computes its own group private key
; then it calculates the group decryption key
. As shown in
Figure 2, the symbol () represents the public information, and the symbol {} represents the private information.
Suppose an external user, denoted as , seeks to become a member of the group, with l being equal to .
(1) The KGC calculates for , and calculates , . Then, the KGC sends to .
(2)
randomly selects nonce
and calculates
,
,
=
, and calculates
.
Then, publishes , , , , and keeps as its own group private key.
(3) Upon receiving the aforementioned messages, group member
where
will proceed to refresh their membership details in the manner described:
Then, publishes .
(4)
obtains
for
to calculate
. Then
checks the validity of
.
If the equation is valid, recognizes as the group decryption key within its local database; otherwise, the operation will be terminated.
If the group member decides to exit the group, they must first disclose (. Subsequently, other group members, denoted by where , are responsible for updating the group’s encryption and decryption keys accordingly.
(1)
generates a new group encryption and decryption key.
If the equation is satisfied, adopts as the group decryption key in its local database; otherwise, it aborts the operation.
Any entity with knowledge of the public group encryption key, denoted as
and identified by
, can assume the role of a sender.
randomly chooses nonce
. For given message
x,
calculates group ciphertext as follows:
Then, sends group ciphertext messages () to group members.
receives the group ciphertext messages (
), and then calculates plaintext
x using its own
.
The validity of the above equation is demonstrated below:
6. Performance Evaluation
We conducted performance testing on a virtual machine with an Intel(R) Core(TM) i5-9300H CPU @ 2.40GHz, 1 GB of RAM, and the CentOS 7 operating system, using the MIRACL cryptographic library v5.6.1. The additive groups
and
are generated by the points P and Q of order
q on the non-singular elliptic curve
mod
p, where
p and
q are two 256-bit prime numbers.
Table 2 outlines the execution duration for principal operations.
Table 3 shows that our solution offers significant advantages in terms of computational overhead at each stage.
Figure 3 compares the computational overhead for group member negotiation, while
Figure 4 compares the overhead for group public key generation.
Figure 5 compares the overhead for group private key generation, and
Figure 6 compares the overhead for a new group member. As the group size increases, our solution demonstrates a clear advantage.
Figure 7 compares the overhead when a group member leaves, and
Figure 8 compares the overall computational overhead across all steps. These figures collectively show that our solution is computationally efficient.
Table 4 defines the notations for relevant parameter lengths.
Table 5 outlines the communication cost for principal operations when achieving a security level of 128 bits, where the length of identity is
, the length of encrypted messages is
, the length of an element on
is
, the length of an element on
is
, and the length of an element on
is
. As shown in the table, our SMDAGKA scheme has a higher communication overhead than the scheme [
5], but it offers a significant reduction in communication overhead compared to the scheme [
7].
7. Conclusions
The group key agreement method allows members to establish a common key, ensuring the confidentiality of communication and facilitating secure interactions. This technique can be classified into symmetric and asymmetric GKA methods based on whether the encryption and decryption keys match. In the symmetric GKA method, when an external member wants to communicate securely with the group, they must first join the group and agree on a new symmetric key. In contrast, the asymmetric GKA (AGKA) method allows an external member to encrypt messages using the group’s publicly available public key and send them to the group without joining. Consequently, AGKA applies to a wider range of scenarios. Within the AGKA method, all group members share the single group public key. Depending on whether the group members have a shared private key, the method can be further classified into common AGKA and private AGKA. The private AGKA method is particularly well-suited for broadcast encryption, enabling the sender to select a subset of group members as intended recipients while ensuring that non-selected members cannot decrypt the message. Conversely, in common AGKA, where all members share the same private key, broadcast encryption is not supported due to the lack of recipient-specific key management.
Given the limited adoption of identity-based cryptosystems in current identity-based dynamic AGKA methods, we have designed a scheme based on the widely used SM9 identity algorithm to ensure secure communication among group members. Compared to the O(n) encryption operation and ciphertext transmission in the simple SM9 key exchange protocol, our scheme only requires O(1) encryption operation and ciphertext transmission during secure communication among group members. Performance analysis indicates that our scheme achieves low computational overhead and high security. In the future, we aim to develop solutions with even lower communication overhead to better meet the requirements of real-time scenarios.