pk: Add algo id GCRY_PK_ECC and deprecate ECDSA and ECDH.
authorWerner Koch <wk@gnupg.org>
Sat, 7 Sep 2013 08:06:46 +0000 (10:06 +0200)
committerWerner Koch <wk@gnupg.org>
Mon, 23 Sep 2013 20:25:05 +0000 (22:25 +0200)
commitd5f91466695c5736f441c9bf1998436184a4bf61
treede889addb62c305ddbd1ba5d7cf077dda88ebd35
parent4552437bb3c5ff96a889fd31e4bc504b2a12fac7
pk: Add algo id GCRY_PK_ECC and deprecate ECDSA and ECDH.

* src/gcrypt.h.in (GCRY_PK_ECC): New.
* cipher/pubkey.c (map_algo): New.
(spec_from_algo, gcry_pk_get_param, _gcry_pk_selftest): Use it.
* cipher/ecc.c (selftests_ecdsa): Report using GCRY_PK_ECC.
(run_selftests): Simplify.
(ecdh_names, ecdsa_names): Merge into a new ecc_names.
(_gcry_pubkey_spec_ecdh, _gcry_pubkey_spec_ecdsa): Merge into new
_gcry_pubkey_spec_ecc.
--

The algo ids are actually a relict from Libgcrypt's former life as
GnuPG's crypto code.  They don't make much sense anymore and are often
not needed.

This patch requires some changes to the GnuPG 2.1 code (which has
still not been released).  For example the secret key transfer between
gpg and gpg-agent (gpg --export and gpg --import).  Fortunately this
will also require to add usage flags to the secret key storage of
gpg-agent which is is something we should have done a long time ago.

Signed-off-by: Werner Koch <wk@gnupg.org>
NEWS
cipher/ecc.c
cipher/pubkey.c
doc/gcrypt.texi
src/cipher.h
src/fips.c
src/gcrypt.h.in