1
rozbo 2022-03-30 10:16:29 +08:00
你对层的理解还不够充分啊,所谓层其实就是 layer ,实际上就是包装了一层的。
连 tcp 都是一层(难道你没想过对方是怎么知道你的 ip 地址的吗) ref: datatracker.ietf.org/doc/html/rfc8446 |
2
lysS OP @rozbo 你看我下面的描述:
如果 tls 层没有单独的包结构,那么数据就是单纯地被分组加密、如 AES ,那么每组加密数据的大小肯定是固定的,接收的时候读取到固定大小的数据后解密得到原始数据。要是分组不固定,接收方是不知道一个加密后分组的 tail 的。 但是固定分组大小这种策略有个问题是:假如分组大小为 1KB ,sender 发送 5B 数据后一段时间才又发送了一些数据。那么这种情况下那 5B 数据将会阻塞。 基于以上,我猜测 tls 需要独立的包结构才能解决上述问题。 |
3
moonmagian 2022-03-30 12:15:06 +08:00 via Android
tls 用的是 CTR 工作模式,相当于转化成流密码了,不会有这个问题。即使不用 CTR 转成流密码也有 PKCS7 之类的填充手段填充分组
|
4
lysS OP @moonmagian 懂了,非常感谢
|
5
monkeyWie 2022-03-30 14:05:04 +08:00
你好,有的。 用 wireshark 抓包看看就知道了
|