next up previous FITS Documents
Next: Reserved Keywords Up: FITS Checksum Proposal Previous: FITS Checksum Proposal

Introduction

Checksums are used to gain confidence in the continued integrity of all sorts of data. The normal procedure, of course, is to calculate the checksum of the data on the transmitting side of some communication channel (including magnetic media) and later to compare that checksum with the recalculated checksum on the receiving side. The original checksum is transmitted separately over the same communication channel.

This scheme works for FITS (the Flexible Image Transport System, see ref. 1-5) data as for other data, but separating the checksum from the FITS file limits its utility, especially for archival storage. It is also hard to see just how to incorporate a separate checksum into the FITS standard.

The internet checksum (ref. 12-14) resolves the similar problem of embedding a checksum within each IP packet by forcing the checksum of each binary packet to the same value (zero). This works by writing the complement of the calculated checksum into the packet instead of the checksum itself.

Arranging to write a binary number into a FITS file is unattractive and limiting. However, the properties of commutativity and associativity that make the internet checksum work in the first place, also make it possible to generalize the technique with an ASCII encoding that may be embedded within a FITS header keyword (ref. 8).


next up previous FITS Documents
Next: Reserved Keywords Up: FITS Checksum Proposal Previous: FITS Checksum Proposal