Next Article in Journal
Fuzzy Representation of Principal’s Preferences in Inspire Negotiation Support System
Next Article in Special Issue
DiLizium: A Two-Party Lattice-Based Signature Scheme
Previous Article in Journal
Viscosity and Rheological Properties of Graphene Nanopowders Nanofluids
Previous Article in Special Issue
Topological Quantum Codes from Lattices Partition on the n-Dimensional Flat Tori
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Lattice-Based Logarithmic-Size Non-Interactive Deniable Ring Signatures

1
School of Mathematics and Information Science, Guangzhou University, No. 230 Wai Huan Xi Road, Guangzhou 510006, China
2
College of Computer and Communication Engineering, Zhengzhou University of Light Industry, Zhengzhou 450002, China
*
Authors to whom correspondence should be addressed.
Submission received: 10 June 2021 / Revised: 25 July 2021 / Accepted: 28 July 2021 / Published: 29 July 2021

Abstract

:
Deniable ring signature can be regarded as group signature without group manager, in which a singer is capable of singing a message anonymously, but, if necessary, each ring member is allowed to confirm or disavowal its involvement in the signature via an interactive mechanism between the ring member and the verifier. This attractive feature makes the deniable ring signature find many applications in the real world. In this work, we propose an efficient scheme with signature size logarithmic to the cardinality of the ring. From a high level, we adapt Libert et al.’s zero-knowledge argument system (Eurocrypt 2016) to allow the prover to convince the verifier that its witness satisfies an additional condition. Then, using the Fait-Shamir transformation, we get a non-interactive deniable ring signature scheme that satisfies the anonymity, traceability, and non-frameability under the small integer solution assumption in the random oracle model.

1. Introduction

Ring signature was first formalized by Rivest et al. [1] to deal with situations, such as leaking secrets anonymously. Specifically, a signer first picks up several public keys to form a ring; then, it generates a signature anonymously on behalf of the ring using its secret key. Any verifier is unable to get any information about the real signer, except that the message is signed by one of the ring member. This appealing feature has made the ring signature find various applications in cryptography [1,2,3]. In some situations, however, the anonymity feature is not always desirable, as it allows a user who signs a false message to shift the blame to other ring members.
It is well-known that group signature [4,5,6,7,8,9] can prevent its members from abusing anonymity, in which users are able to sign messages anonymously, but, when a dispute occurs, the group manager possessing a group master secret key is capable of revoking the anonymity of misbehaving signers. However, group signature cannot handle the leaking secrets scenario, as the the manager is always able to trace the real signer who leaks a piece of invaluable information. Besides, group signature has much higher costs on managing a dynamic group. Finally, the members are anxious that their anonymity will be or has been violated by the manager without notification.
In 2006, Komano et al. [10] formalized the notion of Deniable Ring Signature (DRS), which is as flexible as the ring signature and allows the members to confirm whether they are the real signer or not. Specifically, by using an interactive mechanism between the ring member and the verifier, it enables the real signer to confirm its signed action and allows other ring members to deny their involvement. In short, DRS can be regarded as a ‘lightweight’ group signature, i.e., group signature without the manager. For the security requirements, the DRS should satisfy:
  • Anonymity: Any adversary should not get any information from the signature, unless the ring members are required to confirm or disavow their involvement in the signature.
  • Traceability: Any adversary should not generate a valid ring signature such that no member will be detected as the real signer via the confirmation/disavowal protocol. In other words, the real singer cannot deny its signature.
  • Non-frameability: Any adversary should not produce a valid ring signature such that a ring member, whose secret key is unknown to the adversary, will be detected as the real signer via the confirmation/disavowal protocol. In other words, any adversary cannot frame an honest member.
In their pioneering work, Komano et al. [10] also presented a concrete scheme under the Decisional Diffie–Hellman (DDH) assumption. However, this assumption does not hold in the quantum world [11].

1.1. Contributions and Technical Overview

In this work, we propose an efficient lattice-based Non-interactive Deniable Ring Signature (NDRS) scheme. The notion NDRS, first formalized in Reference [12], means that the confirmation or disavowal of a signature is achieved in a non-interactive manner, instead of the interactive mechanism between the ring member and the verifier. In terms of effiency, our construction is efficient in the sense that the signature size is only logarithmic to the cardinality of the ring. In the aspect of security, our construction satisfies the anonymity, traceability, and non-frameability under the Small Integer Solution (SIS) assumption in the random oracle model.
From a high level, our scheme is a natural extension of the ring signature scheme in Reference [8] to the NDRS setting. In more detail, we adapt their argument system for a tree-based accumulator [8] to allow the prover to convince the verifier that the prover knows a witness which not only accumulates to the root of a Merkle tree but also satisfies some additional conditions. Specifically, compared with the ring signature scheme in Reference [8], we add one more additional condition, an non-interactive identification scheme used by the ring members to prove their identity. Combining zero-knowledge argument systems for two or more NP relations is a general strategy widely used in previous works, such as group signatures [8,9], policy-based signatures [13], compact e-cash [14], etc.
The starting point of our construction is the Zero Knowledge Argument of Knowledge ( ZKAoK ) for the Merkle tree-based accumulator [8]. Specifically, the underlying hash function is defined by h A ( x ) = bin ( A · x mod q ) { 0 , 1 } m / 2 , where the uniformly random matrix A Z q n × m serves as the common reference string, x { 0 , 1 } m is the input vector, and bin ( · ) denotes the coordinate-wise binary decomposition of its input. Then, by using the framework of Stern’s protocol [15], Libert et al. [8] can prove knowledge of hash chain in a zero-knowledge fashion. Besides, through the Fait-Shamir transformation, they also build ring signature with logarithmic size in the number of ring. Note that their ring signature enjoys complete anonymity. To achieve our goal that each ring member is able to generate a piece of evidence demonstrating whether it is the real signer or not, we need another matrix B Z q n × m which acts as the public key of an identification scheme. In more detail, to sign a message M, a signer possessing his secret x generates a zero-knowledge argument system to show that:
Fact 1
d = h A ( x ) .
Fact 2
d is properly accumulated into the root of the Merkle tree.
Fact 3
B · x = b mod q .
We first use the procedure in Reference [8] as a sub-protocol to prove Fact 1 and Fact 2 in zero knowledge. The key point in our construction is to prove the secret in Fact 1 simultaneously satisfies Fact 3. To this end, we employ again the framework of Stern’s protocol [15] as a sub-protocol, such that it is compatible with the proof in Reference [8]. The details are presented in Section 3.
Then, we apply the Fait-Shamir transformation to our interactive protocol and obtain a signature scheme in the random oracle by repeating it κ = ω ( log n ) times to make the soundness error negligibly small. Generally, the anonymity of our NDRS scheme is based on the zero-knowledge property of the underlying argument system, while the traceability and the non-frameability are built on the fact that the underlying argument system is indeed an argument of knowledge. The description of the construction and its proof are described in Section 4.

1.2. Related Works

In 2006, Komano et al. [10] first introduced the notion of DRS and proposed a concrete DRS construction based on the DDH assumption. Recently, Gao et al. [12] put forward the NDRS notion, which is a direct generalization of DRS to the non-interactive setting. Besides, they proposed a concrete NDRS scheme under lattice assumptions, which is conjectured resistance against quantum computers. Their scheme, however, is shown to be insecure in Reference [16], as the scheme does not meet the ‘Traceability’ and ‘Non-frameability’ security requirements.

1.3. Organizations

We start in Section 2 by providing some background regarding NDRS and useful tools developed in Reference [8]. Then, in Section 3, we present an interactive protocol, which is the key component of our construction. In Section 4, we show the concrete scheme and its efficiency analysis and security proof. Finally, we conclude the paper with the obtained results.

2. Preliminaries

The set of integers { 1 , , k } is denoted by [ k ] . If S is a finite set, x S means that x is chosen uniformly at random from S. For b { 0 , 1 } , let b ¯ = 1 b . ⊕ denotes the bit XOR operation. For any positive integer q, denote by Z q the quotient ring Z / ( q Z ) . Vectors, denoted by bold lowercase letters, are in column form. Matrices are represented in bold uppercase letters, and the concatenation of two matrices, say A Z q n × m 1 and B Z q n × m 2 , is denoted by [ A B ] Z q n × ( m 1 + m 2 ) . The tensor product is denoted by ⊗. Let B 2 m m be the set of all vectors in { 0 , 1 } 2 m with Hamming weight m, and S 2 m be the set of all permutations of 2 m elements. The abbreviation PPT means “probabilistic polynomial time”.
Throughout the paper, we denote by n the security parameter and define: q = O ˜ ( n ) ; k = log q ; m = 2 n k . Let G = I n g t Z q n × n k , where g t is the row vector
g t = [ 1 2 4 2 k 1 ] Z q 1 × k .
Note that, for any v Z q n , we have v = G · bin ( v ) , where bin ( v ) { 0 , 1 } n k denotes the binary representation of v .

2.1. Non-Interactive Deniable Ring Signature (NDRS)

For any positive integer N 2 , the ring R, formed by N users’ public keys, is denoted by R = { p k i 0 , p k i 1 , , p k i N 1 } . For ease of notation, we simply let R = { p k 0 , p k 1 , , p k N 1 } with ring size N. Now, we recall the definition and security requirements for the NDRS presented in Reference [12].
  • Setup ( 1 n ) : Take as input n and output the system parameter pp .
  • KeyGen ( pp ) : Take as input pp and output a public/secret key pair ( p k , s k ) .
  • Sign ( pp , R , s k , M ) : Take as inputs pp , a set of N public keys R = { p k 0 , p k 1 , , p k N 1 } , a secret key s k for which its corresponding p k R and a message M to be signed, and output a ring signature Σ .
  • Verify ( pp , R , M , Σ ) : Take as inputs pp , R, M, and Σ , and output 1 if Σ is valid or 0 otherwise.
  • EvidenceGen ( pp , R , s k i , Σ ) : Take as inputs pp , R, user i’s secret key s k i , M, and Σ , and output a piece of evidence ξ i .
  • EvidenckCheck ( pp , R , i , ξ i , Σ ) : Take as inputs pp , R, an identity index i of a user, M and Σ , and output “confirmation”, “disavowal”, or “reject”.
The correctness requirements for an NDRS scheme are formalized as follows:
  • The signature Σ generated by the Sign algorithm is properly accepted by the Verify algorithm, i.e., Verify ( pp , R , M , Σ ) = 1 for any pp Setup ( 1 n ) , any ( p k , s k ) KeyGen ( pp ) , any R such that p k R and any M { 0 , 1 } * .
  • The real signer of the signature Σ will generate a piece of evidence such that the evidence check algorithm outputs “confirmation”, i.e.,
    EvidenckCheck pp , R , i , EvidenceGen ( pp , R , s k i , Σ ) , Σ = confirmation "
    for any valid signature Σ generated by user i.
  • The non-real signer should generate a piece of evidence such that the evidence check algorithm outputs “disavowal”, i.e.,
    EvidenceCheck pp , R , j , EvidenceGen ( pp , R , s k j , Σ ) , Σ = disavowal "
    for any ring member j i .
For the security requirements, we adopt the notions and games in References [10,12]. Suppose each user has a public/private key pair supported by the Public Key Infrastructure (PKI). Let List be a public key content issued by PKI, and let MList be a list of malicious signers. Let GSet be a list of message-signature pairs generated through a challenge oracle query Ch b ( · ) . An adversary is able to make the following queries.
  • Add ( i ) : on input i, this oracle generates a key pair ( p k i , s k i ) for user i, adds i together with the key pair to List , and returns p k i .
  • Reg ( i , p k i ) : on inputs i and p k i , this oracle registers a new signer i with the given public key p k i in List and adds user i to MList .
  • Crpt ( i ) : on input i, this oracle returns the secret key s k i and adds user i to MList .
  • DRSig ( i k ; M , i 1 , , i k 1 , i k + 1 , , i t ) : on inputs a specified user i k , a message M, and a set of identities, this oracle returns a signature Σ associated with the ring formed by the input identities, by using the secret key of user i k .
  • Ch b ( i 0 , i 1 , M ) : on inputs a pair of identities ( i 0 , i 1 ) and M, this oracle returns the signature Sign ( pp , { p k i 0 , p k i 1 } , s k i b , M ) for a challenge bit b { 0 , 1 } , and adds it to GSet . This oracle is only used in the definition of anonymity.
  • EGen ( i , M , Σ ) : on inputs i , M , Σ , this oracle returns a piece of evidence demonstrating whether the entity i is the real signer or not. This oracle will reject the query if the input signature is an output from the challenge oracle in the experiment of anonymity.
  • Hash ( · ) : this oracle outputs a random string with a fixed length for an arbitrary input.
As mentioned before, an (N)DRS scheme should satisfy anonymity, traceability, and non-frameability. Each of these security requirements is formalized by an experiment, as shown in Figure 1.
  • Anonymity
For an NDRS scheme, a security parameter n, and a PPT adversary A , the property of anonymity is formalized using the experiment Exp N D R S , A anon b ( n ) , as described in Figure 1. The advantage Adv N D R S , A anon ( n ) is defined as
Adv N D R S , A anon ( n ) = | 2 Pr [ Exp N D R S , A anon b ( n ) = b ] 1 | .
An NDRS has anonymity if Adv N D R S , A anon b ( n ) is negligible for any PPT adversary A and security parameter n.
  • Traceability
The property of traceability is formalized using the experiment Exp N D R S , A trace ( n ) , as shown in Figure 1. The advantage of the adversary is given by:
Adv N D R S , A trace ( n ) = Pr [ Exp N D R S , A trace ( n ) = 1 ] .
An NDRS is said to hold traceability if Adv N D R S , A trace ( n ) is negligible for any PPT adversary A and security parameter n.
  • Non-frameability
The property of non-frameability is formalized using the experiment Exp N D R S , A nf ( n ) , as shown in Figure 1. The advantage of the adversary is defined as:
Adv N D R S , A nf ( n ) = Pr [ Exp N D R S , A nf ( n ) = 1 ] .
An NDRS is said to hold non-frameability if Adv N D R S , A nf ( n ) is negligible for any PPT adversary A and security parameter n.

2.2. Average-Case Lattice Problems

In this subsection, we briefly recall the average-case Small Integer Soulution (SIS) problem (in the infinity norm version) and its hardness guarantees. For more details, see References [17,18,19,20].
Definition 1
(Reference [17]). Given uniformly random matrix A Z q n × m , the SIS n , m , q , β problem asks to find a non-zero vector x Z m such that A · x = 0 mod q and x β .
The hardness of the SIS problem is guaranteed by a certain lattice problems in the worst case, such as the Shortest Independent Vector Problem (SIVP).
Theorem 1
(References [18,19,20]). If m , β = poly ( n ) , and q > β · O ˜ ( n ) , then the SIS n , m , q , β problem is at least as hard as the worst-case problem SIVP γ for some γ = β · O ˜ ( m n ) . Specifically, for β = 1 , q = O ˜ ( n ) , m = 2 n log q , the SIS n , m , q , 1 problem is at least as hard as SIVP O ˜ ( n ) .

2.3. Statistical Zero-Knowledge Argument Systems

Let R : { 0 , 1 } * × { 0 , 1 } * { 0 , 1 } be an NP relation. The interaction P , V between a prover P and a verifier V is called an interactive argument system for the relation R if the following two conditions hold:
  • Completeness
If R ( x , w ) = 1 , then
Pr [ P ( x , w ) , V ( x ) = 1 ] = 1 .
  • Soundness
If R ( x , w ) = 0 , then, for every PPT P * :
Pr [ P * ( x , w ) , V ( x ) = 1 ] e ,
where e [ 0 , 1 ] is called the soundness error.
In this work, we will employ the Stern-type ZKAoK [15], which is a Σ -protocol from a generalized point of view in References [21,22]. Besides, we will utilize the lattice-based string commitment scheme in Reference [23] COM : { 0 , 1 } * × { 0 , 1 } m / 2 Z q n , which is statistically hiding and computationally binding under the assumption that SIVP O ˜ ( n ) is hard.

2.4. Lattice-Based Accumulator

We first recall a certain family of collision-resistant hash functions presented in Reference [8].
Definition 2.
The function family H : { 0 , 1 } n k × { 0 , 1 } n k { 0 , 1 } n k is given by H = { h A : A Z q n × m } , where
h A ( u 0 , u 1 ) = bin ( A 0 · u 0 + A 1 · u 1 mod q ) { 0 , 1 } n k .
for any ( u 0 , u 1 ) { 0 , 1 } n k × { 0 , 1 } n k , and A = [ A 0 A 1 ] with A 0 , A 1 Z q n × n k .
Then, we recall the Merkle tree accumulator with N = 2 l leaves based on the hash function family H above.
  • TSetup ( 1 n ) : On input n, output pp = A Z q n × m .
  • TAcc ( A , R } ) : Given R = { d j { 0 , 1 } n k } j = 0 N 1 , let u j 1 , , j l = d j , where j 1 , , j l { 0 , 1 } is the l bits of j. Define the tree of depth l for the leaves u 0 , , 0 , , u 1 , , 1 as follows:
    • The nodes u b 1 , , b i at depth i [ l ] is given by h A ( u b 1 , , b i , 0 , u b 1 , , b i , 1 ) .
    • The root u { 0 , 1 } n k is defined as h A ( u 0 , u 1 ) .
    Output u as the accumulator value.
  • TWitness ( A , R , d ) : If d R , output ; otherwise, j [ 0 , N 1 ] such that d = d j . Return the witness w defined by:
    w = ( j 1 , , j l ) , ( u j 1 , , j l 1 , j l ¯ , , u j 1 , j 2 ¯ , u j 1 ¯ ) { 0 , 1 } l × ( { 0 , 1 } n k ) l ,
    where u j 1 , , j l 1 , j l ¯ , , u j 1 , j 2 ¯ , u j 1 ¯ are computed by TAcc ( A , R ) .
  • TVerify ( A , u , d , w ) : Given witness
    w = ( j 1 , , j l ) , ( w l , , w 1 ) { 0 , 1 } l × ( { 0 , 1 } n k ) l ,
    let v l = d , and recursively compute v l 1 , , v 1 , v 0 { 0 , 1 } n k for i { l 1 , , 0 } as follows:
    v i = h A ( v i + 1 , w i + 1 ) , if j i + 1 = 0 ; h A ( w i + 1 , v i + 1 ) , if j i + 1 = 1 .
    Return 1 if v 0 = u ; otherwise, return 0.
In Reference [8], the authors also design an argument system for the prover P to convince the verifier V that P knows a value-witness pair ( d , w ) such that TVerify ( A , u , d , w ) = 1 . Toward this goal, they develop the following supporting techniques, which are necessary in our construction, as well.
  • Extension of A = [ A 0 A 1 ] to A * = [ A 0 0 n × n k A 1 0 n × n k ] Z q n × 2 m .
  • Extension of G to G * = [ G 0 n × n k ] Z q n × m .
  • Extensions of v 1 , , v l , w 1 , , w l to v 1 * , , v l * , w 1 * , , w l * B m n k by appending to each vector a length- n k vector with suitable Hamming weight.
  • For i { n k , m } , b { 0 , 1 } and v { 0 , 1 } i , let ext ( b , v ) denote the vector z { 0 , 1 } 2 i of the form z = b ¯ · v b · v .
  • For b { 0 , 1 } and π S m , define the permutation F b , π that transforms z = z 0 z 1 Z q 2 m consisting of 2 blocks of size m into F b , π ( z ) = π ( z b ) π ( z b ¯ ) .
Observe that, for all c , b { 0 , 1 } , π , ϕ S m and v , w { 0 , 1 } m ,
z = ext ( c , v ) v B m n k F b , π ( z ) = ext ( c b , π ( v ) ) π ( v ) B m n k ; y = ext ( c ¯ , w ) w B m n k F b ¯ , ϕ ( y ) = ext ( c b , ϕ ( w ) ) ϕ ( w ) B m n k .

3. The Underlying Zero-Knowledge Argument System

In this section, we present an interactive protocol, upon which our NDRS scheme is built. This protocol bears much resemblance to that in Section 4.2 of Reference [8], except that one more layer is added. Specifically, in our protocol, the prover P is able to convince the verifier V on input ( A , B , u , b ) that P knows a secret tuple ( d , w , x ) such that:
  • d = h A ( x ) { 0 , 1 } n k ,
  • TVerify ( A , u , d , w ) = 1 ,
  • B · x = b mod q Z q n .
More formally, the associated relation R NDRS is given by
R NDRS = { ( ( A , B , u , b ) Z q n × m × Z q n × m × { 0 , 1 } n k × Z q n ; d { 0 , 1 } n k , w { 0 , 1 } l × ( { 0 , 1 } n k ) l , x { 0 , 1 } m ) : A · x = G · d mod q B · x = b mod q TVerify ( A , u , d , w ) = 1 } .

3.1. Description of the Interactive Protocol

The public parameters are n , m , q , k , l , G , G * , A ^ , and B ^ , where
A ^ = [ A 0 n × m ] , B ^ = [ B 0 n × m ] Z q n × 2 m .
The prover P , using its witness, prepares, according to Section 2.4, the following vectors:
v i * , w i * B m n k , z i = ext ( j i , v i * ) , y i = ext ( j ¯ i , w i * ) ,
for all i [ l ] such that
A * · z 1 + A * · y 1 = G · u mod q ; A * · z i + 1 + A * · y i + 1 = G * · v i * mod q ,
for all i [ l 1 ] . Observe that G * · v l * = G · d . First, P extends x into x * B 2 m m . Clearly, A ^ · x * = A · x and B ^ · x * = B · x . In Stern’s framework, a random permutation τ S 2 m and a random ‘mask’ r x Z q 2 m give a ZKAoK of the secret x according to the equivalence x * B 2 m m τ ( x * ) B 2 m m .
After these preparations, P ’s goal is to convince V that it knows the vectors v i * , w i * , z i , y i for all i [ l ] and x * B 2 m such that:
  • Equation (1) holds;
  • A ^ · x * = G * · v l * mod q and B ^ · x * = b mod q .
The interaction between P and V is detailed as follows.
1.
Commitment. P firstly picks the following randomness:
ρ 1 , ρ 2 , ρ 3 { 0 , 1 } m / 2 for COM τ S 2 m ; b 1 , , b l { 0 , 1 } ; π 1 , , π l , ϕ 1 , , ϕ l S m r x Z q 2 m ; r v 1 , , r v l Z q m ; r z 1 , , r z l , r y 1 , , r y l Z q 2 m .
Then, the commitment CMT=( C 1 , C 2 , C 3 ) is sent to V , where
C 1 = COM ( τ ; A ^ · r x G * · r v l ; B ^ · r x ; { b i , π i , ϕ i } i = 1 l ; A * · r z 1 + A * · r y 1 ; { A * · r z i + 1 + A * · r y i + 1 G * · r v i } i = 1 l 1 ; ρ 1 ) C 2 = COM τ ( r x ) ; { π i ( r v i ) , F b i , π i ( r z i ) , F b ¯ i , ϕ i ( r y i ) } i = 1 l ; ρ 2 C 3 = COM τ ( x * + r x ) ; { π i ( v i * + r v i ) , F b i , π i ( z i + r z i ) , F b ¯ i , ϕ i ( y i + r y i ) } i = 1 l ; ρ 3 .
2.
Challenge. V sends to P a challenge C h { 1 , 2 , 3 } .
3.
Response. P sends the response RSP depending on C h as follows:
  • C h = 1 : Let x ˜ * = τ ( x * ) , r ˜ x = τ ( r x ) , and, for each i [ l ] , let:
    b ˜ i = j i b i ; v ˜ i * = π i ( v i * ) ; w ˜ i * = ϕ i ( w i * ) r ˜ v i = π i ( r v i ) ; r ˜ z i = F b i , π i ( r z i ) ; r ˜ y i = F b ¯ i , ϕ i ( r y i ) .
    Set RSP= x ˜ * ; r ˜ x ; { b ˜ i , v ˜ i * , w ˜ i * , r ˜ v i , r ˜ z i , r ˜ y i } i = 1 l ; ρ 2 ; ρ 3 .
  • C h = 2 : Let τ = τ , s x = x * + r x , and, for each i [ l ] , let:
    b i = b i ; π i = π i ; ϕ i = ϕ i ; s v i = v i * + r v i ; s z i = z i + r z i ; s y i = y i + r y i .
    Set RSP= τ ; s x ; { b i , π i , ϕ i , s v i , s z i , s y i } i = 1 l ; ρ 1 ; ρ 3 .
  • C h = 3 : Let τ = τ , r x = r x , and, for each i [ l ] , let:
    b i = b i ; π i = π i ; ϕ i = ϕ i ; r v i = r v i ; r z i = r z i ; r y i = r y i .
    Set RSP= τ ; r x ; { b i , π i , ϕ i , r v i , r z i , r y i } i = 1 l ; ρ 1 ; ρ 2 .
4.
Verification. Given RSP, V proceeds as follows.
  • C h = 1 : Check that x ˜ * B 2 m for i [ p ] , v ˜ i * , w ˜ i * B m n k for i [ l ] and that
    C 2 = COM r ˜ x ; { r ˜ v i , r ˜ z i , r ˜ y i } i = 1 l ; ρ 2 , C 3 = COM x ˜ * + r ˜ x ; { v ˜ i * + r ˜ v i , ext ( b ˜ i , v ˜ i * ) + r ˜ z i , ext ( b ˜ i , w ˜ i * ) + r ˜ y i } i = 1 l ; ρ 3 .
  • C h = 2 : Check that
    C 1 = COM ( τ ; A ^ · s x G * · s v l ; B ^ · s x b ; { b i , π i , ϕ i } i = 1 l ; A * · s z 1 + A * · s y 1 G · u ; { A * · s z i + 1 + A * · s y i + 1 G * · s v i } i = 1 l 1 ; ρ 1 ) , C 3 = COM τ ( s x ) ; { π i ( s v i ) , F b i , π i ( s z i ) , F b ¯ i , ϕ i ( s y i ) } i = 1 l ; ρ 3 .
  • C h = 3 : Check that
    C 1 = COM ( τ ; A ^ · r x G * · r v l ; B ^ · r x ; { b i , π i , ϕ i } i = 1 l ; A * · r z 1 + A * · r y 1 ; { A * · r z i + 1 + A * · r y i + 1 G * · r v i } i = 1 l 1 ; ρ 1 ) , C 2 = COM τ ( r x ) ; { π i ( r v i ) , F b i , π i ( r z i ) , F b ¯ i , ϕ i ( r y i ) } i = 1 l ; ρ 2 .
V outputs 1 only if all the conditions hold in each cases. Otherwise, output 0.

3.2. Analysis of the Interactive Protocol

We summarize several properties of the above protocol in the following theorem. Since the proof of the properties of the protocol is similar with that of Reference [8], we omit the details. (See Appendix A)
Theorem 2.
The given interactive protocol has perfect completeness and communication cost O ˜ ( l · n ) . If COM is a statistically hiding and computationally binding string commitment scheme, then it is an ZKAoK for the relation R NDRS .

4. Our Non-Interactive Deniable Ring Signature Scheme from Lattices

We now construct an NDRS scheme for rings with N = 2 l users (It can be easily adapted for any other values of N as in Reference [8].) and prove that our construction satisfies the security requirements: anonymity, traceability, and non-frameability. We use a public Pseudo-random Generator (PRG), and a random oracle H FS : { 0 , 1 } * { 1 , 2 , 3 } κ .
  • Setup ( 1 n ) : On input n, output pp = A Z q n × m .
  • KeyGen ( pp ) : On input pp , output ( p k , s k ) = ( d , x ) , where x { 0 , 1 } m , and d = bin ( A · x mod q ) .
  • Sign ( pp , R , s k , M ) : On inputs pp , R = { d 0 , , d N 1 } , s k , and M, it works as follows (Notice that, for the public key p k corresponding to the input s k , we have p k R .) to output the signature Σ .
    • Run TAcc ( A , R ) and obtain u { 0 , 1 } n k . Recall that u is the root of the Merkle tree defined on R.
    • Run TWitness ( A , R , d ) and obtain
      w = ( j 1 , , j l ) { 0 , 1 } l , ( w l , w 1 ) ( { 0 , 1 } n k ) l .
      Recall that w is a witness to the fact that d R .
    • Sample a seed s { 0 , 1 } n , generate a matrix B = PRG ( s ) Z q n × m and compute b = B · x mod q . Then, produce an NIZKAoK Π by repeating our interactive protocol κ = ω ( log n ) times. By using the Fiat-Shamir heuristic, we transform Π to the triple
      Π = { CMT i } i = 1 κ , CH , { RSP i } i = 1 κ ,
      where
      CH = H FS M , { CMT i } i = 1 κ , A , B , u , b , R = ( C h 1 , , C h κ ) { 1 , 2 , 3 } κ .
    • Output Σ = ( s , b , Π ) .
  • Verify ( pp , R , M , Σ ) : Pm inputs pp , R , M , Σ , the verification procedure is detailed as follows:
    • Run TAcc ( A , R ) and obtain u .
    • Parse Σ = s , b , { CMT i } i = 1 κ , CH , { RSP i } i = 1 κ . Let B = PRG ( s ) . Output 0 if
      ( C h 1 , , C h κ ) H FS M , { CMT i } i = 1 κ , A , B , u , b , R .
    • For i = 1 , , κ , check the validity of RSP i w . r . t . CMT i and C h i . If all the conditions hold, output 1; otherwise, output 0.
  • EvidenceGen ( pp , R , s k i , Σ ) : On inputs pp , R, a secret key s k i = x , and the pair ( s , b ) contained in Σ , the algorithm produces a piece of evidence ξ i as follows:
    • Run TAcc ( A , R ) and obtain the Merkle tree’s root u { 0 , 1 } n k .
    • Let p k i = d = bin ( A · x mod q ) . Generate a witness
      w = ( j 1 , , j l ) { 0 , 1 } l , ( w l , w 1 ) ( { 0 , 1 } n k ) l
      to the fact that d R by running TWitness ( A , R , d ) , i.e., d was properly accumulated in u .
    • Let B = PRG ( s ) . Compute b = B · x mod q and generate a NIZKAoK Π as in the signing algorithm to demonstrate the possession of a valid pair ( p k i , s k i ) = ( d , x ) such that b = B · x mod q and that d R , i.e.,
      Π = { CMT i } i = 1 κ , CH , { RSP i } i = 1 κ ,
      where
      CH = H FS { CMT i } i = 1 κ , A , B , u , b , R { 1 , 2 , 3 } κ .
    • Output ξ i = ( s , b , Π ) . Note that ξ i can be seen just as a signature on the empty message with the given seed s (instead of choosing a random seed by the algorithm itself).
  • EvidenceCheck ( pp , R , i , ξ i , Σ ) : On inputs pp , R , i , ξ i , Σ , the evidence ξ i is checked as follows:
    • Check the validity of ξ i and Σ by verifying the underlying protocols. If either is invalid, then output “reject”.
    • If ( s , b ) = ( s , b ) , then output “confirmation”; otherwise, output “disavowal”.

Analysis of Our NDRS Scheme

We first briefly analyze the correctness and efficiency properties.
Theorem 3
(Correctness and Efficiency). The NDRS scheme described in the previous section is correct and produces signatures of bit-size O ˜ ( n · log N ) .
Correctness. It is easy to check that:
  • By the perfect completeness of the argument system presented in the previous section, each member of a ring is always capable of obtaining a tuple ( x , d , w ) such that
    ( A , B , u , b ) , d , w , x R NDRS .
    Thus, by the Fiat-Shamir heuristic, the ring signature on M is valid.
  • Meanwhile, for any signature Σ = ( s , b , Π ) , the real signer can always produce a piece of valid evidence ξ = ( s , b , Π ) such that b = b , i.e., EvidenceCheck outputs ‘confirmation’.
  • By the randomness of the secret keys x , x { 0 , 1 } m , the non-real signer can always produce a piece of valid evidence ξ ˜ = ( s , b ˜ , Π ˜ ) such that b = B · x mod q b = B · x mod q with overwhelming probability.
Efficiency. It is not hard to check that the underlying interactive procedure in previous section has communication cost O ˜ ( l · n ) ; therefore, the resulting signature has bit-size O ˜ ( κ · l · n + n ) = O ˜ ( n · log N ) .
Now, we analyze the security requirements: anonymity, traceability, and non-frameability.
Theorem 4
(Anonymity). Assume that COM is a statistical hiding commitment scheme. Then, our NDRS scheme provides statistical anonymity in the random oracle model.
Proof. 
We consider a sequence of games. The challenger C runs experiment Exp N D R S , A anon 0 ( n ) in the first game, while, in the last one, it runs Exp N D R S , A anon 1 ( n ) .
Game G 0 ( b ) :
Exactly, it is the real experiment Exp N D R S , A anon b ( n ) , where the adversary is given a challenge signature Σ * Sign ( pp , { p k i 0 , p k i 1 } , s k i b , M * ) . Namely, given ( i 0 , i 1 , M * ) , the challenger C chooses a random b { 0 , 1 } and computes a legitimate signature Σ * using the secret key s k i b = x i b of user i b :
  • Run TAcc ( A , R ) and obtain u { 0 , 1 } n k , where R = { p k i 0 , p k i 1 } .
  • Run TWitness ( A , R , d i b ) and obtain a witness w i b to the fact that d i b = A · x i b mod q R .
  • Sample a seed s { 0 , 1 } n , generate matrix B = PRG ( s ) Z q n × m and compute b = B · x i b mod q . Then, produce a NIZKAoK Π with public input ( A , B , u , b ) and prover’s witness ( d i b , w i b , x i b ) , i.e.,
    Π = { CMT i } i = 1 κ , CH , { RSP i } i = 1 κ ,
    where
    CH = H FS M * , { CMT i } i = 1 κ , A , B , u , b , R { 1 , 2 , 3 } κ .
  • Output Σ * = ( B , b , Π ) .
Game G 1 :
Generally, this game is identical to G 0 ( b ) , except that the challenge signature Σ * is made independent of the coin b, while preserving the statistical closeness to G 0 ( b ) . In more detail, the following modifications are introduced with respect to G 0 ( b ) :
  • In Step 3, we change how the vector b is generated. Specifically, C samples b Z q n uniformly at random, instead of computing b = B · x i b mod q .
  • In addition, in Step 3, the proof Π contained in the challenge signature Σ * is produced in the simulation manner by C ’s programming on the random oracle H FS ( · ) .
    (a)
    For each j [ κ ] , choose a ‘fake challenge’ C h ¯ j { 1 , 2 , 3 } and prepare the ‘commitment’ CMT j according to C h ¯ j . Then, randomly pick a ‘real challenge’ C h j { 1 , 2 , 3 } { C h ¯ j } .
    (b)
    Program the random oracle and set
    CH = { C h j } j = 1 κ = H FS M * , { CMT j } j = 1 κ , A , B , u , b , R .
    (c)
    Prepare the ‘response’ { RSP j } j = 1 κ in accordance with the normal procedure.
    (d)
    Output
    Σ * = ( s , b , Π ) = s , b , { CMT i } i = 1 κ , CH , { RSP i } i = 1 κ .
Observe that, for each j [ κ ] , C h j is uniformly distributed in { 1 , 2 , 3 } , satisfying the requirement on the output of the random oracle. Besides, CMT j and RSP j are prepared in the same way as in Lemma A2 for proving the zero-knowledge property, implying that the challenge signature is valid. Finally, notice that the vector b in this game or G 0 ( b ) follows a uniform distribution over Z q n . As a result, G 0 ( b ) and G 1 are statistically indistinguishable.
Now, we obtain a sequence of indistinguishable games G 0 ( 0 ) , G 1 and G 0 ( 1 ) . Since G 1 is independent of the random coin b, the advantage of A in G 1 is 0. Then, we have the advantage of A in G 0 ( 0 ) and G 0 ( 1 ) is negligible. This completes the proof. □
Next, we prove the traceability and the non-frameability. Before doing so, we first recall two useful lemmas.
Lemma 1
(Reference [8]). For any matrix A Z q n × m and a uniform random x { 0 , 1 } m , the probability that there exists another x { 0 , 1 } m { x } such that A · x = A · x mod q is at least 1 2 n · log q m .
Lemma 2
(Reference [13]). Let SS be a signature scheme with security parameter n. Let A be a PPT algorithm whose input consists only of public data and which can ask q H > 0 queries to the random oracle. Assume that A produces within time bound T a valid signature { CMT i } i = 1 κ , CH , { RSP i } i = 1 κ of message M with probability ϵ. Then, within time 32 · T · q H / ϵ and with probability ϵ > 1 / 2 , a replay of A outputs 3 valid signatures of M:
{ CMT i } i = 1 κ , CH ( 1 ) , { RSP i ( 1 ) } i = 1 κ , { CMT i } i = 1 κ , CH ( 2 ) , { RSP i ( 2 ) } i = 1 κ , { CMT i } i = 1 κ , CH ( 3 ) , { RSP i ( 3 ) } i = 1 κ
for the same { CMT i } i = 1 κ such that CH ( 1 ) , CH ( 2 ) , CH ( 3 ) are pairwise distinct.
Theorem 5
(Traceability and Non-frameability). Our NDRS scheme provides traceability and non-frameability in the random oracle model if the SIVP O ˜ ( n ) is hard.
Proof. 
Assume that there exists a PPT A has nonnegligible advantage ϵ in the experiment Exp N D R S , A trace ( n ) or Exp N D R S , A nf ( n ) , i.e., A is able to output a valid signature Σ * on message M * under some ring R * = ( p k i 0 , , p k i r ) = ( d 0 , , d r ) such that
  • either EvidenceCheck ( pp , R * , i j , ξ i j , Σ * ) will output ‘disavowal’ for each j { 0 , , r } , where ξ i j is a piece of evidence generated by user i j ;
  • or EvidenceCheck ( pp , R * , i j * , ξ i j * , Σ * ) will output ‘confirmation’ for some honest user i j * .
We construct an algorithm B that solves the SIVP O ˜ ( n ) problem with nonnegligible probability. Let pp = A . During the game, B generates the secrets of all the queried users as in the real scheme. With these secret keys, B is capable of faithfully answering all the queries. For the random oracle H FS ( · ) , we assume without loss of generality that: (1) A makes any given query to H FS ( · ) only once; (2) if A outputs a signature, then A had previously queried H FS ( · ) .
When A halts, it outputs a valid triple ( R * , M * , Σ * ) , where
Σ * = s * , b * , { CMT i * } i = 1 κ , CH * , { RSP i * } i = 1 κ .
We denote by q H the upper bound on the number of queries that A makes to H FS ( · ) .
Then, by Lemma 2, when B runs up to 32 · q H / ϵ extra executions of A with the same random tap and inputs as in the first execution, with probability at least 1 / 2 , A will get a 3-fork responses CH ( 1 ) , CH ( 2 ) , CH ( 3 ) (pairwise distinct) from the oracle H FS ( · ) .
With probability 1 ( 7 / 9 ) κ , there exists some j [ κ ] for which the j-th bits of CH ( 1 ) , CH ( 2 ) , and CH ( 3 ) are { C h j ( 1 ) , C h j ( 2 ) , C h j ( 3 ) } = { 1 , 2 , 3 } . By the soundness of the argument system for the relation R NDRS , B is able to extract a tuple ( d * , w * , x * ) from the responses RSP j ( 1 ) , RSP j ( 2 ) , RSP j ( 3 ) such that
A · x * = G · d * mod q , TVerify ( A , u * , d * , w * ) = 1 .
According to the value of d * , there are two cases:
  • d * R * = ( d 0 , , d r ) . This means B can use ( R * , d * , w * ) to break the security of the underlying accumulator, whose security is based on the assumption that SIVP O ˜ ( n ) is hard [8].
  • d * R * = ( d 0 , , d r ) , i.e., d * = d j * . Note that the secret key s k i j * consists of a vector x i j * { 0 , 1 } m such that A · x i j * = G · d j * mod q . If x i j * x * , then x i j * x * { 1 , 0 , 1 } m is a valid solution for the SIS n , m , q , 1 instance A .
    According to the experiments with respect to traceability and non-frameability, we distinguish the following two cases to discuss the probability that x i j * x * .
    -
    In the experiment Exp N D R S , A trace ( n ) , A has corrupted user i j * , acts as the real malicious signer, and manages to evade the traceability. We claim that x i j * x * , since A will otherwise be detected as the real singer by the algorithm EvidenceCheck ( pp , R * , i j * , ξ i j * , Σ ) , where ξ i j * contains an element b = B * · x i j * mod q .
    -
    In the experiment Exp N D R S , A nf ( n ) , A did not corrupt user i j * , and temps to produce a valid signature such that the target victim i j * will be detected as the real signer. We claim that x i j * x * with probability greater than 1 / 2 by the following two facts: (1) There exists another vector x * { 0 , 1 } m such that A · x * = A · x i j * mod q by Lemma 1. (2) The underlying argument system is zero-knowledge, which implies witness indistinguishability; thus, A can hardly get useful information from the signing queries.
In conclusion, in the experiment Exp N D R S , A trace ( n ) or Exp N D R S , A nf ( n ) , a successful attacker A implies an attacker B that either defeats the soundness of the argument system, or breaks the security of the accumulator, or directly solves an SIS n , m , q , 1 instance A . Thus, our scheme provides traceability and non-frameability in the random oracle model, assuming that the SIVP O ˜ ( n ) problem is hard. □

5. Conclusions

In this work, we propose an efficient lattice-based NDRS scheme by using the techniques developed in Reference [8]. Our scheme has signature size only logarithmic to the ring size, and we prove its security in the random oracle model under the SIS assumption. Notice that, in our NDRS scheme, each secret key can only be used, at most, k 1 times for producing ring signatures, where k = log q ; otherwise, the secret key will be figured out from B ’s and corresponding b ’s. The direct way to increase the number of ring signatures for each user is to increase the parameter q, which will reduce efficiency. A better way is to develop new techniques that is able to authenticate the user’s identity while producing the ring signature for relative small q. We leave it as a future work.

Author Contributions

Conceptualization, H.J. and Y.Z.; methodology, H.J. and Y.Z.; validation, C.T. and Y.Z.; investigation, H.J.; resources, Y.Z.; writing—original draft preparation, H.J.; writing—review and editing, C.T. and Y.Z.; funding acquisition, H.J. and C.T. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Key R&D Program of China grant number 2017YFB0802000, the Young Scientists Fund grant numbers 61802075, 61802241, 61902303, the National Natural Science Foundation of China grant numbers 61972457, U19B2021, the Guangdong Province Natural Science Foundation of Major Basic Research and Cultivation Project grant number 2015A030308016, the Project of Ordinary University Innovation Team Construction of Guangdong Province grant number 2015KCXTD014, the Collaborative Innovation Major Projects of Bureau of Education of Guangzhou City grant number 1201610005, the National Natural Science Foundation of Shaanxi Province grant number 2020ZDLGY08-04, Natural Science Basic Research Program of Shaanxi Province grant number 2020JQ-832.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Proof of Theorem 2

Our proof follows closely from that of Lemma 4 in Reference [8].
Completeness and Efficiency. It can be checked that the protocol has perfect completeness: if P is honest and follows the protocol, then V always outputs 1. The communication cost of the protocol is of order O ˜ ( l · m · log q ) = O ˜ ( l · n ) .
Lemma A1
(Zero-Knowledge Property). Assume that COM is a statistical hiding commitment scheme, then the protocol is a statistical zero-knowledge proof.
Proof. 
To show the zero-knowledge property, we construct an efficient simulator S that outputs a simulated transcript statistically indistinguishable from the one produced by the honest prover.
The simulator S first randomly samples C h ¯ { 1 , 2 , 3 } , which serves as a prediction of the challenge value that V ^ will not choose.
C h ¯ = 1
First, S computes x Z q 2 m , v 1 , , v l Z q m and z 1 , , z l , y 1 , , y l Z q 2 m such that
A ^ · x = G * · v l mod q ; B ^ · x = b mod q ; A * · z 1 + A * · y 1 = G · u mod q ; A * · z i + 1 + A * · y i + 1 = G * · v i mod q i [ l 1 ] .
Then, sample randomness ρ 1 , ρ 2 , ρ 3 for COM and
τ S 2 m ; b 1 , , b l { 0 , 1 } ; π 1 , , π l , ϕ 1 , , ϕ l S m r x ; r v 1 , , r v l Z q m ; r z 1 , , r z l , r y 1 , , r y l Z q 2 m .
Finally, send to V the commitment CMT= ( C 1 , C 2 , C 3 ) , where
C 1 = COM ( τ ; A ^ · r x G * · r v l ; B ^ · r x ; { b i , π i , ϕ i } i = 1 l ; A * · r z 1 + A * · r y 1 ; { A * · r z i + 1 + A * · r y i + 1 G * · r v i } i = 1 l 1 ; ρ 1 ) C 2 = COM τ ( r x ) ; { π i ( r v i ) , F b i , π i ( r z i ) , F b ¯ i , ϕ i ( r y i ) } i = 1 l ; ρ 2 C 3 = COM τ ( x + r x ) ; { π i ( v i + r v i ) , F b i , π i ( z i + r z i ) , F b ¯ i , ϕ i ( y i + r y i ) } i = 1 l ; ρ 3 .
After receiving C h from V ^ , S ^ responds as follows:
  • If C h = 1 : Output ⊥ and abort.
  • If C h = 2 : Send
    RSP = τ ; x + r x ; { b i , π i , ϕ i , v i + r v i , z i + r z i , y r y i } i = 1 l ; ρ 1 ; ρ 3 .
  • If C h = 3 : Send
    RSP = τ ; r x ; { b i , π i , ϕ i , r v i , r z i , r y i } i = 1 l ; ρ 1 ; ρ 2 .
C h ¯ = 2
First, S samples
x B 2 m m ; j 1 , , j l { 0 , 1 } ; v 1 , , v l ; w 1 , , w l B m n k ; τ S 2 m ; b 1 , , b l { 0 , 1 } ; π 1 , , π l , ϕ 1 , , ϕ l S m r x ; r v 1 , , r v l Z q m ; r z 1 , , r z l , r y 1 , , r y l Z q 2 m .
Then, compute z i = ext ( j i , v i ) , y i = ext ( j ¯ i , w i ) for each j [ l ] . Finally, send the commitment CMT computed as in case C h ¯ = 1 .
After receiving C h from V ^ , S ^ responds as follows.
  • If C h = 1 : Send
    RSP = τ ( x ) ; τ ( r x ) ; { j i b i , π i ( v i ) , ϕ i ( w i ) , π i ( r v i ) , F b i , π i ( } } r z i ) , F b ¯ i , ϕ i ( r y i ) } i = 1 l ; ρ 1 ; ρ 3 .
  • If C h = 2 : Output ⊥ and abort.
  • If C h = 3 : Send RSP computed in the same manner as in the case ( C h ¯ = 1 , C h = 3 ).
C h ¯ = 3
: First, S sample randomness as in the case C h ¯ = 2 . Then, send the commitments CMT= ( C 1 , C 2 , C 3 ) , where C 2 , C 3 are computed as in C h ¯ = 1 , and C 1 is computed as
C 1 = COM ( τ ; A ^ · ( x + r x ) G * · ( v l + r v l ) ; B ^ · ( x + r x ) ; { b i , π i , ϕ i } i = 1 l ; A * · ( z 1 + r z 1 ) + A * · ( y 1 + r y 1 ) G · u ; { A * · ( z i + 1 + r z i + 1 ) + A * · ( y i + 1 + r y i + 1 ) G * · ( v i + r v i ) } i = 1 l 1 ; ρ 1 ) .
After receiving C h from V ^ , S ^ responds as follows.
  • If C h = 1 : Send RSP computed as in the case ( C h ¯ = 2 , C h = 1 ).
  • If C h = 2 : Send RSP computed as in the case ( C h ¯ = 1 , C h = 2 ).
  • If C h = 3 : Output ⊥ and abort.
Because COM is statistically hiding, we have that, whenever S does not halt, it will output an accepting transcript, whose distribution is statistically close to that of the real prover. Besides, S halts with probability 1 / 3 . Therefore, S can successfully emulate the honest prover with probability 2 / 3 . □
To show the argument of knowledge property, it is enough to show that the protocol has the special soundness property [24].
Lemma A2
(Argument of Knowledge Property). Assume that COM is a statistical hiding commitment scheme, and then there exists an efficient knowledge extractor K that, given 3 valid responses ( RSP 1 , RSP 2 , RSP 3 ) to the same commitment CMT , outputs a triple ( d , w , x ) such that ( A , B , u , b ) ; d , w , x R NDRS .
Proof. 
Denote the 3 valid responses ( RSP 1 , RSP 2 , RSP 3 ) to the same commitment CMT as follows:
RSP 1 = x ˜ * ; r ˜ x ; { b ˜ i , v ˜ i * , w ˜ i * , r ˜ v i , r ˜ z i , r ˜ y i } i = 1 l ; ρ 2 ; ρ 3 , RSP 2 = τ ; s x ; { b i , π i , ϕ i , s v i , s z i , s y i } i = 1 l ; ρ 1 ; ρ 3 , RSP 3 = τ ; r x ; { b i , π i , ϕ i , r v i , r z i , r y i } i = 1 l ; ρ 1 ; ρ 2 .
The validity of RSP 1 implies that x ˜ * B 2 m m and i [ l ] : v ˜ i * , w ˜ i * B m n k . Besides, we have:
τ = τ ; τ ( r x ) = r ˜ x ; τ ( s x ) = x ˜ * + r ˜ x , A ^ · s x G * · s v l = A ^ · r x G * · r v l mod q , B ^ · s x = b + B ^ · r x mod q , A * · s z 1 + A * · s y 1 G · u = A * · r z 1 + A * · r y 1 mod q ,
and, for each i [ l 1 ] :
A * · s z i + 1 + A * · s y i + 1 G * · s v i = A * · r z i + 1 + A * · r y i + 1 G * · r v i mod q ,
and, for all i [ l ] :
b i = b i ; π = π ; ϕ = ϕ , π i ( s x ) = x ˜ * + r ˜ x ; π i ( r v ) = r ˜ v i , F b i , π i ( s z i ) = ext ( b ˜ i , v ˜ i * ) + r ˜ z i ; F b i , π i ( r z i ) = r ˜ z i , F b ¯ i , ϕ i ( s y i ) = ext ( b ˜ i , w ˜ i * ) + r ˜ y i ; F b ¯ i , ϕ i ( r y i ) = r ˜ y i .
Now, the knowledge extractor K takes the following steps to extract the secret.
First, let x * = τ 1 ( x ˜ * ) , and, for each i [ l ] , let
j i = b ˜ i b i ; v i * = π i 1 ( v ˜ i * ) ; w i * = ϕ i 1 ( w ˜ i * ) ; z i = s z i r z i ; y i = s y i r y i .
Note that x * B 2 m m , and, for each i [ l ] , v i * , w i * B m n k . Besides,
  • F b i , π i ( z i ) = ext ( b ˜ i , v ˜ i * ) = ext j i b i , π ( v i * ) z i = ext ( j i , v i * ) ,
  • F b ¯ i , ϕ i ( y i ) = ext ( b ˜ i , w ˜ i * ) = ext j ¯ i b i , ϕ ( w i * ) y i = ext ( j ¯ i , w i * ) .
Further more, A ^ · x * = G * · v l * mod q , B ^ · x * = b mod q and
A * · z 1 + A * · y 1 = G · u mod q , A * · z i + 1 + A * · y i + 1 = G * · v i * mod q i [ l 1 ] ,
which are equivalent to
A * · ext ( j 1 , v 1 * ) + A * · ext ( j ¯ 1 , w 1 * ) = G · u mod q , A * · ext ( j i + 1 , v i + 1 * ) + A * · ext ( j ¯ i + 1 , w i + 1 * ) = G * · v i * mod q i [ l 1 ] .
Then, K drops the last m coordinates from x * and obtains x { 0 , 1 } m . In addition, by dropping the last n k coordinates of v 1 * , , v l * , w 1 * , , w l * , it obtains v 1 , , v l , w 1 , , w l { 0 , 1 } n k . Observe that A · x = G · v l mod q , B · x = b mod q . Thus, the following relations holds:
A · ext ( j 1 , v 1 ) + A · ext ( j ¯ 1 , w 1 ) = G · u mod q , A · ext ( j i + 1 , v i + 1 ) + A · ext ( j ¯ i + 1 , w i + 1 ) = G · v i mod q i [ l 1 ] ,
which are equivalent to
v 0 = u , v i = j ¯ i + 1 · h A ( v i + 1 , w i + 1 ) + j i + 1 · h A ( w i + 1 , v i + 1 ) .
Finally, let d = v l and w = ( j 1 , , j l ) , ( w l , , w 1 ) , then Verify ( A , u , d , w ) = 1 , and output d , w , x , which satisfy
( A , B , u , d ) , d , w , x R NDRS .
This concludes the proof. □

References

  1. Rivest, R.L.; Shamir, A.; Tauman, Y. How to leak a secret: Theory and applications of ring signatures. Theor. Comput. Sci. 2006, 3895, 164–186. [Google Scholar]
  2. Naor, M. Deniable ring authentication. In CRYPTO 2002, Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 18–22 August 2002; Springer: Berlin/Heidelberg, Germany, 2002; pp. 481–498. [Google Scholar]
  3. Dodis, Y.; Kiayias, A.; Nicolosi, A.; Shoup, V. Anonymous identification in Ad Hoc Groups. In EUROCRYPT 2004, Proceedings of the Theory and Applications of Cryptographic Techniques, Interlaken, Switzerland, 2–6 May 2004; Springer: Berlin/Heidelberg, Germany, 2004; pp. 609–626. [Google Scholar]
  4. Chaum, D.; van Heyst, E. Group signatures. In EUROCRYPT 1991, Proceedings of the Workshop on the Theory and Application of of Cryptographic Techniques, Brighton, UK, 8–11 April 1991; Springer: Berlin/Heidelberg, Germany, 1991; pp. 257–265. [Google Scholar]
  5. Bellare, M.; Micciancio, D.; Warinschi, B. Foundations of group signatures: Formal definitions, simplified requirements, and a construction based on general assumptions. In EUROCRYPT 2003, Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Warsaw, Poland, 4–8 May 2003; Springer: Berlin/Heidelberg, Germany, 2003; pp. 614–629. [Google Scholar]
  6. Boyen, X.; Waters, B. Compact group signatures without random oracles. In EUROCRYPT 2006, Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, St. Petersburg, Russia, 28 May–1 June 2006; Springer: Berlin/Heidelberg, Germany, 2006; pp. 427–444. [Google Scholar]
  7. Groth, J. Fully anonymous group signatures without random oracles. In ASIACRYPT 2007, Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Kuching, Malaysia, 2–6 December 2007; Springer: Berlin/Heidelberg, Germany, 2007; pp. 164–180. [Google Scholar]
  8. Libert, B.; Ling, S.; Nguyen, K.; Wang, H. Zero-knowledge arguments for lattice-based accumulators: Logarithmic-size ring signatures and group signatures without trapdoors. In EUROCRYPT 2016, Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, Vienna, Austria, 8–12 May 2016; Springer: Berlin/Heidelberg, Germany, 2016; pp. 1–31. [Google Scholar]
  9. Ling, S.; Nguyen, K.; Wang, H.; Xu, Y. Lattice-based group signatures: Achieving full dynamicity (and deniability) with ease. Theor. Comput. Sci. 2019, 783, 71–94. [Google Scholar] [CrossRef] [Green Version]
  10. Komano, Y.; Ohta, K.; Shimbo, A.; Kawamura, S. Toward the fair anonymous signatures: Deniable ring signatures. In CT-RSA 2006, Proceedings of the Cryptographers’ Track at the RSA Conference, San Jose, CA, USA, 13–17 February 2006; Springer: Berlin/Heidelberg, Germany, 2006; pp. 174–191. [Google Scholar]
  11. Shor, P.W. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM J. Comput 1997, 26, 1484–1509. [Google Scholar] [CrossRef] [Green Version]
  12. Gao, W.; Chen, L.; Hu, Y.; Newton, C.J.; Wang, B.; Chen, J. Lattice-based deniable ring signatures. Int. J. Inf. Secur. 2019, 18, 355–370. [Google Scholar] [CrossRef]
  13. Cheng, S.; Nguyen, K.; Wang, H. Policy-based signature scheme from lattices. Des. Codes Cryptogr. 2016, 81, 43–74. [Google Scholar] [CrossRef]
  14. Libert, B.; Ling, S.; Nguyen, K.; Wang, H. Zero-knowledge arguments for lattice-based PRFs and applications to e-cash. In ASIACRYPT 2017, Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Hong Kong, China, 3–7 December 2017; Springer: Cham, Switzerland, 2017; pp. 304–335. [Google Scholar]
  15. Stern, J. A new paradigm for public key identification. IEEE Trans. Inf. Theory 1996, 42, 1757–1768. [Google Scholar] [CrossRef] [Green Version]
  16. Jia, H.; Tang, C. Cryptanalysis of a non-interactive deniable ring signature scheme. Int. J. Inf. Secur. 2020, 20, 103–112. [Google Scholar] [CrossRef]
  17. Ajtai, M. Generating hard instances of lattice problems. Quad. Mat. 2004, 13, 1–32. [Google Scholar]
  18. Micciancio, D.; Regev, O. Worst-case to average-case reductions based on Gaussian measure. SIAM J. Comput. 2007, 37, 267–302. [Google Scholar] [CrossRef] [Green Version]
  19. Gentry, C.; Peikert, C.; Vaikuntanathan, V. Trapdoors for hard lattices and new cryptographic constructions. In STOC 2008, Proceedings of the Fortieth Annual ACM Symposium on Theory of Computing, Victoria, BC, Canada, 17–20 May 2008; ACM: Denver, CO, USA, 2008; pp. 197–206. [Google Scholar]
  20. Micciancio, D.; Peikert, C. Hardness of SIS and LWE with small parameters. In CRYPTO 2013, Proceedings of the Annual Cryptology Conference, Santa Barbara, CA, USA, 18–22 August 2013; Springer: Berlin/Heidelberg, Germany, 2013; pp. 21–39. [Google Scholar]
  21. Jain, A.; Krenn, S.; Pietrzak, K.; Tentes, A. Commitments and efficient zero-knowledge proofs from learning parity with noise. In ASIACRYPT 2012, Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Beijing, China, 2–6 December 2012; Springer: Cham, Switzerland, 2012; pp. 663–680. [Google Scholar]
  22. Benhamouda, F.; Camenisch, J.; Krenn, S.; Lyubashevsky, V.; Neven, G. Better zero-knowledge proofs for lattice encryption and their application to group signatures. In ASIACRYPT 2014, Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Kaoshiung, Taiwan, 7–11 December 2014; Springer: Cham, Switzerland, 2014; pp. 551–572. [Google Scholar]
  23. Kawachi, A.; Tanaka, K.; Xagawa, K. Concurrently secure identification schemes based on the worst-case hardness of lattice problems. In ASIACRYPT 2008, Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Melbourne, VIC, Australia, 7–11 December 2008; Springer: Cham, Switzerland, 2008; pp. 372–389. [Google Scholar]
  24. Groth, J. Evaluating security of voting schemes in the universal composability framework. In ACNS 2004, Proceedings of the InInternational Conference on Applied Cryptography and Network Security, Yellow Mountains, China, 8–11 June 2004; Springer: Berlin/Heidelberg, Germany, 2004; pp. 46–60. [Google Scholar]
Figure 1. Experiments of anonymity, traceability, and non-frameability.
Figure 1. Experiments of anonymity, traceability, and non-frameability.
Entropy 23 00980 g001
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Jia, H.; Tang, C.; Zhang, Y. Lattice-Based Logarithmic-Size Non-Interactive Deniable Ring Signatures. Entropy 2021, 23, 980. https://0-doi-org.brum.beds.ac.uk/10.3390/e23080980

AMA Style

Jia H, Tang C, Zhang Y. Lattice-Based Logarithmic-Size Non-Interactive Deniable Ring Signatures. Entropy. 2021; 23(8):980. https://0-doi-org.brum.beds.ac.uk/10.3390/e23080980

Chicago/Turabian Style

Jia, Huiwen, Chunming Tang, and Yanhua Zhang. 2021. "Lattice-Based Logarithmic-Size Non-Interactive Deniable Ring Signatures" Entropy 23, no. 8: 980. https://0-doi-org.brum.beds.ac.uk/10.3390/e23080980

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