Skip to content

ProofAggregator

SIP Protocol API Reference v0.7.4


SIP Protocol API Reference / ProofAggregator

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1396

Proof Aggregator

Implements aggregation logic for combining multiple ZK proofs.

const aggregator = new ProofAggregator()
// Sequential aggregation
const result = await aggregator.aggregateSequential({
proofs: [proof1, proof2, proof3],
getProvider: (system) => composer.getProviderForSystem(system),
verifyBefore: true,
})
// Parallel aggregation
const parallelResult = await aggregator.aggregateParallel({
proofs: [proofA, proofB, proofC],
getProvider: (system) => composer.getProviderForSystem(system),
maxConcurrent: 3,
verifyBefore: true,
})
// Recursive aggregation
const recursiveResult = await aggregator.aggregateRecursive({
proofs: proofs,
getProvider: (system) => composer.getProviderForSystem(system),
targetSystem: 'kimchi',
maxDepth: 5,
})

new ProofAggregator(config?): ProofAggregator

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1399

Partial<AggregatorConfig>

ProofAggregator

get config(): AggregatorConfig

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1400

AggregatorConfig

updateConfig(config): void

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1401

Partial<AggregatorConfig>

void


aggregateSequential(options): Promise<DetailedAggregationResult>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1408

Aggregate proofs sequentially.

Each proof is processed in order, with optional linking between consecutive proofs.

SequentialAggregationOptions

Promise<DetailedAggregationResult>


aggregateParallel(options): Promise<DetailedAggregationResult>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1414

Aggregate proofs in parallel.

All proofs are processed concurrently, limited by maxConcurrent.

ParallelAggregationOptions

Promise<DetailedAggregationResult>


aggregateRecursive(options): Promise<DetailedAggregationResult>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1421

Aggregate proofs recursively.

Combines proofs using recursive SNARKs (proof-of-proofs). This enables constant-size proofs regardless of input count.

RecursiveAggregationOptions

Promise<DetailedAggregationResult>


aggregateBatch(proofs, getProvider, onProgress?): Promise<DetailedAggregationResult>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1428

Aggregate proofs using batch verification.

Groups proofs by system and uses batch verification where supported.

SingleProof[]

(system) => ComposableProofProvider | undefined

AggregationProgressCallback

Promise<DetailedAggregationResult>


createCrossSystemLink(sourceProof, targetProof): `0x${string}`

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1434

Link proofs from different systems.

Creates a cryptographic link between proofs from different ZK systems.

SingleProof

SingleProof

`0x${string}`


verifyCrossSystemLink(sourceProof, targetProof, linkHash): boolean

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1438

Verify a cross-system link.

SingleProof

SingleProof

`0x${string}`

boolean


addEventListener(listener): () => void

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1442

CompositionEventListener

(): void

void


removeEventListener(listener): void

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:1443

CompositionEventListener

void