Skip to main content

Crate vauban_claim

Crate vauban_claim 

Source
Expand description

§Vauban Claim Algebra — reference implementation

Implements draft-vauban-claim-algebra-00 (IETF Internet-Draft). See specs/draft-vauban-claim-algebra-00.md for the full specification and specs/cddl/claim.cddl for the normative grammar.

§Claim sextuplet

Every Vauban Claim is the irreducible 6-tuple (Subject, Predicate, Evidence, TemporalFrame, RevelationMask, Anchor).

§Six non-negotiable properties

  1. Auditable — full chain of custody, queryable post-hoc.
  2. Verifiable — independently verifiable without product access.
  3. Composable — five operators (∧, →, ⊕, ▷, ¬) form a closed algebra.
  4. Privacy-preserving — selective disclosure with Poseidon commitments.
  5. Post-quantum — STARKs only; SNARKs explicitly excluded.
  6. Sovereignty-preserving — exit plan documented per dependency.

§Scope (v0.1.0)

Encoding/decoding (CBOR canonical RFC 8949 §4.2.1, JSON), structural invariants, the five composition operators with their algebraic and validity rules, and ≥85 conformance test vectors. Cryptographic verification of Evidence payloads (STARK / BBS+ / SD-JWT-VC / mdoc / TEE) and on-chain Anchor resolution are deferred to subsequent crates per the architecture: this crate is the grammar and algebra, not the prover or the verifier core.

Re-exports§

pub use crate::builder::ClaimBuilder;
pub use crate::claim::Claim;
pub use crate::claim::ClaimRef;
pub use crate::claim::ClaimRefAlg;
pub use crate::composition::ClaimComposition;
pub use crate::composition::CompositionRecord;
pub use crate::composition::OperatorBody;
pub use crate::composition::OperatorTag;
pub use crate::error::CompositionError;
pub use crate::error::EncodingError;
pub use crate::error::TranscriptError;
pub use crate::validator::validate;
pub use crate::validator::ValidationReport;
pub use crate::validator::Violation;
pub use crate::primitives::anchor::Anchor;
pub use crate::primitives::anchor::AnchorEntry;
pub use crate::primitives::anchor::AnchorType;
pub use crate::primitives::evidence::Evidence;
pub use crate::primitives::evidence::EvidenceEnvelope;
pub use crate::primitives::evidence::EvidenceScheme;
pub use crate::primitives::evidence::StarkProofEnvelope;
pub use crate::primitives::predicate::EncodedMembership;
pub use crate::primitives::predicate::EncodedRange;
pub use crate::primitives::predicate::Predicate;
pub use crate::primitives::predicate::PredicateType;
pub use crate::primitives::revelation_mask::CommittedField;
pub use crate::primitives::revelation_mask::HashAlgTag;
pub use crate::primitives::revelation_mask::RevelationMask;
pub use crate::primitives::subject::Subject;
pub use crate::primitives::subject::SubjectId;
pub use crate::primitives::subject::SubjectType;
pub use crate::primitives::temporal::TemporalFrame;

Modules§

builder
Typed builder for Claim.
claim
Top-level Claim sextuplet and content-addressed reference.
codec
Canonical CBOR (RFC 8949 §4.2.1) and JSON encoding helpers.
composition
Five composition operators (CDDL §6) and the composition-record envelope.
error
Error types for encoding and composition.
primitives
Six primitive types of the Claim sextuplet (CDDL §5).
transcript
TranscriptT1 — Fiat-Shamir transcript hardening (F-THREAT-1 mitigation).
validator
CDDL conformance validator — structural validation against the Claim grammar.