Простые алгоритмы шифрования

03.09.2017 13:08

    В начале нашей эры в 56 году н.э. во время войны с галлами Юлий Цезарь использует шифр простой замены. Более сложной разновидностью шифра замены является «квадрат Полибия». В XVI веке н.э. французский дипломат Вижинер предложил оригинальный шифр сложной замены, получивший впоследствии название системы Виженера.

    В тоже время Ф. Бекон впервые предложил представление букв алфавита пятизначным двоичным кодом: А - 00001, Б - 00010… Такой способ шифрования обладал слабой стойкостью, однако эта идея, через три столетия легла в основу электрической и электронной связи на основе кодов Морзе, Бодо, телеграфных кодов.

    Известный математик К. Гаусс в 18 - 19 веках создал шифр с многократной подстановкой или равночастный шифр. В нашем столетии американский ученый Вернам предложил систему побитового шифрования открытого текста, представленного телеграфным двоичным кодом, когда каждый бит преобразуется с использованием бита ключа по алгоритму сложения по модулю два.

    В последнее время широкое распространение получили криптосистемы с открытым ключом, или двух ключевые криптосистемы или асимметричные криптосистемы, в то время как обычные криптосистемы с секретным ключом называют симметричными криптосистемами. Принципы построения таких криптосистем и лежащих в их основе криптоалгоритмов рассмотрим далее.

 

Примеры решения задач

 

1)    С использованием шифра Цезаря зашифровать фразу (ключ 3):

Шифр Цезаря – шифр простой замены.

Решение: Под алфавитом открытого текста пишется тот же алфавит со сдвигом на такое количество позиций, которое равно значению ключа шифрования по циклу. При шифровании буквы открытого текста у верхнего алфавита заменялись буквами нижнего алфавита.

            А Б В Г Д Е Ж … Э Ю Я

Г Д Е Ж … Э Ю Я А  Б В

Т.о., получаем криптотекст: «ылчу щзкгув  - ылчу тусфхсм кгпзрю».

 

2)    С использованием системы Виженера зашифровать фразу (ключ море):

Защита информации

Решение: Составим матрицу шифрования. Под алфавитом открытого текста пишется тот же алфавит столько раз, сколько букв в слове-ключе, причем каждая строка начинается с очередной буквы ключа шифрования.

 
Открытый текст:   Защитаинформации

Ключ:      Мореморемореморе

Закрытый текст:  Фойняощтбэбсмещн

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

    Однако еще в XIX веке специалисты в области криптографии предположили, что секретность алгоритма шифрования не является гарантией от взлома. Более того, в дальнейшем было понято, что понастоящему надежная система шифрования должна оставаться защищённой, даже если противник полностью узнал алгоритм шифрования. Секретность ключа должна быть достаточна для хорошего шифра, чтобы сохранить стойкость к попыткам взлома. Этот фундаментальный принцип впервые был сформулирован в 1883 Керкхоффсом (A. Kerckhoffs) и обычно называется принципом Керкхоффса.

    Например, в первом примере усовершенствуем шифр Цезаря с учетом правила Керкхоффса и предположим, что буквы сдвигаются не на три знака вправо, а на n. В этом случае в системе шифрования появляется ключ – число n – параметр сдвига. Отправитель и получатель могут каким-либо образом договариваться (например, лично) и иногда менять значение ключа. Так как n может принимать разные значения, знание одного только алгоритма не позволит противнику расшифровать секретное сообщение.