找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2599|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

數(shù)據(jù)填充規(guī)則之PKCS7

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:918489 發(fā)表于 2021-6-21 11:40 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
安全芯片本身支持各種標(biāo)準(zhǔn)的加密算法,用戶可以使用相應(yīng)的算法完成數(shù)據(jù)的加解密、簽名驗簽等功能來完善自己產(chǎn)品的安全性。在數(shù)據(jù)加解密應(yīng)用中,數(shù)據(jù)填充又是其中重要的組成部分。數(shù)據(jù)填充通常有兩個作用一是按要求將數(shù)據(jù)補足到要就的塊長度來滿足加密算法的應(yīng)用需求;二是通過增加填充數(shù)據(jù)來進(jìn)一步提高密文的安全性。本次主要介紹分組對稱算法中常用的PKCS7。
PKCS7是當(dāng)下各大加密算法都遵循的填充算法,且 OpenSSL 加密算法默認(rèn)填充算法就是 PKCS7。PKCS7Padding的填充方式為當(dāng)數(shù)據(jù)長度不足數(shù)據(jù)塊長度時,缺幾位補幾個幾,eg.對于AES128算法其數(shù)據(jù)塊為16Byte(數(shù)據(jù)長度需要為16Byte的倍數(shù)),如果數(shù)據(jù)為”00112233445566778899AA”一共11個Byte,缺了5位,采用PKCS7Padding方式填充之后的數(shù)據(jù)為“00112233445566778899AA0505050505”。
特別注意的一點是如果是數(shù)據(jù)剛好滿足數(shù)據(jù)塊長度也要在元數(shù)據(jù)后在按PKCS7規(guī)則填充一個數(shù)據(jù)塊數(shù)據(jù),這樣做的目的是為了區(qū)分有效數(shù)據(jù)和補齊數(shù)據(jù)。仍以AES128為例:如果數(shù)據(jù)為”00112233445566778899AABBCCDDEEFF”一共16個符合數(shù)據(jù)塊規(guī)則采用PKCS7Padding方式填充之后的數(shù)據(jù)為
“00112233445566778899AABBCCDDEEFF10101010101010101010101010101010”
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:382165 發(fā)表于 2021-6-22 10:53 | 只看該作者
最近正好有加密芯片的需求,大家有啥推薦的產(chǎn)品嗎?
回復(fù)

使用道具 舉報

板凳
ID:382165 發(fā)表于 2021-6-22 10:54 | 只看該作者
最近正好有加密芯片的需求,大家有啥推薦的產(chǎn)品嗎?
回復(fù)

使用道具 舉報

地板
ID:942380 發(fā)表于 2021-6-22 13:17 | 只看該作者
有一家叫凌科芯安的公司,他家的芯片口碑不錯,有適合各種接口的不同型號供不同客戶的選擇。
回復(fù)

使用道具 舉報

5#
ID:919162 發(fā)表于 2021-6-22 13:26 | 只看該作者
數(shù)據(jù)填充是必須的嗎?我之前用過一款加密芯片,記得當(dāng)時沒填充啊。
回復(fù)

使用道具 舉報

6#
ID:382205 發(fā)表于 2021-6-22 20:12 | 只看該作者
應(yīng)該不是必須的吧,不過通過增加填充數(shù)據(jù)可以進(jìn)一步提高密文的安全性,所以還是有數(shù)據(jù)填充更好一些吧
回復(fù)

使用道具 舉報

7#
ID:382159 發(fā)表于 2021-6-23 09:49 來自手機(jī) | 只看該作者
填充的字節(jié)是隨機(jī)的還是有固定排列的,PKCS7算法的安全性又如何呢?是否可以徹底有效的防止被破解
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表