Next Article in Journal
Refined Inference on the Scale Parameter of the Generalized Logistic Distribution Based on Adjusted Profile Likelihood Functions
Next Article in Special Issue
Controlling the Difficulty of Combinatorial Optimization Problems for Fair Proof-of-Useful-Work-Based Blockchain Consensus Protocol
Previous Article in Journal
Symmetry, Special Functions and Number Theory
Previous Article in Special Issue
Proof-of-Useful-Work: BlockChain Mining by Solving Real-Life Optimization Problems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

New Identified Strategies to Forge Multivariate Signature Schemes

by
Nurul Amiera Sakinah Abdul Jamal
1,†,
Muhammad Rezal Kamel Ariffin
1,2,*,†,
Siti Hasana Sapar
2,*,† and
Kamilah Abdullah
1,3,†
1
Institute for Mathematical Research (INSPEM), Universiti Putra Malaysia, Serdang 43400, Selangor, Malaysia
2
Department of Mathematics and Statistics, Faculty of Science, Universiti Putra Malaysia, Serdang 43400, Selangor, Malaysia
3
Department of Mathematics, Faculty of Computer and Mathematical Sciences, Universiti Teknologi MARA Shah Alam, Shah Alam 40450, Selangor, Malaysia
*
Authors to whom correspondence should be addressed.
These authors contributed equally to this work.
Symmetry 2022, 14(11), 2368; https://doi.org/10.3390/sym14112368
Submission received: 30 September 2022 / Revised: 31 October 2022 / Accepted: 1 November 2022 / Published: 10 November 2022

Abstract

:
A rogue certificate authority (RCA) is a dishonest entity that has the trust of web browsers and users to produce valid key pairs which are vulnerable. This work analyses two acknowledged post-quantum secure Multivariate Quadratic Problem (MQP) based signature schemes, namely the UOV and Rainbow signature schemes that obtain their key pair from a potential RCA methodology. We revisit two and provide a novel RCA methodology that would enable adversaries to forge UOV and Rainbow signatures. We also lay out two strategies to identify whether the public parameters are generated by the first two methodologies. To this end, strategies to identify the third strategy remain elusive. As such, the UOV and Rainbow schemes remain vulnerable to forgery if it was forged via the third methodology.

1. Introduction

Asymmetric key cryptosystems have solved the key distribution problem arising from the widespread use of symmetric key cryptosystems. In contrast to symmetric key cryptosystems which utilize the same key to encrypt and decrypt, asymmetric key cryptosystems use different keys known as public and private keys. Furthermore, asymmetric key cryptosystems not only solve the key distribution problem and provide confidentiality but also provide entity authentication, preserve message integrity and prevent identity repudiation. The public–private key pair is generated by the Certificate Authority (CA). However, a client might receive key pairs generated from a rogue Certificate Authority (RCA) who hides the fact that the produced key pairs have weaknesses that are only known to nobody else except the RCA [1]. The public key which works perfectly and satisfies the public security requirements during the key generation process, can be manipulated by an adversary in order to recover the secret parameters.
A digital signature is defined as a mathematical procedure which provides the authenticity and integrity of a message. The private signing key is used in the signing algorithm to sign the document and produce valid signatures; meanwhile, the public key is used in the verification algorithm to verify the validity of the signature corresponding to the document. In addition, forgery is an act of making a copy of a valid signature or document in order to deceive someone.
In 1994, [2] proved that classical cryptography will be no longer secure in the existence of a quantum computer. A quantum computer can solve hard problems such as Integer Factorization Problem (IFP) [3] and Discrete Log Problem (DLP) [4] in polynomial time. Hence, we require post-quantum cryptography algorithms which are resistant to a quantum computer. Among the candidates of post-quantum cryptography is multivariate cryptography.
In multivariate public key cryptography (MPKC), the underlying hard problem is defined as the Multivariate Quadratic Problem (MQP). In MQP, P = ( p ( 1 ) , , p ( m ) ) is a system of m quadratic equations in n variables under the finite field F q . One needs to identify a vector x = ( x 1 , , x n ) such that the system of polynomials P ( x ) = 0 [5]. In order to forge a multivariate signature scheme, one has either to produce a valid signature s’ such that P ( s ) = z = z or recover secret keys S , F and T .
The Unbalanced Oil and Vinegar (UOV) scheme by [6] requires one to choose o number of equations and n = o + v number of variables where v > o . This is an amendment to the Oil and Vinegar (OV) scheme [7] that was successfully cryptoanalysed by Kipnis and Shamir attack [8]. The initial OV scheme sets v = o [7]. On the other hand, the Rainbow signature scheme [9] is a multilayer version of UOV with smaller key and signature sizes which initiate better performance. In 2017, another version of UOV which utilizes smaller key and signature sizes was proposed and coined the LUOV cryptosystem [10]. In 2020, Petzolt proposed an algorithm to speed up the key generation of Rainbow [11].
The National Institute of Standards and Technology (NIST) announced the request for nominations for public key post-quantum cryptographic algorithms in 2016 in preparation for the quantum computing era. Since then, many quantum algorithms resistant to quantum computers have been proposed, including [12,13,14,15,16]. The Rainbow signature scheme successfully advanced from Round 1 to Round 2 and was one of the finalists for the third-round candidates for digital signature algorithms other than CRYSTALS-DILITHIUM [17] and FALCON [18] whereas, Classic McEliece [19], CRYSTALS-Kyber [20], NTRU [21] and SABER [22] are the finalists for encryption algorithms. In 2020, Beullens [23] proposed two new attacks on Rainbow; the intersection attack which also works on the UOV scheme and the rectangular MinRank attack. Both attacks greatly reduce the key recovery cost and in consequence, the parameter sets fail to meet the security requirements set out by NIST. Additionally, another Beullens’ key recovery attack that completely breaks the Rainbow scheme on security SL1 disqualified it from making it to Round 4 [24]. Despite the total break of the Rainbow scheme, Cartor et al. [25] suggested adding an internal perturbation modifier in order to mend the scheme and make it secure again.

2. Related Works

The concept of an equivalent public key was first introduced in [26] where they generalized equivalent keys to increase the efficiency of algebraic key recovery attacks. [27] implemented the concept of an equivalent public key to give a detailed security analysis of their proposed encryption scheme. Furthermore, [28] showed that the algebraic system of an EFC public key has lower degree equations during the Gröbner basis computation compared to a random system having the same size. Consequently, solving the algebraic system of an EFC public key becomes simpler and easier.
We aim to construct the weakened multivariate signature schemes by focusing on generating the public–private key pair of which its vulnerability is only known to the RCA. The public key system P of multivariate signature schemes will be constructed by inducing some weaknesses but still inherits randomness. Furthermore, we put forward strategies to identify them so that the users could conduct due diligence upon receiving the key pair.
In this work, we provide three potential methodologies that could be executed by an RCA which will expose UOV and Rainbow signature schemes to forgery. All three methodologies are able to forge the UOV signature scheme, whilst the Rainbow signature scheme is only vulnerable to one methodology. We also discuss the reason why the Rainbow signature scheme is secure against the first and second forgery mechanisms. In addition, we provide two strategies to identify whether the public key of UOV and Rainbow signature schemes obtained from a potential RCA, has the potential to be utilized to forge signatures. Consequently, the users of the UOV and Rainbow signature schemes can refuse to use the key pairs from the RCA.
The layout of the paper is structured as follows. In Section 3, we summarize the UOV and Rainbow signature schemes. Section 4 summarizes the three forgery mechanisms denoted by DSFM1, DSFM2 and DSFM3. We also discuss methods to identify whether one is provided weak parameters via DSFM1 and DSFM2 methodologies. Moreover, in Section 5, we present our main results which show that the UOV scheme is vulnerable against the mentioned forgery mechanisms. We also provide examples for illustrative purposes. Moving on to Section 6, we discuss the reason why the Rainbow scheme is not vulnerable to DSFM1 and DSFM2. Next, we show that both UOV and Rainbow schemes are vulnerable against DSFM3 in Section 7. Section 8 provides the discussion from our work for comprehensive understanding. Finally, we conclude our work in Section 9.

3. Multivariate Signature Schemes

In this section, we show the key generation, signing and verification processes of two multivariate signature schemes, namely the UOV and Rainbow signature schemes.
The UOV signature scheme can be described as follow.

3.1. UOV Digital Signature

Let F q be a finite field with q elements. The number of equations is equal to o and the number of variables is equal to n = o + v where v > o . Let V = 1 , , v and O = v + 1 , , n . x 1 , , x v be known as the Vinegar variables and x v + 1 , , x n known as the Oil variables.
Key Generation: Choose an affine map T : F n F n and a central map F : F n F o which consists of o quadratic polynomials f ( 1 ) , , f ( o ) of the form
f ( k ) = a , b V α a , b ( k ) x a x b + a V , b O β a , b ( k ) x a x b + a V O γ a ( k ) x a + δ ( k ) ( k = 1 , , o ) .
The private key consists of the two maps F : F n F o and T : F n F n , whereas the public key is the composed map P = F T consisting of o quadratic polynomials in n variables.
Signature Generation: To generate a signature z F n for a document d, one uses a hash function H : { 0 , 1 } F o to compute the hash value w = H ( d ) F o and perform the following steps.
  • Find a pre-image y F n of w under the central map F .
    • Choose random values for the Vinegar variables y 1 , , y v and substitute them into the polynomials f ( 1 ) , , f ( o ) .
    • Choose the resulting linear system of o equations in the o Oil variables y v + 1 , , y n by Gaussian elimination. If the system does not have a solution, choose other values for the vinegar variables x 1 , , x v and try again.
  • Compute the signature z F n by z = T 1 ( y ) .
Signature Verification: To check if z F n is indeed a valid signature for the document d, one computes w = H ( d ) F o and computes w = P ( z ) = F o . If w = w holds, the signature z is accepted, otherwise rejected.
Next, we describe the Rainbow signature scheme as follows.

3.2. Rainbow Digital Signature

Key Generation: Let F q be a finite field with q elements. Let v 1 , , v u + 1 be integers such that 0 < v 1 < v 2 , < v u < v u + 1 = n and define the sets of integers V i = { 1 , , v i } for i = 1 , , u . We set o i = v i + 1 v i and O i = { v i + 1 , , v i + 1 } for i = 1 , , u . We have | O i | = o i .
The central map F consists of m = n v 1 polynomials f ( v 1 + 1 ) , , f ( n ) F [ x 1 , , x n ] of the form
f ( k ) ( x ) = a , b V , a b α a , b ( k ) x a x b + a O , b V β a , b ( k ) x a x b + a V O γ a ( k ) x a + η ( k ) ( k = v 1 + 1 , , n ) ,
where is the only integer such that k O .
To hide the structure of F in the public key, one composes it with two invertible affine maps S : F m F m and T : F n F n . Hence, the public key has the form P = S F T : F n F m , the private key consists of the three maps S , F and T .
The following Algorithm 1 is to compute the inversion of the Rainbow central map.
Algorithm 1 Inversion of the Rainbow central map.
Input: Rainbow central map F = ( f ( v 1 + 1 ) , , f ( n ) , vector x F m .
Output: Vector y F n with F ( y ) = x .
  • Choose random values for the variables y 1 , , y v 1 and substitute them into the polynomials f ( i ) ( i = v 1 + 1 , , n ) .
  • for = 1 to u do
  •      Perform Gaussian Elimination on the polynomials f ( i ) ( i O ) to get the values of the variables x i ( i O ) .
  •      Substitute the values of x i ( i O ) into the polynomials f ( i ) ( i = v + 1 + 1 , , n ) .
  • end for
Signature Generation: To generate a signature for a message d, one uses a hash function H : { 0 , 1 } F m to compute the hash value w = H ( d ) F m and perform the following steps.
  • Compute x = S 1 ( w ) F m .
  • Compute a pre-image y F n of x under the central map F . This is done utilizing Algorithm 1.
  • Compute the signature z F n by z = T 1 ( y ) .
Signature Verification: To check, if z F n is indeed a valid signature for the document d, one computes w = H ( d ) F m and computes w = P ( z ) = F m . If w = w holds, the signature z is accepted, otherwise rejected.

4. Novel Forgery Mechanisms for Multivariate Signature Schemes

This section outlines two forgery mechanisms which were first made known to the public by our research group during The International Conference on Mathematical Sciences and Technology 2022 (MathTech 2022) [29] namely the DSFM1 and DSFM2 mechanisms. We also provide another novel mechanism in this section, known as DSFM3. Upon executing these three methods on multivariate signature schemes, it would enable an adversary to forge signatures without the knowledge of ( S , F , T ) .

4.1. Digital Signature Forgery Mechanism 1 (DSFM1)

In this subsection, a public key system P which is generated by DSFM1 would enable forgery by those who know about it. The DSFM1 would result in polynomials in P to be multiples of each other. As such, one needs to solve only one of the polynomials p ( i ) ( i = 1 , , m ) . This is due to the fact that a vector x = ( x 1 , , x m ) which satisfies p ( i ) ( x ) = 0 also satisfies the other polynomials in the same system P .

4.1.1. Generating DSFM1 Induced System of Equations

The following Algorithm 2 induces DSFM1 weaknesses on a system of equations.
Algorithm 2 Digital Signature Forgery Mechanism 1
Input: Integer q.
Output: Public key system P : F n F m over F q .
  • Choose two random invertible affine maps S : F m F m and T : F n F n .
  • Choose a central map F : F n F m of which its polynomials can also be written as f ( j ) = k j f ( 1 ) where k j Z q .
  • Compute P = S F T .

4.1.2. Identifying DSFM1

The user can check whether the public key system P received is a forgeable system via DSFM1 or not by utilizing the following Algorithm 3.
Algorithm 3 Identifying DSFM1
Input: The system P = ( p ( 1 ) , , p ( m ) ) of multivariate quadratic polynomials over F q
Output: P is a forgeable system
  • for j = 2 to m do
  •      k j = c p ( j ) · c p ( 1 ) 1 mod q where c p ( j ) and c p ( 1 ) are the coefficients of polynomial p ( j ) and p ( 1 ) , respectively.
  •     If p ( j ) = k j p ( 1 ) where k j Z q , then P is a forgeable system.
  • end for
  • return

4.2. Digital Signature Forgery Mechanism 2 (DSFM2)

In this subsection, a public key system P which is generated by DSFM2 would enable forgery by those who know about it. The DSFM2 would result in polynomials in P to be summations of each other. As such, one needs to solve only two of the polynomials p ( i ) and p ( k ) where p ( j ) = p ( i ) + p ( k ) . This is due to the fact that a vector x = ( x 1 , , x m ) which satisfies p ( i ) ( x ) = 0 and p ( k ) ( x ) = 0 also satisfies the other polynomials in the same system P .

4.2.1. Generating DSFM2 Induced System of Equations

The following Algorithm 4 induces DSFM2 weaknesses in a system of equations.
Algorithm 4 Digital Signature Forgery Mechanism 2
Input: Integer q.
Output: Public key system P : F n F m over F q .
  • Choose two secret invertible affine maps S : F 2 F 2 and T : F n F n .
  • Choose a secret central map F : F n F 2 .
  • Compute S F T to output two equations p ( 1 ) and p ( 2 ) . For p ( j ) ( j = 3 , , m ) , set p ( j ) = p ( i ) + p ( k ) where i = 1 , , j 1 and k = 1 , , j 1 .
  • Publish P = ( p ( 1 ) , , p ( m ) ) as public key over F q .

4.2.2. Identifying DSFM2

The user can check whether the public key system P received is a forgeable system via DSFM2 or not by utilizing the following Algorithm 5.
Algorithm 5 Identifying DSFM2
Input: The system P = ( p ( 1 ) , , p ( m ) ) of multivariate quadratic polynomials over F q
Output: P is a forgeable system
  • for j = 3 to m do
  •     for  i = 1 to j 1  do
  •        for  k = i to j 1  do
  •             p ( i ) + p ( k )
  •            If p ( j ) = p ( i ) + p ( k ) , then P is a forgeable system.
  •        end for
  •     end for
  • end for
  • return

4.3. Digital Signature Forgery Mechanism 3 (DSFM3)

In this subsection, we discuss the method to forge multivariate signature schemes without having to alter the construction of the public key system P . This is due to the fact that if an adversary successfully solicits x from an RCA and solves P ( x + α ) = w for some α Z q , the adversary can forge the signature z corresponding to the hash value w = H ( d ) .

Generating DSFM3 Forged Signature

The following Algorithm 6 explains DSFM3.
Algorithm 6 Digital Signature Forgery Mechanism 3
Input: Public key P = ( p ( 1 ) , , p ( m ) ) , x = ( x 1 , , x n ) such that P ( x ) = 0 and w = ( w 1 , , w m )
Output: Signature z’ such that P ( z ) = w = w
  • Compute P ( x + α ) = ( p ( 1 ) ( x 1 + α , , x n + α ) , , p ( m ) ( x 1 + α , , x n + α ) ) where α is an unknown variable.
  • Solve m equations in the single variable α such that P ( x + α ) = w .
  • Set z = x + α = ( x 1 + α , , x n + α ) .
In Steps 1 and 2, computing and solving P ( x + α ) = w would reduce the number of unknowns from n variables to only one variable. Instead of solving m equations in n variables, the adversary only needs to solve m univariable equations which is much easier.

5. Generating Weak UOV Signature Scheme

In this section, we show how a weak UOV signature scheme is generated by RCA from DSFM1 and DSFM2.

5.1. Generating Weak UOV Signature Scheme by DSFM1

From DSFM1, we put forward an algorithm to generate a weak UOV public key. In other words, we set up the UOV public key which is P , where all of its polynomials satisfy the original form and also can be written into multiples of each other. The following Algorithm 7 explains the key generation of weak UOV signature scheme by DSFM1.
Algorithm 7 Key Generation of Weak UOV Signature Scheme by DSFM1
Input: Integers o and v such that v > o and n = o + v . Let V = 1 , , v and O = v + 1 , , n . Let x 1 , , x v be the Vinegar variables and x v + 1 , , x n be the Oil variables.
Output: Public key P in the form of p ( j ) = k j p ( 1 ) for j = 2 , , o .
  • Choose a random invertible affine map T : F n F n .
  • Choose a random polynomial f ( 1 ) of the form
    f ( 1 ) = a , b V α a , b ( 1 ) x a x b + a V , b O β a , b ( 1 ) x a x b + a V O γ a ( 1 ) x a + δ ( 1 )
    and for j = 2 , , m compute f ( j ) = k j f ( 1 ) where k j Z q . Set the central map F = ( f ( 1 ) , , f ( o ) ) : F n F o .
  • Compute P = F T . The system P = ( p ( 1 ) , , p ( o ) ) consists of o quadratic polynomials in n variables.
To pass through the verification, the vectors in w must be multiple to each other, otherwise the verification fails. This is because, the polynomials in public key system P and the central map F are of the form p ( j ) = k j p ( 1 ) and f ( j ) = k j f ( 1 ) , respectively. The following Algorithm 8 explains the signature generation of weak UOV signature scheme by DSFM1.
Algorithm 8 Signature Generation of Weak UOV Signature Scheme by DSFM1
Input: Document d
Output: Signature z
  • Compute w = H ( d ) F o such that w j = k j w 1 ( j = 2 , , o ) .
  • Find a pre-image y F n of w under the central map F .
    • Choose random values for the Vinegar variables y 1 , , y v and substitute them into the polynomials f ( 1 ) , , f ( o ) .
    • Choose the resulting linear system of o equations in the o Oil variables y v + 1 , , y n by Gaussian elimination. If the system does not have a solution, choose other values for the vinegar variables x 1 , , x v and try again.
  • Compute the signature z F n by z = T 1 ( y ) .
The signature verification of the UOV signature scheme generated by DSFM1 as in Algorithm 9 below works the same as the original UOV.
Algorithm 9 Signature Verification of Weak UOV Signature Scheme by DSFM1
Input: Public key P , document d and signature z
Output: Accept or reject signature
  • Compute w = H ( d ) F o
  • Compute w = P ( z )
  • If w = w holds, the signature z is accepted, otherwise rejected.
In the following example, we illustrate the generation of a weak UOV scheme via the DSFM1 methodology as well as the signing and verification process. The example below shows that a weak UOV scheme can still be used by a user without suspicion since the constants seem randomized and the signing and verification work as normal.
Example 1.
We will discuss key generation, signing and verification on F = G F ( 7 ) .
Key Generation: We choose ( o , v ) = ( 3 , 5 ) , which will lead to a public key of 3 quadratic equations in 8 variables. The private key consists of the affine map T : F 8 F 8 .
T ( x 1 , , x 8 ) = 2 1 5 3 1 0 3 2 4 4 1 6 2 1 4 2 3 5 3 2 1 6 4 0 5 5 3 5 6 2 3 4 1 0 1 2 4 2 5 5 3 1 1 5 1 0 6 2 1 1 2 1 6 5 2 3 0 3 4 1 6 5 6 1 x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 + 1 0 4 3 6 5 4 2
and the central map F : F 8 F 3 is given by polynomials
f ( 1 ) = x 1 2 + x 1 x 2 + 3 x 1 x 3 + 2 x 1 x 4 + 6 x 1 x 5 + 4 x 1 x 6 + 2 x 1 x 7 + 5 x 1 x 8 + 3 x 2 2 + x 2 x 3 + 5 x 2 x 4 + x 2 x 6 + 3 x 2 x 7 + 3 x 2 x 8 + 4 x 3 x 4 + 6 x 3 x 6 + 2 x 3 x 7 + 5 x 3 x 8 + 4 x 4 x 5 + 5 x 4 x 6 + 3 x 4 x 7 + 2 x 4 x 8 + 3 x 2 + 6 x 3 + 3 x 4 + 5 x 5 + 6 x 6 + 2 x 7 + 2 x 8 + 4 f ( 2 ) = 2 f ( 1 ) ( m o d 7 ) = 2 x 1 2 + 2 x 1 x 2 + 6 x 1 x 3 + 4 x 1 x 4 + 5 x 1 x 5 + x 1 x 6 + 4 x 1 x 7 + 3 x 1 x 8 + 6 x 2 2 + 2 x 2 x 3 + 3 x 2 x 4 + 2 x 2 x 6 + 6 x 2 x 7 + 6 x 2 x 8 + x 3 x 4 + 5 x 3 x 6 + 4 x 3 x 7 + 3 x 3 x 8 + x 4 x 5 + 3 x 4 x 6 + 6 x 4 x 7 + 4 x 4 x 8 + 6 x 2 + 5 x 3 + 6 x 4 + 3 x 5 + 5 x 6 + 4 x 7 + 4 x 8 + 1 f ( 3 ) = 5 f ( 1 ) ( m o d 7 ) = 5 x 1 2 + 5 x 1 x 2 + x 1 x 3 + 3 x 1 x 4 + 2 x 1 x 5 + 6 x 1 x 6 + 3 x 1 x 7 + 4 x 1 x 8 + x 2 2 + 5 x 2 x 3 + 4 x 2 x 4 + 5 x 2 x 6 + x 2 x 7 + x 2 x 8 + 6 x 3 x 4 + 2 x 3 x 6 + 3 x 3 x 7 + 4 x 3 x 8 + 6 x 4 x 5 + 4 x 4 x 6 + x 4 x 7 + 3 x 4 x 8 + x 2 + 2 x 3 + x 4 + 4 x 5 + 2 x 6 + 3 x 7 + 3 x 8 + 6
We compute the public key P = ( p ( 1 ) , p ( 2 ) , p ( 3 ) ) : F 8 F 3 by P = F T , which results in
p ( 1 ) = 3 x 1 x 2 + 2 x 1 x 3 + 5 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 5 x 1 x 7 + 6 x 1 x 8 + 3 x 2 2 + 6 x 2 x 3 + 2 x 2 x 4 + 6 x 2 x 5 + 6 x 3 2 + 5 x 3 x 4 + x 3 x 5 + 6 x 3 x 6 + 6 x 3 x 8 + 6 x 4 2 + 4 x 4 x 6 + 6 x 4 x 8 + 5 x 5 2 + 2 x 5 x 6 + 4 x 5 x 7 + 2 x 5 x 8 + 2 x 6 2 + x 6 x 7 + 5 x 6 x 8 + 2 x 7 2 + 3 x 7 x 8 + 2 x 8 2 + 3 x 1 + 4 x 2 + 2 x 3 + x 4 + 4 x 5 + 3 x 6 + 4 x 7 + 2 x 8 p ( 2 ) = 6 x 1 x 2 + 4 x 1 x 3 + 3 x 1 x 4 + 5 x 1 x 5 + 2 x 1 x 6 + 3 x 1 x 7 + 5 x 1 x 8 + 6 x 2 2 + 5 x 2 x 3 + 4 x 2 x 4 + 5 x 2 x 5 + 5 x 3 2 + 3 x 3 x 4 + 2 x 3 x 5 + 5 x 3 x 6 + 5 x 3 x 8 + 5 x 4 2 + x 4 x 6 + 5 x 4 x 8 + 3 x 5 2 + 4 x 5 x 6 + x 5 x 7 + 4 x 5 x 8 + 4 x 6 2 + 2 x 6 x 7 + 3 x 6 x 8 + 4 x 7 2 + 6 x 7 x 8 + 4 x 8 2 + 6 x 1 + x 2 + 4 x 3 + 2 x 4 + x 5 + 6 x 6 + x 7 + 4 x 8 p ( 3 ) = x 1 x 2 + 3 x 1 x 3 + 4 x 1 x 4 + 2 x 1 x 5 + 5 x 1 x 6 + 4 x 1 x 7 + 2 x 1 x 8 + x 2 2 + 2 x 2 x 3 + 3 x 2 x 4 + 2 x 2 x 5 + 2 x 3 2 + 4 x 3 x 4 + 5 x 3 x 5 + 2 x 3 x 6 + 2 x 3 x 8 + 2 x 4 2 + 6 x 4 x 6 + 2 x 4 x 8 + 4 x 5 2 + 3 x 5 x 6 + 6 x 5 x 7 + 3 x 5 x 8 + 3 x 6 2 + 5 x 6 x 7 + 4 x 6 x 8 + 3 x 7 2 + x 7 x 8 + 3 x 8 2 + x 1 + 6 x 2 + 3 x 3 + 5 x 4 + 6 x 5 + x 6 + 6 x 7 + 3 x 8 .
Signature Generation: In order to generate a signature for the message w = ( 3 , 6 , 1 ) , we first need to compute y = F 1 ( w ) . We choose random values for the Vinegar variables ( x 1 , x 2 , x 3 , x 4 , x 5 ) = ( 3 , 3 , 6 , 1 , 2 ) and substitute them into the polynomials f ( 1 ) , f ( 2 ) and f ( 3 ) . Thus, we obtain a linear system in the Oil variables x 6 , x 7 and x 8 of the form
f ¯ ( 1 ) = 6 x 6 + 4 x 7 + 2 x 8 + 6 f ¯ ( 2 ) = 5 x 6 + x 7 + 4 x 8 + 4 f ¯ ( 3 ) = 2 x 6 + 6 x 7 + 3 x 8 + 3 .
By Gaussian elimination, this system has the solution ( x 6 , x 7 , x 8 ) = ( 0 , 4 , 3 ) . Attaching the Vinegar variables yields
y = F 1 ( w ) = ( 3 , 3 , 6 , 1 , 2 , 0 , 4 , 3 ) .
Finally, we compute
z = T 1 ( y ) = ( 5 , 5 , 3 , 2 , 5 , 4 , 1 , 0 )
to obtain a signature z F 8 for the messagew.
Signature Verification: In order to check ifzis indeed a valid signature for the messagew, we compute
w = P ( z ) = ( 3 , 6 , 1 ) .
Since w = w holds, the signature is accepted.

5.1.1. A Weakened DSFM1 UOV Signature Scheme Forgery Methodology

The algorithm to forge the signature of a weak UOV scheme by DSFM1 is described in Algorithm 10 as below.
Algorithm 10 Forgery of Weakened DSFM1 UOV Signature Scheme
Input: Public key P , document d
Output: Signature z’ such that P ( z ) = w = w
  • Solve p ( 1 ) ( x ) = 0 and obtain z = ( z 1 , , z o ) .
Since p ( j ) = k j p ( 1 ) , solving one of the polynomials would solve the whole system P .
In the following example, we show how an impersonator successfully forge the signature of a weakened DSFM1 UOV scheme.
Example 2.
Given the public key P = ( p ( 1 ) , p ( 2 ) , p ( 3 ) ) of a weakened DSFM1 UOV scheme as in Example 1:
p ( 1 ) = 3 x 1 x 2 + 2 x 1 x 3 + 5 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 5 x 1 x 7 + 6 x 1 x 8 + 3 x 2 2 + 6 x 2 x 3 + 2 x 2 x 4 + 6 x 2 x 5 + 6 x 3 2 + 5 x 3 x 4 + x 3 x 5 + 6 x 3 x 6 + 6 x 3 x 8 + 6 x 4 2 + 4 x 4 x 6 + 6 x 4 x 8 + 5 x 5 2 + 2 x 5 x 6 + 4 x 5 x 7 + 2 x 5 x 8 + 2 x 6 2 + x 6 x 7 + 5 x 6 x 8 + 2 x 7 2 + 3 x 7 x 8 + 2 x 8 2 + 3 x 1 + 4 x 2 + 2 x 3 + x 4 + 4 x 5 + 3 x 6 + 4 x 7 + 2 x 8 p ( 2 ) = 6 x 1 x 2 + 4 x 1 x 3 + 3 x 1 x 4 + 5 x 1 x 5 + 2 x 1 x 6 + 3 x 1 x 7 + 5 x 1 x 8 + 6 x 2 2 + 5 x 2 x 3 + 4 x 2 x 4 + 5 x 2 x 5 + 5 x 3 2 + 3 x 3 x 4 + 2 x 3 x 5 + 5 x 3 x 6 + 5 x 3 x 8 + 5 x 4 2 + x 4 x 6 + 5 x 4 x 8 + 3 x 5 2 + 4 x 5 x 6 + x 5 x 7 + 4 x 5 x 8 + 4 x 6 2 + 2 x 6 x 7 + 3 x 6 x 8 + 4 x 7 2 + 6 x 7 x 8 + 4 x 8 2 + 6 x 1 + x 2 + 4 x 3 + 2 x 4 + x 5 + 6 x 6 + x 7 + 4 x 8 p ( 3 ) = x 1 x 2 + 3 x 1 x 3 + 4 x 1 x 4 + 2 x 1 x 5 + 5 x 1 x 6 + 4 x 1 x 7 + 2 x 1 x 8 + x 2 2 + 2 x 2 x 3 + 3 x 2 x 4 + 2 x 2 x 5 + 2 x 3 2 + 4 x 3 x 4 + 5 x 3 x 5 + 2 x 3 x 6 + 2 x 3 x 8 + 2 x 4 2 + 6 x 4 x 6 + 2 x 4 x 8 + 4 x 5 2 + 3 x 5 x 6 + 6 x 5 x 7 + 3 x 5 x 8 + 3 x 6 2 + 5 x 6 x 7 + 4 x 6 x 8 + 3 x 7 2 + x 7 x 8 + 3 x 8 2 + x 1 + 6 x 2 + 3 x 3 + 5 x 4 + 6 x 5 + x 6 + 6 x 7 + 3 x 8 .
Letw = ( 3 , 6 , 1 ) . The impersonator computes p ¯ ( i ) = p ( i ) w i ( m o d 7 ) where i = 1 , 2 , 3 . Then, to solve p ¯ ( 1 ) ( x ) = 0 , he chooses random variables ( x 1 , x 2 , x 3 , x 4 , x 5 , x 6 , x 7 ) = ( 4 , 5 , 2 , 5 , 4 , 3 , 3 ) and substitutes them into p ¯ ( 1 ) which results a quadratic equation with one variable
2 x 8 2 + 2 x 8 + 3 = 0 .
Since this equation has two solutions x 8 = 1 and 5 hence the solution for p ( 1 ) are ( 4 , 5 , 2 , 5 , 4 , 3 , 3 , 1 ) and ( 4 , 5 , 2 , 5 , 4 , 3 , 3 , 5 ) . These solutions are also the solutions to p ( 2 ) and p ( 3 ) , which implies P ( z ) = w where z = ( 4 , 5 , 2 , 5 , 4 , 3 , 3 , 1 ) or z = ( 4 , 5 , 2 , 5 , 4 , 3 , 3 , 5 ) are the forged signatures. Indeed both z z = ( 5 , 5 , 3 , 2 , 5 , 4 , 1 , 0 ) .

5.1.2. Identifying a Weakened DSFM1 UOV Scheme

We can directly use Algorithm 3 to identify a weakened DSFM1 UOV scheme.
Example 3.
Given the public key P = ( p ( 1 ) , p ( 2 ) , p ( 3 ) ) of a weakened DSFM1 UOV scheme as in Example 1:
p ( 1 ) = 3 x 1 x 2 + 2 x 1 x 3 + 5 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 5 x 1 x 7 + 6 x 1 x 8 + 3 x 2 2 + 6 x 2 x 3 + 2 x 2 x 4 + 6 x 2 x 5 + 6 x 3 2 + 5 x 3 x 4 + x 3 x 5 + 6 x 3 x 6 + 6 x 3 x 8 + 6 x 4 2 + 4 x 4 x 6 + 6 x 4 x 8 + 5 x 5 2 + 2 x 5 x 6 + 4 x 5 x 7 + 2 x 5 x 8 + 2 x 6 2 + x 6 x 7 + 5 x 6 x 8 + 2 x 7 2 + 3 x 7 x 8 + 2 x 8 2 + 3 x 1 + 4 x 2 + 2 x 3 + x 4 + 4 x 5 + 3 x 6 + 4 x 7 + 2 x 8 p ( 2 ) = 6 x 1 x 2 + 4 x 1 x 3 + 3 x 1 x 4 + 5 x 1 x 5 + 2 x 1 x 6 + 3 x 1 x 7 + 5 x 1 x 8 + 6 x 2 2 + 5 x 2 x 3 + 4 x 2 x 4 + 5 x 2 x 5 + 5 x 3 2 + 3 x 3 x 4 + 2 x 3 x 5 + 5 x 3 x 6 + 5 x 3 x 8 + 5 x 4 2 + x 4 x 6 + 5 x 4 x 8 + 3 x 5 2 + 4 x 5 x 6 + x 5 x 7 + 4 x 5 x 8 + 4 x 6 2 + 2 x 6 x 7 + 3 x 6 x 8 + 4 x 7 2 + 6 x 7 x 8 + 4 x 8 2 + 6 x 1 + x 2 + 4 x 3 + 2 x 4 + x 5 + 6 x 6 + x 7 + 4 x 8 p ( 3 ) = x 1 x 2 + 3 x 1 x 3 + 4 x 1 x 4 + 2 x 1 x 5 + 5 x 1 x 6 + 4 x 1 x 7 + 2 x 1 x 8 + x 2 2 + 2 x 2 x 3 + 3 x 2 x 4 + 2 x 2 x 5 + 2 x 3 2 + 4 x 3 x 4 + 5 x 3 x 5 + 2 x 3 x 6 + 2 x 3 x 8 + 2 x 4 2 + 6 x 4 x 6 + 2 x 4 x 8 + 4 x 5 2 + 3 x 5 x 6 + 6 x 5 x 7 + 3 x 5 x 8 + 3 x 6 2 + 5 x 6 x 7 + 4 x 6 x 8 + 3 x 7 2 + x 7 x 8 + 3 x 8 2 + x 1 + 6 x 2 + 3 x 3 + 5 x 4 + 6 x 5 + x 6 + 6 x 7 + 3 x 8 .
To identify P is a forgeable system, we choose one coefficient from p ( 1 ) , p ( 2 ) and p ( 3 ) and compute
k 2 = 6 × 3 1 ( mod   7 ) = 2 k 3 = 1 × 3 1 ( mod   7 ) = 5 .
Since
p ( 2 ) = 2 × p ( 1 ) ( mod   7 ) p ( 3 ) = 5 × p ( 1 ) ( mod   7 )
is true, we have successfully identified that P is a forgeable system.

5.2. Generating Weak UOV Signature Scheme by DSFM2

From DSFM2, we put forward an algorithm to generate a weak UOV public key. In other words, we set up the UOV public key, which is P , where all its polynomials satisfy the original form and also can be written into summation of two polynomials from the same system. The following Algorithm 11 explains the key generation of weak UOV signature scheme by DSFM2.
Algorithm 11 Key Generation of Weak UOV Signature Scheme by DSFM2
Input: Integers o and v such that v > o and n = o + v . Let V = 1 , , v and O = v + 1 , , n . Let x 1 , , x v be the Vinegar variables and x v + 1 , , x n be the Oil variables.
Output: Public key P in the form of p ( j ) = p ( i ) + p ( k ) for j = 3 , , o , i = 1 , , j 1 and k = 1 , , j 1 .
  • Choose a random invertible affine map T : F n F n .
  • Choose a random polynomial f ( 1 ) ( x ) = 0 and f ( 2 ) ( x ) = 0 of the form
    f ( 1 , 2 ) = a , b V α a , b ( 1 , 2 ) x a x b + a V , b O β a , b ( 1 , 2 ) x a x b + a V O γ a ( 1 , 2 ) x a + δ ( 1 , 2 ) .
    For j = 3 , , o compute f ( j ) = f ( i ) + f ( k ) where i = 1 , , j 1 and k = 1 , , j 1 . Set the central map F = ( f ( 1 ) , , f ( o ) ) : F n F o .
  • Compute P = F T . The system P consists of o quadratic polynomials in n variables.
To pass through the verification, the vectors in w must be of the form w j = w i + w k , otherwise the verification fails. This is because, the polynomials in public key system P and the central map F are of the form p ( j ) = p ( i ) + p ( k ) and f ( j ) = f ( i ) + f ( k ) , respectively. The following Algorithm 12 explains the signature generation of weak UOV signature scheme by DSFM2.
Algorithm 12 Signature Generation of Weak UOV Signature Scheme by DSFM2
Input: Document d
Output: Signature z
  • Compute w = H ( d ) F o such that w j = w i + w k for j = 3 , , o , i = 1 , , j 1 , k = 1 , , j 1 .
  • Find a pre-image y F n of w under the central map F .
    • Choose random values for the Vinegar variables y 1 , , y v and substitute them into the polynomials f ( 1 ) , , f ( o ) .
    • Choose the resulting linear system of o equations in the o Oil variables y v + 1 , , y n by Gaussian elimination. If the system does not have a solution, choose other values for the vinegar variables x 1 , , x v and try again.
  • Compute the signature z F n by z = T 1 ( y ) .
The signature verification of the UOV signature scheme generated by DSFM1 as in Algorithm 13 below works the same as the original UOV.
Algorithm 13 Signature Verification of Weak UOV Signature Scheme by DSFM2
Input: Public key P , document d and signature z
Output: Accept or reject signature
  • Compute w = H ( d ) F o .
  • Compute w = P ( x ) .
  • If w = w holds, the signature z is accepted, otherwise rejected.
In the following example, we illustrate the generation of a weak UOV scheme via the DSFM2 methodology as well as the signing and verification process. The example below shows that a weak UOV scheme can still be used by a user without suspicion since the constants seem randomized and the signing and verification work as normal.
Example 4.
We will discuss key generation, signing and verification on F = G F ( 7 ) .
Key Generation: We choose F = G F ( 7 ) , and ( o , v ) = ( 3 , 5 ) , which will lead to a public key of 3 quadratic equations in 8 variables. The private key consists of the affine map T : F 8 F 8 .
T ( x 1 , , x 8 ) = 2 1 5 3 1 0 3 2 4 4 1 6 2 1 4 2 3 5 3 2 1 6 4 0 5 5 3 5 6 2 3 4 1 0 1 2 4 2 5 5 3 1 1 5 1 0 6 2 1 1 2 1 6 5 2 3 0 3 4 1 6 5 6 1 x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 + 1 0 4 3 6 5 4 2
and the central map F : F 8 F 3 is given by polynomials
f ( 1 ) = x 1 2 + x 1 x 2 + 3 x 1 x 3 + 2 x 1 x 4 + 6 x 1 x 5 + 4 x 1 x 6 + 2 x 1 x 7 + 5 x 1 x 8 + 3 x 2 2 + x 2 x 3 + 5 x 2 x 4 + x 2 x 6 + 3 x 2 x 7 + 3 x 2 x 8 + 4 x 3 x 4 + 6 x 3 x 6 + 2 x 3 x 7 + 5 x 3 x 8 + 4 x 4 x 5 + 5 x 4 x 6 + 3 x 4 x 7 + 2 x 4 x 8 + 3 x 2 + 6 x 3 + 3 x 4 + 5 x 5 + 6 x 6 + 2 x 7 + 2 x 8 + 4 f ( 2 ) = 2 x 1 2 + 5 x 1 x 3 + 2 x 1 x 4 + 4 x 1 x 5 + 6 x 1 x 6 + 5 x 1 x 7 + 3 x 1 x 8 + 4 x 2 2 + x 2 x 3 + 2 x 2 x 5 + 5 x 2 x 6 + 4 x 2 x 7 + 5 x 2 x 8 + 2 x 3 2 + 3 x 3 x 4 + 6 x 3 x 6 + x 3 x 7 + 5 x 3 x 8 + 2 x 4 x 5 + x 4 x 6 + x 4 x 7 + 2 x 4 x 8 + x 1 + x 3 + 6 x 4 + 2 x 5 + 4 x 6 + 6 x 7 + 2 x 8 + 6 f ( 3 ) = f ( 1 ) + f ( 2 ) = 3 x 1 2 + x 1 x 2 + x 1 x 3 + 4 x 1 x 4 + 3 x 1 x 5 + 3 x 1 x 6 + x 1 x 8 + 2 x 2 x 3 + 5 x 2 x 4 + 2 x 2 x 5 + 6 x 2 x 6 + x 2 x 8 + 2 x 3 2 + 5 x 3 x 6 + 3 x 3 x 7 + 3 x 3 x 8 + 6 x 4 x 5 + 6 x 4 x 6 + 4 x 4 x 7 + 4 x 4 x 8 + x 1 + 3 x 2 + 2 x 4 + 3 x 6 + x 7 + 4 x 8 + 3 f ( 4 ) = f ( 2 ) + f ( 3 ) = 5 x 1 2 + x 1 x 2 + 6 x 1 x 3 + 6 x 1 x 4 + 2 x 1 x 6 + 5 x 1 x 7 + 4 x 1 x 8 + 4 x 2 2 + 3 x 2 x 3 + 5 x 2 x 4 + 4 x 2 x 5 + 4 x 2 x 6 + 4 x 2 x 7 + 6 x 2 x 8 + 4 x 3 2 + 3 x 3 x 4 + 4 x 3 x 6 + 4 x 3 x 7 + x 3 x 8 + x 4 x 5 + 5 x 4 x 7 + 6 x 4 x 8 + 2 x 1 + 3 x 2 + x 3 + x 4 + 2 x 5 + 6 x 8 + 2
We compute the public key P = ( p ( 1 ) , p ( 2 ) , p ( 3 ) ) : F 8 F 3 by P = F T , which results in
p ( 1 ) = 3 x 1 x 2 + 2 x 1 x 3 + 5 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 5 x 1 x 7 + 6 x 1 x 8 + 3 x 2 2 + 6 x 2 x 3 + 2 x 2 x 4 + 6 x 2 x 5 + 6 x 3 2 + 5 x 3 x 4 + x 3 x 5 + 6 x 3 x 6 + 6 x 3 x 8 + 6 x 4 2 + 4 x 4 x 6 + 6 x 4 x 8 + 5 x 5 2 + 2 x 5 x 6 + 4 x 5 x 7 + 2 x 5 x 8 + 2 x 6 2 + x 6 x 7 + 5 x 6 x 8 + 2 x 7 2 + 3 x 7 x 8 + 2 x 8 2 + 3 x 1 + 4 x 2 + 2 x 3 + x 4 + 4 x 5 + 3 x 6 + 4 x 7 + 2 x 8 p ( 2 ) = 2 x 1 2 + 4 x 1 x 2 + x 1 x 3 + 2 x 1 x 4 + 2 x 1 x 7 + x 1 x 8 + x 2 2 + 5 x 2 x 3 + 6 x 2 x 4 + 2 x 2 x 5 + 2 x 2 x 6 + x 2 x 7 + 2 x 2 x 8 + 6 x 3 x 4 + 6 x 3 x 5 + 2 x 3 x 6 + 2 x 3 x 7 + x 3 x 8 + 5 x 4 x 6 + 3 x 4 x 7 + x 4 x 8 + 3 x 5 2 + 3 x 5 x 6 + 3 x 5 x 8 + 6 x 6 x 7 + 6 x 6 x 8 + x 7 2 + x 7 x 8 + 2 x 8 2 + 3 x 1 + x 3 + 3 x 4 + 3 x 5 + x 6 + 6 x 8 + 5 p ( 3 ) = 2 x 1 2 + 3 x 1 x 3 + 6 x 1 x 5 + x 1 x 6 + 4 x 2 2 + 4 x 2 x 3 + x 2 x 4 + x 2 x 5 + 2 x 2 x 6 + x 2 x 7 + 2 x 2 x 8 + 6 x 3 2 + 4 x 3 x 4 + x 3 x 6 + 2 x 3 x 7 + 6 x 4 2 + 2 x 4 x 6 + 3 x 4 x 7 + x 5 2 + 5 x 5 x 6 + 4 x 5 x 7 + 5 x 5 x 8 + 2 x 6 2 + 4 x 6 x 8 + 3 x 7 2 + 4 x 7 x 8 + 4 x 8 2 + 6 x 1 + 4 x 2 + 3 x 3 + 4 x 4 + 4 x 6 + 4 x 7 + x 8 + 5 p ( 4 ) = 4 x 1 2 + 4 x 1 x 2 + 4 x 1 x 3 + 2 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 2 x 1 x 7 + x 1 x 8 + 5 x 2 2 + 2 x 2 x 3 + 3 x 2 x 5 + 4 x 2 x 6 + 2 x 2 x 7 + 4 x 2 x 8 + 6 x 3 2 + 3 x 3 x 4 + 6 x 3 x 5 + 3 x 3 x 6 + 4 x 3 x 7 + x 3 x 8 + 6 x 4 2 + 6 x 4 x 7 + x 4 x 8 + 4 x 5 2 + x 5 x 6 + 4 x 5 x 7 + x 5 x 8 + 2 x 6 2 + 6 x 6 x 7 + 3 x 6 x 8 + 4 x 7 2 + 5 x 7 x 8 + 6 x 8 2 + 2 x 1 + 4 x 2 + 4 x 3 + 3 x 5 + 5 x 6 + 4 x 7 + 3
Signature Generation: In order to generate a signature for the message w = ( 2 , 2 , 4 , 6 ) , we first need to compute y = F 1 ( w ) . We choose random values for the Vinegar variables ( x 1 , x 2 , x 3 , x 4 , x 5 ) = ( 5 , 1 , 6 , 1 , 1 ) and substitute them into the polynomials f ( 1 ) , f ( 2 ) , f ( 3 ) and f ( 4 ) . Thus, we obtain a linear system in the Oil variables x 6 , x 7 and x 8 of the form
f ¯ ( 1 ) = 5 x 6 + 2 x 7 + 6 x 8 + 1 f ¯ ( 2 ) = 6 x 6 + 5 x 8 + 2 f ¯ ( 3 ) = 4 x 6 + 2 x 7 + 4 x 8 + 3 f ¯ ( 3 ) = 3 x 6 + 2 x 7 + 3 x 8 + 5 .
By Gaussian elimination, this system has the solution ( x 6 , x 7 , x 8 ) = ( 1 , 3 , 3 ) . Attaching the Vinegar variables yields
y = F 1 ( w ) = ( 5 , 1 , 6 , 1 , 1 , 1 , 3 , 3 ) .
Finally, we compute
z = T 1 ( y ) = ( 4 , 5 , 6 , 0 , 1 , 0 , 4 , 2 )
to obtain a signature z F 8 for the messagew.
Signature Verification: In order to check ifzis indeed a valid signature for the messagew, we compute
w = P ( z ) = ( 2 , 2 , 4 , 6 ) .
Since w = w holds, the signature is accepted.

5.2.1. A Weakened DSFM2 UOV Signature Scheme Forgery Methodology

The algorithm to forge the signature of a weak UOV scheme by DSFM2 is described in Algorithm 14 as below.
Algorithm 14 Forgery of Weakened DSFM2 UOV Signature Scheme
Input: Public key P , document d
Output: Signature z’ such that P ( z ) = w = w
  • Solve p ( i ) ( x ) = 0 and p ( k ) ( x ) = 0 where p ( j ) = p ( i ) + p ( k ) , and obtain z = z 1 , , z o .
Since p ( j ) = p ( i ) + p ( k ) , solving the two polynomials p ( i ) and p ( k ) would solve the whole system P .
In the following example, we show how an impersonator successfully forge the signature of a weakened DSFM2 UOV scheme.
Example 5.
Given the public key P = ( p ( 1 ) , p ( 2 ) , p ( 3 ) , p ( 4 ) ) of a weakened DSFM2 UOV scheme as in Example 4:
p ( 1 ) = 3 x 1 x 2 + 2 x 1 x 3 + 5 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 5 x 1 x 7 + 6 x 1 x 8 + 3 x 2 2 + 6 x 2 x 3 + 2 x 2 x 4 + 6 x 2 x 5 + 6 x 3 2 + 5 x 3 x 4 + x 3 x 5 + 6 x 3 x 6 + 6 x 3 x 8 + 6 x 4 2 + 4 x 4 x 6 + 6 x 4 x 8 + 5 x 5 2 + 2 x 5 x 6 + 4 x 5 x 7 + 2 x 5 x 8 + 2 x 6 2 + x 6 x 7 + 5 x 6 x 8 + 2 x 7 2 + 3 x 7 x 8 + 2 x 8 2 + 3 x 1 + 4 x 2 + 2 x 3 + x 4 + 4 x 5 + 3 x 6 + 4 x 7 + 2 x 8 p ( 2 ) = 2 x 1 2 + 4 x 1 x 2 + x 1 x 3 + 2 x 1 x 4 + 2 x 1 x 7 + x 1 x 8 + x 2 2 + 5 x 2 x 3 + 6 x 2 x 4 + 2 x 2 x 5 + 2 x 2 x 6 + x 2 x 7 + 2 x 2 x 8 + 6 x 3 x 4 + 6 x 3 x 5 + 2 x 3 x 6 + 2 x 3 x 7 + x 3 x 8 + 5 x 4 x 6 + 3 x 4 x 7 + x 4 x 8 + 3 x 5 2 + 3 x 5 x 6 + 3 x 5 x 8 + 6 x 6 x 7 + 6 x 6 x 8 + x 7 2 + x 7 x 8 + 2 x 8 2 + 3 x 1 + x 3 + 3 x 4 + 3 x 5 + x 6 + 6 x 8 + 5
p ( 3 ) = 2 x 1 2 + 3 x 1 x 3 + 6 x 1 x 5 + x 1 x 6 + 4 x 2 2 + 4 x 2 x 3 + x 2 x 4 + x 2 x 5 + 2 x 2 x 6 + x 2 x 7 + 2 x 2 x 8 + 6 x 3 2 + 4 x 3 x 4 + x 3 x 6 + 2 x 3 x 7 + 6 x 4 2 + 2 x 4 x 6 + 3 x 4 x 7 + x 5 2 + 5 x 5 x 6 + 4 x 5 x 7 + 5 x 5 x 8 + 2 x 6 2 + 4 x 6 x 8 + 3 x 7 2 + 4 x 7 x 8 + 4 x 8 2 + 6 x 1 + 4 x 2 + 3 x 3 + 4 x 4 + 4 x 6 + 4 x 7 + x 8 + 5 p ( 4 ) = 4 x 1 2 + 4 x 1 x 2 + 4 x 1 x 3 + 2 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 2 x 1 x 7 + x 1 x 8 + 5 x 2 2 + 2 x 2 x 3 + 3 x 2 x 5 + 4 x 2 x 6 + 2 x 2 x 7 + 4 x 2 x 8 + 6 x 3 2 + 3 x 3 x 4 + 6 x 3 x 5 + 3 x 3 x 6 + 4 x 3 x 7 + x 3 x 8 + 6 x 4 2 + 6 x 4 x 7 + x 4 x 8 + 4 x 5 2 + x 5 x 6 + 4 x 5 x 7 + x 5 x 8 + 2 x 6 2 + 6 x 6 x 7 + 3 x 6 x 8 + 4 x 7 2 + 5 x 7 x 8 + 6 x 8 2 + 2 x 1 + 4 x 2 + 4 x 3 + 3 x 5 + 5 x 6 + 4 x 7 + 3
Letw = ( 2 , 2 , 4 , 6 ) . The impersonator computes p ¯ ( i ) = p ( i ) w i ( m o d 7 ) where i = 1 , 2 , 3 , 4 . Then, to solve p ¯ ( 1 ) ( x ) = 0 , he chooses random variables ( x 1 , x 2 , x 3 , x 4 , x 5 , x 6 , x 7 ) = ( 5 , 6 , 0 , 5 , 4 , 7 , 2 ) and substitutes them into p ¯ ( 1 ) and p ¯ ( 2 ) which results quadratic equations with one variable
2 x 8 2 + 6 x 8 + 4 = 0 2 x 8 2 + 6 = 0 .
Since these equations has a solution x 8 = 5 hence the solution for p ( 1 ) and p ( 2 ) are ( 5 , 6 , 0 , 5 , 4 , 7 , 2 , 5 ) . This solution is also the solution to p ( 3 ) and p ( 4 ) , which implies P ( z ) = 0 where z = ( 5 , 6 , 0 , 5 , 4 , 7 , 2 , 5 ) is the forged signature. Indeed z z = ( 4 , 5 , 6 , 0 , 1 , 0 , 4 , 2 ) .

5.2.2. Identifying a Weakened DSFM2 UOV Scheme

We can directly use Algorithm 5 to identify a weakened DSFM2 UOV scheme.
Example 6.
Given the public key P = ( p ( 1 ) , p ( 2 ) , p ( 3 ) , p ( 4 ) ) of a weakened DSFM2 UOV scheme as in Example 4:
p ( 1 ) = 3 x 1 x 2 + 2 x 1 x 3 + 5 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 5 x 1 x 7 + 6 x 1 x 8 + 3 x 2 2 + 6 x 2 x 3 + 2 x 2 x 4 + 6 x 2 x 5 + 6 x 3 2 + 5 x 3 x 4 + x 3 x 5 + 6 x 3 x 6 + 6 x 3 x 8 + 6 x 4 2 + 4 x 4 x 6 + 6 x 4 x 8 + 5 x 5 2 + 2 x 5 x 6 + 4 x 5 x 7 + 2 x 5 x 8 + 2 x 6 2 + x 6 x 7 + 5 x 6 x 8 + 2 x 7 2 + 3 x 7 x 8 + 2 x 8 2 + 3 x 1 + 4 x 2 + 2 x 3 + x 4 + 4 x 5 + 3 x 6 + 4 x 7 + 2 x 8 p ( 2 ) = 2 x 1 2 + 4 x 1 x 2 + x 1 x 3 + 2 x 1 x 4 + 2 x 1 x 7 + x 1 x 8 + x 2 2 + 5 x 2 x 3 + 6 x 2 x 4 + 2 x 2 x 5 + 2 x 2 x 6 + x 2 x 7 + 2 x 2 x 8 + 6 x 3 x 4 + 6 x 3 x 5 + 2 x 3 x 6 + 2 x 3 x 7 + x 3 x 8 + 5 x 4 x 6 + 3 x 4 x 7 + x 4 x 8 + 3 x 5 2 + 3 x 5 x 6 + 3 x 5 x 8 + 6 x 6 x 7 + 6 x 6 x 8 + x 7 2 + x 7 x 8 + 2 x 8 2 + 3 x 1 + x 3 + 3 x 4 + 3 x 5 + x 6 + 6 x 8 + 5 p ( 3 ) = 2 x 1 2 + 3 x 1 x 3 + 6 x 1 x 5 + x 1 x 6 + 4 x 2 2 + 4 x 2 x 3 + x 2 x 4 + x 2 x 5 + 2 x 2 x 6 + x 2 x 7 + 2 x 2 x 8 + 6 x 3 2 + 4 x 3 x 4 + x 3 x 6 + 2 x 3 x 7 + 6 x 4 2 + 2 x 4 x 6 + 3 x 4 x 7 + x 5 2 + 5 x 5 x 6 + 4 x 5 x 7 + 5 x 5 x 8 + 2 x 6 2 + 4 x 6 x 8 + 3 x 7 2 + 4 x 7 x 8 + 4 x 8 2 + 6 x 1 + 4 x 2 + 3 x 3 + 4 x 4 + 4 x 6 + 4 x 7 + x 8 + 5 p ( 4 ) = 4 x 1 2 + 4 x 1 x 2 + 4 x 1 x 3 + 2 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 2 x 1 x 7 + x 1 x 8 + 5 x 2 2 + 2 x 2 x 3 + 3 x 2 x 5 + 4 x 2 x 6 + 2 x 2 x 7 + 4 x 2 x 8 + 6 x 3 2 + 3 x 3 x 4 + 6 x 3 x 5 + 3 x 3 x 6 + 4 x 3 x 7 + x 3 x 8 + 6 x 4 2 + 6 x 4 x 7 + x 4 x 8 + 4 x 5 2 + x 5 x 6 + 4 x 5 x 7 + x 5 x 8 + 2 x 6 2 + 6 x 6 x 7 + 3 x 6 x 8 + 4 x 7 2 + 5 x 7 x 8 + 6 x 8 2 + 2 x 1 + 4 x 2 + 4 x 3 + 3 x 5 + 5 x 6 + 4 x 7 + 3
To identify P is a forgeable system, we take two polynomials p ( 1 ) and p ( 2 ) and compute
p ( 1 ) + p ( 2 ) ( mod   7 ) = 2 x 1 2 + 4 x 1 x 2 + x 1 x 3 + 2 x 1 x 4 + 2 x 1 x 7 + x 1 x 8 + x 2 2 + 5 x 2 x 3 + 6 x 2 x 4 + 2 x 2 x 5 + 2 x 2 x 6 + x 2 x 7 + 2 x 2 x 8 + 6 x 3 x 4 + 6 x 3 x 5 + 2 x 3 x 6 + 2 x 3 x 7 + x 3 x 8 + 5 x 4 x 6 + 3 x 4 x 7 + x 4 x 8 + 3 x 5 2 + 3 x 5 x 6 + 3 x 5 x 8 + 6 x 6 x 7 + 6 x 6 x 8 + x 7 2 + x 7 x 8 + 2 x 8 2 + 3 x 1 + x 3 + 3 x 4 + 3 x 5 + x 6 + 6 x 8 + 5 p ( 2 ) + p ( 3 ) ( mod   7 ) = 4 x 1 2 + 4 x 1 x 2 + 4 x 1 x 3 + 2 x 1 x 4 + 6 x 1 x 5 + x 1 x 6 + 2 x 1 x 7 + x 1 x 8 + 5 x 2 2 + 2 x 2 x 3 + 3 x 2 x 5 + 4 x 2 x 6 + 2 x 2 x 7 + 4 x 2 x 8 + 6 x 3 2 + 3 x 3 x 4 + 6 x 3 x 5 + 3 x 3 x 6 + 4 x 3 x 7 + x 3 x 8 + 6 x 4 2 + 6 x 4 x 7 + x 4 x 8 + 4 x 5 2 + x 5 x 6 + 4 x 5 x 7 + x 5 x 8 + 2 x 6 2 + 6 x 6 x 7 + 3 x 6 x 8 + 4 x 7 2 + 5 x 7 x 8 + 6 x 8 2 + 2 x 1 + 4 x 2 + 4 x 3 + 3 x 5 + 5 x 6 + 4 x 7 + 3
Since
p ( 1 ) + p ( 2 ) = p ( 3 ) ( mod   7 ) p ( 2 ) + p ( 3 ) = p ( 4 ) ( mod   7 )
we have successfully identified that P is a forgeable system.

6. The Inability to Generate Weak Rainbow Signature Scheme via DSFM1 and DSFM2 Methodologies

Firstly, we observe that the central map F of a UOV scheme in the form of
f ( k ) = a , b V α a , b ( k ) x a x b + a V , b O β a , b ( k ) x a x b + a V O γ a ( k ) x a + δ ( k ) ( k = 1 , , o ) .
Thus, all polynomials f ( j ) = k j f ( 1 ) where j = 2 , , m and f ( j ) = f ( i ) + f ( k ) where j = 2 , , m and i , k = 1 , , j 1 in the central map F are of the same form as above.
Thus, the inability to generate a weak Rainbow signature scheme via DSFM1 and DSFM2 methodologies is because of its central map F having the form of
f ( k ) ( x ) = a , b V , a b α a , b ( k ) x a x b + a O , b V β a , b ( k ) x a x b + a V O γ a ( k ) x a + η ( k ) ( k = v 1 + 1 , , n ) .
The form of polynomials f ( k ) ( x ) are different depending on the -th level. As we can see, the index i and j for the variables are from the index sets V and O where is the only integer such that k O . For instance, when = 1 , we will have O 1 = { v 1 + 1 , , v 2 } and V 1 = { 1 , v 1 } . The value of k is taken from the set O 1 . Therefore, the polynomials f ( v 1 + 1 ) ( x ) , , f ( v 2 ) ( x ) will share the same form. For = 2 , O 2 = { v 2 + 1 , v 3 } and V 2 = { 1 , , v 2 } where k O 2 , the polynomials f ( v 2 + 1 ) ( x ) , , f ( v 3 ) ( x ) are of the same form. Since the polynomials have different variable forms, we cannot construct the central map F as in Algorithm 2 and the polynomials in P of the form p ( j ) = p ( i ) + p ( k ) as in Algorithm 4.

7. Generating Weak UOV and Rainbow Signature Scheme

In the following example, we illustrate the generation of weak UOV and Rainbow schemes via DSFM3 methodology as well as the signing and verification process. Firstly, the public–private key pair of either UOV or Rainbow is generated as in the original version of the schemes. Secondly, suppose the RCA computes x = ( x 1 , , x m ) such that P ( x ) = 0 and shares the vector x with the adversary. The adversary can forge the signature x via DSFM3. The example below shows that weak UOV and Rainbow schemes can still be used by a user without suspicion since the constants seem randomized and the signing and verification work as normal.
Example 7.
Let P = ( p ( 1 ) , p ( 2 ) , p ( 3 ) ) : F 7 F 3 be a valid public key over F = G F ( 53 ) that can be utilized for both UOV and Rainbow signature schemes. Suppose x = ( 35 , 46 , 24 , 57 , 21 , 27 , 25 ) such that P ( x ) = 0 . The adversary is given the integer set x from the RCA and suppose the adversary wants to forge the signaturez = ( 40 , 46 , 24 , 57 , 21 , 3 , 34 ) corresponding to w = ( 1 , 30 , 46 ) .
p ( 1 ) = 47 x 1 2 + 33 x 1 x 2 + 22 x 1 x 3 + 38 x 1 x 4 + 45 x 1 x 5 + 17 x 1 x 6 + 18 x 1 x 7 + 8 x 2 2 + 23 x 2 x 3 + 18 x 2 x 4 + x 2 x 5 + 44 x 2 x 6 + 41 x 2 x 7 + 12 x 3 2 + 47 x 3 x 4 + 6 x 3 x 5 + 15 x 3 x 6 + 11 x 3 x 7 + 22 x 4 2 + x 4 x 5 + 23 x 4 x 6 + 13 x 4 x 7 + 9 x 5 2 + 39 x 5 x 6 + 42 x 5 x 7 + 30 x 5 + 15 x 6 2 + 48 x 6 x 7 + 11 x 7 2 + 50 x 1 + 13 x 2 + 11 x 3 + 5 x 4 + 30 x 5 + x 6 + 50 x 7 + 32 p ( 2 ) = 45 x 1 2 + 6 x 1 x 3 + 12 x 1 x 4 + 16 x 1 x 5 + 26 x 1 x 6 + 46 x 1 x 7 + 3 x 1 x 2 + 13 x 2 2 + 30 x 2 x 3 + 47 x 2 x 4 + 43 x 2 x 5 + 14 x 2 x 6 + 30 x 2 x 7 + 39 x 3 2 + 17 x 3 x 4 + 15 x 3 x 5 + 46 x 3 x 6 + 40 x 3 x 7 + 45 x 4 2 + 18 x 4 x 5 + 22 x 4 x 6 + 9 x 4 x 7 + 3 x 5 2 + 37 x 5 x 6 + 35 x 5 x 7 + 14 x 6 2 + 38 x 6 x 7 + 26 x 7 2 + 46 x 1 + 37 x 2 + 37 x 3 + 44 x 4 + 28 x 5 + 12 x 6 + 10 x 7 + 35 p ( 3 ) = 21 x 1 2 + 13 x 1 x 2 + 26 x 1 x 3 + 14 x 1 x 4 + 44 x 1 x 5 + 12 x 1 x 7 + 37 x 2 2 + 18 x 2 x 3 + 18 x 2 x 4 + 49 x 2 x 5 + 4 x 2 x 6 + 29 x 2 x 7 + 11 x 3 2 + 14 x 3 x 4 + 22 x 3 x 5 + 27 x 3 x 6 + 13 x 3 x 7 + 2 x 4 2 + 30 x 4 x 5 + 4 x 4 x 6 + 14 x 4 x 7 + 45 x 5 2 + 39 x 5 x 6 + x 5 x 7 + 2 x 6 2 + 49 x 6 x 7 + 24 x 7 2 + 20 x 1 + 32 x 2 + 30 x 3 + 34 x 4 + 43 x 5 + 32 x 6 + 30 x 7 + 40
The adversary computes P ( x + α ) and obtains
p ( 1 ) = 33 α 2 + 13 α p ( 2 ) = 46 α 2 + α p ( 3 ) = 52 α 2 + 25 α .
Solving p ( 1 ) = w 1 , p ( 2 ) = w 2 and p ( 3 ) = w 3 , the adversary will obtain α = 23 . Therefore, z = ( 5 , 16 , 47 , 27 , 44 , 50 , 48 ) is the forged signature. Indeed z z = ( 40 , 46 , 24 , 57 , 21 , 3 , 34 ) . The verification process will be successful since:
p ( 1 ) ( 5 , 16 , 47 , 27 , 44 , 50 , 48 ) = 0 p ( 2 ) ( 5 , 16 , 47 , 27 , 44 , 50 , 48 ) = 0 p ( 3 ) ( 5 , 16 , 47 , 27 , 44 , 50 , 48 ) = 0 .

8. Discussion

Our work enabled us to showcase the practicality of the DSFM1, DSFM2 and DSFM3 methodologies to forge UOV and Rainbow signatures. The strategies outlined to identify whether DSFM1 or DSFM2 was applied on UOV and Rainbow parameters must be adhered to in order to ensure the security of the signature. As discussed on [29], the complexity to conduct due diligence are O ( m ) and O ( m 3 ) , respectively, where m is the number of equations. However, to this end, it is still unanswered whether there are possible mechanisms to identify DSFM3 weakened systems. The DSFM3 is deployed on random polynomials, and does not involve modification on polynomials to make it vulnerable. As such, the system P has no anomalies. Instead, the adversary only needs to solicit the vector x which satisfies P ( x ) = 0 from the RCA.

9. Conclusions

In conclusion, we have revisited two signature forgery methodologies (DSFM1 and DSFM2) and put forward one novel signature forgery methodology, DSFM3. The public key system P of a UOV signature scheme is not secure if it is generated using DSFM1, DSFM2 and DSFM3 methodologies by RCA. Potential users of the UOV signature scheme are able to identify whether the public parameters are generated via DSFM1 and DSFM2 methodologies. As such they must conduct due diligence upon receiving the public key system P . To this end, the Rainbow signature scheme is resistant to DSFM1 as well as DSFM2 methodologies and is only vulnerable to the DSFM3 methodology. However, it is still an open question whether a public key system P of UOV and Rainbow signature schemes can be identified if it is generated via DSFM3 methodology since there are no anomalies in the public key.

Author Contributions

Conceptualization, N.A.S.A.J., M.R.K.A., S.H.S. and K.A.; Formal analysis, N.A.S.A.J. and M.R.K.A.; Funding acquisition, M.R.K.A.; Investigation, N.A.S.A.J., M.R.K.A., S.H.S. and K.A. Methodology, N.A.S.A.J. and M.R.K.A.; Project administration, M.R.K.A.; Supervision, M.R.K.A. and S.H.S.; Validation, M.R.K.A.; Visualization, N.A.S.A.J., M.R.K.A., S.H.S. and K.A.; Writing—original draft, N.A.S.A.J.; Writing—review & editing, M.R.K.A. All authors have read and agreed to the published version of the manuscript.

Funding

The research was supported by Ministry of Education of Malaysia with Fundamental Research Grant Scheme (FRGS/1/2019/STG06/UPM/02/8). It is also partially supported by Mediterranea Universiti of Reggio Calabria (UNIRC) Research Grant (UPM/INSPEM/700-3/1/GERANANTARABAN GSA/6380 073122-10065).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

The first author would like to further express appreciation to the Institute for Mathematical Research (INSPEM), Universiti Putra Malaysia (UPM), and Ministry of Higher Education (MOHE) for giving the opportunity to conduct this research.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
CACertificate Authority
DSFM1Digital Signature Forgery Mechanism 1
DSFM2Digital Signature Forgery Mechanism 2
DSFM3Digital Signature Forgery Mechanism 3
DLPDiscrete Logarithm Problem
IFPInteger Factorization Problem
MQPMultivariate Quadratic Problem
RCARogue Certificate Authority
RSARivest-Shamir-Adleman
UOVUnbalance Oil and Vinegar

References

  1. Dong, Z.; Kane, K.; Camp, L.J. Detection of Rogue Certificates from Trusted Certificate Authorities Using Deep Neural Networks. ACM Trans. Priv. Secur. 2016, 19, 1–31. [Google Scholar] [CrossRef] [Green Version]
  2. Shor, P.W. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM Rev. 1999, 41, 303–332. [Google Scholar] [CrossRef]
  3. Rivest, R.; Shamir, A.; Adleman, L. A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 1978, 21, 120–126. [Google Scholar] [CrossRef] [Green Version]
  4. Diffie, W.; Hellman, M. New directions in cryptography. IEEE Trans. Inf. Theory 1976, 22, 644–654. [Google Scholar] [CrossRef] [Green Version]
  5. Ding, J.; Petzoldt, A. Current state of multivariate cryptography. IEEE Secur. Priv. 2017, 15, 28–36. [Google Scholar] [CrossRef]
  6. Kipnis, A.; Patarin, J.; Goubin, L. Unbalanced oil and vinegar signature schemes. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Prague, Czech Republic, 2–6 May 1999; Springer: Berlin/Heidelberg, Germany, 1999; pp. 206–222. [Google Scholar]
  7. Patarin, J. The oil and vinegar signature scheme. In Proceedings of the Dagstuhl Workshop on Cryptography, Saarbrucken, Germany, 22–26 September 1997. [Google Scholar]
  8. Kipnis, A.; Shamir, A. Cryptanalysis of the oil and vinegar signature scheme. In Proceedings of the 18th Annual International Cryptology Conference, Santa Barbara, CA, USA, 23–27 August 1998; Springer: Berlin/Heidelberg, Germany, 1998; pp. 257–266. [Google Scholar]
  9. Ding, J.; Schmidt, D. Rainbow, a new multivariable polynomial signature scheme. In Proceedings of the International Conference on Applied Cryptography and Network Security, New York, NY, USA, 7–10 June 2005; Springer: Berlin/Heidelberg, Germany, 2005; pp. 164–175. [Google Scholar]
  10. Beullens, W.; Preneel, B. Field lifting for smaller UOV public keys. In Proceedings of the International Conference on Cryptology in India, Chennai, India, 10–13 December 2017; Springer: Berlin/Heidelberg, Germany, 2017; pp. 227–246. [Google Scholar]
  11. Petzoldt, A. Efficient key generation for rainbow. In Proceedings of the International Conference on Post-Quantum Cryptography, Paris, France, 15–17 April 2020; Springer: Berlin/Heidelberg, Germany, 2020; pp. 92–107. [Google Scholar]
  12. Li, J.; Hu, Z.; Kais, S. Practical quantum encryption protocol with varying encryption configurations. Phys. Rev. Res. 2021, 3, 023251. [Google Scholar] [CrossRef]
  13. Feng, Y.; Zhou, J.; Li, J.; Zhao, W.; Shi, J.; Shi, R.; Li, W. SKC-CCCO: An encryption algorithm for quantum group signature. Quantum Inf. Process. 2022, 21, 1–29. [Google Scholar] [CrossRef]
  14. Shi, J.; Lu, Y.; Feng, Y.; Huang, D.; Lou, X.; Li, Q.; Shi, R. A quantum hash function with grouped coarse-grained boson sampling. Quantum Inf. Process. 2022, 21, 1–17. [Google Scholar] [CrossRef]
  15. Shi, J.; Chen, S.; Lu, Y.; Feng, Y.; Shi, R.; Yang, Y.; Li, J. An approach to cryptography based on continuous-variable quantum neural network. Sci. Rep. 2020, 10, 2107. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  16. Feng, Y.; Shi, R.; Shi, J.; Zhao, W.; Lu, Y.; Tang, Y. Arbitrated quantum signature protocol with boson sampling-based random unitary encryption. J. Phys. A Math. Theor. 2020, 53, 135301. [Google Scholar] [CrossRef]
  17. Lyubashevsky, V.; Ducas, L.; Kiltz, E.; Lepoint, T.; Schwabe, P.; Seiler, G.; Stehlé, D.; Avanzi, R.; Bos, J.; Schanck, J. CRYSTALS-Dilithium. In Submission to the NIST Post-Quantum Cryptography Standardization [NIS]; NIST: Gaithersburg, MD, USA, 2007; pp. 1–29. [Google Scholar]
  18. Fouque, P.A.; Hoffstein, J.; Kirchner, P.; Lyubashevsky, V.; Pornin, T.; Prest, T.; Ricosset, T.; Seiler, G.; Whyte, W.; Zhang, Z. Falcon: Fast-Fourier lattice-based compact signatures over NTRU. Submiss. NIST Post-Quantum Cryptogr. Stand. Process. 2018, 36, 1–75. [Google Scholar]
  19. Bernstein, D.J.; Chou, T.; Lange, T.; von Maurich, I.; Misoczki, R.; Niederhagen, R.; Persichetti, E.; Peters, C.; Schwabe, P.; Sendrier, N.; et al. Classic McEliece: Conservative code-based cryptography. In Proceedings of the PQCRYPTO Mini-School and Workshop, Taipei, Taiwan, 27–29 June 2018. [Google Scholar]
  20. Bos, J.; Ducas, L.; Kiltz, E.; Lepoint, T.; Lyubashevsky, V.; Schanck, J.M.; Schwabe, P.; Seiler, G.; Stehlé, D. CRYSTALS-Kyber: A CCA-secure module-lattice-based KEM. In Proceedings of the 2018 IEEE European Symposium on Security and Privacy (EuroS&P), London, UK, 24–26 April 2018; pp. 353–367. [Google Scholar]
  21. Chen, C.; Danba, O.; Hoffstein, J.; Hülsing, A.; Rijneveld, J.; Schanck, J.M.; Schwabe, P.; Whyte, W.; Zhang, Z. Algorithm Specifications and Supporting Documentation; Brown University: Providence, RI, USA; Onboard Security Company: Wilmington, DE, USA, 2019. [Google Scholar]
  22. D’Anvers, J.P.; Karmakar, A.; Sinha Roy, S.; Vercauteren, F. Saber: Module-LWR based key exchange, CPA-secure encryption and CCA-secure KEM. In Proceedings of the International Conference on Cryptology in Africa, Marrakesh, Morocco, 7–9 May 2018; Springer: Cham, Switzerland, 2018; pp. 282–305. [Google Scholar]
  23. Beullens, W. Improved cryptanalysis of UOV and rainbow. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, Zagreb, Croatia, 17–21 October 2021; Springer: Cham, Switzerland, 2021; pp. 348–373. [Google Scholar]
  24. Beullens, W. Breaking rainbow takes a weekend on a laptop. Cryptol. ePrint Arch. 2022, 214. [Google Scholar]
  25. Cartor, R.; Cartor, M.; Lewis, M.; Smith-Tone, D. IPRainbow. In Proceedings of the International Conference on Post-Quantum Cryptography, Virtual, 28–30 September 2022; Springer: Cham, Switzerland, 2022; pp. 170–184. [Google Scholar]
  26. Thomae, E.; Wolf, C. Cryptanalysis of enhanced TTS, STS and all its variants, or: Why cross-terms are important. In Proceedings of the International Conference on Cryptology in Africa, Ifrane, Morocco, 10–12 July 2012; Springer: Berlin/Heidelberg, Germany, 2012; pp. 188–202. [Google Scholar]
  27. Chen, J.; Ning, J.; Ling, J.; Lau, T.S.C.; Wang, Y. A new encryption scheme for multivariate quadratic systems. Theor. Comput. Sci. 2020, 809, 372–383. [Google Scholar] [CrossRef]
  28. Chakraborty, O.; Faugére, J.C.; Perret, L. Cryptanalysis of the extension field cancellation cryptosystem. Des. Codes Cryptogr. 2021, 89, 1335–1364. [Google Scholar] [CrossRef]
  29. Jamal, N.A.S.A.; Ariffin, M.R.K.; Sapar, S.H.; Abdullah, K. Novel Forgery Mechanisms in Multivariate Signature Schemes; Institute for Mathematical Research, Universiti Putra Malaysia: Serdang, Malaysia, 2022. [Google Scholar]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Abdul Jamal, N.A.S.; Kamel Ariffin, M.R.; Sapar, S.H.; Abdullah, K. New Identified Strategies to Forge Multivariate Signature Schemes. Symmetry 2022, 14, 2368. https://doi.org/10.3390/sym14112368

AMA Style

Abdul Jamal NAS, Kamel Ariffin MR, Sapar SH, Abdullah K. New Identified Strategies to Forge Multivariate Signature Schemes. Symmetry. 2022; 14(11):2368. https://doi.org/10.3390/sym14112368

Chicago/Turabian Style

Abdul Jamal, Nurul Amiera Sakinah, Muhammad Rezal Kamel Ariffin, Siti Hasana Sapar, and Kamilah Abdullah. 2022. "New Identified Strategies to Forge Multivariate Signature Schemes" Symmetry 14, no. 11: 2368. https://doi.org/10.3390/sym14112368

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