Strong Designated Veriﬁer Signature Scheme with Undeniability and Strong Unforgeability in the Standard Model

: Strong designated veriﬁer signature can provide an efﬁcient way to protect the identity privacy of the signer and the integrity of the data transmitted over the public channel. These characteristics make it very useful in outsourcing computing, electronic voting, electronic bidding, electronic auction and other ﬁelds. However, most strong designated veriﬁer signature schemes are unable to identify the real signature generator when the signer and the designated veriﬁer dispute a signature. In addition, the existing strong designated veriﬁer signature schemes in the standard model rarely satisfy strong unforgeability, and thus cannot prevent the attacker from forging a valid signature on any previously signed message. Therefore, designing a strong designated veriﬁer signature scheme without random oracles that satisﬁes strong unforgeability and undeniability is very attractive in both practice and theory. Motivated by these concerns, we design the ﬁrst undeniable strong designated veriﬁer signature scheme without random oracles, in which the arbiter can independently perform the judgment procedure to prove whether a controversial signature is generated by the signer or the designated veriﬁer. Under standard assumptions, the scheme is proved to be strongly unforgeable in standard model. Furthermore, it not only achieves non-transferability and privacy of the signer’s identity but also satisﬁes the undeniable property of traditional digital signature schemes. Performance analysis results show that the length of the signer’s private key, the designated veriﬁer’s private key and signature length are 40 bits, 40 bits and 384 bits, respectively. Compared with he related schemes, the proposed scheme has higher performance in signature length, private key size and computational overhead. Finally, we show how to apply it to implement outsourcing computation in cloud computing.


Introduction
Digital signature is a very important information security technology, which can realize data integrity, non-repudiation, identity authentication and other functions. It plays an important role in network security communication [1], e-commerce [2], e-government [3] and other systems [4][5][6]. To deal with specific application scenarios, some digital signature schemes with special properties have been proposed. Among them, designated verifier signature (DVS) [7] is a significant variant of digital signature. In DVS, the signer is allowed to designate a verifier to confirm the authenticity of a signature, but the designated verifier is unable to convince anyone that the signature was generated by the real signer. The reason is that the simulated signature produced by the designated verifier is computationally indistinguishable from the original signature created by the signer for the same message. This feature of DVS is called non-transferability, which is very useful in the fields of electronic voting, electronic tendering and software copyright [8,9]. To avoid the signer's identity information being leaked, Jakobsson et al. [7] introduced the concept of strong designated verifier signature (SDVS). In SDVS, the validation of a signature must require the designated verifier's private key, and any third party cannot determine the real creator of the signature. That is to say, only the designated verifier knows the real identity of the signer. Thus, SDVS enhances the privacy of the signer's identity (PSI) and can be applied to some new fields [10]. For example, in cognitive computation [11], an intelligent robot authenticates the identity of its owner, but it must protect the owner's identity information.
However, in a SDVS scheme, any third party does not know who generated the signature when the signer and the designated verifier dispute a signature. In this scenario, the undeniability property is very essential for SDVS. There are a few SDVS schemes with undeniability, and they were proved to be secure in the random oracle model [12][13][14]. Unfortunately, Canetti et al. [15] showed that the cryptographic scheme in the random oracle model may be insecure when the random oracle is instantiated by a concrete hash function. Therefore, it is of practical significance to study the SDVS scheme without random oracles.
Most existing SDVS schemes in the standard model only possess existential unforgeability [16][17][18]. Namely, an adversary can easily obtain a new legal signature of the same message by modifying an existing message-signature pair. Strong unforgeability can prevent the above-mentioned modification and protect the integrity of a signature [19]. A SDVS scheme is said to be strongly unforgeable if it satisfies existential unforgeability and the adversary cannot produce a legal signature of a message that has previously been signed. Although strong unforgeability has already been considered in several SDVS schemes [20], none of them has the undeniable property in the standard model.

Our Contribution
Motivated by the above concerns, we construct a new SDVS scheme with undeniability and strong unforgeability, which is named the SDVS-USU scheme in this paper. The main contributions of this paper are as follows.

•
The proposed scheme is the first strongly unforgeable SDVS scheme with the undeniability property in the standard model, while the existing SDVS schemes are secure in the random oracle model.

•
In the SDVS-USU scheme, the signer assigns a verifier to validate the signature, and designates an arbiter to determine the actual generator of the signature. For a controversial signature, the arbiter can independently identify the real signature generator without the help of the signer or the designated verifier.

•
The SDVS-USU scheme is proved to be strongly unforgeable against adaptive chosen message attacks under the bilinear Diffie-Hellman (BDH) assumption, while the privacy of the signer's identity relies on the decisional bilinear Diffie-Hellman (DBDH) assumption. At the same time, it has the property of non-transferability.

•
Compared with the existing SDVS schemes without random oracles, the SDVS-USU scheme has better performance in terms of signature length, private key size and computational cost.

Paper Organization
The rest of this paper is organized as follows. Section 2 describes the work related to SDVS. Section 3 introduces some preliminaries, such as bilinear parings, complexity assumptions and the security definition of SDVS. Section 4 presents the SDVS-USU scheme. Section 5 demonstrates the security of the SDVS scheme. Section 6 analyzes the performance of the SDVS-USU scheme. Section 7 illustrates the application of the SDVS-USU scheme in outsourcing computation. Section 8 is the conclusions.

Related Work
The concept of SDVS was first introduced by Jakobsson et al. [7], and formalized by Saeednia et al. [21]. Since then, some efficient SDVS schemes were proposed [22][23][24][25][26][27], but the security of those schemes is based on the ideal random oracle. To deal with this problem, Hung et al. [17] designed a SDVS scheme in the standard model. However, its security is highly dependent on the security of the pseudo-random function. If the pseudo-random function leaks the associated index, the attacker can easily generate legitimate signatures for arbitrary messages on behalf of the signer or the designated verifier. Based on the q-Strong Diffie-Hellman assumption, Zhang et al. [16] constructed another SDVS scheme without random oracles. However, their SDVS scheme could not protect the privacy of the signer's identity and did not give formal security proof. Besides, Asaar et al. [18] presented a secure SDVS scheme based on Waters' scheme [28], but their scheme is malleable. Tian et al. [20] showed that the above three SDVS schemes [16][17][18]. do not satisfy strong unforgeability. Later, Tian et al. [20] used the OR proof [29] and Kang et al.'s scheme [30] to design a basic signature scheme with existential unforgeability. Then, Tian et al. [20] constructed a SDVS scheme using their basic scheme and the Cramer-Shoup scheme [31]. To shorten the signature length, Tian et al. [20] proposed another SDVS scheme based on their basic signature scheme and Tian et al.'s encryption scheme [32]. Although Tian et al.'s two SDVS schemes [20] satisfy strong unforgeability, neither provides undeniability. To overcome this shortcoming, Yang et al. [12] designed an undeniable SDVS scheme using chameleon hash function [33]. However, the signer needs to store all previous signature data to identify the real generator in a signature, and the judgment process needs the help of the signer. To improve the fairness of the judgment, Hu et al. [14] designed two undeniable SDVS schemes in which the arbiter can independently identify the real signer in a disputed signature. However, Yang et al.'s scheme [12] and Hu et al.'s schemes [14] were provably secure in the random oracle model. Unfortunately, there is no strongly unforgeable SDVS scheme with the undeniable property in the standard model. Thus, in this paper, we put forward such construction for SDVS.

Bilinear Paring
Suppose p is a prime, G 1 and G 2 are two cyclic groups of order p, and g is any generator of G 1 . A map e : G 1 × G 1 → G 2 is called a bilinear pair if it satisfies the following conditions [18]: • Bilinearity: For any x, y ∈ Z p , e(g x , g y ) = e(g, g) xy = e(g y , g x ). • Non-degeneracy: e(g, g) = 1.

•
Computability: For any x, y ∈ Z p , e(g x , g y ) can be calculated efficiently.

Complexity Assumptions
Given (g, g x , g y , g z ) ∈ G 4 1 , where x, y, z ∈ Z p are unknown, the BDH problem is to calculate e(g, g) xyz .

Definition 1.
The BDH assumption is that the probability of any probabilistic polynomial-time (PPT) algorithm solving the BDH problem is negligible.
Given (g, g x , g y , g z ) ∈ G 4 1 and Z ∈ G 2 , where unknown x, y, z ∈ Z p , the DBDH problem is to determine whether Z = e(g, g) xyz holds.

Definition 2.
The DBDH assumption is that there is no PPT algorithm to solve the DBDH problem with a probability of more than 1 2 [18].

Strong Designated Verifier Signature
An SDVS scheme with undeniable property is defined as follows: • Setup: On the input of a security parameter λ ∈ Z, this algorithm produces the public parameters params. • KeyGen: On the input of params, this algorithm produces a public/private key pair (pk S , sk S ) for a signer S, (pk V , sk V ) for a designated verifier V and (pk A , sk A ) for an arbiter A. • Sign: On the input of public keys of S, V and A, the signer S's private key sk S and a message m, this algorithm produces a signature σ on m. • Verify: Given public keys of S, V and A, this algorithm returns 1 if the designated verifier V's private key sk V can be used to verify that σ is a legal signature for a message m; otherwise, it returns 0. • Sim: On the input of public keys of S, V and A, the designated verifier V's private key sk V and a message m, this algorithm produces a simulated signature σ that is indistinguishable from σ.
The correctness of SDVS requires that both the original signature and the simulated signature are valid. That is, for any key pairs (pk S , sk S ), (pk V , sk V ) and (pk A , sk A ), any message m, any signature σ=Sign(pk S , pk V , pk A , sk S , m) and any simulated signature σ =Sim(pk S , pk V , pk A , sk V , m), the following two equations must hold: Verify(pk S , pk V , pk A , sk V , m, σ) = 1, Verify(pk S , pk V , pk A , sk V , m, σ ) = 1.
A secure SDVS scheme with undeniable property should achieve the security requirements of strong unforgeability, non-transferability, privacy of the signer's identity (PSI) and undeniability.
The unforgeability requires that only the signer and the designated verifier can produce a valid signature. Formally, the strong unforgeability of an SDVS scheme is defined by the following game between a challenger C and an adversary F .

•
Setup: C executes the Setup algorithm to output the public parameters params, and runs the KeyGen algorithm to generate the signer's key pair (pk S , sk S ), the designated verifier's key pair (pk V , sk V ) and the arbiter's key pair (pk A , sk A ). Then, C sends (params, pk S , pk V , pk A ) to F .

•
Signing queries: When F initiates a signature query for message m i , C runs the Sign(pk S , pk V , pk A , sk S , m i ) algorithm to obtain a signature σ i on m i and returns σ i to F .

•
Simulating queries: When F asks for a simulated signature on a message m i , C runs the Sim(pk S , pk V , pk A , sk V , m i ) algorithm to obtain a signature σ i on m i and returns σ i to F .

•
Verifying queries: When F submits a signature σ i on a message m i , C sends the signature verification result output by the algorithm Verify(pk S , pk V , pk A , sk V , m i , σ i ) to F . • Output: Finally, F outputs a message/signature pair (m * , σ * ). F wins the game if 1. Verify(pk S , pk V , pk A , sk V , m * , σ * )=1.
(m * , σ * ) is not one of all tuples (m i , σ i ) during the Signing queries.

Definition 3.
If the probability of any PPT attacker F winning in the above game is negligible, then an SDVS scheme is said to be strongly unforgeable against adaptive chosen message attacks.
The non-transferability requires that no third party can tell the signature on a message was created by the signer or was simulated by the designated verifier.

Definition 4.
An SDVS scheme is said to be non-transferable if it is not feasible for any PPT algorithm A 1 to differentiate that a given signature is produced by the signer or the designated verifier without knowing the signer's private key sk S , the designated verifier's private key sk V or the arbiter's private key sk A . That is, the probability ε of A 1 distinguishing between simulated signatures and real signatures is negligible.
In other words, the signature generated by the signer is computationally indistinguishable from the signature simulated by the designated verifier, i.e., PSI requires that no one other than the designated verifier knows the identity of the signer, but any third party is unable to identify the designated verifier and the signer. That is, if there are two signers S 0 and S 1 , it is infeasible for any PPT adversary to differentiate whether the signature of a message is signed by S 0 or S 1 without knowing the designated verifier's private key. PSI is formally defined by the following security game between a distinguisher D and a challenger B.
• Setup: B runs the Setup algorithm to produce the public parameters params, and runs the KeyGen algorithm to generate the signer S 0 's key pair (pk S 0 , sk S 0 ), the signer S 1 's key pair (pk S 1 , sk S 1 ), the designated verifier V's key pair (pk V , sk V ) and the arbiter A's key pair (pk A , sk A ). Then, B sends (params, pk S 0 , pk S 1 , pk V , pk A ) to D. • Query phase 1: D adaptively initiates a series of inquiries to B as follows.
-Signing queries: When D issues a signature query on a message m i and an index d i ∈ {0, 1}, B executes the Sign(pk S d i , pk V , pk A , sk S d i , m i ) algorithm to obtain a signature σ i on m i and returns σ i to D.

-
Simulating queries: When D issues a simulated signature query on a message m i and an index d i ∈ {0, 1}, B runs the Sim(pk S d i , pk V , pk A , sk V , m i ) algorithm to obtain a signature σ i on m i and returns σ i to D. -Verifying queries: After receiving a message m i , a signature σ i and an index d i ∈ {0, 1}, B responds to D with the output of the algorithm Verify(pk S d i , pk V , pk A , sk V , m i , σ i ).
• Challenge: After receiving the challenge message m * submitted by D, B obtains a random value d ∈ {0, 1} by flipping a coin. Then, B returns the signature σ * generated by the algorithm Sign(pk S d , pk V , pk A , sk S d , m * ) to D. • Query phase 2: D continues to make queries as in Query phase 1 except that D is unable to submit a signature verification query on (m * ,

Definition 5.
An SDVS scheme is secure about PSI if there is no PPT distinguisher D wins the game with a probability of more than 1 2 .
For a controversial signature, the undeniability requires that the arbiter can correctly identify the real identity of the generator in the signature.

Definition 6.
An SDVS scheme is said to be undeniable if there exists a PPT arbiter, with inputting the signer's public key pk S , the designated verifier's public key pk V , the arbiter's private key sk A and a disputed signatureσ on a messagem, can prove whether the signer S or the designated verifier V generatedσ with an overwhelming probability, namely, Here, the output S indicatesσ is created by the signer, while the output V indicatesσ is generated by the designated verifier.

The SDVS-USU Scheme
In this section, we design a strongly unforgeable SDVS scheme with undeniable property on the basis of a variant of Waters' scheme [28]. Although a few SDVS schemes [12][13][14] satisfy undeniability, their security depends on ideal random oracles, which might be insecure in reality. Most of the SDVS schemes [17,18] without random oracles are malleable, so they cannot achieve strong unforgeability.
To overcome these problems, the SDVS-USU scheme uses two collision-resistant hash functions to protect the integrity of the signature. This method can not only generate non-malleable signatures, but also achieve strong unforgeability and undeniability. Since we design the SDVS-USU scheme using a direct construction rather than a general conversion method, it basically maintains the performance of the Waters' scheme [28] in terms of signature size and computational overhead. Additionally, it should be emphasized that the employed collision-resistant hash functions are not considered as random oracles in our security proof.
There are three participants in the SDVS-USU scheme: the signer S, the designated verifier V and the arbiter A. In the following, we assume that all signed messages are bit strings of length n. To achieve this assumption, messages of arbitrary length can be converted into messages of fixed length n by using a secure hash function H : {0, 1} * → {0, 1} n . The SDVS-USU scheme is described as follows.
• Setup: Let G 1 and G 2 be two multiplicative cyclic groups of prime order p. g is any generator of G 1 , e : The signer S picks two random elements k S,1 , k S,2 ∈ Z * p as the private key sk S = (sk S,1 , sk S,2 ) = (k S,1 , k S,2 ), and computes the corresponding public key pk S = (pk S,1 , pk S,2 ) = (g k S,1 , g k S,2 ). Similarly, sk V = (sk V,1 , sk V,2 ) = (k V,1 , k V,2 ) and pk V = (pk V,1 , pk V,2 ) = (g k V,1 , g k V,2 ) are the designated verifier V's private key and public key respectively. The arbiter A's public/private key pair is (pk A , Sign: To generate the signature of a n-bit message m = (m 1 , ..., m n ) ∈ {0, 1} n , the signer proceeds as follows.

1.
Select r ∈ Z p randomly and calculate σ 2 = g r .
• Verify: After receiving a signature σ = (σ 1 , σ 2 , T) on a n-bit message m = (m 1 , ..., m n ) ∈ {0, 1} n from the signer, the designated verifier calculates h = H 2 (m, σ 2 , T) and uses its private key If it holds, the designated verifier believes that σ is legal and outputs 1; else, the designated verifier considers σ to be illegal and outputs 0.
To produce a simulated signature on a message m = (m 1 , ..., m n ) ∈ {0, 1} n , the designated verifier performs the following: 1. Select s ∈ Z p randomly and compute σ 2 = g s .
The above equation indicates that the signature σ of message m generated by the signer using the private key sk S can be verified by the signature verification algorithm Verify. That is, σ is a legal signature.
If σ = (σ 1 , σ 2 , T ) is correctly produced by the Sim algorithm, then we have It shows that the simulated signature σ produced by the designated verifier using its private key sk V can also be verified by the signature verification algorithm Verify. Therefore, the SDVS-USU scheme satisfies correctness.
Compared with the previous similar schemes, the novelty of the SDVS-USU scheme is as follows: • In the Sign algorithm, h = H 2 (m, σ 2 , T) is embedded in a part σ 1 = e(g k S,1 k S,2 (wv h ) r , pk V,1 ) of a signature σ = (σ 1 , σ 2 , T). Since the hash function H 2 is collision-resistant, any modification of m, σ 2 and T will make σ fail the signature verification equation. In other words, an attacker cannot generate a legitimate signature for a previously signed message if the attacker does not know the private key of the signer or the designated verifier. Hence, the SDVS-USU scheme possesses strong unforgeability.

•
The value T = (pk A ) k S,1 k S,2 H 1 (m,σ 2 ) contains the arbiter's public key pk A , the signer's private key sk S = (sk S,1 , sk S,2 ) and the hash value H 1 (m, σ 2 ), which shows that only the arbiter can use its own private key sk A and T to identify the real generator in a signature. In addition, H 1 and H 2 are two collision-resistant hash functions, and T is a part of h = H 2 (m, σ 2 , T) and the signature σ = (σ 1 , σ 2 , T). Therefore, any modification of the value T will result in the failure of the validation of the signature σ. That is, the SDVS-USU scheme provides undeniability.

•
The Waters' scheme [28] is malleable and satisfies existential unforgeability in the standard model. The proposed SDVS scheme is based on Waters' scheme [28], but the SDVS-USU scheme is no-malleable and strongly unforgeable in the standard model. Therefore, the SDVS-USU scheme is different from Waters' scheme [28] in terms of design and security proof.

Security Analysis
In this section, we demonstrate that the SDVS-USU scheme holds strong unforgeability, non-transferability, PSI and undeniability. Theorem 1. If the BDH assumption holds, then the SDVS-USU scheme is strongly unforgeable against adaptive chosen message attacks in the standard model.
Proof of Theorem 1. Suppose there exists a polynomial-time adversary F who breaks the strong unforgeability of the SDVS-USU scheme with non-negligible probability, where F can make at most q S signing queries, q Sim simulating queries and q V verifying queries. Then, we construct another algorithm C who can solve the BDH problem by using the F 's forgery. Given a random BDH problem instance (g, g a , g b , g c ) ∈ G 4 1 , the goal of C is to calculate e(g, g) abc . C will act as F 's challenger and respond to F 's queries as follows.
• Setup: C simulates the algorithm Setup in the following way.

2.
Select two random values k 1 , k 2 ∈ Z p , and set the signer's public key pk S = (pk S,1 , pk S,2 ) = (g a , g b ), the designated verifier's public key pk V = (pk V,1 , pk V,2 ) = (g c , g k 2 ) and the arbiter's public key pk A = g k 1 . Note that a, b and c are unknown to C. 3.

4.
Select a random integer z ∈ Z p , assign v = g z , u 0 = (g b ) p−kl+x 0 g y 0 and u j = (g b ) x i g y i for 1 ≤ j ≤ n, and set a vector u = (u 1 , ..., u n ).
For a n-bit message m = (m 1 , ..., m n ), we define two functions Hence, we obtain the following equation  Table T r which is initially empty. If there is a tuple (m i , r i ) in T r , C extracts r i from T r ; otherwise, C randomly selects r i ∈ Z p and adds (m i , r i ) in T r . Then, C picks a random element T i ∈ G 1 , and computes w i = u 0 n ∏ j=1 u m i,j j , Finally, C returns a signature σ i = (σ i,1 , σ i,2 , T i ) on m i to F .

Correctness:
We show that σ i = (σ i,1 , σ i,2 , T i ) is a valid signature on m i as follows: Simulating queries: C responds to this kind of query in the same way as in Signing queries.

•
Verifying queries: F requests a verification query on a signature Table T r and extracts r i from T r . Then, C computes h i = H 2 (m i , σ i,2 , T i ), F(m i ) and J(m i ), and checks whether If this equation holds, C returns 1 to F ; otherwise, C returns 0 to F . and outputs e(g, g) abc as follows: Here, we discuss the probability of C successfully solving the BDH problem instance. If C does not abort in the above simulation, then the following conditions must hold: Hence, the probability that C completes the whole simulation is Pr[E i ∩ E * ]. According to Waters' proof [21], we have Therefore, if F breaks the strong unforgeability of the SDVS-USU scheme with probability ε, then C can solve the BDH problem with probability at least ε 8(n+1)(q S +q Sim +q V ) .
The randomness of (σ 1 , σ 2 , T) is determined by the random value r ∈ Z p , and the randomness of (σ 1 , σ 2 , T ) depends on the random value s ∈ Z p . Since r and s are randomly selected from Z p , the distribution of the real signature (σ 1 , σ 2 , T) and the simulated signature (σ 1 , σ 2 , T ) is computationally indistinguishable. Namely, it is infeasible to distinguish σ and σ without knowing the private key of the signer, the designated verifier or the arbiter. Hence, the SDVS-USU scheme satisfies the non-transferable property.

Theorem 3.
Our SDVS scheme is secure against the privacy of the signer's identity under the DBDH assumption.

Proof of Theorem 3.
Suppose there exists a PPT distinguisher D who breaks the privacy of the signer's identity of the SDVS-USU scheme. Then, we can construct an algorithm B to solve the DBDH problem. Given a random instance (g, g a , g b , g c , Z) of the DBDH problem, where unknown a, b, c ∈ Z p and Z ∈ G 2 , the B's goal is to determine if Z is equal to e(g, g) abc .
• Setup: B simulates the Setup algorithm by performing the following steps: 1.

3.
Set sk S 0 ↔V = Z as the common secret key between S 0 and V, and sk S 1 ↔V = e(g k 1 , g c ) k 2 as the common secret key between S 1 and V.

4.
Pick two collision-resistant hash functions Send the public parameters params = (G 1 , G 2 , p, g, e, u 0 , v, u, H 1 , H 2 ) and (pk S 0 , pk S 1 , pk V , pk A ) to D. 1. Select a random integer r i ∈ Z p , and compute σ i,2 = g r i .

2.
Pick a random element T i ∈ G 1 , and compute w i = u 0 Correctness: We show that the above signature σ i = (σ i,1 , σ i,2 , T i ) produced by the Signing query is correct since • Challenge: When D submits a challenge message m * = (m * 1 , ..., m * n ), B proceeds as follows: 1.
• Query phase 2: D continues to issue various queries as in Query phase 1 except that D cannot make a signature verification query on (m * , σ * , d * ) for any d * ∈ {0, 1}. • Output: D outputs a value d ∈ {0, 1}. If d = d , indicating Z = e(g, g) abc , B outputs 1; else, indicating Z is a random element in G 2 , B outputs 0.
From the above simulation, we can see that B does not exit in the whole simulation. Therefore, if D breaks the PSI property of the SDVS-USU scheme with probability ε, then B can solve the DBDH problem instance with probability of 1 2 + ε.

3.
Check e(T, g) = T S or e(T, g) = T V . If e(T, g) = T S , the arbiter confirmsσ is created by the signer. If e(T, g) = T V , the arbiter confirmsσ is produced by the designated verifier.
In the proposed scheme, a signature from the signer has the form T = (pk A ) k S,1 k S,2 H 1 (m,σ 2 ) , while a signature from the designated verifier has the form T = (pk A ) k V,1 k V,2 H 1 (m,σ 2 ) . The arbiter can independently prove the real signer of any valid signature by verifying e(T, g) = T S or e(T, g) = T V with probability 1. Therefore, the SDVS-USU scheme holds the undeniability property.

Comparison
The SDVS-USU scheme is compared with other SDVS schemes [14,18,20] in terms of performance and security properties. In Tables 1 and 2, the Size, Sign and Verify columns represent the size of a signature, and the computational cost of signature generation and signature verification, respectively. The SU column shows whether the scheme is strongly unforgeable. The PSI column indicates whether the scheme has the PSI property. The Undeniability column shows whether the scheme is undeniable. The SM column indicates whether the scheme is secure in the standard model. Let p and q be two primes such that p = 2q + 1. Since the computational cost of some cryptographic operations such as modular multiplication, hash function or inverse is relatively small after being optimized by various technologies [34], we consider only the computationally expensive bilinear pairing and exponentiation operations in Table 1. We use the symbol P to denote one paring operation. E 1 , E 2 and E p denote one exponentiation operation in G 1 , G 2 and Z p , respectively. |G 1 |, |G 2 |, |p| and |q| represent the length of an element in G 1 , G 2 , Z p and Z q , respectively.

Scheme SU PSI SM Undeniability
Scheme I in [7] Yes No No Yes Scheme II in [7] Yes No No Yes Asaar et al. [11] No No Yes No Scheme I in [13] Yes Yes Yes No Scheme II in [13] Yes Yes Yes No Our scheme Yes Yes Yes Yes As can be seen in Tables 1 and 2, two SDVS schemes of Hu et al. [14] outperform other schemes in both signature length and computational overhead, but their two schemes are not proven to be secure in the standard model. For the length of signature, the SDVS-USU scheme has one more element in G 1 than Asaar et al.'s scheme [18] but is superior to Tian et al.'s two schemes [20]. The SDVS-USU scheme is able to perform some pre-computation, such as g k S,1 k S,2 in the signature generation phase and e(pk S,1 , pk S,2 ) k V,1 in the verification phase. Thus, the SDVS-USU scheme has comparable computation complexity with other schemes [18,20]. However, Asaar et al.'s scheme [18] does not have strong unforgeability and the PSI property. Moreover, none of Asaar et al.'s scheme [18] and Tian et al.'s [20] schemes holds the undeniable property. The SDVS-USU scheme has strong unforgeability and the PSI property in the standard model. Moreover, it achieves undeniability. Therefore, the SDVS-USU scheme has stronger security.
We carried out simulation experiments to evaluate the performance of the SDVS-USU scheme. The experimental environment was a laptop with Intel Core i7-6500 CPU@2.5 GHz and 8 GB memory. All simulation programs running on Microsoft Windows 10 operating system were based on PBC-0.47-VC library. Figure 1 illustrates that the signature size of the SDVS-USU scheme, Asaar et al.'s scheme [18] and Tian et al.'s two schemes [20] is 384 bits, 256 bits, 532 bits and 404 bits, respectively. Hence, the SDVS-USU scheme has shorter signature length. As shown in Figure 2, the length of the signer's private key in the SDVS-USU scheme is 40 bits, which is the same as that of Asaar et al.'s scheme [18] but larger than that of Tian et al.'s two schemes [20]. Moreover, the length of the designated verifier's private key in the SDVS-USU scheme is 40 bits, which is larger than that of Asaar et al.'s scheme [18] but smaller than that of Tian et al.'s two schemes [20]. In the signing phase, Asaar et al.'s scheme [18] requires two exponentiations and one pairing operation. The first SDVS scheme and the second SDVS scheme of Tian et al. [20] need six and five exponentiations, respectively. The SDVS-USU scheme requires four exponentiations and one pairing operation. Figure 3 shows that the computational performance of signature generation in the SDVS-USU scheme is comparable with other schemes [18,20]. We consider the optimization of the verifying process by pre-computing so that the signature verification algorithm of each scheme achieves the highest performance. In the verification phase, Asaar et al.'s scheme [18] actually requires one exponentiation and one pairing operation. The first SDVS scheme of Tian et al. [20] needs three hash functions, three exponentiations, one inverse and two pairing operations. The second SDVS scheme of Tian et al. [20] requires three hash functions, two exponentiations, one inverse and two pairing operations. The SDVS-USU scheme requires two exponentiations and one pairing operation. Figure 4 demonstrates that the computational cost of signature verification of the SDVS-USU scheme is more than that of Asaar et al.'s scheme [18] but less than Tian et al.'s two schemes [20].

Application in Outsourcing Computing in Cloud Computing
Cloud computing has strong computing power and storage capacity of big data. However, the cloud service provider (CSP) is not trusted by the user, and may steal the user's private information or deceive the user. Cloud computing allows resource-constrained users to outsource expensive computations to the CSP. Hence, it is very important to ensure the integrity of the computing task and the authenticity of the remote user's identity. Due to the limited computing ability of the user, the heavy computing task is outsourced to the CSP to complete. The CSP is able to authenticate a computing task outsourced by the user through a signature-based protocol. For the protection of private information, the user wants the designated CSP to be the only entity that can verify the legality of the signature on a computing task, and the CSP cannot reveal the signature to any third party at will. Since the ordinary digital signature has public verifiability and transferability, anyone can verify the validity of signatures by using the public key of the signer and obtain the real identity of the signer. Obviously, the ordinary digital signature scheme is not suitable for this scenario. The SDVS scheme is considered as one of the solutions to these problems, which can provide secret authentication service to the user in an outsourcing computation task. SDVS guarantees that a designated CSP can validate the user's signature on a computing task. At the same time, it ensures that the designated CSP does not convince others that the user is involved in a computing task.
However, most of the SDVS schemes cannot identify the real signature generator when the user and the cloud service provider dispute a signature, which may cause huge economic losses to the user or the CSP. Hence, the SDVS scheme without undeniability cannot handle a controversial computing task. For example, if the user denies the submission of a computing task for some reasons, then the CSP is forced to stop it. At the same time, if the CSP forges a user's signature on the computing task, then the user will take on the responsibility to pay for expensive computing cost. These economic losses are undesirable to the user or the CSP. The SDVS-USU scheme given in Section 3.2 is undeniable and strongly unforgeable, so it is more suitable for outsourcing computation in a cloud computing environment. The system model of outsourcing computation in cloud computing based on the SDVS-USU scheme is shown in Figure 5.

The user
The CSP There are three entities in the system: the user, the CSP and the arbiter. The process of outsourcing calculation is as follows.

1.
A user with limited computing resources uses his private key and the SDVS-USU scheme to generate a signature σ 1 for a computing task m 1 and sends (m 1 , σ 1 ) to the CSP.

2.
The CSP has powerful computing power. After verifying the validity of the signature σ 1 on m 1 to confirm this submission, the CSP performs the computational task of m 1 . Then, the CSP uses its private key and the SDVS-USU scheme to generate the signature σ 2 of the corresponding calculation result m 2 , and returns (m 2 , σ 2 ) to the user.

3.
If σ 2 is the valid signature of m 2 , the user accepts the calculation result returned by the CSP; otherwise, the user refuses to accept m 2 and accuses the CSP of malicious behavior.

4.
For a controversial computing task, the arbiter determines whether the user or the CSP is responsible for the economic loss of the computing task based on (m 1 , σ 1 ) and (m 2 , σ 2 ).
The SDVS-USU scheme is easily implemented as a software in cloud computing environments. For example, the signature algorithm Sign is installed on the user side, and the verification algorithm Vefify is installed on the CSP side. On the one hand, the user sends the computing task and the corresponding signature to the designated CSP. On the other hand, only the designated CSP can check the integrity of the computing task and the authenticity of the user's identity by verifying the validity of the signature, and vice versa. From the performance analysis results in Section 5, the SDVS-USU scheme has better computational performance while achieving the undeniable property. The length of the signer's private key, the designated verifier private key and signature are 40 bits, 40 bits and 384 bits, respectively. If the message length is 900 bits, the time cost for signing and verifying is approximately 0.12 s and 0.06 s, respectively. At present, an ordinary laptop configuration is at least Intel Core i3 CPU@2.1 GHz, 4 G memory and 256 GB hard disk storage space. The CSP has more computing power, thus the SDVS-USU scheme can be practically applied to cloud computing environments.

Conclusions
In this paper, we construct an undeniable SDVS scheme that satisfies strong unforgeability in the standard model. The performance analysis results show that the SDVS-USU scheme has better performance in terms of private key size, signature length and computational overhead. In the SDVS-USU scheme, strong unforgeability prevents hackers from using the existing message/signature pair to create a legal signature of the same message. Non-transferability ensures that hackers cannot know the identity of the real signer in a signature. PSI further protects the privacy of the signer's identity. Undeniability ensures that the signer and the designated verifier cannot deny messages that they have previously sent. Therefore, our SDVS scheme can guarantee the integrity of outsourced computing tasks and authenticate the identity of users in cloud computing. In the future, we will design an instance scenario to illustrate the feasibility of implementing the SDVS-USU scheme in the real world.
Author Contributions: X.Y., and G.C. wrote the paper; T.L., and R.L. proved the security; and M.W. and C.W. designed the experiments.