Python crc32 table lookup method, https://github.com/221294583/crc32 .I can understand that the generated table does not collide. After all, as long as the start and end of the polynomial binary are 1, then the hash obtained by different raw data is different, but why the first two bits of the hash table do not collide? The first four digits of the polynomial are 04c1, and the binary end of 04 is not 1. It stands to reason that the first two digits of the hash table should collide.

  • $\begingroup$ Note that "uses" is not the same as "is": the actual polynomial has degree 32. Independently "the generated table" depends heavily on the method used to compute the CRC, which is unclear in the question. I see no reason to remove the high-order bit. Additionally "the binary end of 04" is not exactly well-defined (for a start, which end?) $\endgroup$ – fgrieu Jun 10 at 9:27
  • $\begingroup$ Which "table" are you talking about? $\endgroup$ – Fractalice Jun 10 at 13:21
  • $\begingroup$ github.com/221294583/crc32 $\endgroup$ – user89887 Jun 11 at 12:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.