(1-7-5-8-2-4-3-6)
Запись открытого текста
(1-2-3-4-5-6-7-8)
Рис. 13
Гамильтонов путь на графе
Открытый текст: «ШИФРОВАНИЕ ПЕРЕСТАНОВКОЙ».
Ключ – гамильтонов путь на графе.
Шифртекст: «ШАОНИРФВИЕЕСЕП_РТОВЙАОНК».
(Маршрутов может быть много.)
8.2. АЛГОРИТМЫ ВИЖИНЕРА И БОФОРА
Наибольшее распространение при таком шифровании получили алгоритмы Вижинера и Бофора. Математическую основу этих алгоритмов составляют операции сложения и вычитания по модулю.
Суммой двух чисел a и b по модулю n называется число, равное:
если
Разностью двух чисел a и b по модулю n называется число, равное:
если
Формула алгоритма Вижинера следующая:
, где - код i-й буквы открытого текста, - код i-й буквы зашифрованного текста, - код i-й буквы ключа, в качестве которого используется некоторое слово или фраза, n – число символов алфавита.
Расшифрование по методу Вижинера осуществляется с помощью выражения:
.
Для шифрования по методу Вижинера необходимо выписать исходное сообщение, под ним записать буквы ключа (если ключ короче сообщения, то он повторяется столько раз, сколько нужно) и выполнить операции.
Пример 1. Зашифровать слово ПРОГРАММА кодом Вижинера.
Ключевое слово – МЕТОД.
Выпишем исходное сообщение и ключ:
П Р О Г Р А М М А
М Е Т О Д М Е Т О
Составим ту же таблицу в кодах букв алфавита:
16 17 15 4 17 1 13 13 1
13 6 19 15 5 13 6 19 15
Выполним необходимые математические операции:
y1 = (16+13) mod33 = 16 + 13 = 29 Ь
y2 = (17+6) mod33 = 17 + 6 = 23 Ц
y3 = (15+19) mod33 = 15 + 19 - 33 = 1 А
y4 = (4+15) mod33 = 4 + 15 = 19 Т
y5 = (17+5) mod33 = 17 + 5 = 22 Х
y6 = (1+13) mod33 = 1 + 13 = 14 Н
y7 = (13+6) mod33 = 13 + 6 = 19 Т
y8 = (13+19) mod33 = 13 + 19 = 32 Я
y9 = (1+15) mod33 = 1 + 15 = 16 П
Составим таблицу:
П |
Р |
О |
Г |
Р |
А |
М |
М |
А |
М |
Е |
Т |
О |
Д |
М |
Е |
Т |
О |
29 |
23 |
34 |
19 |
22 |
14 |
19 |
32 |
19 |
Ь |
Ц |
А |
Т |
Х |
Н |
Т |
Я |
П |
Таким образом, зашифрованный текст: ЬЦАТХНТЯП.
Пример 2. В результате шифрования кодом Вижинера по ключевому слову КНИГА получился текст ПЦЪОПНЬН. Расшифровать этот текст.
Выпишем зашифрованное сообщение и ключ:
К Н И Г А К Н И
Составим ту же таблицу в кодах букв алфавита:
16 23 27 15 16 14 29 14
11 14 9 4 1 11 14 9
Выполним необходимые математические операции:
x1 = (16-11) mod33 = 16 - 11 = 5 Д
x2 = (23 - 14) mod33 = 23 – 14 = 9 И
x3 = (29 - 9) mod33 = 27 – 9 = 18 С
x4 = (15 - 4) mod33 = 15 – 4 = 11 К
x5 = (16 - 1) mod33 = 16 – 1 = 15 О
x6 = (14 - 11) mod33 = 1 4 – 11 = 3 В
x7 = (29 - 14) mod33 = 29 – 14 = 15 О
x8 = (14 - 9) mod33 = 14 – 9 = 5 Д
Составим таблицу:
П |
Ц |
Ъ |
О |
П |
Н |
Ь |
Н |
К |
Н |
И |
Г |
А |
К |
Н |
И |
5 |
9 |
18 |
11 |
15 |
3 |
15 |
5 |
Д |
И |
С |
К |
О |
В |
О |
Д |
Исходное слово - ДИСКОВОД.
Алгоритм Бофора использует для шифрования следующую формулу:
, где , и имеют тот же смысл что и в алгоритме Вижинера.
Расшифровка по алгоритму Бофора осуществляется по формуле:
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.