[ih] error detection

Lawrence Stewart stewart at serissa.com
Thu Oct 1 17:46:17 PDT 2020



> On 2020, Oct 1, at 7:41 PM, Joseph Touch <touch at strayalpha.com> wrote:
> 
> 
> 
>> On Oct 1, 2020, at 3:22 PM, Lawrence Stewart via Internet-history <internet-history at elists.isoc.org <mailto:internet-history at elists.isoc.org>> wrote:
>> 
>> The properties that make a good end-to-end checksum are a little different:
> 
> Agreed, but...
>> 
>> ...
>> * you’d like them to be <modifiable> if possible, so that a router can calculate a change to a checksum without recomputing the whole thing possibly based on erroneous data
>>> 
> 
> this particular requirement undermines the core of the definition of E2E.
> 
> Joe

The point of modifiable checksums is to preserve E2E.  If you recompute the whole thing, you are never sure if the plaintext other than the modified part is still valid.  With a modifiable checksum, if you have to change a hopcount or TTL or some such, you can compute the checksum delta arising from the change to the specific field.  This preserves the E2E-ness of the checksum on the parts of the message you didn’t change.  This can be done for any linear checksum, including CRCs, 1s-complement-add-and-cycle and others.  If you do it this way you don’t need a separate header checksum, so it can save space as well.  Since cryptographic hashes are nonlinear, the scheme doesn’t work for them.

-L




More information about the Internet-history mailing list