Generating Programs for Polynomial Multiplication with Correctness Assurance
Generating Programs for Polynomial Multiplication with Correctness Assurance
复制标题
DOI:
10.1145/3571786.3573017
复制
发表时间:
2023-01
期刊:
影响因子:
--
通讯作者:
Ryohei Tokuda;Yukiyoshi Kameyama
中科院分区:
文献类型:
--
作者:
Ryohei Tokuda;Yukiyoshi Kameyama
Program-generation techniques prevail in domains that need high performance, such as linear algebra, image processing, and database. Yet, it is hard to generate high-performance programs with correctness assurance, and cryptography needs both. Masuda and Kameyama proposed a DSL-based framework for implementing a program generator, an analyzer, and a formula generator, and obtained an efficient and correct implementation of Number-Theoretic Transform (NTT) that is necessary for many cryptographic algorithms. This paper advances their study in two ways. First, we develop a generation-and-analysis framework so that program generation is driven by program analysis. As a concrete result, we have found an optimization missed in previous studies. Second, we investigate whether the framework can be applied to other algorithms, including inverse NTT. By combining generated programs, we have obtained an efficient and correct implementation of polynomial multiplication, the key for several post-quantum cryptographic algorithms.