At 7:59 PM +0100 11/3/03, Simon Josefsson wrote:
Thanks for adding the OpenPGP discussion. Given the subtleness of the
issue, I believe the document should not only mention it, but also
give normative advice on how the combination of OpenPGP and
format=flowed is to be implemented. Otherwise implementors will
ignore the problem, as they do today.
When I look at how to properly implement both OpenPGP and
format=flowed, I can't come to any other conclusion than that security
is more important than maintaining soft paragraph breaks. That means
a client should not flow OpenPGP signed data, when it present the
outcome as something that OpenPGP guarantee is what the sender sent.
If the client would flow a message, someone in transit may modify the
rendering of a message without being detected by OpenPGP.
Repeating the text from RFC 2440, saying that PGP/MIME aka RFC 3156
SHOULD be used in messaging applications, may be sufficient. Perhaps
promote it to MUST within the scope of flowed messages.
The current text says to use quoted-printable to protect the trailing
spaces so that the signature is calculated on the on-the-wire format:
5.6. Digital Signatures and Encryption
If a message is digitally signed or encrypted it is important that
cryptographic processing use the on-the-wire Format=Flowed format.
That is, during generation the message SHOULD be prepared for
transmission, including addition of soft line breaks,
space-stuffing, and [Quoted-Printable] encoding (to protect soft
line breaks) before being digitally signed or encrypted; similarly,
on receipt the message SHOULD have the signature verified or be
decrypted before [Quoted-Printable] decoding and removal of stuffed
spaces, soft line breaks and quote marks, and reflowing.
Note that [OpenPGP] specifies (in section 7.1) that "any trailing
whitespace (spaces, and tabs, 0x09) at the end of any line is
ignored when the cleartext signature is calculated."
Thus it would be possible to add, in transit, a format=flowed header
to a regular, format=fixed vanilla PGP (not PGP/MIME) signed message
and add arbitrary trailing space characters without this addition
being detected. This would change the rendering of the article by a
client which supported format=flowed.
In thinking about this some more, I'm not sure that the extra text on
OpenPGP is really needed, since if the text above is followed it
shouldn't be an issue.
--
Randall Gellens
Opinions are personal; facts are suspect; I speak for myself only
-------------- Randomly-selected tag: ---------------
Computers ... are not designed, as we are, for ambiguity. --Thomas