Subject: Re: PGP/MIME implementors: text mode vs. binary mode?

From: Ulf Möller <[email-masked]>
Date: Sat, 14 Apr 2001 10:37:37 -0400

On Tue, Feb 13, 2001 at 03:59:37PM -0800, [email-masked] wrote:

> I can tell you that on message receipt, the commercial versions of PGP
> from Network Associates DO hash trailing whitespace on PGP/MIME messages.
> That is, they are sensitive to the presence of trailing whitespace and
> it is included in the hash.  This is true regardless of whether the
> signature type byte is text or binary mode.  That may or may not be
> compatible with the spec but that is how these versions work.

Then why did you guys refuse to change the OpenPGP specification when
the inconsistency was pointed out well before RFC 2440 was published?

---

From: [email-masked]
Date: Sun, 15 Apr 2001 00:20:44 -0700

Thomas Roessler writes:
> Thus, Ulf's question remains valid: If you follow the old behaviour
> in one of the more important fields of application anyway, why on
> earth didn't you make sure RFC 2440 and your applications followed
> this kind of behaviour in general?  After all, he had indeed warned
> of the inconsistency introduced by RFC 2440.

It is true, Ulf posted on this twice, on 16 Sep 98:

   |   0x01: Signature of a canonical text document.
   |       Typically, this means the signer owns it, created it, or
   |       certifies that it has not been modified.  The signature is
   |       calculated over the text data with its line endings converted to
   |       <CR><LF> and trailing blanks removed.
   
   Trailing blanks are removed _only_ for cleartext signatures, in the
   transformation described in section 7.1. Otherwise (for signatures
   contained in a PGP message, and for detached signatures) they are part
   of the signature.
   
   BTW, there's no proper definition of detached signatures in the draft.
   They probably should be mentioned in section 10 because they are used
   for PGP/MIME.

and again on 13 Oct 98:

   Looks good, but the definition for the canonical text signature is
   still wrong. (Also I note you didn't include the note about PGP 2.6.x
   being unable to hande signature and pubkey packets of length type 0.)
   
   |   0x01: Signature of a canonical text document.
   |       Typically, this means the signer owns it, created it, or
   |       certifies that it has not been modified.  The signature is
   |       calculated over the text data with its line endings converted to
   |       <CR><LF> and trailing blanks removed.
   
   Trailing blanks are removed _only_ for cleartext signatures, in the
   transformation described in section 7.1. Otherwise (for signatures
   contained in a PGP message, and for detached signatures) they are part
   of the signature.

The RFC issued on 11 Nov 98 without this change.

I can't account for our overlooking these two comments.  It was an error
on my part and that of the other authors.  No process is perfect.

I note that the current RFC2440bis draft still has the incorrect language.

Should we change the new draft to document the way the commercial versions
of PGP, and versions 2.X, have always worked?

Hal