From ec836c28b1658e1de18cde98abdd8be8102fde0d Mon Sep 17 00:00:00 2001
From: Mahdi Sedaghat <41582368+Mahdi171@users.noreply.github.com>
Date: Tue, 28 Apr 2026 14:39:18 +0200
Subject: [PATCH 1/4] feat/added hiddenpk circuit & tests
---
.gitignore | 3 +
README.md | 209 +++++++++++++++----
docs/digrams/01-architecture.png | Bin 0 -> 198568 bytes
docs/digrams/02-exposure.png | Bin 0 -> 160184 bytes
docs/digrams/03-proof-composition .png | Bin 0 -> 117859 bytes
lib/CMakeLists.txt | 3 +
lib/circuits/hidden_pk/CMakeLists.txt | 2 +
lib/circuits/hidden_pk/hidden_pk_circuit.h | 143 +++++++++++++
lib/circuits/hidden_pk/hidden_pk_test.cc | 232 +++++++++++++++++++++
lib/circuits/hidden_pk/hidden_pk_witness.h | 142 +++++++++++++
10 files changed, 695 insertions(+), 39 deletions(-)
create mode 100644 .gitignore
create mode 100644 docs/digrams/01-architecture.png
create mode 100644 docs/digrams/02-exposure.png
create mode 100644 docs/digrams/03-proof-composition .png
create mode 100644 lib/circuits/hidden_pk/CMakeLists.txt
create mode 100644 lib/circuits/hidden_pk/hidden_pk_circuit.h
create mode 100644 lib/circuits/hidden_pk/hidden_pk_test.cc
create mode 100644 lib/circuits/hidden_pk/hidden_pk_witness.h
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 00000000..2a34190b
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+.devcontainer/
+.github/
+clang-build-release/
diff --git a/README.md b/README.md
index e16e663c..9ce4f4fc 100644
--- a/README.md
+++ b/README.md
@@ -1,76 +1,207 @@
-# Longfellow ZK
+
+
+
+
+
+
+
+
+
+
-[](LICENSE) [](https://eprint.iacr.org/2024/2010)
-[](https://datatracker.ietf.org/doc/draft-google-cfrg-libzk/)
-## Overview
+# Hidden-PK Wallet Circuit
-The Longfellow library enables the construction of zero-knowledge protocols concerning legacy identity verification standards such as the ISO MDOC standard, the JWT standard, and W3 Verifiable Credentials. This implementation is described in:
+**By [Soundness Labs](https://soundness.xyz)** — built on [Longfellow-ZK](https://github.com/google/longfellow-zk) (Google)
-* [Anonymous credentials from ECDSA](https://eprint.iacr.org/2024/2010)
-* [libzk: A C++ Library for Zero-Knowledge Proofs](https://datatracker.ietf.org/doc/draft-google-cfrg-libzk/)
-* [Project documentation](https://google.github.io/longfellow-zk/)
+> **Work in Progress**: This is an active research prototype and is not production-ready. APIs, circuit design, and parameters may change. Do not use this to secure real assets until a stable release is announced.
-It is named after the bridge outside the Google Cambridge office.
+This repo extends the Longfellow-ZK library with a `hidden_pk` circuit that proves ECDSA signature validity over secp256k1 without revealing the public key or the signature. The circuit is the cryptographic core of [ERC-XXXX: Hidden-PK Wallet](./ERC-DRAFT.md), a quantum-resistant smart contract wallet standard that works with today's Ethereum infrastructure.
-# Security Reviews
+The public key and signature never appear onchain. Hash preimage resistance survives quantum attacks. The account stays quantum-safe regardless of how many transactions it processes.
-This project is currently undergoing two independent security reviews by panels of academic and industry experts in the field. Their reports are available in the [Project documentation/Reviews](https://google.github.io/longfellow-zk/docs/reviews/) page.
+---
-# Specifications
-This repository contains [the working files](https://github.com/google/longfellow-zk/tree/main/docs/specs) for a specification of Longfellow and its components.
-If you are interested in contributing, please create an Issue or a Pull Request. Our discussions occur under Issues.
+## Table of Contents
-# Testing via devcontainer
-You can quickly test our library by using the associated devcontainer to create its environment. Simply click on `Code`-->`Codespaces`-->`Create codespace on master` above to get started. This creates a docker container on a Github server that includes all of the dependencies and provides a web-based VScode interface to our current codebase. You can compile and run our benchmarks in this environment, but some of them may be slower than our reported values due to the VM.
+- [What We Built](#what-we-built)
+- [Circuit Relation](#circuit-relation)
+- [Prerequisites](#prerequisites)
+- [Build](#build)
+- [Running the Tests](#running-the-tests)
+- [Benchmarks](#benchmarks)
+- [Repository Structure](#repository-structure)
+- [Acknowledgements](#acknowledgements)
+- [About Soundness Labs](#about-soundness-labs)
-# Instructions to build
+---
-## Requirements
+## What We Built
-This package depends on cmake, openssl, zstd, clang, googletest and
-googlebenchmark.
+Longfellow-ZK is a Google-developed ZK library for anonymous credentials: proving statements about ECDSA signatures without revealing them. It uses a Ligero-based proof system with a CRT Reed-Solomon construction that handles secp256k1's FFT-unfriendly field (secp256k1's base field has `v_2(p^2−1) = 5`, making standard NTT-based RS unusable).
-### Ubuntu, debian
+We contributed a `hidden_pk` circuit on top of this library that proves the following:
+
+1. A valid secp256k1 ECDSA signature exists under some public key `pk`
+2. `SHA256(pkx_bytes || pky_bytes) == pkHash`
+
+Both `pk` and `(r, s)` stay as private witnesses. This is the core primitive for a quantum-resistant wallet: the onchain contract stores only `pkHash` and validates transactions via this ZK proof.
+
+---
+
+## Circuit Relation
```
-$ sudo apt install -y clang cmake libssl-dev libzstd-dev libgtest-dev libbenchmark-dev zlib1g-dev
+R = { (pkHash, e) ; (pk, sig) :
+ SHA256(pkx_bytes || pky_bytes) == pkHash
+ AND ECDSA_verify_secp256k1(pk, sig, e) == true }
```
-### Fedora, redhat
+`e` is the transaction hash (public). `pk = (pkx, pky)` and `sig = (r, s)` are private witnesses. Revealing `(r, s)` alongside `e` is enough to recover `pk` via `ecrecover`: this is why both must stay hidden.
-```
-$ yum install -y clang libzstd-devel openssl-devel git cmake google-benchmark-devel gtest-devel
+---
+
+## Prerequisites
+
+### macOS
+
+```bash
+brew install googletest google-benchmark zstd
```
+Ensure Xcode command line tools (clang, cmake) are installed.
-### MacOS
-Ensure that Xcode command line tools such as `clang` and `cmake` are installed.
+### Ubuntu / Debian
+```bash
+sudo apt install -y clang cmake libssl-dev libzstd-dev libgtest-dev libbenchmark-dev zlib1g-dev
```
-$ brew install googletest google-benchmark zstd
+
+### Fedora / RedHat
+
+```bash
+yum install -y clang libzstd-devel openssl-devel git cmake google-benchmark-devel gtest-devel
```
-## Building manually
+---
-First run the cmake initialization step
+## Build
+```bash
+git clone https://github.com/SoundnessLabs/longfellow-zk-hiddenpk.git
+cd longfellow-zk-hiddenpk
+
+CXX=clang++ cmake -DCMAKE_BUILD_TYPE=Release -S lib -B clang-build-release
+make -C clang-build-release hidden_pk_test -j16
```
-$ CXX=clang++ cmake -D CMAKE_BUILD_TYPE=Release -S lib -B clang-build-release --install-prefix ${PWD}/install
+
+OR
+```bash
+make -C clang-build-release hidden_pk_test -j$(nproc)
```
+---
-Next:
+## Running the Tests
+All commands run from the repo root.
+
+```bash
+# Full test suite (circuit size + ZK prove/verify)
+./clang-build-release/circuits/hidden_pk/hidden_pk_test
+
+# Circuit size only (~300ms, mostly compilation)
+./clang-build-release/circuits/hidden_pk/hidden_pk_test --gtest_filter=HiddenPK.CircuitSize
+
+# Full ZK prove + verify with timing breakdown
+./clang-build-release/circuits/hidden_pk/hidden_pk_test --gtest_filter=HiddenPK.ZkProverVerifier
+
+# Prover benchmark (circuit compiled outside the loop)
+./clang-build-release/circuits/hidden_pk/hidden_pk_test --benchmark_filter=BM_HiddenPKProver
```
-$ cd clang-build-release && make -j 16 && ctest -j 16
-```
-# Running benchmarks
+---
+
+## Benchmarks
+
+Measured on Apple M1 (single core, Release build). Circuit parameters: `kLigeroRate=7`, `kLigeroNreq=132`.
+
+| Metric | Value |
+|---|---|
+| Circuit inputs | 7,694 |
+| Public inputs | 258 (256 pkHash bits + e) |
+| Circuit layers | 11 |
+| Circuit compilation (one-time) | ~370ms |
+| RS commitment | ~40ms |
+| Sumcheck | ~42ms |
+| **Total prove time** | **~87ms** |
+| **Verification time** | **~65ms** |
+| **Proof size** | **226 KB (231,532 bytes)** |
-We have defined several unit, sumcheck, and zk benchmarks. Here are some of
-them:
+Circuit compilation is a one-time cost per session. On mobile hardware expect 2–4× the proving time.
+
+### Proof size breakdown
+
+| Component | Size |
+|---|---|
+| Commitment (Merkle root) | 32 B |
+| Sumcheck proof | 17.6 KB |
+| Column opening proofs (132 columns) | 213.9 KB |
+
+Column openings dominate. Reducing `kLigeroNreq` to 64 cuts proof size roughly in half while keeping soundness above 100 bits.
+
+### On-chain cost estimate (mainnet)
+
+The verifier is hash-only — no pairings, no elliptic curve ops. Gas breaks down as:
+
+| Item | Gas |
+|---|---|
+| Calldata (226 KB, ~70% non-zero bytes) | ~2.5M |
+| Keccak256 Fiat-Shamir (~200 calls) | ~50K |
+| Merkle path verification (132 paths) | ~330K |
+| Linear combination over public inputs | ~50K |
+| **Total** | **~3M gas** |
+
+---
+
+## Repository Structure
+
+Files added to the Longfellow-ZK base:
```
-$ ./algebra/fft_test --benchmark_filter='BM_*'
-$ ./circuits/sha/flatsha256_circuit_test --benchmark_filter=BM_ShaZK_fp2_128
+lib/circuits/hidden_pk/
+├── CMakeLists.txt Build target for hidden_pk_test
+├── hidden_pk_circuit.h Circuit: ECDSA verify + SHA256(pk) commitment
+├── hidden_pk_witness.h Witness computation from (sk, e, r, s)
+└── hidden_pk_test.cc Tests and Google Benchmark
```
+
+---
+
+## Acknowledgements
+
+This work builds on:
+
+- [Longfellow-ZK](https://github.com/google/longfellow-zk) by Google — the ZK library and Ligero/sumcheck proving backend
+- [Anonymous Credentials from ECDSA](https://eprint.iacr.org/2024/2010) — Frigo and Shelat, the paper this library implements
+
+
+## About Soundness Labs
+
+
+
+
+
+
+
+**[Soundness Labs](https://soundness.xyz)** builds quantum-ready cryptographic infrastructure for blockchains, replacing fragile trust with verifiable security.
+
+- **Website**: [soundness.xyz](https://soundness.xyz)
+- **GitHub**: [github.com/SoundnessLabs](https://github.com/SoundnessLabs)
+- **X**: [@SoundnessLabs](https://twitter.com/SoundnessLabs)
+
+---
+
+
+ By Soundness Labs
+ Towards building a Sound Internet.
+
diff --git a/docs/digrams/01-architecture.png b/docs/digrams/01-architecture.png
new file mode 100644
index 0000000000000000000000000000000000000000..8241418f3d2e1b1e261033620073de853620962d
GIT binary patch
literal 198568
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