UROP Proceeding 2024-25

School of Engineering Department of Computer Science and Engineering 131 Implementation of Cryptographic Tools for Zero-Knowledge Proofs Supervisor: Dimitris PAPADOPOULOS / CSE Student: BAE Hangyeol / COMP Course: UROP 1100, Fall UROP 2100, Spring This report extends the implementation of fast multivariate polynomial evaluation in finite fields, as described by Kedlaya & Umans (2008). The evaluation algorithm, utilizing the Fast Fourier Transform (FFT), has been generalized from Fermat prime finite fields to arbitrary finite fields. By leveraging the Chinese Remainder Theorem (CRT), the implementation supports polynomial evaluation with arbitrary moduli, significantly reducing the size of lookup tables. The algorithm involves ( (log )) time preprocessing and ( ) space, utilizing FFT. Polynomial evaluation lookup is performed in ( ) time, a substantial improvement over the brute force approach of ( ) . Future work includes implementing the Frobenius additive FFT to support evaluations at zero coordinates. Implementation of Cryptographic Tools for Zero-Knowledge Proofs Supervisor: Dimitris PAPADOPOULOS / CSE Student: YEUNG Sin Chun / COMP Course: UROP 1100, Fall The goal of the project is to gain both theoretical understanding of modern zk-SNARK system and gain practical knowledge of implementation of zk-SNARK. In particular, we want to combine Halo2 with the lookup cq. To begin with, I have watched the ZKP MOOC lectures 1-5 to understand the underlying principle of the PLONK system. Also, I have used the plonky2 library to implement and benchmark a zk-SNARK proof on the verification of a merkle path. In this progress report, I will summarize what I have learnt in this project with regard to the PLONK system and also report the benchmark result. Implementation of Cryptographic Tools for Zero-Knowledge Proofs Supervisor: Dimitris PAPADOPOULOS / CSE Student: ZHEGLOV David / COSC Course: UROP 1100, Summer Zero-knowledge proofs (ZKPs) enable one party to convince another that a computation is correct without revealing auxiliary information. This progress report summarizes my initial three-week immersion in zkSNARKs—succinct, non-interactive arguments of knowledge. I outline the project goals, my current theoretical progress, and the planned implementation of the HOBBIT prover in Rust with parallelization. This is a progress report rather than a final report, as the coding phase will follow this study period.

RkJQdWJsaXNoZXIy NDk5Njg=