Skip to content

snp-labs/Aegis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Aegis: Scalable Privacy-preserving CBDC Framework with Dynamic Proof of Liabilities

IACR ePrint 2025/539   MIT License

ℹ️ Note: This repository contains a implementation of Aegis.

⚠️ Warning: Do not use this project in production.

Abstract

Quick Start

This repository contains both Rust/arkworks circuits and Hardhat-based smart contracts. Follow the steps below to reproduce the full testing pipeline locally.

0. Environments

  • Rust (stable): cargo
  • Node.js (LTS): npm
  • Git, bash

1. Clone & Install

git clone https://github.com/snp-labs/Aegis.git
cd Aegis

2. Environment Setup

Before running circuit tests, copy the example environment file:

cd aegis_circuit
cp .env.example .env

Make sure to adjust any required values in .env according to your setup.

3. Circuit Tests

cd src/tests
sh run_tests.sh
  • This file includes detailed performance metrics, such as:
    • Number of Constraints
    • Setup time
    • Proving time
    • Aggregate time
    • Verify time
    • Performance across different batch sizes and thread counts
  • Results are stored in circuit_result.txt

4. Smart Contract Tests

Before running contract tests, make sure you have run Circuit Tests (Step 3). Circuit tests generate scenario data required for the contracts (aegis_contract/result/dbtData.ts)

cd aegis_contract
npm install
npx hardhat test
  • Tests will fall if dbtData.ts is missing

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published