CRC32使用

1、用于校验

    其特点是:检错能力极强,开销小,易于用编码器及检测电路实现。从其检错能力来看,它所不能发现的错误的几率仅为0.0047%以下。从性能上和开销上考虑,均远远优于奇偶校验及算术和校验等方式。因而,在数据存储和数据通讯领域,CRC无处不在:著名的通讯协议X.25的FCS(帧检错序列)采用的是CRC-CCITT,ARJ、LHA等压缩工具软件采用的是CRC32,磁盘驱动器的读写采用了CRC16,通用的图像存储格式GIF、TIFF等也都用CRC作为检错手段。

2、使用CRC32把字符串转化为一个long类型的唯一数值ID(虽然科学证明不绝对唯一,但是还是可用的),类似md5一样;

有时一个字符串太长,采用md5加密,将其变为一个32位的字符串,如存储到redis会节省内存,或其他用途。

Java代码实现

CRC32 crc32 = new CRC32();
crc32.update("hello-world".getBytes());
System.out.println(crc32.getValue());

你可能感兴趣的:(Java)