我正在设计一个应用程序协议,我想知道我是否还需要在协议中包含校验和,因为 tcp/ip 已经有校验和。你怎么看?
问问题
453 次
3 回答
3
BitTorrent 协议在 TCP 之上有大量额外的纠错和检测功能,因此协议设计者清楚地看到了它的需要。
于 2009-09-12T07:54:58.633 回答
2
TCP 校验和非常弱,因此如果您完全担心可靠性,您可能需要一个应用程序级别。
特别是 TCP 校验和不是安全哈希,并且没有签名,所以如果您担心恶意更改,那么您需要自己添加安全性。
于 2009-09-12T09:03:04.490 回答
0
要添加其他答案,您可能应该查看消息身份验证代码。MAC 是一种比简单的 TCP 校验和更可靠的错误检测方法。
如果您想要一些健壮的东西,请查看 [HMAC][2]。HMAC 提供错误检测和身份验证(通过共享密钥)。
如果您想要快速而肮脏的东西,为什么不使用 sha1 哈希?
于 2010-11-21T14:51:15.313 回答