首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PKCS7对TLS 1.2填充

PKCS7对TLS 1.2填充
EN

Security用户
提问于 2015-05-08 21:53:53
回答 1查看 1.5K关注 0票数 4

有谁能解释一下为什么在PKCS7 https://www.rfc-editor.org/rfc/rfc2315页面22中声称的填充物之间有区别呢?

01

02 02

03 03 03 ..。

以及在TLS 1.2 https://www.rfc-editor.org/rfc/rfc5246页面24或http://www.isg.rhul.ac.uk/~kp/mee-comp.pdf页面1中使用的填充-这是

00

01 01

02 02 02

03 03 03 ..。

为什么TLS的人不使用PKCS7版本的填充?

EN

回答 1

Security用户

发布于 2015-05-08 22:20:05

填充没有什么不同--实际上是PKCS7填充。不同之处在于,数据以一个1字节字段结尾,该字段表示填充的长度。因此,你看到的是:

代码语言:javascript
复制
 MAC              Padding          PadLen
 xx xx xx .. xx | 05 05 05 05 05 | 05

这并不是TLS 1.2所独有的--如果您仔细研究一下RFCs,您会发现TLS 1.1、TLS 1.0、SSL3.0也有相同之处。原因似乎是遗留兼容性。

SSL2.0规范并不十分清楚如何(或什么)应用填充,但填充长度本身作为包中的字段以明文形式给出。由于这将导致填充长度与填充本身不同,因此可以看到03 03 03的填充长度记录为03,给出了完整的03 03 03 03值。也就是说,SSL2.0不使用PKCS7 7风格的填充,而是使用随机填充,例如A3 89 03 03。通过将相同的填充方法引入SSL3.0(以及稍后的TLS),可能会更容易地适应现有代码。

因此,答案是:只要正确检查填充的所有字节,TLS 1.2中的额外字节就没有安全好处或危害。其原因在于遗留支持和在旧堆栈之上实现新协议的易用性。

票数 5
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/88839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档