hash - online - checksum算法



CRC32 vs CRC32C? (1)

在zip和許多其他地方找到的CRC32使用多項式0x04C11DB7; 它的反向形式0xEDB88320也許是更為人所知的,經常在小端實現中被發現。

CRC32C使用不同的多項式(0x1EDC6F41,反向0x82F63B78),否則計算結果相同。 結果自然是不一樣的。 這也被稱為Castagnoli CRC32,在新的Intel CPU中最顯著,可以在3個週期內計算完整的32位CRC步長。 這就是為什麼CRC32C變得越來越流行的原因,因為它允許高級實現,即使在三個週期的延遲下,每個週期有效地處理一個32位字(通過並行處理3個數據流並使用線性代數來組合結果)。

CRC32和CRC32C有什麼區別? 我長期知道CRC32,但今天聽到了CRC32C。 他們基本上是相同的方法(即兩個結果在一個給定的數據相同的散列)?





checksum