dc.contributor.advisor | Athalye, Anish | |
dc.contributor.advisor | Zeldovich, Nickolai | |
dc.contributor.author | Ono, Rick R. | |
dc.date.accessioned | 2024-10-09T18:27:11Z | |
dc.date.available | 2024-10-09T18:27:11Z | |
dc.date.issued | 2024-09 | |
dc.date.submitted | 2024-10-07T14:34:36.025Z | |
dc.identifier.uri | https://hdl.handle.net/1721.1/157189 | |
dc.description.abstract | As engineers continue to develop more sophisticated algorithms to optimize cryptographic algorithms, their often simple mathematical specifications become convoluted in the algorithms, from which a class of correctness bugs arise. Because cryptographic algorithms often secure sensitive information, their correctness, and in turn their security is a top priority. The Number Theoretic Transform (NTT) is an algorithm that enables efficient polynomial multiplication and has recently gained importance in post-quantum cryptography. This thesis presents a proof of correctness of the NTT in F⋆ , a proof-oriented programming language that extracts to OCaml, and shows that we can use the NTT to perform polynomial multiplications. We provide an implementation of the Cooley-Tukey fast NTT algorithm and a proof that it matches the original NTT specification. This thesis also presents a representation of polynomials in the F⋆ subset Low*, which extracts to performant C code. | |
dc.publisher | Massachusetts Institute of Technology | |
dc.rights | Attribution-NonCommercial-NoDerivatives 4.0 International (CC BY-NC-ND 4.0) | |
dc.rights | Copyright retained by author(s) | |
dc.rights.uri | https://creativecommons.org/licenses/by-nc-nd/4.0/ | |
dc.title | Verifying Correctness of the Number Theoretic Transform and Fast Number Theoretic Transform in F⋆ | |
dc.type | Thesis | |
dc.description.degree | M.Eng. | |
dc.contributor.department | Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science | |
mit.thesis.degree | Master | |
thesis.degree.name | Master of Engineering in Electrical Engineering and Computer Science | |