80-88, 165
3.10.3.2. ДЛЯ ЗАМЕНЫ КАЖДОЙ БУКВЫ
ИСПОЛЬЗУЕТСЯ РАЗНОЕ КОЛИЧЕСТВО ГРУПП
Рассмотрим систему шифрования в виде таблицы размером 10*10 (размеры могут быть другими). Пронумеруем строки и столбцы. Десятые строку и столбец обозначим нулём (нумерацию можно начать не с 1, а с 0). Нумерация может быть буквенной. Причём для нумерации строк и столбцов могут использоваться не одни и те же, а разные буквы. Каждая клетка имеет координаты, состоящие из двух цифр или букв – номер строки и номер столбца. Заполним ячейки таблицы буквами алфавита, необходимыми знаками препинания, цифрами. При этом 100 ячеек распределим пропорционально, в зависимости от частоты употребления букв в русском языке. Несколько клеток оставим пустыми. Пустышки при необходимости будем применять вместо пробелов, для обозначения красной строки, для доукомплектования последних групп (в случае перегруппировки) и в качестве резерва.
В простейшем варианте буквы вписываются в таблицу в алфавитном порядке, а цифры в возрастающей последовательности (такое расположение символов не трудно запомнить). Причём, часто встречающиеся буквы повторяются необходимое количество раз: так буква О займёт 8-9 клеток, буква Е займёт 7-8 клеток, буква А повторяется 6-7 раз, букву И запишем 5-6 раз и т.д. Нумерацию строк и столбцов можно сделать в обратном или случайном порядке.
В усложнённом варианте сначала вписывается какой-нибудь заученный текст (например, стихотворение), затем дописываются буквы алфавита, не вошедшие в этот текст. Сначала вписываются какие-либо запомнившиеся цифры (например, 1945 – год окончания второй мировой войны), потом остальные. Таким образом, расположение знаков в таблице будет условно-случайным, что повышает стойкость шифра. Применяются разные правила заполнения таблицы в удобном для запоминания порядке. В нашем примере в таблицу (приложение № 34) в начале записана заученная фраза, за ней – запомнившиеся цифры, потом остальные буквы алфавита, далее следуют знаки препинания и оставшиеся цифры, и, наконец, дописаны необходимое количество раз часто встречающиеся буквы. Нумерация строк и столбцов имеет два варианта (цифровой и буквенный).
В процессе шифрования буква исходного текста отыскивается в таблице и заменяется на двузначную цифровую группу (координаты), в которой одна цифра является номером строки, а другая – номером столбца.
Зашифруем текст (ЛУЧШЕ БОЛЬШОЙ ДОСТАТОК, ЧЕМ МАЛЕНЬКИЙ НЕДОСТАТОК.) и получим крипто-грамму ( 17 45 49 40 10 37 13 88 18 40 24 43 39 95 15 12 29 23 96 11 57 49 21 44 89 68 17 77 19 18 87 16 43 80 78 76 97 05 25 69 08 98 11 50 ). В полученной криптограмме, не смотря на короткий открытый текст, просматриваются повторяющиеся (одинаковые) двузначные группы. Если шифровку перегруппировать в группы по 3, 4 или 5 символов, повторы одинаковых двузначных групп будут незаметны. Если применить буквенную нумерацию строк и столбцов, шифрограмма будет иметь другой вид: ЛЖ ОД ОИ ОК ЛК НЖ ЛВ ТЗ ЛЗ ОК МГ ОВ НИ УД ЛД ЛБ МИ МВ УЕ ЛА ПЖ ОИ МА ОГ ТИ РЗ ЛЖ СЖ ЛИ ЛЗ ТЖ ЛЕ ОВ ТК СЗ СЕ УЖ ФД МД РИ ФЗ УЗ ЛА ПК. Для усложнения можно в каждой второй группе шифрограммы символы записывать в обратном порядке – сначала номер столбца, а затем номер строки. Или комбинировать – чередовать цифровые и буквенные группы.
Рассматриваемая таблица отличается от постолбцовой таблицы замены, показанной в приложении № 32, тем, что кроме случайного соответствия символ–двузначная группа, мы имеем неодинаковое (приблизительно пропорциональное частоте употребления) количество заменяющих групп для разных букв, что уменьшает проявление в шифрограмме закономерностей и характеристик исход-ного текста.
3.10.3.3. ШИФРОБЛОКНОТ
ИЗГОТОВЛЕНИЕ ШИФРОБЛОКНОТА
Возьмите обыкновенный блокнот (записную книжку) с алфавитом. Допишите в него недостающие буквы: Ё, Й, Ъ, Ы, Ь. Также желательно внести в блокнот после букв знаки препинания: точку, запятую, вопросительный знак. Итого в блокноте 36 букв и знаков. При необходимости можно внести - цифры и другие знаки.
Для шифрования используйте 1000 групп, по три цифры в каждой (трехзначные числа): 000, 001, 002, 003 и так далее до 999.
Для простоты распределите трёхзначные группы поровну. 1000 : 36 = 27 и 28 в остатке. Для шифрования каждой буквы и знаков препинания используйте по 27 групп. Остальные 28 оставьте в резерве. Для резерва выделите отдельную страницу.
При составлении блокнота трехзначные группы набираются в лотерейном порядке по принципу случайных чисел. Для этого вырежьте из картона небольшие прямо-угольные кусочки - 1000 штук. На каждом напишите номер: 000, 001, 002, 003 и т.д. до 999. Сложите их в коробку, перемешайте. Откройте блокнот на странице с буквой -“А”. Возьмите из коробки любой номерок, например, 323. Запишите это число в блокнот на странице с буквой - “А”. Этот номерок положите в другую, пустую, коробку. Возьмите из коробки второй номерок, например, 162. Запишите это число в блокнот, а номерок положите в другую коробку.
Достаньте из коробки очередной, третий, номерок. Запишите следующее число в блокнот, например, 952. И т.д. пока на странице с буквой “А” ни будет записано 27 групп.
ПРИМЕР
ААА
323 162 952 338 566 532 959 379 005 837 832 582 035 818 460 615 907 464 814 931 564 690 305 405
137 077 977
БББ
336 259 179 286 177 059 236 790 971 113 504 390 910 331 458 422 856 496 025 370 217 232 794 598 724 345 486
Аналогично набираете и вписываете числа (трёхзначные цифровые группы) для других букв и знаков препинания. Оставшиеся 28 групп запишите в резерв.
Для расшифрования на свободных листах вначале блокнота сделайте специальную таблицу – ДЕШИФРАНТ. Дешифрант состоит из двух колонок. Первая колонка - это №№ по порядку, трехзначные группы: 000, 001 , 002, 003 и т.д. до 999. Вторая колонка - буквы и знаки. Сначала впишите в блокнот первую колонку - порядковые номера. Затем заполните вторую колонку - напротив каждого по-рядкового номера соответствующую букву или знак.
Для этого откройте блокнот на странице с буквой «А». Первая группа здесь - 323. Против порядкового № 323 дешифранта напишите букву «А». Вторая группа – 162. Против порядкового номера 162 в дешифранте напишите букву “А”, и т.д.
Далее, открываете блокнот на странице с буквой - “Б” и в дешифранте против соответствующих групп (порядковых номеров) проставляете букву «Б». Аналогично заполняете вторую колонку дешифранта остальными буквами и знаками препинания. Против групп, попавших в резерв, - пусто (например, № 260).
Шифроблокнот и дешифрант к нему показаны в приложении № 35.
ШИФРОВАНИЕ ТЕКСТА
Например, нужно зашифровать слово - “БАБА”. Первая буква в тексте - “Б”. Откройте блокнот на странице с буквой “Б”. Первая группа - 336. Напишите ее под (над) первой буквой “Б” в тексте. Смотрите текст дальше, есть ли в тексте еще буквы “Б”. Вторую букву “Б” шифруйте вто-рой группой - 259 и т.д. Каждую букву шифруйте новой группой, пока все буквы “Б” в тексте ни будут зашифрованы. Такая методика исключает повторное использование групп.
Возвращаемся к началу исходного текста. Вторая буква в тексте - “А”. Откройте блокнот на странице с буквой «А». Первая группа здесь - 323. Напишите её под буквой “А”. Следующую букву “А” шифруйте второй группой - 162. И т. д., до тех пор, когда все буквы «А» в тексте будут зашифрованы.
Аналогично шифруйте остальные буквы текста (в приведённом примере их нет). Получилась шифрограмма: 336 323 259 162. Для замены каждой буквы можно использовать любые из 27 групп, предназначенных для данной буквы, в любом порядке, не допуская повторного использования одной и той же группы.
РАСШИФРОВАНИЕ
Для расшифрования криптограммы найдите в дешифранте порядковый № 336. Напротив него стоит буква
- “Б”. Напишите букву “Б” под первой группой шифрограммы. Вторая группа в шифрограмме - 323. Найдите в дешифранте порядковый № 323. Напротив него стоит буква - “А”. Запишите её под второй группой шифрограммы. И т.д. Получится:
336 323 259 162
Б А Б А
ПРАВИЛА РАБОТЫ
Работа с конфиденциальной информацией и СРШ-ДРК должна проводиться в отсутствии посторонних. При шифровании запрещается повторное использование одной и той же группы. Если текст большой и блокнот не позволяет зашифровать весь текст без повторного использования групп, разбейте его на части и передавайте по частям, как отдельные шифрограммы.
Уничтожайте испорченные листы и черновики, а также утратившие значение шифрограммы и секретные тексты.
Если понадобится внести в блокнот другие знаки или цифры, используйте часть резерва. Цифры можно разместить отдельно после букв в конце блокнота или вместе с буквами в алфавитном порядке: 1 – один - после буквы “О”, 2 - два - после буквы «Д» и т.д. Резервные группы можно применять как знак раздела (для обозначения пробела или красной строки), для доукомплектования последних групп при перегруппировке шифрограммы и в других случаях.
Конечно, изготавливая шифроблокнот, распределять заменяющие элементы (шифрообозначения) для каждой буквы нужно не поровну, а в количестве пропорциональном частоте употребления букв в русском языке. Но равномерное распределение трёхзначных цифровых групп, показанное на примере данного шифроблокнота, даёт возможность более удобного и качественного манёвра изменения ключа. Даёт возможность применить сдвиг на одну или несколько позиций. Алфавит шифроблокнота нумеруется. Нумерация начинается с ноля, т.е. букве «А» присваивается порядковый номер 0, букве «Б» - порядковый номер 1, букве «В» - 2 и т.д. Такая нумерация помогает хорошо ориентироваться и вычислять нужные для замены группы.
Так, например, при сдвиге на три позиции (ключ равен 3) для замены буквы «А» используются группы, предназначенные для буквы «Г» - к порядковому номеру буквы «А» (0) прибавляем значение ключа (3) и получаем порядковый номер буквы «Г» (3). Буква исходного текста «Б» в процессе шифрования заменяется на трёхзначные цифровые группы, предназначенные для буквы «Д» - порядковый номер буквы «Б» (1) складываем со значением ключа (3) и получаем порядковый номер абзаца, соответствующего букве «Д» (4), и т.д.
Можно разбить алфавит попарно и для замены буквы «А» использовать группы, предназначенные для буквы «Б». Для замены буквы «Б» применять группы, предназначенные для буквы «А», и так далее.
Ключ менять по специальному секретному графику (расписанию смены ключа).
ПЕРЕКОДИРОВАНИЕ
Для более надежной защиты информации применяется перекодирование (повторное шифрование). Для перекодирования изготавливается специaльный одноразовый блокнот (таблица), в котором хаотично построчно размещены 1000 трёхзначных (10000 четырёхзначных, 100 двузначных или др.) цифровых групп. Допустим, фрагмент начала первой страницы СПЕЦБЛОКНОТА ДЛЯ ПЕРЕКОДИРОВАНИЯ выглядит так:
695 898 081 073 585 001 513 292 894 892
139 963 207 275 523 053 196 272 935 434
… … … … … … … … … …
С помощью этого блокнота путем сложения и вычитания осуществляется дополнительное, второе, шифрование и дешифрование.
Так слово «ШАЛАШ» зашифрованное по шифроблокноту (приложение № 35) будет иметь такой вид: 803 323 001 162 153. Теперь каждую группу перекодируем с помощью спецблокнота, для чего используем первые 5 групп. Складывая группы шифровки и спецблокнота, получаем:
803 323 001 162 153
+ + + + +
695 898 081 073 585
----------------------------------------
1498 1221 082 235 738
Отбрасывая разряд тысяч, получим окончательный вид зашифрованного текста: 498 221 082 235 738.
Применяя неарифметическое сложение, в каждом разряде записываем только единицы результата, а десятки (если есть) отбрасываем, не учитываем, в следующий, высший разряд не плюсуем. Результат суммы будет отличаться от показанного выше. В модульной арифметике сложение и вычитание выполняется относительно некоторого фиксированного числа, которое называется модуль. В данном случае значение модуля равно 10, и все числа лежат в диапазоне от 0 до 9. Каждая пара цифр (каждый разряд) складывается независимо от соседних. Если число превышает 9, оно заменяется на остаток от деления этого числа на модуль. Так 5+8=13. 13 > 9, поэтому делим на модуль. 13 : 10 = 1 и остаток 3. Итак, при сложении 5 и 8 результат равен 3. Принята такая форма записи: 5+8;3 (mod 10). Читается так: 13 сравнимо с 3 по модулю 10. Действуя таким образом, получим новую версию шифрограммы: 498 111 082 135 638. Если вычесть 6 из 4, то результат (-2) получается отрицательным. В этом случае к нему прибавляется модуль (10). В итоге получим 8. 4-6;8 (mod 10) т.е. минус два сравнимо с 8 по модулю 10.
Использованные группы вычеркиваются. Для следующего сообщения используются очередные группы. Когда все группы будут использованы (вычеркнуты), спецблокнот уничтожается и вводится в действие новый, с другим набором. Таким образом, каждое шифрованное сообщение будет передаваться в новом ключе (бесконечная гамма). Блокнот перекодирования может быть с отрывными листами. Листы вырываются и уничтожаются по мере использования страниц.
Данный способ относится к шифрам гарантированной стойкости.
Дешифрование производится в обратном порядке пу-тем вычитания из групп криптограммы групп спецблокнота:
498 221 082 235 738
- - - - -
695 898 081 073 585
------------------------------------------
803 323 001 162 153
Свидетельство о публикации №224031000952