# Auditing Self: Collaborating with Celo on Privacy and Identity Infrastructure

- **Authors**: ZK/SEC
- **Date**: March 24, 2025
- **Tags**: educative, security, zk, audit, identity

![self](https://blog.zksecurity.xyz/posts/self-audit/self.jpg)

Earlier this year, we had the chance to work with [Celo](https://celo.org/) on a security audit of the [Self](https://self.xyz/) project—a new approach to on-chain identity built around biometric passports and zero-knowledge proofs.

Over the course of three weeks, we reviewed core components of the protocol: cryptographic primitives (including ECDSA and RSA implementations in Circom), key circuits and smart contracts, and a TEE-based proof delegation system built on AWS Nitro Enclaves.

Working with the Celo team was a great experience. They were responsive, transparent, and genuinely committed to building something robust. The Self system covers a lot of ground, from passport parsing to enclave attestation to smart contract architecture, and we appreciated the level of care and context they brought to each part of the discussion.

As with any complex system, we found areas for improvement. But more importantly, the team was quick to address critical issues, and open to strategic recommendations that went beyond simple fixes.

We look forward to seeing how Self evolves—and we’d be glad to collaborate again in the future.

[You can read the full report here](https://reports.zksecurity.xyz/report-celo-self-audit).

---

This article was published on the [ZK/SEC Quarterly](https://blog.zksecurity.xyz) blog by [ZK Security](https://www.zksecurity.xyz), a leading security firm specialized in zero-knowledge proofs, MPC, FHE, and advanced cryptography. ZK Security has audited some of the most critical ZK systems in production, discovered vulnerabilities in major protocols including Aleo, Solana, and Halo2, and built open-source tools like [Clean](https://github.com/Verified-zkEVM/clean) for formally verified ZK circuits. For more articles, see the [full list of posts](https://blog.zksecurity.xyz/llms.txt).
