⏵ Become a Halo2 Hero: Master Zero-Knowledge Proofs with Our New Course
We’re teaming up with the Zircuit team to bring you a new course on Halo2 development that’s perfect for Rust developers eager to dive into creating Halo2 circuits from scratch. No need to be a cryptographer or have prior knowledge of Halo2, PlonK, or zkSNARKs—our course starts with the basics and guides you through building increasingly complex circuits. By the end, you’ll be a Halo Hero! Plus, you’ll have access to complete, runnable code examples on GitHub. Ready to start your Halo2 journey? Check it out!
⏵ noname 3.0: Native Hints, Standard Library, Compiler Visualizer, And More!
We’re super excited to introduce noname 3.0, our zk programming language inspired by Rust and Golang, now achieving full feature parity with Circom. This update brings native hints, a standard library, debugging features, and a lot more to enhance developer experience. Dive into how hint functions work with an ‘unsafe’ keyword to balance innovation and security, explore our new stdlib modules, and see how the compiler pipeline visualizer can help you understand the compiling process. Plus, check out our next steps and how you can contribute to shaping noname’s future.
⏵ 10 Must-Read Papers That Shaped Modern Zero-Knowledge Proofs
Zero-knowledge proofs have come a long way in 40 years, thanks to groundbreaking work from many brilliant minds. We’re taking you on a tour of the key milestones in this fascinating journey, from the foundational concepts in 1985 by Goldwasser, Micali, and Rackoff, to modern applications and innovations like STARKs and zkVMs. You’ll get a taste of major papers and projects that have pushed these proofs from theoretical curiosity to practical and scalable solutions. Dive into the history, understand the evolution, and see how these cryptographic marvels continue to shape the future of secure computation!
⏵ ZNARKs: SNARKs for The Integers
Hey there! Interested in learning about SNARKs that work beyond finite fields? We’ve been diving into $\mathbb{Z}$NARKs, which are SNARKs tailored for computations involving integers. Our latest post unpacks this intriguing area, showing how we can construct efficient proof systems for integer-based computations. You’ll discover nifty tricks like range checks without bit decomposition and mixed field emulation, plus how these techniques can simplify RSA computations. Intrigued by the idea of using randomness for more reliable proofs or exploring an intellectual curiosity like $\mathbb{Q}$-circuits? This post covers it all, including a peek into the future of polynomial commitments. Dive in and explore with us!
⏵ Stone CLI: Making Cairo programming more accessible
We’re excited to introduce the Stone CLI, our new tool designed to simplify the process of proving and verifying Cairo programs. Working alongside the StarkWare team, we’ve streamlined the toolchain for developers, making it easier to compile, run, and prove these programs with less hassle. You’ll get the scoop on how to seamlessly use the Stone CLI across various verifiers, serialize proofs, and even create Ethereum-compliant proofs using the bootloader. Dive in to see how we’re making life easier for both beginners and seasoned Cairo enthusiasts!
⏵ Archetype x zkSecurity (Whiteboard Session) - Proof is in the Pudding: zkTLS
In our “Proof is in the Pudding” series, hosted with Archetype, we dive into the world of zkTLS—also known as zkOracles, HTTPz, or MPC-TLS. You’ll get the inside scoop on various approaches like public oracles, TEE methods such as TownCrier, and hybrid models using MPC protocols. It’s a perfect chance to explore cutting-edge TLS technologies and see how they shape secure communication. Check out the recorded session on Archetype’s channel!
⏵ WE-KZG: Encrypt to KZG.
Ever wondered if you could create a ciphertext that’s only decrypted when a polynomial inside a commitment has a particular value? We’ve explored this notion using KZG commitments in our latest Asiacrypt 2024 paper. Dive into the elegant world of Witness Encryption and see how it can be applied in cool ways like Laconic Oblivious Transfer. This approach keeps things as efficient as regular KZG operations and might just spark some creative applications of your own! Curious to learn more? Let’s explore together!
⏵ zkHack x zkSecurity (Whiteboard Session) - What is Zero-Knowledge (like, actually)?
We’re excited to join zkHack’s new season of whiteboard sessions, where you’ll dive into the real meaning of “Zero Knowledge” with Nicolas Mohnblatt and David Wong. Discover when true zero-knowledge is at play, explore the differences between honest and dishonest verifiers, and understand why adaptive models are preferred. We’ll unpack methods for generating hiding commitments and give you a comprehensive overview of the zero-knowledge aspects of PLONK. Don’t miss out on this opportunity to expand your understanding of ZK and its various applications!
⏵ Archetype x zkSecurity (Whiteboard Session) - Proof is in the Pudding: Arithmetization
Join us for a deep dive into the fascinating world of arithmetization as David from our team breaks down the process of converting logical statements into algebraic forms to create arithmetic circuits, essential for constructing ZK proofs. This unedited recording from our “Proof is in the Pudding” series offers a unique opportunity to grasp these foundational concepts, perfect for anyone keen on unlocking the mechanics behind zero-knowledge proofs. Curious? Check out the session on Archetype’s channel!
⏵ A challenge on the Jolt zkVM
Last weekend, we had a blast crafting challenges for a CTF event at the MOCA Italian hacker camp. One cryptography challenge, “2+2=5,” involved the Jolt zkVM and a RISC-V program. In this post, we share the ins and outs of the challenge, the clever use of a modified Jolt library, and how we managed to prove an invalid execution without triggering verification alarms. Get ready to dive into the world of Jolt and pick up some nifty insights on exploiting cryptographic systems like a true hacker.