(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).
Ссылка на скачивание - внизу страницы.