Skip to content

Latest commit

 

History

History
55 lines (39 loc) · 2.9 KB

README.md

File metadata and controls

55 lines (39 loc) · 2.9 KB
 ███╗   ███╗  ██╗   ██╗  ███████╗  ██╗  ██╗  ██████╗  
 ████╗ ████║  ╚██╗ ██╔╝  ╚══███╔╝  ██║ ██╔╝  ██╔══██╗ 
 ██╔████╔██║   ╚████╔╝     ███╔╝   █████╔╝   ██████╔╝ 
 ██║╚██╔╝██║    ╚██╔╝     ███╔╝    ██╔═██╗   ██╔═══╝  
 ██║ ╚═╝ ██║     ██║     ███████╗  ██║  ██╗  ██║      
 ╚═╝     ╚═╝     ╚═╝     ╚══════╝  ╚═╝  ╚═╝  ╚═╝     

🚀 Building Zero Knowledge Proofs from Scratch in Rust

MyZKP is a Rust implementation of zero-knowledge protocols built entirely from scratch! This project serves as an educational resource for understanding and working with zero-knowledge proofs. 📚 Explore the accompanying textbook: Book of MyZKP.

Warning

This repository is a work in progress and may contain bugs or inaccuracies. Contributions and feedback are welcome!

Index

🧮 Basic of Number Theory

🔒 Basic of zk-SNARKs

🌟 Basic of zk-STARKs

  • ✍️ TBD

💻 Basic of zkVM

  • ✍️ TBD

🛠️ Code Reference

Module 📂 File Path
Ring ring.rs
Field field.rs
Extended Field efield.rs
Polynomial polynomial.rs
Elliptic Curve curve.rs
zkSNARKs ✍️ Coming soon

Contributions are Welcome!

Feel free to submit issues or pull requests to enhance the project.