Crate integrity

Source
Expand description

integrity-rs is the missing piece for verifying swiftness STARK proofs on-chain using the integrity verifier contract.

Given a STARK proof, the library offers a split_proof function that generates contract calls which stay under Starknet transaction size limits, allowing the proof to be verified in a multi-step process over multiple transactions.

Re-exports§

pub use bindings::StarkProofWithSerde;
pub use bindings::VerifierConfiguration;
pub use bindings::VerifyProofFinalAndRegisterFactCall;
pub use bindings::VerifyProofInitialCall;
pub use bindings::VerifyProofStepCall;

Modules§

bindings
Bindings for the integrity contract.

Structs§

Felt
Definition of the Field Element type.
IntegrityCalls
Contract bindings for all contract calls needed to verify a STARK proof on-chain.
SplitProof
A split START proof that can be used to generate Starknet function calls to the integrity verifier contract.
VerifyProofStepParamIter
An iterator that produces data necessary for constructing the intermediate and final verification steps.

Traits§

Decode
Any type that can be deserialized from a series of Felts. This trait corresponds to the deserialize function of the Cairo Serde trait.
Encode
Any type that can be serialized into a series of Felts. This trait corresponds to the serialize function of the Cairo Serde trait.

Functions§

split_proof
Splits a StarkProof into a multi-step verification process.

Derive Macros§

Decode
Derives the Decode trait.
Encode
Derives the Encode trait.