Efficient Implementations of Rainbow and UOV using AVX2

Authors

  • Kyung-Ah Shim National Institute for Mathematical Sciences, Daejeon, Republic of Korea
  • Sangyub Lee National Institute for Mathematical Sciences, Daejeon, Republic of Korea,
  • Namhun Koo Ewha Womans University, Seoul, Republic of Korea

DOI:

https://doi.org/10.46586/tches.v2022.i1.245-269

Keywords:

Block Matrix Inversion, Digital Signature, Gaussian Elimination, Multivariate-Quadratic Problem, Post-Quantum Cryptography, Precomputation, Schur Complement

Abstract

A signature scheme based on multivariate quadratic equations, Rainbow, was selected as one of digital signature finalists for NIST Post-Quantum Cryptography Standardization Round 3. In this paper, we provide efficient implementations of Rainbow and UOV using the AVX2 instruction set. These efficient implementations include several optimizations for signing to accelerate solving linear systems and the Vinegar value substitution. We propose a new block matrix inversion (BMI) method using the Lower-Diagonal-Upper decomposition of blocks matrices based on the Schur complement that accelerates solving linear systems. Compared to UOV implemented with Gaussian elimination, our implementations with the BMI result in speedups of 12.36%, 24.3%, and 34% for signing at security categories I, III, and V, respectively. Compared to Rainbow implemented with Gaussian elimination, our implementations with the BMI result in speedups of 16.13% and 20.73% at the security categories III and V, respectively. We show that precomputation for the Vinegar value substitution and solving linear systems dramatically improve their signing. UOV with precomputation is 16.9 times, 35.5 times, and 62.8 times faster than UOV without precomputation at the three security categories, respectively. Rainbow with precomputation is 2.1 times, 2.2 times, and 2.8 times faster than Rainbow without precomputation at the three security categories, respectively. We then investigate resilience against leakage or reuse of the precomputed values in UOV and Rainbow to use the precomputation securely: leakage or reuse of the precomputed values leads to their full secret key recoveries in polynomial-time.

Downloads

Published

2021-11-19

How to Cite

Shim, K.-A., Lee, S., & Koo, N. (2021). Efficient Implementations of Rainbow and UOV using AVX2. IACR Transactions on Cryptographic Hardware and Embedded Systems, 2022(1), 245–269. https://doi.org/10.46586/tches.v2022.i1.245-269

Issue

Section

Articles