1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
//! Enhanced audit system for privacy-preserving optimization.
//!
//! # Module layout
//!
//! | module | responsibility |
//! |---|---|
//! | [`hashing`] | deterministic canonical encodings, SHA-256, HMAC-SHA256 |
//! | [`integrity`] | Merkle tree with inclusion proofs, hash chain, audit trail |
//! | [`verification`] | formal verification rules and the theorem prover |
//! | [`model_checking`] | bounded invariant model checking |
//! | [`proofs`] | cryptographic integrity proofs |
//! | [`compliance`] | GDPR / HIPAA / CCPA rule sets and reporting |
//! | [`budget`] | privacy budget allocation, accounting and forecasting |
//! | [`dashboard`] | metrics and threshold alerts |
//! | [`types`] | data types and the [`EnhancedAuditSystem`] entry point |
//!
//! # 0.3.2 notes
//!
//! The 19 auto-generated `*_traits.rs` shells, each containing a single
//! `Default` forwarding impl, were removed. Every trait implementation they
//! carried now lives next to the type it belongs to, or in [`trait_impls`] for
//! the two that have no natural home. No trait implementation was dropped, so
//! the change is source-compatible; the module *paths*
//! `enhanced_audit::<type>_traits` no longer exist (they contained no items to
//! import).
//!
//! Behavioural changes in the same release:
//!
//! * [`EnhancedAuditSystem::new`] returns `Result`: a configuration requesting
//! at-rest encryption, external audit submission, or a zero-knowledge /
//! non-repudiation / confidentiality proof is now refused instead of being
//! accepted and ignored.
//! * [`EnhancedAuditSystem::log_event`] returns the number of compliance
//! violations the event triggered.
//! * `MerkleTree::add_leaf` takes a leaf *payload* and applies the
//! domain-separated leaf hash; pass a precomputed digest to
//! [`integrity::MerkleTree::push_leaf_digest`].
//! * `AuditChain::verify_integrity` still returns `bool` (self-consistency of
//! the chain structures); the tamper check over the stored events is
//! [`integrity::AuditTrail::verify_integrity`], which returns `Result`.
// Re-export all types so `privacy::enhanced_audit::<Type>` keeps working.
pub use ;
pub use ;
pub use MonitoringDashboard;
pub use *;
pub use ;
pub use ;
pub use ;
pub use ;
pub use *;
pub use ;