Методы и задачи криптографической защиты информации. Мартынов А.И. - 57 стр.

UptoLike

Составители: 

Соответственно для раскодирования необходимо произвести
циклический сдвиг подблока в противоположную сторону на такое же
количество бит. Обычно величина сдвига и его направление определяется
паролем, что обеспечивает привязку к ключу. В том случае, если блок
шифруется по байтам, то следует исключать ситуации, при которых размер
сдвига кратен 8.
Программная реализация такого шифра включает три функциональных
блока, где каждый может быть оформлен как отдельная процедура. Это
процедура «распаковки» (
procedure TForm1.unpack
) в битовое представление,
процедура, организующая циклический сдвиг (
function TForm1.shiftblock
),
и процедура «упаковки» битового представления обратно в текстовый блок
(
procedure TForm1.pack
).
//       
// cblock -   
// cbitblock -   cblock
//  :      
//   (8 -> 2)    
 
// ,    - "AB" (#65#66),   
 :
// 01000001 1000010
Рисунок 2.15. Пример шифрования методом циклического сдвига