- [关于加解密、加签验签的那些事](https://my.oschina.net/u/4030990/blog/4276188)
- 数据校验算法:数据校验,是为保护数据的完整性,用一种指定的算法对原始数据计算出的一个校验值。当接收方用同样的算法再算一次校验值,如果两次校验值一样,表示数据完整或没有被篡改过。
- 奇偶校验, CRC循环冗余校验, MD5, SHA
- 奇偶校验 : 最简单的错误检测码, 是一个表示给定位数的二进制数中1的个数是奇数或者偶数的二进制数
- 存储的数据用位标示为1、1、1、0、0、1、0、1,那么把每个位相加(1+1+1+0+0+1+0+1=5),结果是奇数, 对于偶校验,校验位就定义为1;对于奇校验,则相反,双位同时发生错误的概率相当低,但奇偶校验却无法检测出双位错误
- 循环冗余校验 : 发送和接收双方约定一个除数, 对数据进行多项式计算, 并将得到的结果附在帧的后面,接收设备也执行类似的算法
![](https://img.kancloud.cn/bc/bb/bcbb276809360a187cbf026fc6e9721e_866x672.png)
- MD5的全称是Message-Digest Algorithm 5(信息-摘要算法)
- SHA(Secure Hash Algorithm,安全散列算法