Subject: Non-textual User IDs

From: David Shaw <[email-masked]>
Date: Tue, 21 Oct 2003 16:24:27 -0400

2440 defines a User ID (section 5.11) as:

   A User ID packet consists of data that is intended to represent the
   name and email address of the key holder.  By convention, it
   includes an RFC 822 mail name, but there are no restrictions on its
   content.  The packet length in the header specifies the length of
   the user id.  If it is text, it is encoded in UTF-8.

The various 2440bis drafts keep this same text.

Suggestion: change the current specification of contents (which is
mostly unspecified) to UTF8 text only.

Rationale: The current language was written before the OpenPGP
standard got attribute IDs.  Attribute IDs are a significantly better
way to incorporate arbitrary binary blobs into user IDs.

A simple way to look at this is to note that any user ID that isn't
UTF8 text is going to be implementation-dependent.  Since it is
implementation dependent anyway, implementors may as well use
attribute packets which won't gum up the programs (all OpenPGP
programs I've seen) that more or less do expect user IDs to be text.

Suggested language:
   A User ID packet consists of UTF-8 text that is intended to
   represent the name and email address of the key holder.  By
   convention, it includes an RFC 822 mail name, but there are no
   restrictions on its content.  The packet length in the header
   specifies the length of the user id.

David

---

From: Jon Callas <[email-masked]>
Date: Mon, 27 Oct 2003 13:51:37 -0800

>    specifies the length of the user id.

In other words, just removing the line about if it is text....

Done.

	Jon