LongfellowZkSystem
Abstract base class for Longfellow-based ZK systems implementing ZkSystem.
Provides core logic for proof generation and verification using native Longfellow libraries. Circuit files are expected to be name with the format: <version>_<numAttributes>_<circuitHash>.
Functions
Link copied to clipboard
Longfellow encodes a version number, the number of attributes, and the circuit hash in the filename with the circuit data so in addition to circuitBytes, pass this information in circuitFilename encoded in the following way: <version>_<numAttributes>_<circuitHash>. circuitFilename should be only the name of the file, and must not include any path separators.
Link copied to clipboard
open override fun generateProof(zkSystemSpec: ZkSystemSpec, encodedDocument: ByteString, encodedSessionTranscript: ByteString, timestamp: Instant): ZkDocument
Link copied to clipboard
open override fun getMatchingSystemSpec(zkSystemSpecs: List<ZkSystemSpec>, requestedClaims: List<RequestedClaim>): ZkSystemSpec?
Finds the best matching ZkSystemSpec from a given list based on the number of signed attributes.
Link copied to clipboard
open override fun verifyProof(zkDocument: ZkDocument, zkSystemSpec: ZkSystemSpec, encodedSessionTranscript: ByteString)