aboutsummaryrefslogtreecommitdiffstats
path: root/g10/export.c
diff options
context:
space:
mode:
authorNIIBE Yutaka <[email protected]>2020-06-24 01:05:03 +0000
committerNIIBE Yutaka <[email protected]>2020-06-24 01:05:03 +0000
commita763bb2580b0d586a80b8ccd3654f41e49604f4f (patch)
tree1e32c6510eb9a990bdea02d8b660077858c81fb3 /g10/export.c
parentecc: Use "cv448" to specify key using X448. (diff)
downloadgnupg-a763bb2580b0d586a80b8ccd3654f41e49604f4f.tar.gz
gnupg-a763bb2580b0d586a80b8ccd3654f41e49604f4f.zip
gpg,agent: Support Ed448 signing.
* agent/pksign.c (do_encode_eddsa): First argument is NBITs, so that it can support Ed448, as well as Ed25519. (agent_pksign_do): Follow the change. * agent/sexp-secret.c (fixup_when_ecc_private_key): No fix-up needed for Ed448, it's only for classic curves. * common/openpgp-oid.c (oidtable): Add Ed448. * common/sexputil.c (get_pk_algo_from_key): Ed448 is only for EdDSA. * g10/export.c (match_curve_skey_pk): Ed448 is for EdDSA. * g10/keygen.c (gen_ecc): Support Ed448 with the name of "ed448". (ask_algo, parse_key_parameter_part): Handle "ed448". * g10/pkglue.c (pk_verify): Support Ed448. (pk_check_secret_key): Support Ed448. * g10/sign.c (hash_for): Defaults to SHA512 for Ed448. (make_keysig_packet): Likewise. Signed-off-by: NIIBE Yutaka <[email protected]>
Diffstat (limited to 'g10/export.c')
-rw-r--r--g10/export.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/g10/export.c b/g10/export.c
index d06896026..909b98701 100644
--- a/g10/export.c
+++ b/g10/export.c
@@ -568,6 +568,8 @@ match_curve_skey_pk (gcry_sexp_t s_key, PKT_public_key *pk)
log_error ("no curve name\n");
return gpg_error (GPG_ERR_UNKNOWN_CURVE);
}
+ if (!strcmp (curve_str, "Ed448"))
+ is_eddsa = 1;
oidstr = openpgp_curve_to_oid (curve_str, NULL, NULL);
if (!oidstr)
{