Читайте также:
|
|
Метод перестановки в магическом квадрате. Магическим квадратом называется квадратная таблица с вписанными в ее ячейки натуральными числами в диапазоне от 1 до n2, которые дают в сумме по каждому столбцу, каждой строке и каждой диагонали одно и то же число (n – длина строки квадрата). Таблица заполняется шифруемым текстом строго в соответствии с нумерацией ячеек таблицы. Далее содержимое таблицы выписывается либо построчно, либо по столбцам.
Если количество символов в шифруемом тексте не кратно числу ячеек магического квадрата, то после последнего символа шифротекста ставится три пробела, а оставшиеся ячейки квадрата заполняются произвольными символами.
Шифрация или дешифрация может быть реализована только после заполнения секретными данными шифртаблицы – магический квадрат (в нашем случае размерностью 6х6).
Рассмотрим более подробно программный модуль, обеспечивающий реализацию криптографических преобразований внутри магического квадрата.
Процедура «Шифрация» включает в себя два программных блока. Первый блок обеспечивает поэлементную запись исходного текста в массив Ms2, с учетом перестановки символов текста по правилам, прописанным в массиве Ms1 (магический квадрат).
Во втором блоке осуществляется построчная запись элементов массива Ms2 в однострочный редактор Edit.
Процедура «Запись» также состоит из двух последовательно выполняемых программных блоков. В первом блоке (рис. 2.4) осуществляется перезапись элементов магического квадрата, сформированного в Memo1 в массив Ms1. Во втором – запись содержимого Memo1 в файл fl_14_1.
Ниже приводится описание основных программных процедур и функций программного модуля криптографических преобразований.
Заполнение данными самого магического квадрата, возможно двумя способами.
1. Путем занесения значений в окошко с наименованием «МАГИЧЕСКИЙ КВАДРАТ» (компонент Memo1) каждый элемент строки которого (кроме последнего), включает в себя три символа, из которых первые два – цифры, а третий – пробел (последний элемент строки – две цифры).
2. В окошко редактора «КЛЮЧ» заносится секретное имя файла, в котором расположен заранее подготовленный и заполненный магический квадрат. Далее нажимаем на кнопку с тем же названием «Ключ».
Кнопки «Чтение» и «Запись» обеспечивают либо чтение данных о магическом квадрате из файла fl_14_1, либо запись в него данных из Memo1.
Процедура реализации ограничений на множество допущенных к вводу символов KeyPress, для однострочных редакторов Edit1 – Edit9 множеством (Mn_Alf) представлена на рис. 2.5.
Процедура инициализации FormCreate. В рамках данной процедуры осуществляется задание рабочего алфавита (Alf) шифрации и множество допущенных к вводу символов в однострочные редакторы Edit1 – Edit9:
Дата добавления: 2015-07-20; просмотров: 143 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
СЮКОТАЙ НО ХЭЙХО | | | Решение. |