Skip to content

moveyle/convproof_artifact_anonymous

Repository files navigation

ConvProof Artifact (Anonymous Review Release)

This repository contains the Rust implementation and benchmark harness used for the ConvProof experiments. It is prepared as an anonymous artifact release for review. The repository includes the core ConvProof implementation, KZG/AugKZG baselines, a native Rust AMT-style evaluation-proof baseline, benchmark drivers, final figure data, and scripts for reproducing the main experiments.

Repository structure

.
├── Cargo.toml                  # Rust workspace
├── Cargo.lock                  # Locked dependency versions
├── convproof_rust/             # ConvProof implementation
├── kzg/                        # KZG baseline and BLS12-381 backend helpers
├── benchmark_harness/          # Benchmark CLI and scheme adapters
├── scripts/                    # Convenience scripts for key experiments
├── figures/                    # TikZ figure sources used in the paper
└── results_used_in_paper/      # Curated CSV outputs used to draw paper figures

The original external AMT C++ repository is not required for the artifact. The AMT baseline used by the benchmark harness is implemented natively in Rust on the same BLS12-381 backend as the other schemes.

Requirements

Recommended environment:

  • Ubuntu 22.04/24.04 or a recent Linux distribution
  • Rust stable toolchain
  • build-essential, pkg-config, libssl-dev, clang, cmake, python3

Install dependencies on Ubuntu:

sudo apt update
sudo apt install -y build-essential pkg-config libssl-dev clang cmake git curl python3 ca-certificates time
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source "$HOME/.cargo/env"
rustup default stable

Build

cargo build -p benchmark_harness --release

Show available benchmark commands:

./target/release/benchmark --help

Main reproduction commands

Static comparison, single-threaded

THREADS=1 bash scripts/run_static_dense_single.sh

Degree-aware comparison, single-threaded

THREADS=1 bash scripts/run_degree_dense_single.sh

Large-scale ConvProof-vs-AMT comparison

THREADS=128 bash scripts/run_large_scale_parallel.sh

Adjust THREADS to match the machine. For smaller machines, use a lower value.

Dynamic-threshold workload, N=1024 and K=10

RUNS=3 THREADS=1 bash scripts/run_dynamic_workload_N1024_K10_single.sh

This script runs three single-thread executions and writes raw and processed CSV outputs under:

results/dynamic_workload_runs/<run_id>/

The processed files are:

processed/dynamic_workload_N1024_K10_median_cumulative.csv
processed/dynamic_workload_N1024_K10_summary.csv

Curated paper results

The directory results_used_in_paper/ contains curated CSVs used for the figures reported in the paper. It intentionally excludes machine logs, server hostnames, absolute paths, and intermediate process notes.

Privacy and anonymity

This release is prepared for double-blind review. It intentionally omits:

  • author names, email addresses, phone numbers, and institution-specific identifiers;
  • cloud hostnames, IP addresses, absolute local or server-specific paths;
  • raw nohup logs and process notes;
  • .git histories from local working directories.

Before making the repository public after review, add the final paper citation, choose a top-level license, and replace this anonymous README with the camera-ready artifact metadata.

Notes on third-party code

The kzg/ subtree includes baseline code and backend helpers used by the benchmark harness. Original third-party licenses retained in the subtree continue to apply to those components.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors