Skip to main content

Lite-Rainbow: Lightweight Signature Schemes Based on Multivariate Quadratic Equations and Their Secure Implementations

  • Conference paper
  • First Online:

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

Abstract

Rainbow signature scheme based on multivariate quadratic equations is one of alternatives to guarantee secure communications in the post-quantum world. Its speed is about dozens of times faster than classical public-key signatures, RSA and ECDSA, while its key size is much heavier than those of the classical ones. We propose lightweight variants of Rainbow, Lite-Rainbow-0 and Lite-Rainbow-1, for constrained devices. By replacing some parts of a public key or a secret key with small random seeds via a pseudo-random number generator, we reduce a public key in Lite-Rainbow-1 and a secret key in Lite-Rainbow-0 by factors 71 % and 99.8 %, respectively, compared to Rainbow. Although our schemes require additional costs for key recovery processes, they are still highly competitive in term of performance. We also prove unforgeability of our scheme with special parameter sets in the random oracle model under the hardness assumption of the multivariate quadratic polynomial solving problem. Finally, we propose countermeasures of Rainbow-like schemes against side channel attacks such as power analysis for their secure implementations.

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

Buying options

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

Learn about institutional subscriptions

References

  1. Bernstein, D.J., Lange, T.: eBACS: ECRYPT benchmarking of cryptographic systems. http://bench.cr.yp.to

  2. Bettale, L., Faugére, J.-C., Perret, L.: Hybrid approach for solving multivariate systems over finite fields. J. Math. Cryptol. 3, 177–197 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  3. Boneh, D., DeMillo, R.A., Lipton, R.J.: On the importance of checking cryptographic protocols for faults. In: Fumy, W. (ed.) EUROCRYPT 1997. LNCS, vol. 1233, pp. 37–51. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  4. Bulygin, S., Petzoldt, A., Buchmann, J.: Towards Provable security of the unbalanced oil and vinegar signature scheme under direct attacks. In: Gong, G., Gupta, K.C. (eds.) INDOCRYPT 2010. LNCS, vol. 6498, pp. 17–32. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  5. Chen, A.I.-T., Chen, M.-S., Chen, T.-R., Cheng, C.-M., Ding, J., Kuo, E.L.-H., Lee, F.Y.-S., Yang, B.-Y.: SSE implementation of multivariate PKCs on modern x86 CPUs. In: Clavier, C., Gaj, K. (eds.) CHES 2009. LNCS, vol. 5747, pp. 33–48. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  6. Coron, J.-S.: Resistance against differential power analysis for elliptic curve cryptosystems. In: Koç, Ç.K., Paar, C. (eds.) CHES 1999. LNCS, vol. 1717, pp. 292–302. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

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

    Chapter  Google Scholar 

  8. ETSI: ETSI 2nd Quantum-Safe Crypto Workshop in partnership with the IQC. http://www.etsi.org/news-events/events/770-etsi-crypto-workshop-2014. (Accessed: September 2014)

  9. Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman, New York (1979)

    Google Scholar 

  10. Hashimoto, Y., Takagi, T., Sakurai, K.: General Fault attacks on multivariate public key cryptosystems. In: Yang, B.-Y. (ed.) PQCrypto 2011. LNCS, vol. 7071, pp. 1–18. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  11. Hoffstein, J., Pipher, J., Silverman, J.H.: NTRU: a ring-based public key cryptosystem. In: Buhler, J.P. (ed.) ANTS 1998. LNCS, vol. 1423, pp. 267–288. Springer, Heidelberg (1998)

    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)

    Chapter  Google Scholar 

  13. Kocher, P.C.: Timing attacks on implementations of Diffie-Hellman, RSA, DSS, and other systems. In: Koblitz, N. (ed.) CRYPTO 1996. LNCS, vol. 1109, pp. 104–113. Springer, Heidelberg (1996)

    Google Scholar 

  14. Kocher, P.C., Jaffe, J., Jun, B.: Differential power analysis. In: Wiener, M. (ed.) CRYPTO 1999. LNCS, vol. 1666, pp. 388–397. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  15. Matsumoto, T., Imai, H.: Public quadratic polynomial-tuples for efficient signature-verification and message-encryption. In: Günther, C.G. (ed.) EUROCRYPT 1988. LNCS, vol. 330, pp. 419–453. Springer, Heidelberg (1988)

    Chapter  Google Scholar 

  16. McEliece, R.: A Public-Key Cryptosystem Based on Algebraic Coding Theory, DSN Progress Report 42–44. Jet Propulsion Laboratories, Pasadena (1978)

    Google Scholar 

  17. Merkle, R.C.: A digital signature based on a conventional encryption function. In: Pomerance, C. (ed.) CRYPTO 1987. LNCS, vol. 293, pp. 369–378. Springer, Heidelberg (1988)

    Google Scholar 

  18. Messerges, T.S., Dabbish, E.A., Sloan, R.H.: Investigations of Power analysis attacks on smartcards. In: USENIX 1999 (1999)

    Google Scholar 

  19. NIST: Workshop on Cybersecurity in a Post-Quantum World, post-quantum-crypto-workshop-2015.cfm. http://www.nist.gov/itl/csd/ct/. (Accessed: September 2014)

  20. Okeya, K., Takagi, T., Vuillaume, C.: On the importance of protecting \(\bigtriangleup \) in SFLASH against side channel attacks. IEICE Trans. 88–A(1), 123–131 (2005)

    Article  Google Scholar 

  21. Patarin, J.: Hidden fields equations (HFE) and isomorphisms of polynomials (IP): two new families of asymmetric algorithms. In: Maurer, U.M. (ed.) EUROCRYPT 1996. LNCS, vol. 1070, pp. 33–48. Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  22. Petzoldt, A., Bulygin, S., Buchmann, J.: Selecting parameters for the rainbow signature scheme. In: Sendrier, N. (ed.) PQCrypto 2010. LNCS, vol. 6061, pp. 218–240. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  23. Petzoldt, A., Bulygin, S., Buchmann, J.: CyclicRainbow – a multivariate signature scheme with a partially cyclic public key. In: Gong, G., Gupta, K.C. (eds.) INDOCRYPT 2010. LNCS, vol. 6498, pp. 33–48. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  24. Shor, P.W.: Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM J. Comput. 26, 1484–1509 (1997)

    Article  MATH  MathSciNet  Google Scholar 

  25. Steinwandt, R., Geiselmann, W., Beth, T.: A theoretical DPA-based cryptanalysis of the NESSIE candidates FLASH and SFLASH. In: Davida, G.I., Frankel, Y. (eds.) ISC 2001. LNCS, vol. 2200. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  26. Thomae, E.: About the Security of Multivariate Quadratic Public Key Schemes, Dissertation Thesis by Dipl. math. E. Thomae, RUB (2013)

    Google Scholar 

  27. Zalka, C.: Shor’s algorithm with fewer (pure) qubits. arXiv:quant-ph/0601097

Download references

Acknowledgments

This research was supported by the National Institute for Mathematical Sciences funded by Ministry of Science, ICT and Future Planning of Korea (B21503-1).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kyung-Ah Shim .

Editor information

Editors and Affiliations

Appendix

Appendix

The most general security notion of a public-key signature (PKS) scheme is existential unforgeability under an adaptively chosen-message attack (EUF-acma). Its formal security model is defined as follows:

Unforgeability of Signature Schemes Against EUF-acma. An adversary \(\mathcal A\)’s advantage \(Adv_{\mathcal{PKS}, \mathcal{A}}\) is defined as its probability of success in the following game between a challenger \(\mathcal C\) and \(\mathcal A\):

  • Setup. The challenger runs Setup algorithm and its resulting system parameters are given to \(\mathcal A\).

  • Queries. \(\mathcal A\) issues the following queries:

    • Sign Query: Adaptively, \(\mathcal A\) requests a signature on a message m \(_i\), \(\mathcal C\) returns a signature \(\sigma _i\).

  • Output. Eventually, \(\mathcal A\) outputs \(\sigma ^*\) on a message \(\mathtt{m}^*\) and wins the game if (i) Verify \((\mathtt{m}^*, \sigma ^*)=1\) and ii) \(\mathtt{m}^*\) has never requested to the Sign oracle.

Definition 2. A forger \(\mathcal A\) \((t, g_H, q_S, \epsilon )\)-breaks a PKS scheme if \(\mathcal A\) runs in time at most t, \(\mathcal A\) makes at most \(q_H\) queries to the hash oracle, \(q_S\) queries to the signing oracle and \(Adv_{\mathcal{PKS}, \mathcal{A}}\) is at least \(\epsilon \). A PKS scheme is \((t, q_E, q_S, \epsilon )\)-EUF-acma if no forger \((t, q_H, q_S, \epsilon )\)-breaks it in the above game.

Theorem 1. If the MQ-problem is \((t', \varepsilon ')\)-hard, Lite-Rainbow-1\((K, v_1, o_1, o_2)\) is \((t, q_{H}, q_S, q_\mathcal{G}, \varepsilon )\)-existential unforgeable against an adaptively chosen message attack, for any t and \(\varepsilon \) satisfying

$$\begin{aligned} \varepsilon \ge \texttt {e} \cdot (q_S+1) \cdot \varepsilon ', \ t' \ge t+q_H \cdot c_V+q_S \cdot c_S+c_\mathcal{G}, \end{aligned}$$

where \(\texttt {e}\) is the base of the natural logarithm, and \(c_S\), \(c_V\) and \(c_\mathcal{G}\) are time for a signature generation, a signature verification and a \(\mathcal G\) evaluation to recover some parts of a public key, respectively, provided that the parameter set \((K, v_1, o_1, o_2)\) is chosen to be resistant to the KRAs.

Proof. A random instance of the MQ-problem \((\mathcal{P}, \eta )\) is given. Suppose that \(\mathcal A\) is a forger who breaks Lite-Rainbow-\(1(K, v_1, o_1, o_2)\) with the target public key \(\mathcal P\). By using \(\mathcal A\), we will construct an algorithm \(\mathcal B\) which outputs a solution x \(\in K^n\) such that \(\mathcal{P}(\mathbf{x})=\eta \). Algorithm \(\mathcal B\) performs the following simulation by interacting with \(\mathcal A\).

Setup. Algorithm \(\mathcal B\) chooses a random seed se and set \(PK=(\mathsf{se}, P_{12}, P_R, P_{L12})\) as a public key, where \(P_{12}, P_R, P_{L12}\) are the corresponding parts of \(\mathcal P\).

At any time, \(\mathcal A\) can query random oracles, \(\mathcal G\) and H, and Sign oracle. To answer these queries, \(\mathcal B\) does the following:

To respond to H-queries, \(\mathcal B\) maintains a list of tuples (m \(_i, c_i, \tau _i, \mathcal{P}(\tau _i))\) as explained below. We refer to this list as H -list. When \(\mathcal A\) queries H at a point m \(_i \in \{0, 1\}^*\),

1. If the query already appears on H -list in a tuple (m \(_i, c_i, \tau _i,\) \(\mathcal{P}(\tau _i))\) then \(\mathcal B\) returns H(m \(_i)=\mathcal{P}(\tau _i)\).

2. Otherwise, \(\mathcal B\) picks a random coin \(c_i \in \{0, 1\}\) with \(Pr[c_i=0]=\frac{1}{q_S+1}\).

  • If \(c_i=1\) then \(\mathcal B\) chooses a random \(\tau _i \in K^n\), adds a tuple \((\mathtt{m}_i, c_i, \tau _i, \mathcal{P}(\tau _i))\) to H -list and returns H(m \(_i)=\mathcal{P}(\tau _i)\).

  • If \(c_i=0\) then \(\mathcal B\) adds (m \(_i, c_i, *, \eta )\) to H -list from the instance, and returns \(H(\mathtt{m}_i)=\eta \).

Sign Queries. When \(\mathcal A\) makes a Sign-query on m \(_i\), \(\mathcal B\) finds the corresponding tuple (m \(_i, c_i, \tau _i, \mathcal{P}(\tau _i))\) from H -list.

  • If \(c_i=1\) then \(\mathcal B\) responds with \(\tau _i\).

  • If \(c_i=0\) then \(\mathcal B\) reports failure and terminates.

To verify a signature, \(\mathcal A\) has to query the random oracle \(\mathcal G\).

To verify a signature, \(\mathcal A\) must query the oracle \(\mathcal G\). When \(\mathcal A\) queries G at a point \(\mathsf{se} \in \{0, 1\}^\lambda \), \(\mathcal B\) returns \(\mathcal{G}(\mathsf{se})=(P_{11}, P_{21}, P_{22}, P_{L11}, P_{L21}, P_{L22}, P_C)\), where \(P_{11}, P_{21}, P_{22}, P_{L11}, P_{L21}, P_{L22}, P_C\) are the corresponding parts of \(\mathcal P\).

All responses to Sign queries not aborted are valid. If \(\mathcal B\) doesn’t abort as a result of \(\mathcal A\)’s Sign query then \(\mathcal A\)’s view in the simulation is identical to its view in the real attack.

Output. Finally, \(\mathcal A\) produces a signature x \(^*\) on a message m \(^*\). If it is not valid then \(\mathcal B\) reports failure and terminates. Otherwise, a query on \(m^*\) already appears on H -list in a tuple (m \(^*, c^*, \tau ^*, \mathcal{P}(\tau ^*))\): if \(c_*=1\) then reports failure and terminates. Otherwise, \(c^*=0\), i.e., (\(c^*\), m \(^*\), *, \(\eta \)), then \(\mathcal{P}\)(x \(^*\)) = \(\eta \). Finally, \(\mathcal B\) outputs x \(^*\) is a solution of \(\mathcal P\).

To show that \(\mathcal B\) solves the given instance with probability at least \(\varepsilon '\), we analyze four events needed for \(\mathcal B\) to succeed:

  • \(E_1\): \(\mathcal B\) doesn’t abort as a result of \(\mathcal A\)’s Sign query.

  • \(E_2\): \(\mathcal A\) generates a valid and nontrivial signature forgery \(\sigma \) on m \(_i\).

  • \(E_3\): Event \(E_2\) occurs, \(c_i=0\) for the tuple containing m \(_i\) in the H -list.

Algorithm \(\mathcal B\) succeeds if all of these events happen. The probability \(Pr[E_1 \wedge E_3]\) is decomposed as

$$\begin{aligned} Pr[E_1 \wedge E_3]=Pr[E_1] \cdot Pr[E_2 \wedge E_1] \cdot Pr[E_3|E_1 \wedge E_2] \cdot (*). \end{aligned}$$

The probability that \(\mathcal B\) doesn’t abort as a result of \(\mathcal A\)’s Sign query is at least \((1-\frac{1}{q_S+1})^{q_S}\) since \(\mathcal A\) makes at most \(q_S\) queries to the Sign oracle. Thus, \(Pr[E_1] \ge (1-\frac{1}{q_S+1})^{q_S}\). If \(\mathcal B\) doesn’t abort as a result of \(\mathcal A\)’s Sign query then \(\mathcal A\)’s view is identical to its view in the real attack. Hence, \(Pr[E_1 \wedge E_2] \ge \varepsilon \). Given that events \(E_1\), \(E_2\) and \(E_3\) happened, \(\mathcal B\) will abort if \(\mathcal A\) generates a forgery with \(c_i=1\). Thus, all the remaining \(c_i\) are independent of \(\mathcal A\)’s view. Since \(\mathcal A\) could not have issued a signature query for the output we know that c is independent of \(\mathcal A\)’s current view and therefore \(Pr[c=0|E_1 \wedge E_2] =\frac{1}{q_S+1}\). Then we get \(Pr[E_3|E_1 \wedge E_2] \ge \frac{1}{q_S+1}\). From \((*)\), \(\mathcal B\) produces the correct answer with probability at least

$$\begin{aligned} (1-\frac{1}{q_S+1})^{q_S} \cdot \varepsilon \cdot \frac{1}{q_S+1} \ \ge \ \frac{1}{\texttt {e}} \cdot \frac{\varepsilon }{(q_S+1)} \ \ge \ \varepsilon '. \end{aligned}$$

Algorithm \(\mathcal B\)’s running time is the same as \(\mathcal A\)’s running time plus the time that takes to respond to \(q_H\) H-queries, and \(q_S\) Sign-queries. The H- and Sign-queries require a signature verification and a signature generation, respectively. We assume that a signature generation, a signature verification and a \(\mathcal G\) evaluation to recover some parts of a public key take time \(c_S\), \(c_V\) and \(c_\mathcal{G}\), respectively. Hence, the total running time is at most \(t' \ge t+q_H \cdot c_V+q_S \cdot c_S+c_\mathcal{G}\).         \(\square \)

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Shim, KA., Park, CM., Baek, YJ. (2015). Lite-Rainbow: Lightweight Signature Schemes Based on Multivariate Quadratic Equations and Their Secure Implementations. In: Biryukov, A., Goyal, V. (eds) Progress in Cryptology -- INDOCRYPT 2015. INDOCRYPT 2015. Lecture Notes in Computer Science(), vol 9462. Springer, Cham. https://doi.org/10.1007/978-3-319-26617-6_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-26617-6_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-26616-9

  • Online ISBN: 978-3-319-26617-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics