为什么错误检查代码不容易出错?
Why Aren't Error Checking Codes Error Prone?
最近我们了解到,在通过通信信道发送数据时,信道中的噪声会导致系统出错,因此,在数据中附加了一个错误校验码尾部,以告诉接收方数据是否有错误。是否被损坏。
问题是我们如何确保此错误检查数据没有损坏?我们有什么办法可以确定这一点吗?
如果错误检查数据(通常是 hash/checksum)损坏,它将与实际数据不匹配,并且会报告损坏。这意味着在这种情况下,数据被错误地标记为损坏,但这很好,因为损坏是预期的情况。它被 "falsely" 标记为已损坏,因为实际上只有校验和被破坏了。但是没有办法区分这些情况。
对负载计算 CRC。 CRC 的基本 属性 是,如果您在附加了发送的 CRC 的负载上重新计算它,结果应该为零。如果不是,则 有效负载 或 CRC 已损坏,或两者兼而有之。您不知道是哪个,但这无关紧要:邮件在传输过程中已损坏。
最近我们了解到,在通过通信信道发送数据时,信道中的噪声会导致系统出错,因此,在数据中附加了一个错误校验码尾部,以告诉接收方数据是否有错误。是否被损坏。
问题是我们如何确保此错误检查数据没有损坏?我们有什么办法可以确定这一点吗?
如果错误检查数据(通常是 hash/checksum)损坏,它将与实际数据不匹配,并且会报告损坏。这意味着在这种情况下,数据被错误地标记为损坏,但这很好,因为损坏是预期的情况。它被 "falsely" 标记为已损坏,因为实际上只有校验和被破坏了。但是没有办法区分这些情况。
对负载计算 CRC。 CRC 的基本 属性 是,如果您在附加了发送的 CRC 的负载上重新计算它,结果应该为零。如果不是,则 有效负载 或 CRC 已损坏,或两者兼而有之。您不知道是哪个,但这无关紧要:邮件在传输过程中已损坏。