Режимы использования блочных шифров
Блочные шифры оперируют многими блоками открытых данных и шифртекста. Открытый текст разбивается на блоки одинаковой длины (длина блока обычно составляет 64 или 128 битов, иногда длиннее) и преобразуется в шифртекст , также разбитый на блоки . Блок и соответствующий ему блок обычно имеют одинаковую длину. Последний блок в сообщении может быть неполным (укороченным). Неполный блок обычно дополняют одним из способов: до требуемой длины : - добавляется битовая единица и необходимое число битовых нулей; - добавляется необходимое число случайных байтов, но в последнем байте записываетcя число добавленных байтов. Чтобы метод работал корректно, следует дополнять каждое сообщение, даже если открытый текст заканчивается на границе блока. Отметим, что имеются альтернативные варианты шифрования, называемые похищением, или заимствованием текста (ciphertext stealing), оперирующие с неполным последним блоком, при которых длины открытого текста и шифртекста совпадают. Далее обозначает -битовую функцию зашифрования, а – обратную к ней функцию расшифрования; – -битовый блок открытых данных, а – соответствующий ему блок шифртекста.
|