pkcs#5填充和pkcs#7填充比較
1.相同點(diǎn):
pkcs#5填充和pkcs#7填充算法沒(méi)有任何區別。
他們的填充字符串由一個(gè)字節序列組成,每個(gè)字節填充該填充字節序列的長(cháng)度。
假定塊長(cháng)度為 8,數據長(cháng)度為 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
簡(jiǎn)單地說(shuō), PKCS5, PKCS7和SSL3, 以及CMS(Cryptographic Message Syntax)
有如下相同的特點(diǎn):
1)填充的字節都是一個(gè)相同的字節
2)該字節的值,就是要填充的字節的個(gè)數
如果要填充8個(gè)字節,那么填充的字節的值就是0×8;
要填充7個(gè)字節,那么填入的值就是0×7;
…
如果只填充1個(gè)字節,那么填入的值就是0×1;
恰好8個(gè)字節時(shí)還要補8個(gè)字節的0×08
正是這種即使恰好是8個(gè)字節也需要再補充字節的規定,可以讓解密的數據很確定無(wú)誤的移除多余的字節。
2.不同點(diǎn):
在PKCS5Padding中,明確定義Block的大小是8位,而在PKCS7Padding定義中,對于塊的大小是不確定的,可以在1-255之間(塊長(cháng)度超出255的尚待研究)。
*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。