scalus.crypto.accumulator

Members list

Type members

Classlikes

Off-chain prover for the BLS12-381 Bilinear Accumulator.

Off-chain prover for the BLS12-381 Bilinear Accumulator.

Supports both G1-accumulator (acc on G1, Ethereum ceremony compatible) and G2-accumulator (acc on G2, cheaper on-chain verification). Generates trusted setups, accumulators, and membership/non-membership proofs. After setup, tau is no longer needed — all operations use the CRS points directly via multi-scalar multiplication.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
object NTT

Number Theoretic Transform over a prime field F_p.

Number Theoretic Transform over a prime field F_p.

The prime p must have sufficient two-adicity for the desired NTT size: p - 1 must be divisible by 2^k where 2^k >= n (the transform size). This ensures primitive n-th roots of unity exist in F_p.

Default configuration uses the BLS12-381 scalar field (two-adicity 32, supporting NTTs up to 2^32 ≈ 4.3 billion elements).

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
NTT.type
object Poly

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Poly.type

Types

opaque type Poly

Polynomial over the BLS12-381 scalar field (F_q) in ascending degree order [c₀, c₁, c₂, ...].

Polynomial over the BLS12-381 scalar field (F_q) in ascending degree order [c₀, c₁, c₂, ...].

Supports arithmetic operations (add, subtract, multiply, divide, extended GCD) needed for bilinear accumulator proof generation. Multiplication automatically selects between naive O(n²) and NTT-accelerated O(n log n) algorithms based on polynomial size.

Attributes