Skip to main content

Basic

Struct Basic 

Source
pub struct Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G> { /* private fields */ }
Expand description

Complete root and original nested counter composition. Reuses the same source-domain receipts later consumed by the common LTV participant core.

Implementations§

Source§

impl<D: Copy + Eq, G: Copy + Eq> Basic<'_, '_, '_, '_, '_, '_, '_, '_, D, G>

Source

pub fn all_basic_requirements_met(&self) -> bool

Mandatory format, actual PDF input math and whole counter census hold. This is independent of trusted time, revocation usability and trust.

Source§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D: Copy + Eq, G: Copy + Eq> Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>

Source

pub fn binding(&self) -> &'r Bound<'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>

Actual original signer/certificate/path binding used by this stage.

Source

pub fn counters(&self) -> &Counters<'r, 'm, 'd, 'path, D, G>

The complete original counter receipt set, without caller subsetting.

Source

pub fn timestamp_actor<'c>( &self, actor: CheckedActor<'c, 'd, Node, DocumentId<'m, 'd>, (), Cades>, operation: &impl Work, ) -> Result<CheckedActor<'c, 'd, Node, D, G, Pades>>

Carries an already checked original CMS timestamp into this PDF’s source domain. The original model, parent signature and exact input remain checked by the shared CAdES receipt, without cryptographic replay.

Source§

impl<'m, 'd, 'p, 's, D: Copy + Eq, G: Copy + Eq> Basic<'_, '_, '_, 'm, 'd, '_, 's, 'p, D, G>

Source

pub fn participants<'r, 'certificate, E, S: RangeSource<Document = D, Generation = G>>( &'p self, credentials: &'p Complete<'r, 'm, 'd, 'p, D, G, E>, timestamps: &'p TimestampPaths<'p, 'certificate, 'd, Node, D, G, Pades>, query: &Query<'_, '_, S>, ) -> Result<ParticipantRequirements<'p, 'd, Node, D, G, Pades>, ParticipantError<Node>>

Derives the original complete participant census from the SAME root, all counters, authenticated credentials and complete TSA-path receipt. No caller-defined positive receipt or selected successful subset is used.

Source

pub fn authenticate_credentials<P: Provider<'p, 'd>, S: RangeSource<Document = D, Generation = G>>( &self, provider: &P, query: &Query<'_, '_, S>, ) -> Result<Report<'m, 'd, 'p, 's, D, G, P::Evidence>, Error<P::Error>>

Authenticates every original protected credential using the shared property kernel and this operation’s actual scoped producing reader. PAdES root requirements are checked before the first handler call.

Trait Implementations§

Source§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D: Copy + Eq, G: Copy + Eq> BasicStage<'path, 'd> for Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>

Source§

type Id = Node

Original node identity.
Source§

type Document = D

Stable document identity.
Source§

type Generation = G

Exact document generation.
Source§

type Signer = Bound<'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>

The signing-certificate binding receipt.
Source§

type Counters = Counters<'r, 'm, 'd, 'path, D, G>

The complete countersignature census.
Source§

fn signer(&self) -> &Self::Signer

Same signer receipt the stage checked.
Source§

fn counters(&self) -> &Self::Counters

Same countersignature census the stage checked.
Source§

fn all_requirements_met(&self) -> bool

Every condition of the format’s basic level holds.

Auto Trait Implementations§

§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G> !RefUnwindSafe for Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>

§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G> !Send for Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>

§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G> !Sync for Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>

§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G> !UnwindSafe for Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>

§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G> Forget for Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>

§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G> Freeze for Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>
where &'r Bound<'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>: Freeze, Counters<'r, 'm, 'd, 'path, D, G>: Freeze,

§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G> Unpin for Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>
where &'r Bound<'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>: Unpin, Counters<'r, 'm, 'd, 'path, D, G>: Unpin,

§

impl<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G> UnsafeUnpin for Basic<'r, 'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>
where &'r Bound<'v, 'p, 'm, 'd, 'a, 's, 'path, D, G>: UnsafeUnpin, Counters<'r, 'm, 'd, 'path, D, G>: UnsafeUnpin,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.