zkcg-common

Crates.iozkcg-common
lib.rszkcg-common
version0.1.0
created_at2026-01-02 22:47:34.14084+00
updated_at2026-01-02 22:47:34.14084+00
descriptionShared types, errors, and utilities for the ZKCG protocol
homepage
repositoryhttps://github.com/MRSKYWAY/zkcg-verifier
max_upload_size
id2019305
size9,172
Sujyot Kamble (MRSKYWAY)

documentation

README

ZK-Verified Computation Gateway (ZKCG)

ZK-Verified Computation Gateway (ZKCG) is a Rust-based protocol node that enables trustless verification of off-chain computation using zero-knowledge proofs.

The system allows clients to submit proofs that a computation was executed correctly and satisfies protocol-defined policies, without revealing private inputs or requiring the verifier to re-execute the computation.


Motivation

Modern systems increasingly rely on off-chain computation for performance, scalability, and privacy reasons. However, verifiers currently face a difficult tradeoff:

  • Trust the computation provider ❌
  • Re-execute the computation ❌
  • Centralize computation ❌

ZKCG resolves this by verifying zero-knowledge proofs of correct computation, allowing results to be accepted without trust or recomputation.


Design Goals

  • Protocol-first: Explicit state machine and deterministic transitions
  • Trustless verification: No trust in the prover or execution environment
  • Privacy-preserving: Private inputs are never revealed
  • Production-oriented: Long-running verifier node, not a demo
  • Extensible: Supports multiple proof backends (circuits, zkVMs)

High-Level Architecture

Prover (Client) | |-- private computation |-- ZK proof generation v ZKCG Verifier Node (Rust) | |-- proof verification |-- policy enforcement |-- state transition v Persistent Protocol State


Core Concepts

Actors

  • Prover: Performs computation and generates a ZK proof
  • Verifier Node: Validates proofs and enforces protocol rules
  • Observer: Reads public protocol state (optional)

State

The protocol maintains a deterministic state consisting of:

  • Merkle commitment root
  • Monotonically increasing nonce
  • Epoch/version identifier

Policy Enforcement

A proof is accepted only if:

  • The ZK proof verifies successfully
  • Protocol-defined policy constraints are satisfied
  • State transition rules are respected

A valid proof alone is not sufficient to update state.


Use Case (Phase 1)

Private Risk / Score Verification

A prover demonstrates that a score computed from private data satisfies a public threshold, without revealing the underlying data or intermediate values.

This pattern applies to:

  • credit or risk checks
  • compliance validation
  • private eligibility proofs

Roadmap

Phase 1 (Core Protocol)

  • Deterministic state machine
  • Circuit-level ZK proof verification
  • Policy enforcement
  • Replay protection
  • Persistent state storage

Phase 2 (Power Move)

  • Pluggable proof backends
  • zkVM integration
  • Proof backend abstraction
  • Comparative benchmarks

Repository Structure

zk-compute-gateway/ ├── SPEC.md # Protocol specification ├── SECURITY.md # Threat model and assumptions ├── verifier/ # Rust verifier node ├── circuits/ # ZK circuits ├── zkvm/ # zkVM integrations (Phase 2) ├── tests/ ├── benches/ └── docs/


Status

This project is under active development and is currently pre-release. Interfaces and specifications may evolve.


License

This project is licensed under the Apache License, Version 2.0.

The Apache-2.0 license was chosen to allow broad use in both open-source and commercial systems, while providing an explicit patent grant.

Commit count: 0

cargo fmt