1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-12-22 10:19:57 +01:00
Werner Koch 865d485180
gpg: New option --include-key-block.
* common/openpgpdefs.h (SIGSUBPKT_KEY_BLOCK): New.
* g10/gpg.c (oIncludeKeyBlock): New.
(opts): New option --include-key-block.
(main): Implement.
* g10/options.h (opt): New flag include_key_block.
* g10/parse-packet.c (dump_sig_subpkt): Support SIGSUBPKT_KEY_BLOCK.
(parse_one_sig_subpkt): Ditto.
(can_handle_critical): Ditto.
* g10/sign.c (mk_sig_subpkt_key_block): New.
(write_signature_packets): Call it for data signatures.
--

This patch adds support for a to be proposed OpenPGP ferature:

  Introduce the Key Block subpacket to align OpenPGP with CMS.

  This new subpacket may be used similar to the CertificateSet of
  CMS (RFC-5652) and thus allows to start encrypted communication
  after having received a signed message.  In practice a stripped down
  version of the key should be including having only the key material
  and the self-signatures which are really useful and shall be used by
  the recipient to reply encrypted.

  #### Key Block

  (1 octet with value 0, N octets of key data)

  This subpacket MAY be used to convey key data along with a signature
  of class 0x00, 0x01, or 0x02.  It MUST contain the key used to create
  the signature; either as the primary key or as a subkey.  The key
  SHOULD contain a primary or subkey capable of encryption and the
  entire key must be a valid OpenPGP key including at least one User ID
  packet and the corresponding self-signatures.

  Implementations MUST ignore this subpacket if the first octet does not
  have a value of zero or if the key data does not represent a valid
  transferable public key.

GnuPG-bug-id: 4856
Signed-off-by: Werner Koch <wk@gnupg.org>
2020-03-13 13:34:49 +01:00
..
2020-02-18 18:07:46 -05:00
2020-02-18 18:07:46 -05:00
2020-02-18 18:07:46 -05:00
2018-10-25 16:53:05 -04:00
2015-10-28 10:20:17 +01:00
2018-05-29 13:01:12 +02:00
2018-05-29 13:01:12 +02:00
2020-02-18 18:07:46 -05:00
2020-02-18 18:07:46 -05:00
2020-02-18 18:07:46 -05:00
2020-02-18 18:07:46 -05:00
2015-11-17 12:50:22 +01:00
2020-02-22 09:52:48 +01:00
2017-04-28 10:06:33 +09:00
2017-02-21 13:11:46 -05:00
2018-10-25 16:53:05 -04:00
2018-10-25 16:53:05 -04:00
2019-04-16 13:24:10 +09:00
2019-07-12 12:11:26 +09:00
2020-02-18 18:07:46 -05:00
2016-03-02 14:27:30 +01:00
2017-04-28 10:06:33 +09:00
2020-02-18 18:07:46 -05:00
2018-10-25 16:53:05 -04:00
2018-10-24 15:56:18 -04:00
2019-10-01 10:32:31 +02:00
2018-10-24 15:56:18 -04:00
2020-02-18 18:07:46 -05:00
2020-02-18 18:07:46 -05:00
2020-02-18 18:07:46 -05:00
2017-01-05 20:43:40 +01:00
2019-03-07 14:11:46 +01:00
2020-03-04 13:55:53 +01:00
2018-02-22 15:32:36 +01:00
2017-02-21 13:11:46 -05:00

Common functionality used by all modules of GnuPG.