CRC循环冗余校验算法

CRC循环冗余校验算法是可以根据数据产生固定位数的散列函数,用来校验数据传输/保存后出现的错误,或者说是校验数据的完整性,例如压缩文件。

生成的散列值在传输或者存储之前计算出来并且附加到数据后面。一般循环冗余校验值都是32位的二进制数,即8位的16进制字符串。
一般冗余校验是值CRC-32
 

 
 
CRC-32的实现:使用CRC32类
public static void main(String[] args) throws Exception{
    CRC32 crc32 = new CRC32();
    crc32.update("中国".getBytes("gbk"));
    long result = crc32.getValue();
    System.out.println(Long.toHexString(result));
}  
 
 
同样,需要使用CRC处理输入输出流是,则使用CheckedInputStream和CheckedOutputStream。
工作原理同MD5中的DigestInputStream和DigestOutputStream





郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。