Cryptography
Flying Nobita
by Flying Nobita
4 min read

Resources that I enjoy about general cryptography and ZKP. Stay tune for more about FHE, MPC…

Last Updated: Oct 16, 2024

Table of Contents

  1. 👨🏻‍🏫 Slides
  2. :books: Books
  3. :book: Courses
  4. ℹ️ Guides
  5. 🎙️ Audio
  6. 🚩 CTFs
  7. 🎥 Video
  8. 👥 Study Groups
  9. :ballot_box_with_check: Lists

👨🏻‍🏫 Slides

Introduction to Zero Knowledge
Flying Nobita - Aug 21, 2024, Oct 16, 2024 The slides for a talk I gave at NUS and SMU as part of events organized by ProgCryptoSG. I try to introduce the concept of ZKP within 15 minutes to an audience where >80% of them are new to cryptography, and many don’t have a STEM background. I deliberately avoided any mention of math or coding in this talk to make it more approachable.


:books: Books

Proofs, Arguments, and Zero-Knowledge
Justin Thaler - July 18, 2023
This is considered “the de facto standard” entry point for ZKP by many newcomers in this field today. It covers all the different variations of IOP and PCS and all the different SNARKs that you can build with them. It is comprehensive and provides lots of examples. It doesn’t assume the reader knows a lot of maths as it allows for some guidance, and the reader can study the concepts as they come along. It gets updated every 6-12 months, which a lot can happen in the land of ZKP today, but that’s as good as it gets. Justin runs a study group on his book, details are below.

The MoonMath Manual
Least Authority - constantly updated
This is a popular book that covers many of the math concepts used in zk-SNARKs. The author explains the concepts clearly with good diagrams. It has many example codes in Sage to offer the reader another method of learning. I use this as one of my math reference books. There is a study group dedicated to this book (see below).

Handbook of Applied Cryptography
Alfred J. Menezes et al. - 5th Edition, Aug 2001
This is a rather old book on applied cryptography. Nonetheless, I really enjoy the structured layout of the topics and its discussion on cryptography primitives. You will not find any new cryptography concepts such as ZKP, MPC or FHE here. But rest assured that the primitives mentioned are well used in all the new concepts. I’ve written a book review here


:book: Courses

Zero Knowledge Proofs - MOOC
Berkeley RDI, Spring 2023
This course provides a comprehensive study of ZKP. Each of the lectures is presented by some of the biggest names in the cryptography academic field (Boneh, Goldwasser, Song, Thaler, Zhang). They are all recorded with slides available for download. There’s also a quiz after every lecture that I find can be tricky as the questions sometimes ask about material not directly covered in the lectures. I needed to do some digging on my own but this is how learning should be!

There are 2 assignments, writing circuits in Circom and a hand-paper assignment. The Circom assignments are a good way for people new to writing circuits to get some exposure. However, the hand-paper assignment seems a bit theoretical (though it does remind me of my days in university!). Overall I enjoyed this course and even managed to get the top-tier NFT to show for it.


ℹ️ Guides

ZK Jargon Decoder
Nicolas Mohnblatt
A reference for common ZK jargon. Good to have it handy when reading ZK material and needing a refresher for common terms.


🎙️ Audio

Zero Knowledge Podcast
Anna Rose
This is the first podcast dedicated to ZK and has grown a cult following since. Different guests are invited to the podcast for each episode, and they range from cofounders of consumer-facing apps that use ZKP, to academic cryptography researchers. Regardless, the content is always educational with a no-BS and no-shilling attitude. This is probably the most listened-to cryptography podcast in the entire ZKP community.


🚩 CTFs

Cryptohack
hyperreality, Jack
A well-produced CTF that contains puzzles dedicated to specific topics in cryptography and relevant mathematics. The authors explained their motivations and journey in creating this website in a podcast. Basically, they’ve figured out what makes a good CTF (one that teaches the player about a specific topic), and what doesn’t (one that just wastes the player’s time). You can consider these CTFs as an alternative way to learn. An interesting section is where they take puzzles from other CTF challenges and reproduce them here so you can try them. They also recently added a section dedicated to ZKP. I’ve only done ~20% of the challenges and I’m always trying to find time to do more.

ZK Hack Puzzles
ZK Hack
A collection of all the puzzles from previous ZK Hack Puzzle events. These puzzles are all focused on ZKP and there are multiple solutions from different submitters to all of them.


🎥 Video

ZK Whiteboard Sessions
ZK Hack
A list of videos where each one is dedicated to a specific ZKP topic hosted by an expert in the field. I find these videos to be a good way to get a technical glimpse into a topic so I can decide whether I want to make a deeper dive into it. There is a study group dedicated to these videos (see below).


👥 Study Groups

ZK Hack Discord
ZK Hack
The ZK Hack Discord server currently hosts 4 study groups:

  1. Moonmath Manual
  2. ZK Whiteboard Session
  3. Success Proofs and Linear Algebra (hosted by the author Guillermo Angeris)
  4. Proofs, Argument and Zero-Knowledge (hosted by the author Justin Thaler)

These study groups are well-managed and questions about the material are usually answered promptly. I’ve spent quite a bit of time hanging out in these study groups and even helped host some of the sessions.


:ballot_box_with_check: Lists

PSE’s list of resources
Privacy, Scaling & Exploration
A list of learning resources from Ethereum Foundation’s PSE team, which focuses on applied cryptography. Items here that I find particularly interesting are the ones that are geared towards building, such as PSE — Good First Issues.