cryptographic_message_syntax

Struct SignerBuilder

Source
pub struct SignerBuilder<'a> { /* private fields */ }
Expand description

Builder type to construct an entity that will sign some data.

Instances will be attached to SignedDataBuilder instances where they will sign data using configured settings.

Implementations§

Source§

impl<'a> SignerBuilder<'a>

Source

pub fn new( signing_key: &'a dyn KeyInfoSigner, signing_certificate: CapturedX509Certificate, ) -> Self

Construct a new entity that will sign content.

An entity is constructed from a signing key, which is mandatory.

Source

pub fn new_with_signer_identifier( signing_key: &'a dyn KeyInfoSigner, signer_identifier: SignerIdentifier, ) -> Self

Construct a new entity that will sign content.

An entity is constructed from a signing key and signer identifier, which are mandatory.

Source

pub fn signature_algorithm(&self) -> Result<SignatureAlgorithm, CmsError>

Obtain the signature algorithm used by the signing key.

Source

pub fn message_id_content(self, data: Vec<u8>) -> Self

Define the content to use to calculate the message-id attribute.

In most cases, this is never called and the encapsulated content embedded within the generated message is used. However, some users omit storing the data inline and instead use a message-id digest calculated from a different source. This defines that different source.

Source

pub fn content_type(self, oid: Oid) -> Self

Define the content type of the signed content.

Source

pub fn signed_attribute(self, typ: Oid, values: Vec<AttributeValue>) -> Self

Add an additional attribute to sign.

Source

pub fn signed_attribute_octet_string(self, typ: Oid, data: &[u8]) -> Self

Add an additional OctetString signed attribute.

This is a helper for converting a byte slice to an OctetString and AttributeValue without having to go through low-level ASN.1 code.

Source

pub fn time_stamp_url(self, url: impl IntoUrl) -> Result<Self, Error>

Obtain a time-stamp token from a server.

If this is called, the URL must be a server implementing the Time-Stamp Protocol (TSP) as defined by RFC 3161. At signature generation time, the server will be contacted and the time stamp token response will be added as an unsigned attribute on the SignedData instance.

Trait Implementations§

Source§

impl<'a> Clone for SignerBuilder<'a>

Source§

fn clone(&self) -> SignerBuilder<'a>

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Auto Trait Implementations§

§

impl<'a> !Freeze for SignerBuilder<'a>

§

impl<'a> !RefUnwindSafe for SignerBuilder<'a>

§

impl<'a> !Send for SignerBuilder<'a>

§

impl<'a> !Sync for SignerBuilder<'a>

§

impl<'a> Unpin for SignerBuilder<'a>

§

impl<'a> !UnwindSafe for SignerBuilder<'a>

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more