[SIS-CFDPV1] CRC32 vs hash

Burleigh, Scott C (312B) scott.c.burleigh at jpl.nasa.gov
Thu Mar 28 10:33:17 UTC 2019


Hi, all.  It is of course way too late to seriously consider any change to the CFDP Revisions specification that we are about to interoperability-test.  I offer the following comment only to make us all aware of the question in advance of the testing, so that it doesn't take us by surprise.

In the course of helping the Europa Clipper project with requirements verification, I learned a little more about CRCs.  In particular, it was noted that there may be a performance issue with the CRC-32 algorithm that will now be an optional alternative to the modular checksum in CFDP; I dimly recall, in fact, that in our pre-interoperability testing it has already been revealed that CRC-32 verification of a multi-gigabyte file was quite time-consuming.  (Sorry, I can't just now find the email that pointed this out.)

Ken Anderson, a coding expert at JPL, commented as follows:

The computer science community has developed a set of algorithms with fairly similar properties, though intended to solve very different problems in efficient searches.  Some of these are the Fletcher checksums, particularly Fletcher-16 that produces a 16-bit value.  It is a position-dependent checksum, and as Wikipedia says, its objective is "to provide error-detection properties approaching those of a cyclic redundancy check but with the lower computational effort associated with summation techniques."

Depending on what we find during interoperability testing, we may want to consider a small interim update - replacing CRC-32 with something like a Fletcher checksum - some time after publication of the updated CFDP Blue Book.

Scott
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ccsds.org/pipermail/sis-cfdpv1/attachments/20190328/4f3140d3/attachment.html>


More information about the SIS-CFDPV1 mailing list