Skip to main content

A Complete Cryptanalysis of the Post-Quantum Multivariate Signature Scheme Himq-3

  • Conference paper
  • First Online:
Information and Communications Security (ICICS 2020)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 12282))

Included in the following conference series:

Abstract

In 2017 Kyung-Ah Shim et al. proposed a multivariate signature scheme called Himq-3 which is a submission to National Institute of Standards and Technology (NIST) standardization process of post-quantum cryptosystems. The Himq-3 signature scheme can be classified into the oil vinegar signature scheme family. Similar to the rainbow signature scheme, the Himq-3 signature scheme uses a multilayer structure to shorten the signature size. Moreover the signing process is very fast due to a special system called L-inveritble cycle system that is used to invert the central map. In this paper, we provide a complete cryptanalysis to the Himq-3 signature scheme. We describe a new attack method called the singularity attack. This attack is based on the observation that the variables in the L-invertible cycle system are not allowed to be zero in a valid signature. For the completeness, we show step by step how variables and layers can be separated so that signature forgery can be performed. We claim that the complexity of our attack is much lower than the proposed security level.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Albrecht, M.R., Bard, G.V., Pernet, C.: Efficient dense gaussian elimination over the finite field with two elements. arXiv preprint arXiv:1111.6549 (2011)

  2. Beullens, W., Szepieniec, A., Vercauteren, F., Preneel, B.: LUOV: signature scheme proposal for NIST PQC project (2017)

    Google Scholar 

  3. Coppersmith, D., Stern, J., Vaudenay, S.: Attacks on the birational permutation signature schemes. In: Stinson, D.R. (ed.) CRYPTO 1993. LNCS, vol. 773, pp. 435–443. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-48329-2_37

    Chapter  Google Scholar 

  4. Ding, J., Petzoldt, A.: Current state of multivariate cryptography. IEEE Secur. Priv. 15(4), 28–36 (2017). https://doi.org/10.1109/MSP.2017.3151328

    Article  Google Scholar 

  5. Ding, J., Gower, J., Schmidt, D.: Multivariate public key cryptosystems. In: Jajodia, S. (ed.) Advances in Information Security. Springer (2006)

    Google Scholar 

  6. Ding, J., Petzoldt, A., Wang, L.: The cubic simple matrix encryption scheme. In: Mosca, M. (ed.) PQCrypto 2014. LNCS, vol. 8772, pp. 76–87. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11659-4_5

    Chapter  Google Scholar 

  7. Ding, J., Schmidt, D.: Rainbow, a new multivariable polynomial signature scheme. In: Ioannidis, J., Keromytis, A., Yung, M. (eds.) ACNS 2005. LNCS, vol. 3531, pp. 164–175. Springer, Heidelberg (2005). https://doi.org/10.1007/11496137_12

    Chapter  Google Scholar 

  8. Ding, J., Wolf, C., Yang, B.-Y.: l-invertible cycles for \(\cal{M}\)ultivariate \(\cal{Q}\)uadratic (\({\cal{MQ}}\)) public key cryptography. In: Okamoto, T., Wang, X. (eds.) PKC 2007. LNCS, vol. 4450, pp. 266–281. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-71677-8_18

  9. Ding, J., Zhang, Z., Deaton, J., Schmidt, K., Vishakha, F.: New attacks on lifted unbalanced oil vinegar. In: The 2nd NIST PQC Standardization Conference (2019)

    Google Scholar 

  10. Dumas, J.G., Pernet, C.: Computational linear algebra over finite fields. arXiv preprint arXiv:1204.3735 (2012)

  11. Goubin, L., Courtois, N.T.: Cryptanalysis of the TTM cryptosystem. In: Okamoto, T. (ed.) ASIACRYPT 2000. LNCS, vol. 1976, pp. 44–57. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-44448-3_4

    Chapter  Google Scholar 

  12. Kipnis, A., Patarin, J., Goubin, L.: Unbalanced oil and vinegar signature schemes. In: Stern, J. (ed.) EUROCRYPT 1999. LNCS, vol. 1592, pp. 206–222. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48910-X_15

    Chapter  Google Scholar 

  13. Kipnis, A., Shamir, A.: Cryptanalysis of the oil and vinegar signature scheme. In: Krawczyk, H. (ed.) CRYPTO 1998. LNCS, vol. 1462, pp. 257–266. Springer, Heidelberg (1998). https://doi.org/10.1007/BFb0055733

    Chapter  Google Scholar 

  14. Matsumoto, T., Imai, H.: Public quadratic polynomial-tuples for efficient signature-verification and message-encryption. In: Barstow, D., et al. (eds.) EUROCRYPT 1988. LNCS, vol. 330, pp. 419–453. Springer, Heidelberg (1988). https://doi.org/10.1007/3-540-45961-8_39

    Chapter  Google Scholar 

  15. Patarin, J.: Cryptanalysis of the Matsumoto and Imai public key scheme of eurocrypt’88. In: Coppersmith, D. (ed.) CRYPTO 1995. LNCS, vol. 963, pp. 248–261. Springer, Heidelberg (1995). https://doi.org/10.1007/3-540-44750-4_20

    Chapter  Google Scholar 

  16. Patarin, J.: The oil and vinegar algorithm for signatures. In: Dagstuhl Workshop on Cryptography 1997 (1997)

    Google Scholar 

  17. Shim, P., Kim: HIMQ-3: a high speed signature scheme based on multivariate quadratic equations (2017)

    Google Scholar 

  18. Shor, P.W.: Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM Rev. 41(2), 303–332 (1999)

    Article  MathSciNet  Google Scholar 

  19. Tao, C., Diene, A., Tang, S., Ding, J.: Simple matrix scheme for encryption. In: Gaborit, P. (ed.) PQCrypto 2013. LNCS, vol. 7932, pp. 231–242. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38616-9_16

    Chapter  Google Scholar 

  20. Williams, V.V.: Breaking the Coppersmith-Winograd barrier (2011)

    Google Scholar 

Download references

Acknowledgments

J. Ding, Z. Zhang and J. Deaton would like to thank partial support of NSF (Grant: \(\#CNS-1814221\)). J. Ding would like to thank NIST, and the TAFT Research Center for many years’ support. Finally, we are grateful for the comments of the referees helping us improve the quality of this paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zheng Zhang .

Editor information

Editors and Affiliations

Appendices

A Toy Example

We provide a toy example to clarify the step 3.3. In this example, we choose \(k=3\), thus our field is the finite field of \(2^3\) elements. The finite field will be represented by \(\{0,1,w,w^2,\cdots ,w^6\}\), where w is a generator in the multiplicative group of the finite field. Let \(n=2\). For the sake of clarity. We use a linear map instead of a affine map. Our linear map \(\mathcal {T}\) is randomly chosen to be the matrix

$$\begin{aligned}\begin{bmatrix} w^2 &{} w^2 \\ w^3 &{} w \end{bmatrix}.\end{aligned}$$

Suppose we obtain a set of signatures \((x_1,x_2)\):

$$\begin{aligned}&(w,w^5), (w^5,w), (w^2,1), (w^6,w^5), (0,w^2), (w^5,w^3),(1,w^6),(0,w^5),\\&(0,w^2), (1,0), (w^5,w^6), (0,w), (w^5,w^3), (1,w), (w^5,0), (w^6,1), (w^6,w^3),\\&(w,w^4), (w^2, w^5), (w^3,w), (1,w^6), (w,1), (w^2,w), (w^2,w), (w^4,w), (w^4 ,1), (w^4,w^2). \end{aligned}$$

We first construct a generic polynomial \(g= a_1x_1+a_2x_2\). We assume that this polynomial is never equal to zero. Hence, in this finite field, \(g^{2^3-1}=(a_1x_1+a_2x_2)^{2^3-1}=1\). We can rewrite this equation as: \((a_1x_1+a_2x_2)^{2^3-1}=(a_1x_1+a_2x_2)^{2^{3-1}}(a_1x_1+a_2x_2)^{2^{3-2}}(a_1x_1+a_2x_2)^{2^{3-3}}=1\). Since this is a field of characteristic 2, the equations turns out to be

$$\begin{aligned} ((a_1x_1)^{2^{3-1}}+(a_2x_2)^{2^{3-1}})((a_1x_1)^{2^{3-2}}+(a_2x_2)^{2^{3-2}})((a_1x_1)^{2^{3-3}}+(a_2x_2)^{2^{3-3}})=1. \end{aligned}$$

Multiply the product out, we have

$$\begin{aligned} a_1^7x_1^7 + a_1^6a_2x_1^6x_2 + a_1^5a_2^2x_1^5x_2^2 + a_1^4a_2^3x_1^4x_2^3 + a_1^3a_2^4x_1^3x_2^4 + a_1^2a_2^5x_1^2x_2^5 + a_1a_2^6x_1x_2^6 + a_2^7x_2^7 + 1=0. \end{aligned}$$

We view the products of \(a_i\) as variables, and \(x_i\) as coefficients. If we evaluate these coefficients at the signatures, we get \((n+1)^k=27\) vectors which will be the rows of the matrix. We apply echelon form on this matrix and then remove the zero rows. The new matrix is:

$$\begin{aligned}\begin{bmatrix} &{} 1 &{}0 &{}0 &{}0 &{}0 &{}0 &{}0 &{}0 &{}1\\ &{} 0 &{}1 &{}0 &{}0 &{}0 &{}0 &{}w^5 &{}0 &{}w^4\\ &{} 0 &{}0 &{}1 &{}0 &{}0 &{}0 &{}w^2 &{}0 &{}w^6\\ &{} 0 &{}0 &{}0 &{}1 &{}0 &{}0 &{}w^4 &{}0 &{}w^5\\ &{} 0 &{}0 &{}0 &{}0 &{}1 &{}0 &{}w^3 &{}0 &{}w\\ &{} 0 &{}0 &{}0 &{}0 &{}0 &{}1 &{}w^6 &{}0 &{}w^2\\ &{} 0 &{}0 &{}0 &{}0 &{}0 &{}0 &{}0 &{}1 &{}1\\ \end{bmatrix}\end{aligned}$$

Our next goal is to turn this matrix back to polynomials. Recall the order of the monomials, we get 7 multivariate polynomials:

$$\begin{aligned}&a_1^7 + 1\\&a_1^6a_2 + w^5a_1a_2^6 + w^4\\&a_1^5a_2^2 + w^2a_1a_2^6 + w^6\\&a_1^4a_2^3 + w^4a_1a_2^6 + w^5\\&a_1^3a_2^4 + w^3a_1a_2^6 + w\\&a_1^2a_2^5 + w^6a_1a_2^6 + w^2\\&a_2^7 + 1 \end{aligned}$$

The first and last polynomials do not help, they are trivial. Remember that we are not looking for the original values for \(a_i\), we only need solutions for \(a_i\) up to unit multiple. Therefore, we can set \(a_1=1\), and if we pick the second polynomial, we then get a univariate polynomial \(w^5a_2^6+a_2+w^4\). The roots are \(a_2=1\) and \(a_2=w^5\).

Let us check our solution with the linear map \(\mathcal {T}= \begin{bmatrix} w^2 &{} w^2 \\ w^3 &{} w \end{bmatrix}.\) It is clear that \(a_1=1\) and \(a_2=1\) are unit multiples of \(a_1=w^2\) and \(a_2=w^2\). Now if we check the second row, The original values are:

$$\begin{aligned}&a_1=w^3\\&a_2=w \end{aligned}$$

If we multiply the inverse of \(w^3\) by w, we get \(w^{-2}\) which is exactly equal to \(w^5\) in the finite field of \(2^3\) elements.

Getting Transformed \(VO_1O_2\) Space

We know that there are \(o_1\) column vectors in the \(v\times o_1\) part of each symmetric matrix \(\mathbf {Q}_i\) for \(i=o_1+1,\cdots ,o_1+o_2\). So we have \(o_1o_2\) such vectors. Assume that these \(o_1o_2\) vectors do not span the entire V space. Let us take \(v-1\) vectors and look at the span of these \(v-1\) vectors. Therefore, the probability of the next vector being in the span of these \(v-1\) vector is \(\frac{q^{v-1}-1}{q^v}\approx \frac{1}{q}\). There are \(o_1o_2-(v-1)\) vectors to check, so the probability of failing to fill the entire space is \(1/q^{o_1o_2-(v-1)}\). Thus we can conclude that if \(o_1o_2\) is larger enough than v, we can always get the full space. All the sets of proposed parameters satisfy this condition, so we do not need to worry about this case at all.

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Ding, J., Zhang, Z., Deaton, J., Wang, LC. (2020). A Complete Cryptanalysis of the Post-Quantum Multivariate Signature Scheme Himq-3. In: Meng, W., Gollmann, D., Jensen, C.D., Zhou, J. (eds) Information and Communications Security. ICICS 2020. Lecture Notes in Computer Science(), vol 12282. Springer, Cham. https://doi.org/10.1007/978-3-030-61078-4_24

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-61078-4_24

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-61077-7

  • Online ISBN: 978-3-030-61078-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics