gnupg/doc
Werner Koch 1dfe71c62b
gpg: Support decryption of the new AEAD packet
* common/openpgpdefs.h (aead_algo_t): New.
(pkttype_t): Add PKT_ENCRYPTED_AEAD.
* g10/decrypt-data.c (struct decode_filter_context_s): Add fields for
AEAD.
(aead_set_nonce_and_ad): New.
(aead_checktag): New.
(decrypt_data): Support AEAD.
(aead_underflow): New.
(aead_decode_filter): New.
* g10/dek.h (DEK): Add field use_aead.  Turn use_mdc,
algo_info_printed, and symmetric into bit flags.
* g10/mainproc.c (struct mainproc_context): Add field
seen_pkt_encrypted_aead.
(release_list): Clear it.
(have_seen_pkt_encrypted_aead): New.
(symkey_decrypt_seskey): Support AEAD.
(proc_symkey_enc): Ditto.
(proc_encrypted): Ditto.
(proc_plaintext): Ditto.
* g10/misc.c (MY_GCRY_CIPHER_MODE_EAX): New.
(openpgp_aead_test_algo): New.
(openpgp_aead_algo_name): New.
(openpgp_aead_algo_info): New.
* g10/packet.h (PKT_symkey_enc): Add field use_aead.
(PKT_user_id): Add field flags.aead
(PKT_public_key): Ditto.
(PKT_encrypted): Add fields for AEAD.
* g10/parse-packet.c (parse): Handle PKT_ENCRYPTED_AEAD.
(parse_symkeyenc): Support AEAD.
(parse_encrypted): Ditto.
(dump_sig_subpkt): Dump AEAD preference packet.
(parse_encrypted_aead): New.
--

This patch allows to decrypt data encrypted using the new AEAD
mechanism as specified in rfc4880bis.  Although preferences are used
to enable this new mode, it is useful to have at least a decryption
option in case a user switches between GnuPG 2.2 and newer versions.

The new AEAD mechanism is much faster than the current CFB+MDC and
thus 2.2 will allow faster decryption of symmetric only decryption.

This patch is based on the current master (2.3) code base and includes
a few other patches.  In particular
commit 44be675b75
(gpg: More check for symmetric key encryption.)
is included.

Signed-off-by: Werner Koch <wk@gnupg.org>
2020-04-16 08:25:55 +02:00
..
examples doc: Remove unneccesary empty flags in vsndf.prf 2018-04-20 11:00:00 +02:00
ChangeLog-2011 Generate the ChangeLog from commit logs. 2011-12-01 11:09:02 +01:00
DCO Add missing file. 2013-04-17 11:26:27 +02:00
DETAILS gpg: Support decryption of the new AEAD packet 2020-04-16 08:25:55 +02:00
FAQ doc: Fix FAQ stub and remove faq build rules. 2015-03-04 15:10:52 +01:00
HACKING doc: Fix Dijkstra 2017-12-08 07:40:06 +01:00
KEYSERVER Migrated more stuff to doc/ 2006-08-21 20:20:23 +00:00
Makefile.am doc: Update description of displayed trust values. 2018-05-07 08:07:07 +02:00
Notes Fix more spelling 2016-09-17 16:00:37 +09:00
OpenPGP gpg: Remove all support for v3 keys and always create v4-signatures. 2014-10-17 13:32:16 +02:00
TRANSLATE Clean up word replication. 2017-02-21 13:11:46 -05:00
a-decade-of-gnupg.txt doc: Typo fixes. 2014-12-14 12:15:21 +01:00
announce-2.0.txt sm/ 2006-11-14 10:23:21 +00:00
announce-2.1.txt doc: Revert the bug reporting address to bugs.gnupg.org 2017-07-24 10:43:27 +02:00
com-certs.pem Remove all expired common CA certificates. 2014-11-04 21:47:03 +01:00
contrib.texi doc: Fix Martin Hellman's name. 2016-09-20 09:32:25 +09:00
debugging.texi doc: Removed the footnote that OpenPGP is not used with the keybox 2020-01-08 13:32:23 +01:00
dirmngr.texi doc,dirmngr: Clarify --standard-resolver. 2019-11-23 20:30:22 +01:00
faq.org doc: Revert the bug reporting address to bugs.gnupg.org 2017-07-24 10:43:27 +02:00
fdl.texi Taken from NewPG 2003-01-09 13:24:01 +00:00
glossary.texi doc: Fix typos. 2016-09-20 09:56:22 +09:00
gnupg-badge-openpgp.eps * preset-passphrase.c (preset_passphrase): Handle --passphrase. 2004-12-21 19:05:15 +00:00
gnupg-badge-openpgp.jpg * preset-passphrase.c (preset_passphrase): Handle --passphrase. 2004-12-21 19:05:15 +00:00
gnupg-badge-openpgp.pdf Made make distcheck work again 2006-06-20 17:47:10 +00:00
gnupg-card-architecture.fig Changed to GPLv3. 2007-07-04 19:49:40 +00:00
gnupg-logo-tr.png Beautified the online html manual 2011-08-12 14:40:47 +02:00
gnupg-logo.eps Add new logo. 2007-03-08 18:31:56 +00:00
gnupg-logo.pdf doc: Add gnupg-logo.pdf 2014-07-03 11:03:22 +02:00
gnupg-logo.png doc: Improve the rendering of the manual 2014-06-25 11:15:45 +02:00
gnupg-module-overview.svg doc: Add a gnupg-module-overview picture. 2016-02-16 13:01:17 +01:00
gnupg.texi doc: Update description of displayed trust values. 2018-05-07 08:07:07 +02:00
gnupg7.texi Include dirmngr manual 2010-06-10 10:39:44 +00:00
gpg-agent.texi agent: Make the S2K calibration time runtime configurable. 2018-12-11 18:14:38 +01:00
gpg.texi gpg: Update --trusted-key to accept fingerprint as well as long key id. 2020-03-18 14:01:17 +01:00
gpgsm.texi sm: Consider certificates w/o CRL DP as valid. 2020-03-27 21:20:13 +01:00
gpgv.texi gpgv: Improve documentation for keyring choices 2019-03-07 07:55:51 +01:00
gpl.texi Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.be.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.ca.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.cs.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.da.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.de.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.el.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.eo.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.es.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.et.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.fi.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.fr.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.gl.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.hu.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.id.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.it.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.ja.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.nb.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.pl.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.pt.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.pt_BR.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.ro.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.ru.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.sk.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.sv.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.tr.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.zh_CN.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
help.zh_TW.txt Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
howto-create-a-server-cert.texi gpgsm: default to 3072-bit keys. 2019-02-28 11:00:31 +01:00
howtos.texi Add a howto section. 2007-05-08 13:59:41 +00:00
instguide.texi doc: Do not end section names with "." 2016-09-20 16:15:19 +09:00
mkdefsinc.c doc: Escape file names in generated macros. 2016-07-06 19:35:15 +02:00
mksamplekeys Adjust awk to not add trailing whitespace. 2012-11-30 12:43:34 -05:00
opt-homedir.texi doc: Fix typos. 2016-09-20 09:56:22 +09:00
qualified.txt add new certifciates 2008-06-25 11:14:48 +00:00
samplekeys.asc Refresh sample keys 2012-11-30 12:47:49 -05:00
scdaemon.texi doc: Typo fixes 2018-06-06 17:26:20 +02:00
see-also-note.texi More man pages. Added include files for 2 common paragraphs. 2006-08-18 13:05:39 +00:00
specify-user-id.texi gpg: Implement searching keys via keygrip. 2019-01-29 20:19:22 +01:00
sysnotes.texi doc: Do not end section names with "." 2016-09-20 16:15:19 +09:00
texi.css Beautified the online html manual 2011-08-12 14:40:47 +02:00
tools.texi doc: fix spelling 2019-07-11 21:27:59 -04:00
trust-values.texi doc: Update description of displayed trust values. 2018-05-07 08:07:07 +02:00
vuln-announce-2007-multiple-message.txt Clean up word replication. 2017-02-21 13:11:46 -05:00
vuln-announce-2010-kbx-realloc.txt Some work on the dirmngr 2010-07-23 16:16:14 +00:00
vuln-announce-cve-2006-6235.txt 2006-12-06 16:38:34 +00:00
whats-new-in-2.1.txt Release 2.2.0 2017-08-28 11:18:26 +02:00
wks.texi doc/wks.texi: fix typo 2019-05-28 21:09:13 -04:00
yat2m.c doc: Update yat2m to take care of SOURCE_DATE_EPOCH. 2017-07-05 11:01:36 +02:00