arnaucube - Applied Cryptography & Systems Engineer
blog | notes | github (git-mirror) | twitterI work on cryptographic protocols and security-related systems, across the boundary between cryptographic research and production engineering.
Over the past 8+ years I've worked on zero-knowledge proofs, folding schemes, digital identity, privacy protocols and infrastructure, primarily in Rust and Go.
My work includes the Hermez zkRollup node used for its mainnet launch, the core protocol and cryptographic stack of iden3, privacy-preserving voting protocols using zero-knowledge proofs and blind signatures at Aragon & Vocdoni, and, most recently, Sonobe, a modular implementation of folding schemes including Nova, HyperNova, ProtoGalaxy and CycleFold.
I'm particularly interested in applied cryptography, zero-knowledge proofs, secure protocol design, post-quantum cryptography, verifiable computation and cryptographic infrastructure.
On my free time I enjoy self-studying some math topics.Selected Work:
2023 - 2026
0xPARC Research -
Applied cryptography researchethereum/Sonobe is a modular Rust library for folding schemes and incrementally verifiable computation. Core developer, designed the architecture of the library and the on-chain verification.
My work included:- implementing Nova, CycleFold, HyperNova and ProtoGalaxy
- designing common abstractions that allow different folding schemes to be used under the same interface
- designing and implementing Sonobe's Ethereum verification architecture, which allowed Sonobe to be the first folding schemes library to achieve verifying folding proofs on Ethereum
- working on the integration of different circuit frontends and commitment schemes
- implementing proof-of-concepts for newly published folding constructions, which lter got ported to Sonobe (protogalaxy-poc & hypernova-poc )
2022 - 2023
Vocdoni & Aragon-ZK-Research -
Cryptography Research & Engineering.Design and implementation of privacy-preserving voting protocols using zkSNARKs and other cryptographic schemes.
Some of the work included:
OVOTE: A validity-rollup-style voting system in which votes are processed off-chain while a zkSNARK proves the correctness of the result for on-chain execution. Designed the protocol and worked on its Circom circuits, smart contracts and Go infrastructure.- OVOTE technical document
- Forum post with a high level explanation.
- aragonzkresearch/ovote: implementation of the OVOTE circuits, smart contracts & libs
- aragonzkresearch/ovote-node: OVOTE backend node implemented in Go
- Blind-OVOTE technical document
- Forum post with a high level explanation.
- aragonzkresearch/blind-ovote: Blind-OVOTE implementation in arkworks.
- vocdoni/keccak256-circom: ethereum sha3 (keccak256) hash function implemented in Circom
- vocdoni/zk-census-proof: anonymous census proof circuit used in Vocdoni's Blockchain (also in arkworks: ark-anon-vote)
- vocdoni/arbo: optimized CPU-parallel MerkleTree compatible with circomlib implementation, compatible with multiple hash functions
- aragonzkresearch/ark-ec-blind-signatures: Blind signatures over elliptic curve implementation (native & r1cs constraints)
2018 - 2022
Hermez zkRollup -
Protocol & Backend EngineerMain task has been to implement the Hermez node, used to launch the mainnet of the zkRollup network (1.0):
hermeznetwork/hermez-node
Main responsability was developing the node used for the network's production launch. Worked primarly on the transaction selector, transction processor (managing the rollup state tree) and batch builder (generating the data structure compatible with the zkSNARK circuits to do the proof generation).
iden3 -
Cryptographiy Protocol & Systems EngineerDesign and specify the core protocol, develop the core libraries, servers, zk circom circuits and zkSNARK Groth16 Go prover, for iden3, a decentralized identity system using zero-knowledge proofs for privacy.
- iden3/go-iden3-crypto: cryptographic primitives (SNARK-friendly) used in iden3
- iden3/go-iden3-core: core implementation of the iden3 system
- iden3/go-circom-prover-verifier: Go lang implementation of the Groth16 zkSNARK Prover and Verifier compatible with Circom
- iden3/circuits: zkSNARK circuits used by the iden3 core protocol
Selected open-source work:
- Proof systems & commitmments
-
go-snark:
GozkSNARK implementation from scratch (compiler, setup, prover, verifier) -
go-bellman-verifier:
GoGroth16 zkSNARK bellman proof verifier using cloudflare/bn256 Pairing -
protogalaxy-poc: implementation of the ProtoGalaxy SNARK folding scheme in
Rust. - Cryptographic primitives
-
babyjubjub-rs: BabyJubJub elliptic curve implementation in
Rust -
poseidon-rs: Poseidon hash implementation in
Rust -
fri-commitment: FRI polynomial commitment in
Rust -
ipa-rs: modified Inner Product Argument (IPA) version from Halo paper in
Rustusing arkworks. -
kzg-commitments: Kate-Zaverucha-Goldberg (KZG10) Polynomial Commitments in
Go -
ring-signatures-rs: bLSAG ring signatures implementation in
Rust -
go-blindsecp256k1: Blind signatures over secp256k1 elliptic curve in
Go(with the compatible typescript implementation) - Systems & virtual machines
-
evm-rs: partial implementation of the Ethereum Virtual Machine (EVM) in
Rust -
rv32-rs: RISC-V (RV32IM) implementation in
Rust - Other:
- miksi: Ethereum zk-coin-mixer where all the computation & constructions are done offchain and then proved inside a zkSNARK to the smart-contract. (live demo on testnet)
- eth-kzg-ceremony-alt: Alternative implementation of the contributor-client for the Ethereum KZG Trusted Setup Ceremony. I used this code to do my contribution to Ethereum's KZG ceremony.
Selected talks
-
Sep. 2026
Eth devs Barcelona meetup - Introduction to lattice-based cryptography
slides - Nov. 2024
-
Jun. 2023
0xPARC internal team talk, London & SF - HyperNova's multifolding mathematical overview
slides -
Aug. 2019
Web3Summit, Berlin - zkSNARKs from scratch: a technical explanation
slides
blog | notes | github (git-mirror) | twitter
hello@arnaucube.com