pub struct Preparation<'model, 'document> { /* private fields */ }Expand description
Immutable source-derived root profile and COMPLETE nested timestamp census. Findings prevent a positive predicate; processing refusal returns no prefix.
Implementations§
Source§impl<'m, 'd> Preparation<'m, 'd>
impl<'m, 'd> Preparation<'m, 'd>
Sourcepub fn read(
document: &'m Document<'m, 'd>,
signer: &'m SignerInfo<'d>,
requested: Level,
parent: &Reader<'d>,
) -> Result<Self, ReadError>
pub fn read( document: &'m Document<'m, 'd>, signer: &'m SignerInfo<'d>, requested: Level, parent: &Reader<'d>, ) -> Result<Self, ReadError>
Builds format obligations from the original selected root. All nested countersignatures are traversed iteratively by the existing CMS walker. No key lookup, provider, source acquisition or signature check occurs.
EN319122-1 V1.3.1 §§6.2.2/6.3 table 1 makes the requested level explicit; ‘*’ is advisory and an optional archive never promotes a lower request. https://www.etsi.org/deliver/etsi_en/319100_319199/31912201/01.03.01_60/en_31912201v010301p.pdf
Sourcepub fn requested(&self) -> Level
pub fn requested(&self) -> Level
Explicit profile requested before interpreting unsigned augmentation.
Sourcepub fn preservation(&self) -> &[Required<'d>]
pub fn preservation(&self) -> &[Required<'d>]
Every historical preservation obligation from ALL parallel root signers
and selected counters. These require their actual older proof processors;
absence of a qualified receipt cannot be replaced with ATSv3 evidence.
Sourcepub fn preservation_findings(&self) -> &[Finding<'m, 'd>]
pub fn preservation_findings(&self) -> &[Finding<'m, 'd>]
Located preservation findings on OTHER parallel roots/counters. These do not change the selected root’s B-B syntax facts; their TSA actors are nevertheless mandatory in the full historical timestamp census.
Sourcepub fn signer(&self) -> &'m SignerInfo<'d>
pub fn signer(&self) -> &'m SignerInfo<'d>
Original selected root signer.
Sourcepub fn document(&self) -> &'m Document<'m, 'd>
pub fn document(&self) -> &'m Document<'m, 'd>
Full original root SignedData, including parallel signer/material fields.
Sourcepub fn profile(&self) -> &Profile<'d>
pub fn profile(&self) -> &Profile<'d>
Already parsed ESS restrictions and profile findings; no second read.
Sourcepub fn properties(&self) -> &Properties<'d>
pub fn properties(&self) -> &Properties<'d>
Original optional property syntax, open-format obligations and causes.
Sourcepub fn counters(&self) -> &[Counter<'d>]
pub fn counters(&self) -> &[Counter<'d>]
Every original nested counter value in original depth-first order.
Sourcepub fn parallel_counters(&self) -> &[Counter<'d>]
pub fn parallel_counters(&self) -> &[Counter<'d>]
Original counters of OTHER parallel roots, retained only as source and preservation metadata. Their presence does not assert their signature math or add their signer paths to this selected root’s counter census.
Sourcepub fn signature_input(
&self,
timestamp: usize,
parent: &Reader<'_>,
) -> Result<Option<&[Piece<'d>]>>
pub fn signature_input( &self, timestamp: usize, parent: &Reader<'_>, ) -> Result<Option<&[Piece<'d>]>>
Original signature CONTENT octets of a timestamp’s actual owner. A counter timestamp covers that counter, not the counter’s parent/root.
Sourcepub fn counter_content_input(
&self,
timestamp: usize,
parent: &Reader<'_>,
) -> Result<Option<&[Piece<'d>]>>
pub fn counter_content_input( &self, timestamp: usize, parent: &Reader<'_>, ) -> Result<Option<&[Piece<'d>]>>
A content timestamp on a counter covers that counter’s original input: its PARENT signature. The root’s content timestamp uses eContent and consequently returns None here, never the root signature as a fallback.
Sourcepub fn timestamps(&self) -> &[Timestamp<'d>]
pub fn timestamps(&self) -> &[Timestamp<'d>]
All original root/counter timestamp occurrences, including failed ones.
Sourcepub fn timestamp_requirements(
&self,
) -> &TimestampRequirements<Node, DocumentId<'m, 'd>, (), Cades>
pub fn timestamp_requirements( &self, ) -> &TimestampRequirements<Node, DocumentId<'m, 'd>, (), Cades>
Complete source-derived TSA obligations for the common LTV core.
Sourcepub fn findings(&self) -> &[Finding<'m, 'd>]
pub fn findings(&self) -> &[Finding<'m, 'd>]
Located mandatory and advisory findings, without product severity policy.
Sourcepub fn all_format_requirements_met(&self) -> bool
pub fn all_format_requirements_met(&self) -> bool
Only format preparation; no signature, ESS hash, path or trust assertion.
Sourcepub fn basic_format_requirements_met(&self) -> bool
pub fn basic_format_requirements_met(&self) -> bool
Mandatory root/counter B-B format conditions only. A missing timestamp at a higher requested level does not retroactively erase a B-B fact.