【Android】pkcs#5填充和pkcs#7填充比較


1.相同點:

pkcs#5填充和pkcs#7填充算法沒有任何區別。

 

他們的填充字符串由一個字節序列組成,每個字節填充該填充字節序列的長度。

假定塊長度為 8,數據長度為 9,
數據: FF FF FF FF FF FF FF FF FF
PKCS7 填充: FF FF FF FF FF FF FF FF FF 07 07 07 07 07 07 07

簡單地說, PKCS5, PKCS7和SSL3, 以及CMS(Cryptographic Message Syntax)

有如下相同的特點:
1)填充的字節都是一個相同的字節
2)該字節的值,就是要填充的字節的個數

如果要填充8個字節,那么填充的字節的值就是0×8;
要填充7個字節,那么填入的值就是0×7;

如果只填充1個字節,那么填入的值就是0×1;

恰好8個字節時還要補8個字節的0×08

正是這種即使恰好是8個字節也需要再補充字節的規定,可以讓解密的數據很確定無誤的移除多余的字節。

 

2.不同點:

在PKCS5Padding中,明確定義Block的大小是8位,而在PKCS7Padding定義中,對於塊的大小是不確定的,可以在1-255之間(塊長度超出255的尚待研究)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM