пятница, 15 февраля 2013 г.

Шифр Цезаря

Шифр Цезаря, также известный как шифр сдвига, код Цезаря или сдвиг Цезаря - один из самых простых и наиболее широко известных методов шифрования.

Шифр Цезаря - это вид шифра подстановки, в котором каждый символ в открытом тексте заменяется буквой находящейся на некоторое постоянное число позиций левее или правее него в алфавите. Например, в шифре со сдвигом 3, А была бы заменена на Г, Б станет Д, и так далее.

Шифр назван в честь римского императора Гая Юлия Цезаря, использовавшего его для секретной переписки со своими генералами.

Шаг шифрования, выполняемый шифром Цезаря, часто включается как часть более сложных схем, таких как шифр Виженера, и все еще имеет современное приложение в системе ROT13. Как и все моноалфавитные шифры, шифр Цезаря легко взламывается и не имеет практически никакого применения на практике.

Если сопоставить каждому символу алфавита его порядковый номер (нумеруя с 0), то шифрование и дешифрование можно выразить формулами модульной арифметики:

Y=(x+k) mod n

X=(y-k) mod n

где x - символ открытого текста, y - символ шифрованного текста, n - мощность алфавита, а k - ключ.

С точки зрения математики шифр Цезаря является частным случаем аффинного шифра.

Например:

Шифрование с использованием ключа k = 3. Буква "С" "сдвигается" на три буквы вперед и становится буквой "Ф". Твердый знак, перемещённый на три буквы вперед, становится буквой "Э", и так далее:

Исходный алфавит: АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ

Шифрованный: ГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯАБВ

Тот же самый пример с текстом:

Съешь же ещё этих мягких французских булок, да выпей чаю.

Зашифрованый текст имеет вид:

Фэзыяйззьиахлшпвёнлшчугрщцкфнлшдцосн, жгеютзмъгб.

Комментариев нет:

Отправить комментарий