Paraxiom

Zero-Knowledge Proofs in Proof of Coherence

How we cryptographically verify that quantum entropy is authentic and VRF computations are correct — without revealing private keys.

Why ZK Proofs Are Necessary

The Problem: A validator could claim to have quantum entropy but actually use /dev/urandom. Without ZK proofs, there's no way to verify authenticity without accessing the hardware directly.

ZK proofs solve this by allowing validators to prove cryptographically that:

Entropy Authenticity

STARK Proofs

Prove the entropy came from a real quantum measurement, not a classical PRNG.

VRF Correctness

Groth16 Proofs

Prove the VRF output was correctly computed from the quantum key.

Aggregation Integrity

Multi-Source Proofs

Prove that multiple QRNG sources were correctly aggregated.

The Circom Circuits

vrf_seed_proof.circom

Proves: vrfSeed == Poseidon(quantumKey, inputData)

template VRFSeedProof() {
    signal input quantumKey;
    signal input inputData;
    signal input vrfSeed;
    signal output isValid;

    // Hash quantumKey + inputData
    component hasher = Poseidon(2);
    hasher.inputs[0] <== quantumKey;
    hasher.inputs[1] <== inputData;

    // Compare with provided vrfSeed
    component comparator = IsEqual();
    comparator.in[0] <== hasher.out;
    comparator.in[1] <== vrfSeed;

    isValid <== comparator.out;  // 1 if correct
}

multi_source_key.circom

Proves: Multi-source QRNG aggregation was performed correctly

template MultiSourceKey(N) {
    signal input sourceCount;
    signal input validSources[N];
    signal output selectedKey;

    // Hash each source
    component keyHashers[N];
    for (var i = 0; i < N; i++) {
        keyHashers[i] = Poseidon(1);
        keyHashers[i].inputs[0] <== validSources[i];
    }

    // Select via multiplexer
    component keySelector = Multiplexer(1, N);
    // ... (selection logic)
    selectedKey <== keySelector.out[0];
}

Verification Flow

1

QKD/QRNG Device Generates Entropy

Quantum hardware (Toshiba QKD, IDQuantique QRNG, etc.) produces raw quantum entropy.

2

STARK Proof Generated (Winterfell)

Proves the entropy came from an authentic quantum measurement process.

3

VRF Computed from Quantum Key

vrf_output = SHA3(quantum_key || input_data)

4

Groth16 ZK Proof Generated

Proves the VRF was correctly computed without revealing the quantum key.

5

Validator Submits to Consensus

Submits: (vrf_output, stark_proof, zk_proof)

6

Coherence Gadget Verifies

Checks: stark_valid && zk_valid && qber < 11%

Block Finality

If 2/3+ validators agree, block is finalized. Proofs are stored on-chain.

What Each Proof Guarantees

Proof Type Implementation Guarantees
VRF Seed Proof Circom + Groth16 VRF output correctly derived from quantum key
Multi-Source Proof Circom + Groth16 QRNG aggregation from N sources is correct
Entropy STARK Winterfell Entropy originated from quantum measurement
QBER Check On-chain Quantum channel quality is below 11% error

Rust Implementation

IntegratedVRF::verify_with_proof()

pub fn verify_with_proof(
    &self,
    input: &[u8],
    response: &VRFResponse,
    quantum_key: &[u8],
) -> Result<bool, Box<dyn Error>> {
    // 1. Verify VRF output
    let vrf_valid = self.vrf.verify(
        input, &response.output, &response.vrf_proof, quantum_key
    )?;

    // 2. Verify ZK proof (Groth16)
    let zk_valid = self.circuit_manager.verify_proof(
        "vrf_seed_proof",
        &response.public_inputs,
        &response.zk_proof,
    )?;

    Ok(vrf_valid && zk_valid)
}

Cryptographic Stack

STARK Proofs

Winterfell 0.12

High-performance STARK prover/verifier for entropy authenticity.

Groth16

ark-groth16 0.5

Succinct proofs for VRF correctness verification.

Circuits

Circom 2.0

Domain-specific language for ZK circuit design.

Signatures

Falcon-1024

Post-quantum signatures for validator votes.

Resources