Switch to a hash and CERT record based PKA system.
authorWerner Koch <wk@gnupg.org>
Thu, 26 Feb 2015 15:34:44 +0000 (16:34 +0100)
committerWerner Koch <wk@gnupg.org>
Thu, 26 Feb 2015 17:30:08 +0000 (18:30 +0100)
commit52c6c30647a96162a10715e667299167717c58dd
treea3c7eb78d0e43e8786e2619394ba3de2119a3951
parent240451a26e3e1fdabe0451a33f8918d4adfa852b
Switch to a hash and CERT record based PKA system.

* util/pka.c: Rewrite.
(get_pka_info): Add arg fprbuflen.  Change callers to pass this.
* util/strgutil.c (ascii_strlwr): New.
* configure.ac: Remove option --disable-dns-pka.
(USE_DNS_PKA): Remove ac_define.
* g10/getkey.c (parse_auto_key_locate): Always include PKA.
--

Note that although PKA is now always build, it will only work if
support for looking up via DNS has not been disabled.

The new PKA only works with the IPGP DNS certtype and shall be used
only to retrieve the fingerprint and optional the key for the first
time.  Due to the security problems with DNSSEC the former assumption
to validate the key using DNSSEC is not anymore justified.  Instead an
additional layer (e.g. Trust-On-First-Use) needs to be implemented to
track change to the key.  Having a solid way of getting a key matching
a mail address is however a must have.

More work needs to go into a redefinition of the --verify-options
pka-lookups and pka-trust-increase.  The auto-key-locate mechanism
should also be able to continue key fetching with another method once
the fingerprint has been retrieved with PKA.

Signed-off-by: Werner Koch <wk@gnupg.org>
This is a backport from master.
(backported from commit 2fc27c8696f5cf2ddf3212397ea49bff115d617b)
configure.ac
g10/getkey.c
g10/keyserver.c
g10/mainproc.c
include/util.h
util/pka.c
util/strgutil.c