idkit/lib.rs
1#![warn(clippy::all, clippy::pedantic, clippy::nursery)]
2
3pub mod hashing;
4pub mod session;
5pub mod verify;
6
7pub use session::Session;
8use session::VerificationLevel;
9pub use verify::verify_proof;
10
11/// The proof of verification returned by the World ID protocol.
12#[derive(Debug, Clone, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
13pub struct Proof {
14 /// The Zero-knowledge proof of the verification. A hex string, ABI encoded.
15 pub proof: String,
16 /// The hash pointer to the root of the Merkle tree that proves membership of the user's identity in the list of identities verified by the Orb. A hex string, ABI encoded.
17 pub merkle_root: String,
18 /// Essentially the user's unique identifier for your app (and specific action if using Incognito Actions). A hex string, ABI encoded.
19 pub nullifier_hash: String,
20 /// Either orb or device.
21 pub verification_level: VerificationLevel,
22}