AES加密補位填充的一個問題


AES加密支持多種填充方式,NoPadding,PKCS5Padding,ISO10126Padding,ZerosPadding,PKCS7Padding。

其中PKCS7Padding 就是數據個數最后少幾個就填充多少個數,具體的做法可以:數據的個數先取余16,然后16減去余數。

例如{1,2,3,4,5,6,7,8,9},總共9個數值,取余16后是9,需要補充7個7,則最后數據變為{1,2,3,4,5,6,7,8,9,7,7,7,7,7,7,7}

需要特別注意一種情況如果數據的個數剛好是16的倍數,那就要在補充16個字節(一定要)。例如{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},填充后的數據是{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16}

ZerosPadding就是缺少多少位就補充多少個0,基本流程相同。


免責聲明!

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



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