AES与应用层消息粘包、分包应该如何处理?

发布于 2022-09-05 19:30:00 字数 336 浏览 18 评论 0

在TCP长连接中,会出现应用层消息粘包的现象,解决方法是:

  1. 文本协议中采用rn实现隔断;

  2. 二进制协议中采用报文结构,如TLV来实现消息分隔;

现在如果TCP长连接是AES加密呢?一种是将加密后的AES码流每16/32字节解密一次,然后在进行回车隔断或者判断报文结构。这样算是透传,可以兼容两种协议。但是感觉上实施起来复杂度挺高。需要两层缓冲:TCP缓冲和AES缓冲。

另外一种是将消息Payload部分进行AES加密进行传输。适合二进制方式,也在AES之外保留了TLV的报文结构。

哪一种更加合适呢?有过经验的开发者请教一下。

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

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

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文