internet checksum(16 位校验和)的简单计算
时间: 2023-09-21 13:00:44 浏览: 837
数据发送与接收校验(校验和)_数据校验之校验和_
Internet校验和是一种用于验证数据完整性的简单方法,常用于互联网协议(IP)中。校验和是通过对数据进行求和并取其反码得到的。
计算Internet校验和的步骤如下:
1.将要传输的数据划分成16位的片段。
2.将这些片段相加,得到一个32位的和。如果和溢出(进位),则将其截断并将其加回到校验和中。
3.将求和结果取反,得到校验和。
例如,有以下数据要传输:01101001 01101110 01110100 01100101。将每个字节(8位)划分成两个片段,得到:01101001 01101110 , 01110100 01100101。
进行相加运算,得到:
0110100101101110
+ 0111010001100101
-------------------
1111110111010011
由于最终结果溢出(进位),需要截断和并加回到校验和中,得到:
1111101111101000
+ 1
-------------------
1111101111101001
最后,将求和结果取反,得到校验和:0000010000010110。
接收方会执行类似的操作,对接收到的数据进行分割,并计算校验和。如果计算得到的校验和与接收到的校验和相同,则认为数据未被篡改,完整性得到验证。
校验和虽然简单,但具有一定的错误检测能力。它可以帮助检测数据传输过程中的位错误和交换错误。然而,它并不能提供完全的安全性保障,因此在实际应用中还需要额外的校验方法。
阅读全文