[][src]Struct sequoia_openpgp::parse::stream::GoodChecksum

pub struct GoodChecksum<'a> {
    pub sig: &'a Signature,
    pub ka: ValidErasedKeyAmalgamation<'a, PublicParts>,
}

A good signature.

Represents the result of a successful signature verification. It includes the signature and the signing key with all the necessary context (i.e. certificate, time, policy) to evaluate the trustworthiness of the signature using a trust model.

GoodChecksum is used in VerificationResult. See also VerificationError.

A signature is considered good if and only if all of the following conditions are met:

  • The signature has a Signature Creation Time subpacket.

  • The signature is alive at the specified time (the time parameter passed to, e.g., VerifierBuilder::with_policy).

  • The certificate is alive and not revoked as of the signature's creation time.

  • The signing key is alive, not revoked, and signing capable as of the signature's creation time.

  • The signature was generated by the signing key.

Note: This doesn't mean that the key that generated the signature is in anyway trustworthy in the sense that it belongs to the person or entity that the user thinks it belongs to. This property can only be evaluated within a trust model, such as the web of trust (WoT). This policy is normally implemented in the VerificationHelper::check method.

Fields

sig: &'a Signature

The signature.

ka: ValidErasedKeyAmalgamation<'a, PublicParts>

The signing key that made the signature.

The amalgamation of the signing key includes the necessary context (i.e. certificate, time, policy) to evaluate the trustworthiness of the signature using a trust model.

Trait Implementations

impl<'a> Debug for GoodChecksum<'a>[src]

Auto Trait Implementations

impl<'a> !RefUnwindSafe for GoodChecksum<'a>[src]

impl<'a> Send for GoodChecksum<'a>[src]

impl<'a> Sync for GoodChecksum<'a>[src]

impl<'a> Unpin for GoodChecksum<'a>[src]

impl<'a> !UnwindSafe for GoodChecksum<'a>[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.