2013-09-24 56 views
0

我用PKS5Padding在Java加密中實現了AES(CBC)算法。我注意到,對於128字節的輸入字符串大小;加密文本的大小是144字節。這是正常的嗎?對於我的理解,AES算法不應該填充該字符串,因爲它是16的乘法。爲什麼PKS5Padding在Java中改變128個字節的字符串

+0

您至少應該在您的問題中添加標籤[tag:encryption]或[tag:cryptography],AES標籤也不會被監控。 –

回答

1

始終應用PKCS#7/PKCS#5填充。檢查Wikipedia page。如果您的16字節對齊的數據將以字節01結尾,您將刪除填充,那麼您將有一個較少的明文字節。因此,對於AES,添加1到16個字節,因此具有多個塊大小是最糟糕的情況,而不是最好的。

相關問題