diff --git a/common/compliance.c b/common/compliance.c index 84449af25..2df10d2e2 100644 --- a/common/compliance.c +++ b/common/compliance.c @@ -139,7 +139,7 @@ gnupg_pk_is_compliant (enum gnupg_compliance_mode compliance, int algo, gcry_mpi_t key[], unsigned int keylength, const char *curvename) { - enum { is_rsa, is_dsa, is_elg, is_ecc } algotype; + enum { is_rsa, is_dsa, is_elg, is_ecc, is_kem } algotype; int result = 0; if (! initialized) @@ -173,6 +173,10 @@ gnupg_pk_is_compliant (enum gnupg_compliance_mode compliance, int algo, case PUBKEY_ALGO_ELGAMAL: return 0; /* Signing with Elgamal is not at all supported. */ + case PUBKEY_ALGO_KYBER: + algotype = is_kem; + break; + default: /* Unknown. */ return 0; } @@ -227,6 +231,10 @@ gnupg_pk_is_compliant (enum gnupg_compliance_mode compliance, int algo, || !strcmp (curvename, "brainpoolP512r1"))); break; + case is_kem: + result = 0; + break; + default: result = 0; } diff --git a/g10/misc.c b/g10/misc.c index 1359987d2..c52091830 100644 --- a/g10/misc.c +++ b/g10/misc.c @@ -836,6 +836,7 @@ openpgp_pk_algo_name (pubkey_algo_t algo) case PUBKEY_ALGO_ECDH: return "ECDH"; case PUBKEY_ALGO_ECDSA: return "ECDSA"; case PUBKEY_ALGO_EDDSA: return "EDDSA"; + case PUBKEY_ALGO_KYBER: return "Kyber"; default: return "?"; } }