#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum KeyMechanism {
#[serde(rename = "RSA_Decryption_RAW")]
RsaDecryptionRaw,
#[serde(rename = "RSA_Decryption_PKCS1")]
RsaDecryptionPkcs1,
#[serde(rename = "RSA_Decryption_OAEP_MD5")]
RsaDecryptionOaepMd5,
#[serde(rename = "RSA_Decryption_OAEP_SHA1")]
RsaDecryptionOaepSha1,
#[serde(rename = "RSA_Decryption_OAEP_SHA224")]
RsaDecryptionOaepSha224,
#[serde(rename = "RSA_Decryption_OAEP_SHA256")]
RsaDecryptionOaepSha256,
#[serde(rename = "RSA_Decryption_OAEP_SHA384")]
RsaDecryptionOaepSha384,
#[serde(rename = "RSA_Decryption_OAEP_SHA512")]
RsaDecryptionOaepSha512,
#[serde(rename = "RSA_Signature_PKCS1")]
RsaSignaturePkcs1,
#[serde(rename = "RSA_Signature_PSS_MD5")]
RsaSignaturePssMd5,
#[serde(rename = "RSA_Signature_PSS_SHA1")]
RsaSignaturePssSha1,
#[serde(rename = "RSA_Signature_PSS_SHA224")]
RsaSignaturePssSha224,
#[serde(rename = "RSA_Signature_PSS_SHA256")]
RsaSignaturePssSha256,
#[serde(rename = "RSA_Signature_PSS_SHA384")]
RsaSignaturePssSha384,
#[serde(rename = "RSA_Signature_PSS_SHA512")]
RsaSignaturePssSha512,
#[serde(rename = "EdDSA_Signature")]
EdDsaSignature,
#[serde(rename = "ECDSA_Signature")]
EcdsaSignature,
#[serde(rename = "AES_Encryption_CBC")]
AesEncryptionCbc,
#[serde(rename = "AES_Decryption_CBC")]
AesDecryptionCbc,
}
impl ToString for KeyMechanism {
fn to_string(&self) -> String {
match self {
Self::RsaDecryptionRaw => String::from("RSA_Decryption_RAW"),
Self::RsaDecryptionPkcs1 => String::from("RSA_Decryption_PKCS1"),
Self::RsaDecryptionOaepMd5 => String::from("RSA_Decryption_OAEP_MD5"),
Self::RsaDecryptionOaepSha1 => String::from("RSA_Decryption_OAEP_SHA1"),
Self::RsaDecryptionOaepSha224 => String::from("RSA_Decryption_OAEP_SHA224"),
Self::RsaDecryptionOaepSha256 => String::from("RSA_Decryption_OAEP_SHA256"),
Self::RsaDecryptionOaepSha384 => String::from("RSA_Decryption_OAEP_SHA384"),
Self::RsaDecryptionOaepSha512 => String::from("RSA_Decryption_OAEP_SHA512"),
Self::RsaSignaturePkcs1 => String::from("RSA_Signature_PKCS1"),
Self::RsaSignaturePssMd5 => String::from("RSA_Signature_PSS_MD5"),
Self::RsaSignaturePssSha1 => String::from("RSA_Signature_PSS_SHA1"),
Self::RsaSignaturePssSha224 => String::from("RSA_Signature_PSS_SHA224"),
Self::RsaSignaturePssSha256 => String::from("RSA_Signature_PSS_SHA256"),
Self::RsaSignaturePssSha384 => String::from("RSA_Signature_PSS_SHA384"),
Self::RsaSignaturePssSha512 => String::from("RSA_Signature_PSS_SHA512"),
Self::EdDsaSignature => String::from("EdDSA_Signature"),
Self::EcdsaSignature => String::from("ECDSA_Signature"),
Self::AesEncryptionCbc => String::from("AES_Encryption_CBC"),
Self::AesDecryptionCbc => String::from("AES_Decryption_CBC"),
}
}
}
impl Default for KeyMechanism {
fn default() -> KeyMechanism {
Self::RsaDecryptionRaw
}
}