mcmilk / 7-Zip-zstd

7-Zip with support for Brotli, Fast-LZMA2, Lizard, LZ4, LZ5 and Zstandard
https://mcmilk.de/projects/7-Zip-zstd/
Other
4.87k stars 291 forks source link

Add CRC32C #329

Open MichalPetryka opened 1 year ago

MichalPetryka commented 1 year ago

CRC32C (Castagnoli) is a variant of CRC32 that uses a different base polynomial. Compared to base CRC32, it's hardware accelerated on both X86 and ARM64.

Dingo64 commented 1 year ago

Is CRC-32 C the same as CRC-32 ISCSI? https://github.com/PascalVault/Lazarus_Hashing/blob/main/CRC32_ISCSI.pas

mcmilk commented 1 year ago

I think yes, but @MichalPetryka should clarify this.

Edit: of cause, you mean CRC32C with the different polynomial (0x1EDC6F41, reversed 0x82F63B78) ... I think I will add it.

MichalPetryka commented 1 year ago

I think it is.

Dingo64 commented 1 year ago

All the params, in case you need: https://reveng.sourceforge.io/crc-catalogue/17plus.htm#crc.cat.crc-32-iscsi