Does Nesting CRC calculations increase reliability (ie decrease error probability)?

114 views Asked by At

If I have a payload, and I calculate a crc32 value on that payload (of arbitrary size), then I juxtapose that crc value next to the payload, treat the whole thing recursively as a new payload, then calculate a crc32 value on that, and juxtapose that crc32 value next to the payload, then transmit this whole payload, and decode it (recursively) at the recieving end... does each nested crc32 calculation further decrease the probability of an error, or are any iterations/recursions above 1 totally useless?

I didn't try it yet, I want to know if it is worth the implementation effort.

1

There are 1 answers

6
Mark Adler On

It would be totally useless. The second CRC-32 will always give the same value! For example, for the standard ISO-HDLC 32-bit CRC, with the CRC appended in the little-endian order, the second CRC will always be 0x2144df1c. This is a property of the mathematics of CRCs.