feat: add keymlkem
This commit is contained in:
@@ -332,6 +332,7 @@ pub fn encrypt_envelops(cryptor: Cryptor, key: &[u8], envelops: &[&TinyEncryptCo
|
||||
TinyEncryptEnvelopType::StaticKyber1024 => {
|
||||
encrypted_envelops.push(encrypt_envelop_ecdh_kyber1204(cryptor, key, envelop)?);
|
||||
}
|
||||
TinyEncryptEnvelopType::KeyMlKem768 | TinyEncryptEnvelopType::KeyMlKem1024 |
|
||||
TinyEncryptEnvelopType::ExtMlKem768 | TinyEncryptEnvelopType::ExtMlKem1024 => {
|
||||
encrypted_envelops.push(encrypt_envelop_ecdh_ml_kem(cryptor, key, envelop)?);
|
||||
}
|
||||
|
||||
14
src/spec.rs
14
src/spec.rs
@@ -86,6 +86,12 @@ pub enum TinyEncryptEnvelopType {
|
||||
// Secure Enclave ECDH P256
|
||||
#[serde(rename = "key-p256")]
|
||||
KeyP256,
|
||||
// Secure Enclave ML-KEM 768
|
||||
#[serde(rename = "key-mlkem768")]
|
||||
KeyMlKem768,
|
||||
// Secure Enclave ML-KEM 1024
|
||||
#[serde(rename = "key-mlkem1024")]
|
||||
KeyMlKem1024,
|
||||
// PIV ECDH P256
|
||||
#[serde(rename = "piv-p256", alias = "ecdh")]
|
||||
PivP256,
|
||||
@@ -128,6 +134,8 @@ impl TinyEncryptEnvelopType {
|
||||
TinyEncryptEnvelopType::StaticX25519 => "static-x25519",
|
||||
TinyEncryptEnvelopType::StaticKyber1024 => "static-kyber1024",
|
||||
TinyEncryptEnvelopType::KeyP256 => "key-p256",
|
||||
TinyEncryptEnvelopType::KeyMlKem768 => "key-mlkem768",
|
||||
TinyEncryptEnvelopType::KeyMlKem1024 => "key-mlkem1024",
|
||||
TinyEncryptEnvelopType::ExtP256 => "ext-p256",
|
||||
TinyEncryptEnvelopType::ExtP384 => "ext-p384",
|
||||
TinyEncryptEnvelopType::ExtMlKem768 => "ext-mlkem768",
|
||||
@@ -148,6 +156,8 @@ impl TinyEncryptEnvelopType {
|
||||
"static-x25519" => Some(TinyEncryptEnvelopType::StaticX25519),
|
||||
"static-kyber1024" => Some(TinyEncryptEnvelopType::StaticKyber1024),
|
||||
"key-p256" => Some(TinyEncryptEnvelopType::KeyP256),
|
||||
"key-mlkem768" => Some(TinyEncryptEnvelopType::KeyMlKem768),
|
||||
"key-mlkem1024" => Some(TinyEncryptEnvelopType::KeyMlKem1024),
|
||||
"ext-p256" => Some(TinyEncryptEnvelopType::ExtP256),
|
||||
"ext-p384" => Some(TinyEncryptEnvelopType::ExtP384),
|
||||
"ext-mlkem768" => Some(TinyEncryptEnvelopType::ExtMlKem768),
|
||||
@@ -166,6 +176,8 @@ impl TinyEncryptEnvelopType {
|
||||
TinyEncryptEnvelopType::StaticX25519
|
||||
| TinyEncryptEnvelopType::StaticKyber1024
|
||||
| TinyEncryptEnvelopType::KeyP256
|
||||
| TinyEncryptEnvelopType::KeyMlKem768
|
||||
| TinyEncryptEnvelopType::KeyMlKem1024
|
||||
| TinyEncryptEnvelopType::Gpg
|
||||
| TinyEncryptEnvelopType::Kms => true,
|
||||
TinyEncryptEnvelopType::PgpRsa
|
||||
@@ -186,6 +198,8 @@ impl TinyEncryptEnvelopType {
|
||||
TinyEncryptEnvelopType::PgpRsa
|
||||
| TinyEncryptEnvelopType::PgpX25519
|
||||
| TinyEncryptEnvelopType::KeyP256
|
||||
| TinyEncryptEnvelopType::KeyMlKem768
|
||||
| TinyEncryptEnvelopType::KeyMlKem1024
|
||||
| TinyEncryptEnvelopType::PivP256
|
||||
| TinyEncryptEnvelopType::PivP384
|
||||
| TinyEncryptEnvelopType::PivRsa
|
||||
|
||||
Reference in New Issue
Block a user