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<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