Crc32 can be written in handful lines of code. Although it'd be better to use the vector instruction set - e.g. AVX when available.