数据填充规则之PKCS7
2021年06月21日 11:36 发布者:zntsbkhhh
安全芯片本身支持各种标准的加密算法,用户可以使用相应的算法完成数据的加解密、签名验签等功能来完善自己产品的安全性。在数据加解密应用中,数据填充又是其中重要的组成部分。数据填充通常有两个作用一是按要求将数据补足到要就的块长度来满足加密算法的应用需求;二是通过增加填充数据来进一步提高密文的安全性。本次主要介绍分组对称算法中常用的PKCS7。 PKCS7是当下各大加密算法都遵循的填充算法,且 OpenSSL 加密算法默认填充算法就是 PKCS7。PKCS7Padding的填充方式为当数据长度不足数据块长度时,缺几位补几个几,eg.对于AES128算法其数据块为16Byte(数据长度需要为16Byte的倍数),如果数据为”00112233445566778899AA”一共11个Byte,缺了5位,采用PKCS7Padding方式填充之后的数据为“00112233445566778899AA0505050505”。 特别注意的一点是如果是数据刚好满足数据块长度也要在元数据后在按PKCS7规则填充一个数据块数据,这样做的目的是为了区分有效数据和补齐数据。仍以AES128为例:如果数据为”00112233445566778899AABBCCDDEEFF”一共16个符合数据块规则采用PKCS7Padding方式填充之后的数据为“00112233445566778899AABBCCDDEEFF10101010101010101010101010101010”网友评论
小屁孩123 2021年06月22日
有一家叫凌科芯安的公司,他家的芯片口碑不错,有适合各种接口的不同型号供不同客户的选择。
有一家叫凌科芯安的公司,他家的芯片口碑不错,有适合各种接口的不同型号供不同客户的选择。
sunxiang0506 2021年06月22日
数据填充是必须的吗?我之前用过一款加密芯片,记得当时没填充啊。
数据填充是必须的吗?我之前用过一款加密芯片,记得当时没填充啊。
Test_wf 2021年06月22日
应该不是必须的吧,不过通过增加填充数据可以进一步提高密文的安全性,所以还是有数据填充更好一些吧
应该不是必须的吧,不过通过增加填充数据可以进一步提高密文的安全性,所以还是有数据填充更好一些吧
kessy1 2021年06月23日
填充的字节是随机的还是有固定排列的,PKCS7算法的安全性又如何呢?是否可以彻底有效的防止被破解
填充的字节是随机的还是有固定排列的,PKCS7算法的安全性又如何呢?是否可以彻底有效的防止被破解
zntsbkhhh 2021年06月23日
如 AES,DES 一类的分组对称加密算法要求明文数据的字节长度必须是其块大小的倍数,因此在加密明文数据之前我们必须对明文数据进行填充。
如 AES,DES 一类的分组对称加密算法要求明文数据的字节长度必须是其块大小的倍数,因此在加密明文数据之前我们必须对明文数据进行填充。
xiaoyuhzou1228 2021年06月24日
PKCS7Padding填充时,最后一个字节肯定为填充数据的长度,所以在解密后可以准确删除填充的数据,这样是否存在一定的安全隐患呢?
PKCS7Padding填充时,最后一个字节肯定为填充数据的长度,所以在解密后可以准确删除填充的数据,这样是否存在一定的安全隐患呢?
QL87 2021年06月24日
数据传输过程需要保护,解密后的操作与安全性无关。填充标准是一种定义,无论怎么填充,或者不填充,都不会降低安全性。
数据传输过程需要保护,解密后的操作与安全性无关。填充标准是一种定义,无论怎么填充,或者不填充,都不会降低安全性。
miniminimini 2021年06月24日
还有其他填充方式吗,期待楼主的下一篇讲解
还有其他填充方式吗,期待楼主的下一篇讲解
tyl2010 2021年06月24日
之前听说过PKCS5填充,跟PKCS7填充比起来哪个更安全一点?
之前听说过PKCS5填充,跟PKCS7填充比起来哪个更安全一点?
QL87 2021年06月24日
PKCS7是一种数据填充而不是加密算法对安全性没影响只是为了满足对称算法的数据需求。
PKCS7是一种数据填充而不是加密算法对安全性没影响只是为了满足对称算法的数据需求。
?-о 2021年06月24日
文中说PKCS7是当下各大加密算法都遵循的填充算法,那大多数人都知道的可能会影响安全性吧
文中说PKCS7是当下各大加密算法都遵循的填充算法,那大多数人都知道的可能会影响安全性吧
zntsbkhhh 2021年06月25日
某些加密算法要求明文需要按一定长度对齐,叫做块大小(BlockSize),比如16字节,所以需要填充,对安全性没有影响
某些加密算法要求明文需要按一定长度对齐,叫做块大小(BlockSize),比如16字节,所以需要填充,对安全性没有影响
kessy1 2021年06月25日
还有pkcs#5填充模式,两者的填充方法基本相同,都是按照分块之后填充,区别在于pkcs#5定长为8位,pkcs#7为非定长。
还有pkcs#5填充模式,两者的填充方法基本相同,都是按照分块之后填充,区别在于pkcs#5定长为8位,pkcs#7为非定长。
?-о 2021年06月25日
可见数据填充在数据加解密应用过程中,起到了很关键性的作用缺一不可。
可见数据填充在数据加解密应用过程中,起到了很关键性的作用缺一不可。
wang0327 2021年06月25日
哪家芯片安全性高啊,我们有加密需求不知道选哪家好呢
哪家芯片安全性高啊,我们有加密需求不知道选哪家好呢
Test_wf 2021年06月25日
LKT芯片这几年口碑挺好,有几个朋友都推荐过,大家都可以看看,毕竟产品安全是最重要的
LKT芯片这几年口碑挺好,有几个朋友都推荐过,大家都可以看看,毕竟产品安全是最重要的
sunxiang0506 2021年06月25日
真的吗?我看身边好多人都推荐他家,我去咨询下刚好我们公司正在做一款产品需要加密,
真的吗?我看身边好多人都推荐他家,我去咨询下刚好我们公司正在做一款产品需要加密,
小屁孩123 2021年06月25日
对的,LKT的芯片在业界还是挺出名的,建议去他家官网查看一下。
对的,LKT的芯片在业界还是挺出名的,建议去他家官网查看一下。
miniminimini 2021年06月25日
文章很值得学习,感谢分享,果断收藏
文章很值得学习,感谢分享,果断收藏

最近正好有加密芯片的需求,大家有啥推荐的产品吗?