КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Шифрование открытых данных в режиме простой замены
Режим простой замены СТАНДАРТ ШИФРОВАНИЯ ДАННЫХ ГОСТ 28147-89 ГОСТ 28147-89 представляет собой 64-битовый блочный алгоритм с 256-битовым ключом. Он предназначен для аппаратной и программной реализации, удовлетворяет криптографическим требованиям и не накладывает ограничений на степень секретности защищаемой информации. Алгоритм предусматривает четыре режима работы: 1. шифрование данных в режиме простой замены; 2. шифрование данных в режиме гаммирования; 3. шифрование данных в режиме гаммирования с обратной связью; 4. выработка имитовставки. Основными режимами шифрования являются режимы с использованием гаммирования, однако они базируются на использовании шифрования данных в режиме простой замены.
Открытые данные, подлежащие шифрованию, разбивают на 64‑разрядные блоки . Процедура шифрования 64-разрядного блока в режиме простой замены включает 32 цикла . В ключевое запоминающее устройство вводят 256 бит ключа в виде восьми 32-разрядных подключей (чисел) . Последовательность битов блока разбивают на две последовательности по 32 бита: и , где ‑ левые или старшие биты, ‑ правые или младшие биты. Работа алгоритма в режиме простой замены изображена на рис. 4.1. Обозначения на схеме: , 32-разрядные накопители; 32-разрядный сумматор по модулю (); 32-разрядный сумматор по модулю ; R 32-разрядный регистр циклического сдвига; КЗУ ‑ ключевое запоминающее устройство на 256 бит, состоящее из восьми 32-разрядных накопителей z; S ‑ блок подстановки, состоящий из восьми узлов замены (S-блоков замены) .
Эти последовательности вводят в накопители и перед началом первого цикла шифрования. В результате начальное заполнение накопителя :
32, 31, …, 2, 1 номер разряда N1
начальное заполнение накопителя N2: 32, 31, …, 2, 1 номер разряда N2
Первый цикл процедуры шифрования 64-разрядного блока открытых данных можно описать уравнениями: Здесь – заполнение N1 после 1-го цикла шифрования; ‑ заполнение после 1-го цикла шифрования; ‑ функция шифрования. Аргументом функции является сумма по модулю числа (начального заполнения накопителя ) и числа подключа, считываемого из накопителя КЗУ. Каждое из этих чисел равно 32 битам. Функция включает две операции над полученной 32-разрядной суммой . Первая операция называется подстановкой (заменой) и выполняется блоком подстановки . Блок подстановки состоит из восьми узлов замены ( -блоков замены) с памятью 64 бит каждый. Поступающий из на блок подстановки 32-разрядный вектор разбивают на восемь последовательно идущих 4-разрядных векторов, каждый из которых преобразуется в четырехразрядный вектор соответствующим узлом замены. Каждый узел замены можно представить в виде таблицы-перестановки шестнадцати четырехразрядных двоичных чисел в диапазоне . Входной вектор указывает адрес строки в таблице, а число в этой строке является выходным вектором. Затем четырехразрядные выходные векторы последовательно объединяют в 32-разрядный вектор. Узлы замены (таблицы-перестановки) представляют собой ключевые элементы, которые являются общими для сетей ТКС и редко изменяются. Эти узлы замены должны сохраняться в секрете. Вторая операция ‑ циклический сдвиг влево (на 11 разрядов) 32-разрядного вектора, полученного с выхода блока подстановки . Циклический сдвиг выполняется регистром сдвига . Затем результат работы функции шифрования суммируют поразрядно по модулю 2 в сумматоре c 32-разрядным начальным заполнением накопителя . Затем полученный на выходе результат (значение ) записывают в накопитель , а старое значение (значение ) переписывают в накопитель (значение ). Первый цикл завершен. Последующие циклы осуществляются аналогично, при этом во втором цикле из КЗУ считывают заполнение – подключ , в третьем цикле ‑ подключ и т.д., в восьмом цикле ‑ подключ . В циклах с 9-го по 16-й, а также в циклах с 17-го по 24-й подключи из КЗУ считываются в том же порядке: . В последних восьми циклах с 25-го по 32-й порядок считывания подключей из КЗУ обратный: . Таким образом, при шифровании в 32 циклах осуществляется следующий порядок выборки из КЗУ подключей: В 32-м цикле результат из сумматора вводится в накопитель , а в накопителе сохраняется прежнее заполнение. Полученные после 32-го цикла шифрования заполнения накопителей и . являются блоком шифрованных данных , соответствующим блоку открытых данных . Уравнения шифрования в режиме простой замены имеют вид
где ‑ заполнение после -го цикла шифрования; ‑ заполнение . после -го цикла шифрования, . Блок зашифрованных данных (64 разряда) выводится из накопителей , в следующем порядке: из разрядов накопителя , затем из разрядов накопителя , т.е. начиная с младших разрядов: . Остальные блоки открытых данных зашифровываются в режиме простой замены аналогично.
Дата добавления: 2014-12-16; Просмотров: 1419; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |