数据校验常用算法

Checksum
【电脑】总和检验码,校验总和。在 数据处理和数据通信领域中,用于校验目的的一组 数据项的和。这些 数据项可以是数字或在计算检验总和过程中看作数字的其它字符串。
它通常是以十六进制为数制表示的形式,如:
十六进制串: 0102030405060708
的效验和是: 24 (十六进制)
如果效验和的数值超过十六进制的FF,也就是255. 就要求其补码作为 校验和.
通常用来在通信中,尤其是远距离通信中保证数据的完整性和准确性.
MD5
MessMD5age Digest Algorithm MD5(中文名为 消息摘要算法 第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。该 算法 的文件号为RFC 1321(R.Rivest,MIT Laboratory for Computer Science and RSA Data Security Inc. April 1992)

CRC校验

CRC即 循环冗余校验码 (Cyclic Redundancy Check):是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。
循环冗余校验码(CRC)的基本原理是:在K位信息码后再拼接R位的校验码,整个编码长度为N位,因此,这种编码也叫(N,K)码。对于一个给定的(N,K)码,可以证明存在一个最高次幂为N-K=R的多项式G(x)。根据G(x)可以生成K位信息的校验码,而G(x)叫做这个CRC码的生成多项式。 校验码的具体生成过程为:假设发送信息用信息多项式C(X)表示,将C(x)左移R位,则可表示成C(x)*2的R次方,这样C(x)的右边就会空出R位,这就是校验码的位置。通过C(x)*2的R次方除以生成多项式G(x)得到的余数就是校验码。

你可能感兴趣的:(SECURITY)