I recently presented an invitation-only webinar on the topic of CRC and Checksum good practices and error detection effectiveness. The talk was for an aviation audience, but it applies almost entirely to other applications as is. The recording didn't work out, but if there is enough demand I'll find time this summer to see if I can do an audio narration recording to go with the slides.
Meanwhile, you can find the slides here:
http://www.ece.cmu.edu/~koopman/pubs/KoopmanCRCWebinar9May2012.pdf
Contents:
- Introduction
- Motivation -- why isn't this a solved problem?
- Parity computations as an example
- Error code construction and evaluation (without scary math)
- Example using parity codes
- Checksums
- What's a checksum?
- Commonly used checksums and their performance
- Cyclic redundancy codes (CRCs)
- What's a CRC
- Commonly used CRC approaches and their performance
- Don't blindly trust what you hear on this topic
- A good CRC is almost always much better than a good checksum
- Many published (and popular) approaches are suboptimal or just plain wrong
- There are some topics to be careful of for which we don't know the answers yet
We are also collecting information about how CRCs and checksums are used in real applications (which is not necessarily the same as what researchers study!) If you have anecdotes, examples, or other information about what you do or what you'd like to do, we'd love to hear about it. If you are in the aviation community the FAA is running a much more
specific survey just for you; let me know and I'll get you in touch with the
appropriate FAA contact.
(We can't necessarily provide immediate answers to specific questions such as "which polynomial should I use for this specific situation." But popular topics and questions that we think are broadly applicable will be put into the research bin and published here or in a report when results are available.)
Cyclic Redundancy Codes, Checksums, and related issues for computer system data integrity.
Subscribe to:
Post Comments (Atom)
Why To Avoid Hash Algorithms If What You Really Need Is A Checksum
Sometimes we hear that someone plans to use a hash function for fault detection instead of a checksum. This is probably not the best idea, b...
-
Checksums and CRCs involve a repeated computation over the length of a dataword that accumulates a result to form an FCS value. The accumul...
-
Here is a video explaining the mechanics of Cyclic Redundancy Check computations, including: An example of the polynomial division approach...
-
An Improved Modular Addition Checksum Algorithm Philip Koopman This paper introduces a checksum algorithm that provides a new point in the p...
No comments:
Post a Comment