Files
crypto/openpgp
aviau fd5f17ee72 openpgp: read keys with revoked user ids
The existing code was wrongly assuming that UserID packets must be
immediately followed by a Signature packet. However, this is not true.

See RFC4880 11.1:
> Immediately following each User ID packet, there are zero or more
> Signature packets.

This change will ensure that Entities that are not immediately followed
by a Signature packet are read without raising a StructuralError.
Instead, UserID packets that are not immediately followed by a self
signature will be ignored.

Maximum backwards compatibility is retained because revoked UserIDs are
not added to the Entity's identities.

In a follow-up patch, we should probably add these UserIDs to the
Entity's identities too, but not without making sure that the revocation
is also available in the Entity's (or the Identity's) Revocations slice.
This would require adding support for a new Signature Type,
"Certification revocation signature", as defined in RFC 48880 5.2.1.

Fixes golang/go#25850

Change-Id: Idde34b97429998f28e0c687171024e51ed959bf0
Reviewed-on: https://go-review.googlesource.com/118376
Reviewed-by: Filippo Valsorda <filippo@golang.org>
Run-TryBot: Filippo Valsorda <filippo@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-06-14 17:48:26 +00:00
..
2014-12-09 23:26:36 +00:00
2014-12-09 23:26:36 +00:00
2014-12-09 23:26:36 +00:00
2012-01-25 15:31:12 -05:00
2012-01-25 15:31:12 -05:00
2018-05-09 02:20:26 +00:00
2016-09-28 22:09:27 +00:00
2017-01-04 23:09:04 +00:00
2016-07-06 16:40:51 +00:00