Solomon Joseph

EECS Department, University of California, Berkeley

Technical Report No. UCB/EECS-2022-252

December 1, 2022

http://www2.eecs.berkeley.edu/Pubs/TechRpts/2022/EECS-2022-252.pdf

Zero-knowledge proofs are a class of probabilistic proof systems that involve a powerful prover proving a theorem to a probabilistic polynomial-time verifier without revealing any information beyond the validity of the theorem to the verifier. In addition, zk-SNARKS are a class of cryptographic protocols through which a prover can efficiently prove possession of something to a verifier in a non-interactive manner. The exponential adoption of blockchain technology, among other things, has influenced a demand for high-performance cryptographic libraries providing support for zero knowledge. Chiesa’s SCIPR lab provides a suite of open- source libraries, written in Rust and C++, that maintain and optimize popular cryptographic and zero knowledge implementations. In this report, I will provide an description of the libraries with which I interacted with, followed by a comprehensive review of my contributions to these libraries, namely library maintenance and algorithmic improvements.

Advisors: Alessandro Chiesa


BibTeX citation:

@mastersthesis{Joseph:EECS-2022-252,
    Author= {Joseph, Solomon},
    Title= {Contributions to Rust and C++ Cryptographic Libraries for zkSNARKS},
    School= {EECS Department, University of California, Berkeley},
    Year= {2022},
    Month= {Dec},
    Url= {http://www2.eecs.berkeley.edu/Pubs/TechRpts/2022/EECS-2022-252.html},
    Number= {UCB/EECS-2022-252},
    Abstract= {Zero-knowledge proofs are a class of probabilistic proof systems that involve a powerful prover proving a theorem to a probabilistic polynomial-time verifier without revealing any information beyond the validity of the theorem to the verifier. In addition, zk-SNARKS are a class of cryptographic protocols through which a prover can efficiently prove possession of something to a verifier in a non-interactive manner. The exponential adoption of blockchain technology, among other things, has influenced a demand for high-performance cryptographic libraries providing support for zero knowledge. Chiesa’s SCIPR lab provides a suite of open- source libraries, written in Rust and C++, that maintain and optimize popular cryptographic and zero knowledge implementations. In this report, I will provide an description of the libraries with which I interacted with, followed by a comprehensive review of my contributions to these libraries, namely library maintenance and algorithmic improvements.},
}

EndNote citation:

%0 Thesis
%A Joseph, Solomon 
%T Contributions to Rust and C++ Cryptographic Libraries for zkSNARKS
%I EECS Department, University of California, Berkeley
%D 2022
%8 December 1
%@ UCB/EECS-2022-252
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/2022/EECS-2022-252.html
%F Joseph:EECS-2022-252