aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2025-08-25 14:33:54 +0000
committerWerner Koch <[email protected]>2025-08-25 14:33:54 +0000
commit459f437c19a6de5b7a205a488ba8a3c0ef8ae919 (patch)
tree84fbb46cefd78f62430582898b1c48935b4587a9
parentcommon: Add a wrapper around the W32 OutputDebugString function. (diff)
downloadgnupg-459f437c19a6de5b7a205a488ba8a3c0ef8ae919.tar.gz
gnupg-459f437c19a6de5b7a205a488ba8a3c0ef8ae919.zip
gpg: Allow to select the Kyber variant with --edit-key,addkey.
* g10/keygen.c (generate_subkeypair): Ask for Kyber variant. -- GnuPG-bug-id: 7792
-rw-r--r--g10/keygen.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/g10/keygen.c b/g10/keygen.c
index e02b2f9e3..189127d28 100644
--- a/g10/keygen.c
+++ b/g10/keygen.c
@@ -6962,8 +6962,16 @@ generate_subkeypair (ctrl_t ctrl, kbnode_t keyblock, const char *algostr,
}
else if (algo == PUBKEY_ALGO_KYBER)
{
- nbits = 768;
- curve = "brainpoolP256r1";
+ const char *kyberalgostr;
+
+ kyberalgostr = ask_kyber_variant ();
+ if (!kyberalgostr) /* Should not happen. */
+ kyberalgostr = PQC_STD_KEY_PARAM_SUB;
+
+ nbits = strstr (kyberalgostr, "768_")? 768 : 1024;
+ curve = strchr (kyberalgostr, '_');
+ log_assert (curve && curve[1]);
+ curve++;
}
else
nbits = ask_keysize (algo, 0);