pub enum Error {
Show 24 variants
TaprootProof {
stage: ProofStage,
source: Error,
},
GroupKeyReveal(Error),
MissingSplitRootProof,
MissingStxoProofs,
MissingStxoInputProofs,
MissingCommitmentProof,
MissingStxoAsset {
key: SerializedKey,
},
MissingAssetWitnesses,
MissingPrevId,
InvalidAssetScriptKeyLength {
expected: usize,
actual: usize,
},
InvalidNumsKey,
InvalidBurnKeyTweak,
MixedCommitmentVersions,
InvalidCommitmentProof,
NonGenesisAssetWithGenesisReveal,
NonGenesisAssetWithMetaReveal,
GenesisRevealRequired,
GenesisRevealMissingBase,
GenesisRevealPrevOutMismatch,
GenesisRevealMetaRevealRequired,
GenesisRevealMetaHashMismatch,
GenesisRevealOutputIndexMismatch,
GenesisRevealAssetIdMismatch,
MissingAssetGenesis,
}Expand description
Errors returned by proof verification helpers.
Variants§
TaprootProof
Taproot proof verification failed at a specific stage.
Fields
stage: ProofStageStage where verification failed.
GroupKeyReveal(Error)
Group key reveal verification failed.
MissingSplitRootProof
Split root proof is missing for a split commitment asset.
MissingStxoProofs
A transfer-root asset is missing required STXO proofs.
MissingStxoInputProofs
A transfer-root asset is missing STXO proofs for an output.
MissingCommitmentProof
Missing commitment proof required to verify STXO proofs.
MissingStxoAsset
Missing STXO asset for a script key in the proof.
Fields
key: SerializedKeyScript key that lacks a corresponding STXO asset.
MissingAssetWitnesses
The asset has no witnesses when STXO proofs are required.
MissingPrevId
A witness is missing its PrevID.
InvalidAssetScriptKeyLength
Script key length is invalid for an asset.
InvalidNumsKey
The NUMS key used for burn derivation is invalid.
InvalidBurnKeyTweak
Tap tweak scalar for burn key derivation is invalid.
MixedCommitmentVersions
Mixed TapCommitment versions found across proofs.
InvalidCommitmentProof
Commitment proofs are missing for taproot outputs.
NonGenesisAssetWithGenesisReveal
Genesis reveal is present for a non-genesis asset.
NonGenesisAssetWithMetaReveal
Meta reveal is present for a non-genesis asset.
GenesisRevealRequired
Genesis reveal is required for a genesis asset.
GenesisRevealMissingBase
Genesis reveal is missing its base genesis information.
GenesisRevealPrevOutMismatch
Genesis reveal prev out does not match the proof prev out.
GenesisRevealMetaRevealRequired
Genesis reveal requires a meta reveal when meta hash is non-zero.
GenesisRevealMetaHashMismatch
Genesis reveal meta hash does not match the meta reveal hash.
GenesisRevealOutputIndexMismatch
Genesis reveal output index does not match the inclusion proof.
GenesisRevealAssetIdMismatch
Genesis reveal asset ID does not match the asset genesis.
MissingAssetGenesis
Asset genesis information is missing.