pub enum DeprecatedAlgorithm {
HmacSha1,
HmacSha256,
HmacSha384,
HmacSha512,
RsaSha1,
RsaSha256,
RsaSha384,
RsaSha512,
EcdsaSha1,
EcdsaSha256,
EcdsaSha384,
EcdsaSha512,
}
Expand description
Algorithms that may be present in an HTTP Signature’s algorithm
field, but are considered
deprecated due to security issues
Most of these are Deprecated solely because the presence of the algorithm’s name in the request could be used to gain insight into ways to forge requests. This doesn’t mean that using these algorithms to sign and verify requests is bad, it just means that stating which algorithm is in use is dangerous. In the case of the SHA1 variants, they were deprecated for being weak hashes.
This library only produces HTTP Signatures with the “HS2019” algorithm type, and leaves deciding which algorithm to actually use to implementors
Variants§
HmacSha1
HMAC SHA-1
HmacSha256
HMAC SHA-256
HmacSha384
HMAC SHA-384
HmacSha512
HMAC SHA-512
RsaSha1
RSA SHA-1
RsaSha256
RSA SHA-256
RsaSha384
RSA SHA-384
RsaSha512
RSA SHA-512
EcdsaSha1
ECDSA SHA-1
EcdsaSha256
ECDSA SHA-256
EcdsaSha384
ECDSA SHA-384
EcdsaSha512
ECDSA SHA-512
Trait Implementations§
Source§impl Clone for DeprecatedAlgorithm
impl Clone for DeprecatedAlgorithm
Source§fn clone(&self) -> DeprecatedAlgorithm
fn clone(&self) -> DeprecatedAlgorithm
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for DeprecatedAlgorithm
impl Debug for DeprecatedAlgorithm
Source§impl Display for DeprecatedAlgorithm
impl Display for DeprecatedAlgorithm
Source§impl From<DeprecatedAlgorithm> for Algorithm
impl From<DeprecatedAlgorithm> for Algorithm
Source§fn from(d: DeprecatedAlgorithm) -> Algorithm
fn from(d: DeprecatedAlgorithm) -> Algorithm
impl Copy for DeprecatedAlgorithm
Auto Trait Implementations§
impl Freeze for DeprecatedAlgorithm
impl RefUnwindSafe for DeprecatedAlgorithm
impl Send for DeprecatedAlgorithm
impl Sync for DeprecatedAlgorithm
impl Unpin for DeprecatedAlgorithm
impl UnwindSafe for DeprecatedAlgorithm
Blanket Implementations§
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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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