logo
Коды и шифры

Использование последовательности двоичных знаков гаммы для шифрования

Криптографу вначале необходимо преобразовать текст сообщения из алфавитно-цифрового к двоичному виду. В начале компьютерной эры для записи наиболее употребительных символов использовалось пяти- или шестиразрядное представление. Поскольку в этих случаях общее число символов было ограничено соответственно, числами 32 и 64, что накладывало ограничения на набор используемых символов, то в конце концов перешли к восьмиразрядному представлению, называемому байтом. Стало возможно использовать 256 символов, что вполне достаточно для записи не только строчных и прописных букв, чисел и знаков препинания, но и многих других символов, таких как скобки различного вида и разнообразные диакритические знаки. Сегодня восьмибитовое представление является стандартным. Так, например,

A=65=01000001,

B=66=01000010

и т.д., и

a=97=01100001,

b=98=01100010,

а символ

$=36=00100100

и

e=136=10001000.

При зашифровании символы текста, преобразованные в восьмиразрядные байты, обычно складывают с двоичной гаммой поразрядно (по модулю 2), то есть суммируются отдельные биты, без "переноса". Пусть, например, в сообщении стоит буква E, а соответствующий знак гаммы равен $, то есть

E = 01000101

$ = 00100100.

Складывая их по модулю 2, получаем

01100001=97=a,

и таким образом, буква шифрованного текста равна a.

Кроме данного линейного ("побитового") способа сложения, существуют и другие методы. Например, в главе 13 описана очень важная и стойкая система под названием DES (Data Encryption Standard - Стандарт шифрования данных США), в которой часть битов преобразуется нелинейным образом.