1use thiserror::Error;
2
3#[derive(Error, Debug, PartialEq)]
5pub enum VrfError {
6 #[error("affine: cannot convert from bytes to affine point")]
7 AffineFromBytes,
8 #[error("encode_to_curve: cannot find a valid EC point using TAI")]
9 EncodeToCurveTai,
10 #[error("decode_proof: invalid proof (pi) length")]
11 InvalidPiLength,
12 #[error("verify: invalid proof")]
13 InvalidProof,
14 #[error("scalar: cannot convert from bytes to scalar")]
15 ScalarFromBytes,
16 #[error("verify: invalid public key")]
17 VerifyInvalidKey,
18}
19
20pub type Result<T, E = VrfError> = core::result::Result<T, E>;