当 tcp/ip 已经有校验和时,应用程序协议中还需要校验和吗?

发布于 2024-08-05 02:53:57 字数 66 浏览 6 评论 0原文

我正在设计一个应用程序协议,我想知道是否仍然需要在协议中包含校验和,因为 tcp/ip 已经有校验和。 你有什么意见?

I am designing an application protocol, and i am wondering if i still need include checksum in the protocol since tcp/ip already has checksum.
what's your opinion?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

无声无音无过去 2024-08-12 02:53:57

BitTorrent 协议在 TCP 之上有大量额外的纠错和检测功能,因此协议设计者显然看到了对其的需求。

The BitTorrent protocol has a heavy amount of additional error correction and detection layered on top of TCP, so clearly the protocol designers saw the need for it.

黯然 2024-08-12 02:53:57

TCP 校验和非常弱,因此如果您担心可靠性,您可能需要应用程序级别 1。

特别是 TCP 校验和不是安全哈希,并且没有签名,因此如果您担心恶意更改,那么您需要自己添加安全性。

The TCP checksum is quite weak, so you probably want an application level one if you are at all worried about reliability.

In particular the TCP checksum is not a secure hash, and there is no signature, so if you're worried about malicious changes then you need to add the security yourself.

寄风 2024-08-12 02:53:57

要添加其他答案,您可能应该查看消息身份验证代码。 MAC 是比简单的 TCP 校验和更可靠的错误检测方法。

如果您想要强大的东西,请查看 [HMAC][2]。 HMAC 提供错误检测和身份验证(通过共享密钥)。

如果你想要一些快速而肮脏的东西,为什么不使用 sha1 哈希呢?

To add to the other answers, you should probably look into Message Authentication Codes. MACs are a more robust way to detect errors than a simple TCP checksum.

If you want something robust, take a look at [HMAC][2]. HMAC provides both error detection and authentication (via shared keys).

If you want something quick and dirty, why not use sha1 hashes?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文