#[non_exhaustive]pub enum AsymmetricAlgorithm {
Show 20 variants
RSA1024,
RSA2048,
RSA3072,
RSA4096,
ElGamal1024,
ElGamal2048,
ElGamal3072,
ElGamal4096,
DSA1024,
DSA2048,
DSA3072,
DSA4096,
NistP256,
NistP384,
NistP521,
BrainpoolP256,
BrainpoolP384,
BrainpoolP512,
Cv25519,
Unknown,
}
Expand description
Asymmetric encryption algorithms.
This type is for refining the StandardPolicy
with respect to
asymmetric algorithms. In contrast to PublicKeyAlgorithm
, it
does not concern itself with the use (encryption or signing), and
it does include key sizes (if applicable) and elliptic curves.
Key sizes put into are buckets, rounding down to the nearest
bucket. For example, a 3253-bit RSA key is categorized as
RSA3072
.
Note: This enum cannot be exhaustively matched to allow future extensions.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
RSA1024
RSA with key sizes up to 2048-1 bit.
RSA2048
RSA with key sizes up to 3072-1 bit.
RSA3072
RSA with key sizes up to 4096-1 bit.
RSA4096
RSA with key sizes larger or equal to 4096 bit.
ElGamal1024
ElGamal with key sizes up to 2048-1 bit.
ElGamal2048
ElGamal with key sizes up to 3072-1 bit.
ElGamal3072
ElGamal with key sizes up to 4096-1 bit.
ElGamal4096
ElGamal with key sizes larger or equal to 4096 bit.
DSA1024
DSA with key sizes up to 2048-1 bit.
DSA2048
DSA with key sizes up to 3072-1 bit.
DSA3072
DSA with key sizes up to 4096-1 bit.
DSA4096
DSA with key sizes larger or equal to 4096 bit.
NistP256
NIST curve P-256.
NistP384
NIST curve P-384.
NistP521
NIST curve P-521.
BrainpoolP256
brainpoolP256r1.
BrainpoolP384
brainpoolP384r1.
BrainpoolP512
brainpoolP512r1.
Cv25519
D.J. Bernstein’s Curve25519.
Unknown
Unknown algorithm.
Implementations§
source§impl AsymmetricAlgorithm
impl AsymmetricAlgorithm
sourcepub fn variants() -> impl Iterator<Item = AsymmetricAlgorithm>
pub fn variants() -> impl Iterator<Item = AsymmetricAlgorithm>
Returns an iterator over all valid variants.
Returns an iterator over all known variants. This does not
include the AsymmetricAlgorithm::Unknown
variant.
Trait Implementations§
source§impl Clone for AsymmetricAlgorithm
impl Clone for AsymmetricAlgorithm
source§fn clone(&self) -> AsymmetricAlgorithm
fn clone(&self) -> AsymmetricAlgorithm
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for AsymmetricAlgorithm
impl Debug for AsymmetricAlgorithm
source§impl Display for AsymmetricAlgorithm
impl Display for AsymmetricAlgorithm
source§impl From<AsymmetricAlgorithm> for u8
impl From<AsymmetricAlgorithm> for u8
source§fn from(a: AsymmetricAlgorithm) -> Self
fn from(a: AsymmetricAlgorithm) -> Self
source§impl PartialEq for AsymmetricAlgorithm
impl PartialEq for AsymmetricAlgorithm
source§fn eq(&self, other: &AsymmetricAlgorithm) -> bool
fn eq(&self, other: &AsymmetricAlgorithm) -> bool
self
and other
values to be equal, and is used
by ==
.impl Copy for AsymmetricAlgorithm
impl Eq for AsymmetricAlgorithm
impl StructuralPartialEq for AsymmetricAlgorithm
Auto Trait Implementations§
impl Freeze for AsymmetricAlgorithm
impl RefUnwindSafe for AsymmetricAlgorithm
impl Send for AsymmetricAlgorithm
impl Sync for AsymmetricAlgorithm
impl Unpin for AsymmetricAlgorithm
impl UnwindSafe for AsymmetricAlgorithm
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)