Дополнение PKCS5
При шифровании и дешифровке данных блочными шифрами, если ваши данные не кратны размеру блока, нужно их дополнить чем то до размера кратного блоку.
Часто применяется дополнение PKCS7 (ну или PKCS5 при размере блока 64 бита).
Суть метода очень проста, для блока в 8 байт:
1. Если данные короче чем размер блока, дополняем их байтами значения которых равны их количеству. например у нас блок из данных 0x01 0x02 0x03 0x04, не хватает четырех байт, дополняем четырьмя байтами значение которых равно 4 , получаем 0x01 0x02 0x03 0x04 0x04 0x04 0x04 0x04
2. Если данные кратны блоку то все равно дополняем восемью восьмерками.
При дешифровке и удалении дополнения мы смотрим на последний байт, его значение и будет то количество байт которое нужно удалить, именно для этого нужно дополнение когда данные итак уже кратны размеру блока.
Комментарии
Отправить комментарий