Получите контрольную сумму CRC NSData в Objective-C

Как я могу считать CRC (32 или 64) объекта NSData в Objective-C?

Спасибо заранее!

Ответы

Ответ 2

Используйте crc32() функцию из библиотеки zlib:

#import <zlib.h>

NSData *data;

// ...

unsigned long result = crc32(0, data.bytes, data.length);
NSLog(@"CRC32: %lu", result);

Не забудьте связать библиотеку libz с вашим проектом:

enter image description here

Ответ 3

Из iOS11 используйте это:

unsigned long result = crc32_z(0, data.bytes, data.length);