We’ve been working on noname for a while now, a zk programming language inspired by Rust and Golang, with the goal to provide a better experience than Circom for developers. We’re excited to announce that noname should now achieve full feature parity with Circom. We introduce noname 3.0, the most important update to noname which includes native hints, a standard library (stdlib), more debugging features, and many more quality-of-life improvements for developers.
Zero-knowledge proofs have evolved remarkably over nearly 40 years, achieving unprecedented levels of sophistication and efficiency. Today, new papers and projects emerge daily, building on a rich foundation of ideas and innovations. Curious about how it all started? In this post, we’ll dive into the history of zero-knowledge proofs, exploring 10 milestone papers that helped shape the field as we know it. #1 - The origins Goldwasser, Micali, Rackoff - The knowledge complexity of interactive proof-systems (1985) 1
$\mathbb{Z}$NARKs - SNARKs for The Integers Are SNARKs always for computation over finite fields? Turns out no. Today, we will explore the techniques presented in our recent preprint Fully-Succinct Arguments over the Integers from First Principles, which investigates the construction of SNARKs for circuits over the integers. This work provides a simple, but novel, approach to building efficient proof systems for computations involving whole numbers which sidesteps most of the usual complications of dealing with integers.
Introduction We are pleased to announce that after working for months with the StarkWare team, we are finally launching the Stone CLI, a tool for easily proving and verifying Cairo programs! Huge thanks to the StarkWare team for their work and guidance as well as the Lambdaclass and Herodotus teams for building the infrastructure that makes this possible. Motivation Currently, the Cairo ecosystem is fragmented in that there are multiple tools for compiling, running, proving, and verifying Cairo programs.
Proof is in the Pudding is a IRL series of whiteboard sessions hosted by Archetype and zkSecurity. For Session 02, we cover zkTLS (also called zkOracles, HTTPz, or MPC-TLS). This includes public approaches like public oracles (chainlink), TEE approaches like TownCrier, TLS Notary and Deco style approaches that mix using MPC protocols or pure proxies. Watch it on Archetype’s channel!
Can you create a ciphertext that can be decrypted if the polynomial inside a polynomial commitment has a particular evaluation? Yes and it turns out to not be that complicated… Today we will look at the construction from our recent Asiacrypt 2024 paper, which enables just that for standard KZG commitments. So come along and let’s dive into the world of Witness Encryption for KZG commitments. Introduction to Witness Encryption (WE) In public key encryption schemes, there are two types of keys: a public key and a secret key.
zkSecurity is helping zkHack kick off a new season of zkHack whiteboard sessions! In this module, Nicolas Mohnblatt and David Wong from zkSecurity dig into the term “Zero Knowledge” and discuss what this property actually is, when it is being used (or not) and what characteristics some systems need in order to be considered truly ZK. They then highlight the different types of ZK — perfect, statistical, and computational –, discuss the distinction between dishonest and honest verifiers, and the preference for adaptive models over non-adaptive ones.
Proof is in the Pudding is a IRL series of whiteboard sessions hosted by Archetype and zkSecurity. For Session 01, David from zkSecurity started at the ground floor with arithmetization. Arithmetization involves the process of converting logical statements into algebraic form, which are then used to create arithmetic circuits, a key building block in the construction of a ZK proof. Watch it on Archetype’s channel! Note that this is an unedited recording of the session.
Last weekend I took part in creating some challenges for a CTF event during the MOCA italian hacker camp. One of the tasks I authored was a cryptography challenge called “2+2=5” featuring the Jolt zkVM: it involved crafting a proof for an invalid execution of a RISC-V program exploiting a modified version of the Jolt library. This post will go over the challenge statement and solution, if you want to try and tackle the challenge by yourself you can download the original attachments here!
It was our pleasure to take part in the judging of the latest zkHack competition. An annual hackathon spanning a weekend (in Montreal this time) that brings together developers, researchers, and enthusiasts to explore the latest in zero-knowledge proofs and privacy-enhancing technologies. The results of the competition and a write up of the event can be found here. The projects that came out of this edition showcased the versatility and potential of ZK proofs in enhancing privacy in various applications, as well as solving real-world problems, exploring insanely creative new use cases like ZK breathalyzers, ZK & GPS and many more!