Enum KeyIdMethod
#[non_exhaustive]pub enum KeyIdMethod {
Sha256,
Sha384,
Sha512,
PreSpecified(Vec<u8>),
}Expand description
Method to generate key identifiers from public keys.
Key identifiers should be derived from the public key data. RFC 7093 defines three methods to do so using a choice of SHA256 (method 1), SHA384 (method 2), or SHA512 (method 3). In each case the first 160 bits of the hash are used as the key identifier to match the output length that would be produced were SHA1 used (a legacy option defined in RFC 5280).
In addition to the RFC 7093 mechanisms, rcgen supports using a pre-specified key identifier.
This can be helpful when working with an existing Certificate.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Sha256
RFC 7093 method 1 - a truncated SHA256 digest.
Sha384
RFC 7093 method 2 - a truncated SHA384 digest.
Sha512
RFC 7093 method 3 - a truncated SHA512 digest.
PreSpecified(Vec<u8>)
Pre-specified identifier. The exact given value is used as the key identifier.
Trait Implementations§
§impl Clone for KeyIdMethod
impl Clone for KeyIdMethod
§fn clone(&self) -> KeyIdMethod
fn clone(&self) -> KeyIdMethod
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for KeyIdMethod
impl Debug for KeyIdMethod
§impl Hash for KeyIdMethod
impl Hash for KeyIdMethod
§impl PartialEq for KeyIdMethod
impl PartialEq for KeyIdMethod
impl Eq for KeyIdMethod
impl StructuralPartialEq for KeyIdMethod
Auto Trait Implementations§
impl Freeze for KeyIdMethod
impl RefUnwindSafe for KeyIdMethod
impl Send for KeyIdMethod
impl Sync for KeyIdMethod
impl Unpin for KeyIdMethod
impl UnwindSafe for KeyIdMethod
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more