ietf-822
[Top] [All Lists]

Re: content-charset & checksums

1991-10-29 14:31:35
Date: Tue, 29 Oct 91 08:37:16 PST
From: Neil(_dot_)Katin(_at_)eng(_dot_)sun(_dot_)com (Neil Katin)
To: VALDIS(_at_)vtvm1(_dot_)cc(_dot_)vt(_dot_)edu
Subject: Re: content-charset & checksums
Cc: ietf-822(_at_)dimacs(_dot_)rutgers(_dot_)edu


No, I actually meant what I said, but I freely admit that it
is a controvertial opinion...

The purpose of a checksum is to get an indication of when the
contents of a body part has been accidentally munged.  Checksums
are carried UA to UA (that is, end-to-end).  However, checksums
are useless in the face of gateways that change the inside of
a body part if the gateway does not update the checksum; all that
you will know is that the body part has been changed, but so what?

My reasoning is that a gateway is, by my definition at least,
something that is acting at the UA level because it is changing
the inside of a body part.  Therefore, it is reasonable for the
gateway to check the checksum, and if it is changing the body
part to recompute it.

The whole purpose in creating base64 was to be able to get arbitrary
8-bit data through existing mail gateways without being munged.  The
proposed checksum is a check to make sure that this actually happened.
"Normal" mail gateways aren't supposed to change base64 body parts at
all, and neither should they recompute the checksum.

On the other hand, the new message format opens up the possibility
for all sorts of format-conversion gateways, that take a body part
of type "foo" and translate it into a body part of type "bar", on
the assumption that the recipient can read the latter but not the
former. (Danger!)  In this case, the gateway should verify the 
checksum on the incoming body part and compute a checksum on the converted
body part.

There seems to be general consensus that checksums on base-64
encoded body parts are a "good thing".  I'm curious as to why
checksums on other transport encodings are not? 

I would like to see checksums available on anything that *can*
be used to transmit binary data - be it base64, quoted-printable,
or binary.

I hate to see quoted-printable made useless for binary data by not having a
checksum, since it would be a win for certain kinds of data.  On the other
hand, it seems unreasonable to require the checksum for quoted-printable,
since it might also be used for ordinary text.

Keith

<Prev in Thread] Current Thread [Next in Thread>