pub enum Algorithm {
Show 14 variants
Ed25519,
X25519,
P256,
P384,
P521,
Secp256k1,
MlDsa44,
MlDsa65,
MlDsa87,
MlKem512,
MlKem768,
MlKem1024,
XWing768,
XWing1024,
}Expand description
Asymmetric algorithm identifiers used for signatures and key agreement.
Variants§
Ed25519
Ed25519 EdDSA signature algorithm.
X25519
X25519 Diffie-Hellman key agreement.
P256
NIST P-256 (secp256r1) ECDSA signature and ECDH key agreement.
P384
NIST P-384 (secp384r1) ECDSA signature algorithm.
P521
NIST P-521 (secp521r1) ECDSA signature algorithm.
Secp256k1
secp256k1 ECDSA signature algorithm.
MlDsa44
ML-DSA-44 post-quantum signature algorithm.
MlDsa65
ML-DSA-65 post-quantum signature algorithm.
MlDsa87
ML-DSA-87 post-quantum signature algorithm.
MlKem512
ML-KEM-512 post-quantum key encapsulation.
MlKem768
ML-KEM-768 post-quantum key encapsulation.
MlKem1024
ML-KEM-1024 post-quantum key encapsulation.
XWing768
X-Wing hybrid KEM over X25519 and ML-KEM-768.
XWing1024
X-Wing hybrid KEM over X25519 and ML-KEM-1024.
Implementations§
Source§impl Algorithm
impl Algorithm
Sourcepub fn as_str(self) -> &'static str
pub fn as_str(self) -> &'static str
Canonical protocol identifier string.
MUST match multicodec alg strings exactly.
Sourcepub fn is_signature(self) -> bool
pub fn is_signature(self) -> bool
True if this algorithm produces digital signatures
Sourcepub fn is_key_agreement(self) -> bool
pub fn is_key_agreement(self) -> bool
True if this algorithm is for key agreement / encapsulation