Skip to main content

ic_auth/
lib.rs

1//! Portable authentication, delegation proofs and optional local session machinery.
2//!
3//! Hashing untrusted material does not authenticate it. Applications must not
4//! admit credentials by hashing them or checking just one signature. Application
5//! authentication admits a credential through the optional session engine, then checks
6//! the caller-bound session for each operation with current protected host inputs.
7//! Admission uses one explicit host transaction for verification and replay
8//! consumption. Standalone proof verification establishes no session or resource grant.
9
10pub mod admission_budget;
11pub mod canonical;
12pub mod certificate_issuance;
13pub mod chain_key_batch;
14mod limits;
15pub mod portable;
16
17#[cfg(any(
18    feature = "portable-signature-verification",
19    feature = "certified-proof-verification"
20))]
21pub mod portable_credential;
22pub mod session_request;
23
24#[cfg(feature = "portable-signature-verification")]
25pub mod portable_signature;
26
27#[cfg(feature = "chain-key-verification")]
28pub mod chain_key_signature;
29
30#[cfg(feature = "canister-signature-preparation")]
31pub mod signature_store;
32
33#[cfg(feature = "canister-signature-verification")]
34pub mod canister_signature;
35
36#[cfg(feature = "chain-key-verification")]
37pub mod delegation;
38
39#[cfg(feature = "certified-proof-verification")]
40pub mod portable_certified;
41
42#[cfg(feature = "sessions")]
43pub mod session;
44
45#[cfg(feature = "sessions")]
46mod storage_codec;