Group signatures (GS) are a special class of digital signatures designed to provide privacy protection for groups. As a prominent research topic in public-key cryptography, GS has attracted increasing attention in recent years and has been applied in various multi-user scenarios. Any group member can generate a signature on behalf of the entire group. The validity of the signature can be publicly verified, but the identity of the actual signer remains hidden (anonymity). A group manager, equipped with a tracing key, can reveal the identity of the signer when necessary (traceability). Due to these two core properties, group signatures are well-suited for a range of network applications, such as electronic voting, vehicular networks, and anonymous cryptocurrencies [1–3]. Figure 1 illustrates the application of GS in electronic contract signing.

Group Signature in Electronic Contract Signing
Most existing GS schemes are constructed based on traditional number-theoretic hardness assumptions, such as integer factorization and discrete logarithms. These problems are believed to be intractable for classical computers in polynomial time. However, the introduction of Shor algorithm [4] demonstrated that quantum computers can efficiently solve these problems, posing a significant threat to the cryptographic foundations of the current Internet infrastructure in the post-quantum era. Although the timeline for practical quantum computers remains uncertain, ongoing advances in quantum algorithms [5] suggest that their realization may not be far off. Considering this, the development of quantum-resistant cryptographic schemes has become an urgent and critical area of research.
In response to the disruptive threat that quantum computing poses to traditional cryptographic schemes, the National Institute of Standards and Technology (NIST) has launched a standardization process for post-quantum cryptography. Among the various candidates, lattice-based cryptography has emerged as one of the most promising approaches due to its strong security guarantees and practical efficiency. Since Ajtai's pioneering work in 1996 [6], which first introduced lattice problems into cryptography, subsequent research has shown that current quantum algorithms cannot efficiently solve the underlying hard problems on lattices [7]. In addition to quantum resistance, lattice-based schemes offer several desirable features, including worst-case to average-case reductions, parallelizability, and high computational efficiency. These advantages have made lattice-based group signature schemes a highly active area of research. Although existing lattice-based GS schemes have been proven secure under well-established lattice hardness assumptions, they still suffer from substantial storage overhead and relatively low signing efficiency, which remain key challenges for practical deployment.
In August 2024, NIST officially released the first set of post-quantum cryptographic standards, FIPS 203-205 [8–10], marking a critical milestone in the transition from classical to quantum-resistant cryptographic systems. Among them, FIPS 204 standardizes a lattice-based digital signature scheme known as Dilithium [11]. Dilithium is designed within the “Fiat-Shamir with Aborts” framework, which avoids the complexities of Gaussian sampling and enables a simple, efficient signing process. This construction has provided valuable insights for the design of GS scheme. In particular, by adopting Dilithium’s signature structure for the group member signing phase, it is possible to significantly improve signing speed and reduce signature size.
Based on the above, the motivation for proposing our new group signature scheme is as follows:
To address the urgent need for quantum-resistant group signatures: The advancement of quantum computing threatens the security of traditional group signature schemes, making the development of post-quantum alternatives a critical research imperative.
To overcome practical limitations in existing lattice-based group signatures: While lattice-based cryptography offers a promising path to quantum resistance, many current lattice-based group signature schemes are hindered by significant storage overhead and suboptimal signing efficiency, limiting their practical applicability.
To leverage recent advancements in post-quantum cryptography standards: The Dilithium signature scheme, standardized by NIST in FIPS 204, provides robust and efficient building blocks. We aim to adapt its core principles to the group signature setting to enhance performance and security.
In this paper, we propose a module lattice-based group signature scheme (ML-GS). Our specific contributions are as follows:
To ensure the dynamic joining of group members, we adopt a Gaussian preimage sampling technique over module lattices. The module nature of our construction enables flexible parameter selection to accommodate varying security levels. We also utilize a public matrix to generate identity vectors for each group member. This approach reduces the number of public matrices required for identity verification to just two, thereby significantly minimizing both public and private key sizes. Furthermore, the ML-GS scheme follows a sign-hybrid-encrypt paradigm, with its design centered around the FIPS 204 signature scheme, Dilithium [9]. We employ a dual-Dilithium signature mechanism to enhance efficiency and reduce the overall signature size. This construction guarantees that, when a valid signature is opened, the algorithm cannot reveal the identity of any signer other than the actual one. To ensure correct identity opening, the identity vectors of group members are encrypted using the K-PKE encryption scheme from FIPS 203 [8]. The resulting ciphertext is partially reused to derive randomness in the local signature generation process, while certain components of the local signature are embedded as plaintext in the sign -hybrid-encrypt mechanism.
Additionally, the ML-GS scheme achieves both anonymity and traceability in the Random Oracle Model (ROM), with its security grounded on the Module Learning With Errors (MLWE) and Module Short Integer Solution (MSIS) assumptions. Finally, we compare ML-GS scheme with a GS scheme [12] proposed at Eurocrypt 2022. The results show that our scheme achieves a 6% reduction in public key size and an 80% reduction in signature size, at the cost of a 16% increase in each member’s signing key size.
In 2010, Gordon et al. [13] were the first to introduce a lattice-based GS scheme, constructed using non-interactive zero-knowledge (NIZK) proofs. While theoretically significant, their scheme suffered from impractically large signature sizes. In 2013, Laguillaumie et al. [14] proposed an improved scheme that reduced the signature size to a logarithmic scale relative to the number of group members. In 2015, Ling et al. [15] presented a GS scheme based on ideal lattices, which significantly reduced key and signature sizes by transitioning to a ring-based setting. In 2018, Ling et al. [16] introduced a constant-size GS scheme using the “constrained guessing” technique [17] to address the issue of linearly growing signature sizes. However, this scheme required overly large parameters and suffered from completeness issues in its NIZK component. NIZK remains a foundational technique in many lattice-based GS schemes [18–21]. In 2019, Katsumata et al. [22] proposed a GS scheme in the standard model, eliminating the need for NIZK proofs of group membership during signature verification. In 2024, Tang et al. [23] proposed an event-oriented linkable GS scheme that uses a linking algorithm to detect multiple signatures from the same signer, thereby preventing malicious abuse. In 2025, Zhang et al. [24] creatively combined the Chinese Remainder Theorem and the trapdoor sampling inverse transformation algorithm based on the GKV scheme [13] to design a new lattice-based group signature scheme, which ensures privacy protection for medical data in the medical field. In recent years, a growing number of GS schemes have been proposed and applied across a wide range of scenarios [25–29].
From the development trajectory of lattice-based group signatures outlined above, we can summarize that group signature schemes are typically constructed from multiple cryptographic components: a signature scheme is used to issue private keys to group members, zero-knowledge proofs ensure the anonymity of identities, and a lattice-based encryption scheme guarantees the traceability of signatures. In recent years, the continuous proposal of lattice-based signature schemes [30, 31] has also led to the ongoing optimization of key issuance in group signatures. In ML-GS, we use the [32] scheme to issue private keys to users. Instead of using zero-knowledge proofs to ensure member anonymity, we employ a dual Dilithium signature architecture. Simultaneously, the continuous advancements in lattice-based encryption schemes [33] also ensure the traceability of the ML-GS scheme.
The remainder of this paper is organized as follows: In Section 2, we present the basic notation and relevant algorithms. In Section 3, we introduce the definition and security model of group signatures. In Section 4, we describe the construction of the ML-GS scheme. In Section 5, we provide a security analysis of the ML-GS scheme. In Section 6, we analyze the efficiency of ML-GS and present comparative experiments. Finally, Section 7 concludes the paper.
The notations used in this paper are described in Table 1.
Notation Definition
| Notations | Description |
|---|---|
| n-dimensional vector over modulo q | |
| n × m matrix over modulo q | |
| R | polynomial Z[[x] / (xd + 1) |
| Rq | quotient ring Z[q[x] / (xd + 1) |
| x ← D | x is sampled from the distribution D |
| ∥a∥ | |
| ∥a∥∞ | |
| ∥w∥ | |
| ∥w∥∞ | |
| ⊥ | the algorithm outputs fail |
| negl(λ) | a non-negligible function about λ |
| B | the set of integers representable by a single byte, i.e., {0,1,…,255} |
(MLWEm,n,x problem[34]. Set distribution, χ = {a ∈ R,∥a∥∞ ≤ 1}, select a matrix
(MSISn,m,β problem[34]). Select a matrix
[35]. For any standard deviation σ > 0 and positive integer k, the following formula holds:
- 1)
Pr[x ← Dσ :|x|> kσ] ≤ 2e−k2/2.
- 2)
.\Pr \left[ {x \leftarrow D_\sigma ^n:x > \sqrt {2n} \;\cdot\;\sigma } \right] < {2^{ - n/4}}
The rejection sampling algorithm is illustrated in Figure 2. Next, we present a crucial lemma regarding rejection sampling, which ensures that the response values in our zero-knowledge protocol do not reveal any sensitive information.

Algorithm for Rejection Sampling
[36]. Given a probability distribution h : V ← [0,1], where
To issue signing keys to group members, a trapdoor sampling algorithm is used to sample short vectors. In 2021, Bert et al. [32] proposed an efficient preimage sampling technique on module lattices, which exhibits high modularity. Depending on the modularity and specific requirements of different schemes, the operations on Rq can be easily adjusted. Based on this, we introduce two algorithms.
Given a tool vector
Let q, d be positive integers,
Let T ∈ R2d×dk be the trapdoor of matrix A ∈ Rd×m, where
Let n,q,k,m,η are the parameters set in the scheme, and m = d(k + 2), then SamplePre(A, TA, u, η) algorithm output s satisfies As = u. Under the MSISn,k,m,q,β assumption (where
The FIPS 203 standard's key encapsulation protocol [8] is centered around an encryption scheme based on the MLWE problem. This standard provides a public-key encryption scheme, K-PKE, that is secure under CPA (Chosen Plaintext Attack). In our design of ML-GS, we will use K-PKE to encrypt group members' identity information, and the encrypted result will serve as a commitment value as part of the signature generation process.
K-PKE consists of three components: K-PKE.KeyGen, K-PKE.Encrypt and K-PKE.Decrypt. Below, we briefly describe these three algorithms according to the requirements of our scheme.
K – PKE.KeyGen(): The algorithm samples two vectors s and e from a binomial distribution and generates a matrix a from a uniform distribution. It computes the public key key ekPKE = (a,b), where
K – PKE.Encrypt(ekPKE,m,r): The algorithm takes a public key ekPKE, a message m, and a random bit seed r, and randomly selects a vector r, e1, e2 from a binomial distribution. It then computes,
K-PKE.Decrypt(dkPKE, ct): The algorithm takes a private key dkPKE, a ciphertext ct, computes
In this section, the proposed ML-GS scheme follows the fundamental definition of group signatures introduced by Bellare et al. [37].
An ML-GS scheme consists of the following five PPT algorithms.
ML-GS.Setup(1λ): Given a security parameter λ, the algorithm outputs a group public key gpk, a group trapdoor key gmk, a tracing key gtk for the group manager, and an empty registration list reg.
ML – GS.KeyGen(gpk, gmk, i, reg): Given the gpk, gmk, a member's identity i, and the registration list reg, the algorithm outputs the member’s signing key ski.
ML – GS.Sign(gpk, ski, M): Given the gpk, ski, and a message M, the algorithm outputs a signature σ.
ML – GS.Verify(gpk, M, σ): Given the gpk, M and a signature σ, the algorithm outputs “Valid” if the signature is valid; otherwise, it outputs “Invalid”.
ML – GS.Open(gpk, gtk, M, σ, reg): Given the gpk, gtk, M, σ and the registration list reg, the algorithm outputs a member index i ∈ [N] or ⊥.
Verification correctness:
Opening correctness:
The group signature scheme should guarantee the message reliability. The ML-GS scheme satisfies the message authentication requirements by ensuring that only legitimate group members can generate valid signatures through the modular lattice assumptions and the FIPS 204 standard signature structure, and that any attempts to forge signatures are equivalent to solving the MLWE/MSIS problem. The validity of a signature can be publicly verified, but only the signer can generate a legitimate signature for the corresponding message (integrity and authenticity are guaranteed).
The security requirements of GS scheme vary depending on different application scenarios. According to the summary by Bellare et al. [37], the two most fundamental security properties of group signatures are anonymity and traceability. Anonymity ensures that the identity of the actual signer is indistinguishable to external observers. ML-GS guarantees that the verification of a valid signature does not reveal the signer’s identity. In our scheme, the identity vector of the group member is concealed during the signing process using K-PKE encryption standardized in FIPS 203. Combined with a dual-Dilithium mechanism and random masking, we construct a "sign-hybrid-encrypt" structure. Traceability allows the group manager to reveal the identity of the signer when necessary, ensuring that the signer cannot deny their signing behavior. Our design guarantees traceability: any attack aiming to break traceability is shown to be as hard as solving the underlying MSIS problem. In our security proof, we demonstrate that, assuming the hardness of MSIS, no adversary can forge a valid signature and falsely attribute it to another group member.
We first introduce three random oracles.
Ocorrupt(i) Given a member's identity i, returns a signing key ski.
sign(i,M): Given a member's identity i and a message M, returns a signature σ ← ML – GS. Sign(gpk, ski, M).
OP(M, σ): Given a message M and a signature σ, if the signature is the correct signature of the member for the message M, returns the identity i; otherwise, it returns ⊥.
The ML-GS scheme achieves anonymity if no adversary can identify the actual signer of a valid group signature. Specifically, the scheme is said to satisfy anonymity if every adversary's advantage in the corresponding security game (see Figure 3) remains negligible.

The Definitions for Anonymity Game
Traceability guarantees that, even in the presence of collusion among group members and with access to the group manager’s tracing key, the adversary cannot forge a signature that resists correct attribution. The ML-GS scheme satisfies this property if the adversary's advantage in the traceability game (see Figure 4) is negligible.

The Definitions for Traceability Game
The setup algorithm ML-GS.Setup takes the security parameter λ as input. First, it invokes the trapdoor generation algorithm TrapGen to generate a matrix A and its corresponding trapdoor TA, preparing for the issuance of signing keys to the group members.
The algorithm K-PKE.KeyGen generate an encrypted public-private key pair (ekPKE, dkPKE)‥ This step ensures that during the signature generation phase, the signer's identity is correctly encrypted, and during the opening phase, the signer's identity is correctly decrypted using the private key.
A random seed ζ is selected and expanded using an XOF function (such as SHAKE-256, denoted as H in this paper) to generate additional random values. Specifically:
- 1)
A 64-byte public key random seed ρ. It can be used to randomly sample a polynomial vector u and a polynomial matrix B from ExpandPK algorithm.
- 2)
A 32-byte private key random seed ρ′‥ It can be used to sample and generate the signing key for the member during the key generation phase.
Finally, the registration list reg is initialized as empty. The setup algorithm is shown in Algorithm 1.
\left( {{\bf{A}},{{\bf{T}}_A}} \right) \in {\rm{R}}_q^{k \times l} \times {\rm{R}}_q^{l \times l} \leftarrow {\mathop{\rm TrapGen}\nolimits} (k,l,q) (ekPKE = (a, b), dkPKE = s) ← K-PKE.KeyGen()
ζ ← B32
ρ, ρ' ∈ B64 × B32 ← H(ζ)
({\bf{u}},{\bf{B}}) \in {\rm{R}}_q^k \times {\rm{R}}_q^{k \times k} \leftarrow {\rm{ ExpandPK}}(\rho ) reg = {}
return gpk = (ρ, A, a, b), gmk = (<′, TA), gtk = s, reg = {}
The key generation algorithm ML-GS.KeyGen takes gpk, gmk, the identity i of the member and the registration list reg as inputs. First, the private key random seed ρ'. is expanded into a polynomial vector
{x_i} \in S_\eta ^k \leftarrow {\mathop{\rm ExpandS}\nolimits} \left( {{\rho ^\prime }} \right) ({\bf{u}},{\bf{B}}) \in {\rm{R}}_q^k \times {\rm{R}}_q^{k \times k} \leftarrow {\mathop{\rm ExpandPK}\nolimits} (\rho ) gi = Bxi
{{\bf{s}}_i} \in {\rm{R}}_q^{l \times 1} \leftarrow {\mathop{\rm SamplePre}\nolimits} \left( {{\bf{A}},{{\bf{T}}_A},{\bf{u}} - {{\bf{g}}_i},\eta } \right) reg ← reg ∪ {gi}
return gski = (xi, si)
The signing algorithm ML-GS.Sign takes gpk, ski and M as input. First, the public key random seed ρ is used to expand the public parameters u, B through the ExpandPK algorithm, and then the identity vector gi is computed. Before signing the message, it is concatenated with seed ρ to produce a 64-byte message representation μ.
Signing algorithm consists of rejection sampling loop and an encryption. The specific steps are as follows:
To obtain the signature, the signing algorithm first encrypts the member's identity vector gi using the encryption algorithm of K-PKE. It then selects two vectors y1, y2 from a Gaussian distribution
({\bf{u}},{\bf{B}}) \in {\rm{R}}_q^k \times {\rm{R}}_q^{k \times k} \leftarrow {\rm{ ExpandPK }}(\rho ) gi = Bxi
μ ← H(ρ∥M)
(z1, z2) = ⊥
while (z1, z2) = ⊥ do
r, r′ ← B64
ct1 ← K-PKE.Encrypt(a, b, gi, r)
{{\bf{y}}_1},{{\bf{y}}_2} \leftarrow D_{{\gamma _1}}^k \times D_{{\gamma _1}}^l (w1, w2) = (By1, By1 + Ay2)
{{\tilde c}_1} \leftarrow H\left( {\mu \left\| {\;{{\bf{w}}_1}\;} \right\|\;c{t_1}} \right) {{\tilde c}_2} \leftarrow H\left( {\mu \left\| {\;{{\bf{w}}_2}\;} \right\|\;c{t_1}} \right) c{t_2} \leftarrow {\rm{ K - PKE}}{\rm{.Encrypt }}\left( {{\bf{a}},{\bf{b}},{{\tilde c}_1},{r^\prime }} \right) \tilde c \leftarrow H\left( {{{\tilde c}_2}c{t_2}} \right) c \leftarrow {\rm{ SampleInBall }}(\tilde c) (Z1, z2) = (y + cxi, y2 + cs
if Rej(z1, cxi, γ1) = 0 or Rej(z2, csi, γ1) = 0, then (z1, z2) = ⊥
{\bf{return}}{\rm{ }}\sigma = \left( {{{\tilde c}_2},{{\bf{z}}_1},{{\bf{z}}_2},c{t_1},c{t_2}} \right)
The verification algorithm ML-GS.Verify takes the group public key gpk, a message M, and a signature σ as input. First, the public key random seed ρ is used to expand the public parameters u, B through the ExpandPK algorithm, and then the hash ρ and message M into a 64-byte message representation μ. Next, the challenge value
({\bf{u}},{\bf{B}}) \in {\rm{R}}_q^k \times {\rm{R}}_q^{k \times k} \leftarrow {\rm{ ExpandPK }}(\rho ) μ ← H(ρ∥M)
\tilde c = {\rm{H}}\left( {{{\tilde c}_2}c{t_2}} \right) c = {\rm{ SampleInBall }}(\tilde c) {\bf{w}}_2^\prime = {\bf{B}}{z_1} + {\bf{A}}{z_2} - {\bf{u}}c if ∥z1∥∞≤ B and ∥z2∥∞≤B and
then{{\tilde c}_2} = H\left( {\mu \left\| {\;{\bf{w}}_2^\prime \;} \right\|c{t_1}} \right) return "Valid
else
return "Invalid"
The opening algorithm ML-GS.Open takes gpk, the tracing key gtk, a message M, a signature σ, and the registration list reg as input. First, as in the verification algorithm, it reconstructs u, B, μ,
({\bf{u}},{\bf{B}}) \in {\rm{R}}_q^k \times {\rm{R}}_q^{k \times k} \leftarrow {\rm{ ExpandPK }}(\rho ) μ ← H(ρ∥M)
\tilde c \leftarrow H\left( {{{\tilde c}_2}\tilde c{t_2}} \right) c = {\rm{ SampleInBall }}(\widetilde {\rm{c}}) gi = K-PKE.Decrypt(s, ct1)
{{\tilde c}_1} = {\rm{ K - PKE}}{\rm{.}}{\mathop{\rm Decrypt}\nolimits} \left( {{\bf{s}},c{t_2}} \right) if
and gi ∈ reg then{{\tilde c}_1} = H\left( {\mu \left\| {{\bf{B}}{z_1} - {{\bf{g}}_i}c\;} \right\|c{t_1}} \right) return i
else
return ⊥
In this section, we prove the correctness of the ML - GS scheme, mainly including the verification correctness and the opening correctness. Suppose the signature
1)Verification correctness
The verifier first recovers the public key (u, B), the hash value μ of the message M, and the challenge
a)
During the signature stage, according to step 16 of the signature algorithm procedure, if any coefficient of z1, z2 are greater than γ1 – β, it will lead to the failure of the rejection sampling output, and recalculation will be done with the new masking vector yi. Therefore, the correct signatures output by the signature algorithm procedure will all satisfy
b)
First, according to step 5 of the verification algorithm, we have
Then, according to steps 3 and 7 of the key generation algorithm, we know that: gi = Bxi, Asi = u – gi. Combining with formula (1), we can get:
2) Therefore, we can obtain
Opening correctness
Based on the security guarantees of the Kyber encryption algorithm specified in FIPS 203 [8], the K-PKE.Decrypt algorithm can recover the identity matrix gi and the challenge value
To prove that the ML-GS scheme satisfies anonymity, we first construct a simulator algorithm. If an adversary A is able to break the anonymity of a signature generated by the simulator, then there exists a challenger B that can extract a solution to the M-LWE problem. The simulator algorithm is shown in Algorithm 6.
({\bf{u}},{\bf{B}}) \in {\rm{R}}_q^k \times {\rm{R}}_q^{k \times k} \leftarrow {\rm{ ExpandPK }}(\rho ) gi = Bxi
μ ← H(ρ∥M)
r, r’ ← B64
ct1 ← K-PKE.Encrypt(a, b, gi, r)
{{\bf{y}}_1},{{\bf{y}}_2} \leftarrow D_{{\gamma _1}}^k \times D_{{\gamma _1}}^l {{\tilde c}_1} \leftarrow {{\rm{B}}^{32}} {{\tilde c}_2} \leftarrow {{\rm{B}}^{32}} c{t_2} \leftarrow {\rm{ K - PKE}}{\rm{.Encrypt }}\left( {{\bf{a}},{\bf{b}},{{\tilde c}_1},{r^\prime }} \right) \tilde c \leftarrow H\left( {{{\tilde c}_2}c{t_2}} \right) c \leftarrow {\rm{SampleInBall}}(\tilde c) {{\bf{z}}_1} \leftarrow D_{{\gamma _1}}^k {{\bf{z}}_2} \leftarrow D_{{\gamma _1}}^l (w1, w2) = (Bz1 – gic, Bz1 + Az2 – uc)
if H oracle has queried about w1 or w2 then
Abort
else
Program
and{{\tilde c}_1} \leftarrow H\left( {\mu \left\| {{{\bf{w}}_1}} \right\|c{t_1}} \right) {{\tilde c}_2} \leftarrow H\left( {\mu \left\| {{{\bf{w}}_2}} \right\|c{t_1}} \right) return
\sigma = \left( {{{\tilde c}_2},{{\bf{z}}_1},{{\bf{z}}_2},c{t_1},c{t_2}} \right)
The statistical distance between the output of the ML-GS signing algorithm and that of a simulated algorithm which does not take the member's secret key as input is negligible.
The only difference between the real signing algorithm and the simulated one lies in the generation of the response value z1, z2 and the challenge value
In the signing algorithm, the output z1, z2 obtained through the rejection sampling procedure is statistically indistinguishable from a uniform sample over distribution
The proposed ML-GS scheme satisfies anonymity based on the hardness of the MLWE problem in ROM.
We prove that the ML-GS scheme satisfies anonymity through a sequence of games.
Game0: The challenger B runs the setup and key generation algorithms normally, and gives the group public key gpk and the member's signing key gski = (xi, si). When A makes an opening query Oopen(gpk, gmsk, ·), returns either i ∈ [N] or ⊥. Therefore, A selects two identities i0, i1 and message M to send to B. Then, B chooses a bit b ∈ {0,1} and sends the signature σ ← ML-GS.Sign(gpk, gskib, M) to A. Finally, A outputs a guess b′ for the signer’s identity ib.
Game1: This game is identical to Game0, except that the signing algorithm is replaced with the simulated algorithm SignSimulator.
In Game1, the simulated algorithm is used to generate signatures, so the ciphertexts ct1 and ct2 are the only means by which the attacker can obtain information about the signer's identity, i.e.,
Game2 : The challenger B first runs the key generation algorithm to generate an encryption key pair and sends the public key (a, b) to A. Then, A selects two random messages M0 and M1 and sends them to B, B randomly selects a bit b ∈ {0,1} and returns the ciphertext ct ← K-PKE.Encrypt(M0) to A. Finally, A outputs a guess b′. According to FIPS 203 [8], the K-PKE scheme satisfies IND-CPA (indistinguishability under chosen-plaintext attacks) security. Therefore, Pr[Game2] ≤ 1/2 + negl, and we conclude that Game1 does not leak any information about the signer’s identity.
Combining the above games, we conclude that Pr[Game0] ≤ 1/2 + negl. Therefore, the ML-GS scheme satisfies anonymity.
The proposed ML-GS scheme satisfies traceability based on the hardness of the MSIS problem in ROM.
Assume that the adversary A can break the traceability of the scheme in the game defined by Definition 5 with non-negligible probability. Then we can construct a PPT algorithm C that breaks the MSIS problem with non-negligible probability. When A queries the signing oracle Osign:
If i ≠ j, then run the honest signing algorithm and return ML-GS.Sign(gpk,ski, ·);
If i = j, then C runs the simulator algorithm and returns the output of the simulator algorithm σ ← SignSimuiator.
When the corruption oracle Ocorrupt is queried about i ∈ [N]:
If i ≠ j, then C returns gski;
If i = j, then C returns ⊥.
After the query phase ends, A outputs a signature
.\sigma = \left( {{{\tilde c}_2},{{\bf{z}}_1},{{\bf{z}}_2},c{t_1},c{t_2}} \right)
The first case is σ is a valid signature for j. In the ROM, H(μ ∥ w1 ∥ ct1) and H(μ ∥ w2 ∥ ct1) have already been queried, and Osign returned
In the ROM, we have
Since
Another case is when the output of the opening algorithm is ⊥. If gi ≠ reg, then we have
Alternatively, when
Next, we provides some subroutines used in the scheme construction presented in Section 4 (e.g., ExpandPK). These Algorithms 7 and 8 are inspired by examples from the FIPS 204 standard [9], with certain modifications made to align with the scheme proposed in this paper. For more fundamental subroutines, such as SampleInBall, please refer to the FIPS 204 standard.
Samples a k vector u and a k × k matrix B,’.
for i from 0 to k -1 do
ρ′ ← ρ ∥ IntegerToBytes(i,2)
u[i] ← RejNTTPoly(ρ′)
for i from 0 to k -1 do
for j from 0 to k -1 do
ρ′ → ρ ∥ IntegerToBytes(i, 1) ∥ IntegerToBytes(j, 1)
B[i, j] ← RejNTTPoly(ρ′)
return (u, B)
Samples a vector x, each with polynomial coordinates whose coefficients are in [–η, η]
for i from 0 to k -1 do
ρ′ → ρ ∥ IntegerToBytes(i,1)
x[i] ← RejBoundedPoly(ρ′)
return x
Our proposed ML-GS scheme is constructed based on hard problems over lattices. We evaluate its security using two sets of parameters and corresponding estimations, as shown in Table 2. First, under the parameter set PARM I, and based on the estimation by enumeration [38], the ML-GS scheme achieves 96 bits post-quantum security level, which meets the Category I standard defined by the NIST. Similarly, PARM II enables our scheme to achieve 154 bit post-quantum security.
The Parameters for ML-GS Scheme
| Parameter | Recommended Parameters | |
|---|---|---|
| PARM I | PARM II | |
| q | 1073738753 | 1073738753 |
| Q | 3329 | 3329 |
| n | 256 | 256 |
| (k, l) | (4,4) | (6,5) |
| η | 83832 | 83290 |
| η1 | 3 | 3 |
| τ | 39 | 49 |
| ≈ 231 | ≈ 231 | |
| BKZ blocksize b to break SIS | 364 | 583 |
| Classical security | 106 | 170 |
| Quantum security | 96 | 154 |
The main time-consuming operations in the ML-GS scheme stem from trapdoor generation and sampling algorithms over module lattices. In evaluating the computational efficiency of the ML-GS scheme, we primarily focus on operations that consume significant time, while omitting those with relatively low overhead, such as polynomial addition and hash operations. We employed the Sage Math library and conducted performance tests under a Windows 11 operating system with an AMD Ryzen 5 5600G 3.9 GHz processor. The average runtime of these time-consuming operations was measured over 1000 executions. The computation times for trapdoor generation and sampling algorithms are presented in Table 3.
Algorithm Notations and Execution Time (ms)
| Notation | Description | Execution time |
|---|---|---|
| TM–TrapGen | Trapdoor generation algorithm on module lattices | 248.09 |
| TM–Sample | Trapdoor sampling algorithm on module lattices | 31.10 |
We tested the setup, key generation, signing, and verification algorithms of the ML-GS scheme under two sets of security parameters, and the results are shown in Table 4.
The Time Cost for ML-GS Scheme
| Setup | KeyGen | Sign | Verify | |
|---|---|---|---|---|
| PARM I | 248.09 | 56.54 | 89.04 | 57.24 |
| PARM II | 426.40 | 96.12 | 179.67 | 114.48 |
Next, we compare our scheme with two lattice-based GS schemes: Lyubashevsky et al. introduced their scheme in 2022 [12], and Tang et al. proposed theirs in 2024 [23]. The comparison results regarding time computation overhead are shown in Table 5. Here, d denotes the number of polynomial matrix multiplications, TM represents the total time cost of these multiplications, and TS and TV refer to the time required for non-interactive zero-knowledge proof generation and verification, respectively.
The comparison of time cost
| KeyGen | Signature | Verify | Security | |
|---|---|---|---|---|
| [12] | TSample | 3dTMul + TS | dTMul + TS | CPA-Anonymity |
| [23] | TSample | 7dTMul + TS | 2dTMul + TS | CPA-Anonymity |
| [ours] | TM–Sample | 5dTMul | 3dTMul | CCA-Anonymity |
To make the comparison results more intuitive, we conducted simulated implementations of the main time-consuming operations for both schemes and the ML-GS scheme. Figure 5 presents the specific comparison of time overhead.

Time Cost Comparison of GS Schemes (ms).
As shown in Figure 5, the ML-GS scheme significantly outperforms existing solutions in all core operations. Key generation is over 75% faster, signing time is reduced by up to 69%, and verification is about 30% faster. These improvements highlight the efficiency and practicality of our scheme for real-time applications.
The sizes of the keys and signatures are calculated as follows:
Group public key. The group public key consists of a public random seed ρ, a public matrix A, and a K-PKE key pair (a, b). Therefore, its size is 32 + 32kl⌈log2 q⌉ + 32k(k + 1)⌈log2 Q⌉ bits.
Group trapdoor key. The group trapdoor key consists of a secret random seed ρ and a trapdoor matrix TA. Thus, its size is 32 + 32l2⌈log2 q⌉ bits.
Group tracing key. The group tracing key includes only the K-PKE decryption key s. Hence, its size is 32k⌈log2 η1⌉ bits.
Signing key. The group member's signing secret key consists of a random short vector x and a sampled short vector s. To compute the size of s, we refer to Lemma 5. Accordingly, the total size is
Signature. A signature σ consists of
Based on the above calculations of the storage overhead for each key and signature, Figure 6 presents the communication cost of the ML-GS scheme under two parameter sets. As shown in Figure 6, the group public key incurs the largest overhead in the ML-GS scheme, reaching 22.5 KB under PARM I, followed by the group trapdoor key, which costs 15 KB. This substantial cost mainly results from the trapdoor setup and preimage sampling over lattices, which require relatively large parameter settings.

The Store Cost of ML-GS Scheme.
Regarding the signature size, thanks to the signature architecture adopted from FIPS 204, our scheme exhibits a unique advantage among lattice-based group signature schemes. Under the PARM I parameter set that achieves a 96-bit post-quantum security level, the signature size is only 12.75 KB.
To demonstrate the efficiency of the ML-GS scheme in terms of storage cost, we compare our scheme with scheme [12] and [23], and the comparison results are shown in Table 6. For a fair comparison, we evaluate ML-GS under PARM II, which provides the same post-quantum security level as scheme [12] and [23].
Comparison of Storage Cost
| Public Key Size | Secret Key Size | Signature Size | |
|---|---|---|---|
| [12] | 48KB | 6KB | 92KB |
| [23] | 268.5KB | 68.7KB | 386.1KB |
| Ours | 44.9KB | 7KB | 18.0KB |
From Table 6, it can be seen that the public key size of our scheme is reduced by approximately 6.46% compared to scheme [12]’s 48KB, and by about 83.32% compared to scheme [23]’s 268.5KB, effectively lowering storage overhead. The secret key size is 7KB, which is slightly increased by 16.67% compared to [12], but reduced by 89.75% compared to [23]’s 68.7KB, maintaining a relatively low key burden. More notably, the signature size is only 18.0KB, representing a reduction of approximately 80.43% and 95.34% compared to the 92KB of [12] and 386.1KB of [23], respectively.
However, compared with some existing group signature schemes based on zero - knowledge proofs, our ML - GS scheme also has some drawbacks when it comes to tracing the identity of group members. That is, the ML - GS.Open algorithm in the opening phase requires a registration list reg as an input parameter. The registration list contains the identity vectors of all registered group members. Therefore, as the number of group members increases, the overhead cost of the opening algorithm for the group administrator will increase.
This paper presents a module lattice-based group signature scheme, ML-GS, designed to achieve efficient signing performance and privacy protection while remaining resilient against quantum attacks. The scheme builds upon the standardized post-quantum signature algorithm FIPS 204 and incorporates a dual-Dilithium signing algorithm along with the K-PKE encryption scheme from FIPS 203. By employing a “sign-hybrid-encryp”structure, ML-GS achieves both member anonymity and traceability. Under the Random Oracle Model, we prove that ML-GS satisfies anonymity and traceability based on the hardness of the Module Learning With Errors and Module Short Integer Solution assumptions. Compared to existing group signature schemes at the same security level, ML-GS achieves a 6% reduction in public key size and an 80% reduction in signature size, with only a slight increase in private key size, demonstrating its practicality and promise in constructing efficient and scalable group signature systems.
As future work, we aim to address the communication overhead introduced using the registration list in the opening algorithm. We also plan to further optimize the communication and computational efficiency of the scheme and explore its deployment in real-world privacy-preserving applications.