Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
3
Добавлен:
16.03.2016
Размер:
100.63 Кб
Скачать

АППАРАТНОЕ ПРИВЕДЕНИЕ ПО МОДУЛЮ В АСИММЕТРИЧНЫХ КРИПТОСИСТЕМАХ

Е.Ж. Айтхожаева, к.т.н., профессор, С.Т. Тынымбаев, к.т.н., профессор Казахский национальный исследовательский технический университет им.К.И.Сатпаева, г.Алматы

E-mail: ait_djam@mail.ru

Одним из наиболее надежных способов решения проблемы информационной безопасности является криптографическая защита. На современном этапе развития криптографии особое внимание уделяется аппаратной реализации асимметричных криптоалгоритмов, обладающих высокой потенциальной криптостойкостью. Использование аппаратных средств для выполнения базовых операций асимметричных криптоалгоритмов является одним из путей решения проблемы низкого быстродействия асимметричных криптосистем.

Для шифрпроцессора асимметричных криптосистем особое значение имеет операция приведения по модулю произведения двух чисел. Имеются исследования, где операция приведения по модулю реализуется с помощью делительных быстродействующих устройств (ведических, матричных, с конвейеризацией вычисления и др.). В ряде исследований используется разбиение приводимого числа на группы по к разрядов. Для каждой группы вычисляется частичные остатки по модулю. Затем частичные остатки суммируются и для суммы опять вычисляется остаток по модулю. Но ни один из этих методов не позволяет достичь желаемого быстродействия.

В работе [1] выявляются характерные признаки и предлагается классификация устройств приведения по модулю. У каждого класса устройств приведения по модулю есть свои достоинства и недостатки, и классификация позволяет выполнить сравнительную оценку аппаратной реализации приведения по модулю еще на уровне структуры. Подобная классификация позволяет систематизировать имеющиеся схемы устройств приведения по модулю и наметить пути решения проблем низкого быстродействия асимметричных криптосистем. Быстродействующие устройства приведения по модулю должны быть однотактными, без управляющего блока.

Таким устройством является блок приведения по модулю, который используется в запатентованном умножителе по модулю [2]. Используется параллельное получение сформированных на формирователях кратных модуля p (2p, 3p, …np), с дальнейшим их параллельным вычитанием из приводимого числа (произведения) z на сумматорах.

Схема быстродействующая, но аппаратные затраты очень высокие. Их можно уменьшить, используя дополнительный код модуля р и заменив умножение на 2ip (i =1,2,3,4…. log2n) путем сдвига модуля р влево на i разрядов непосредственно при его передаче на входы сумматоров для вычитания.

Усовершенствованная, с целью минимизации аппаратных затрат без потери быстродействия, схема блока приведения по модулю, представлена на рисунке 1. Аппаратная реализация приведения по модулю содержит преобразователь кода (CC), умножители на константу (MC), n-сумматоров (SM) и мультиплексор (MX).

На входы блока подается двоичный код числа z и двоичный код модуля р, причем z/p<=n, где n - размер блока, определяемый количеством сумматоров. Код числа z поступает на первые входы сумматоров для дальнейшего формирования разности c=z- (k×p), где k=1, 2, 3, 4,…n. Код числа z поступает также на нулевой информационный вход мультиплексора, так как z может быть меньше p и в этом случае необходимо будет в качестве результата приведения по модулю выдать на выход мультиплексора число z.

Двоичный код модуля р подается на вход преобразователя кода, с выхода которого он подается в дополнительном коде на второй вход первого сумматора для реализации операции c=z-р.

Рисунок 1- Структурная схема блока приведения по модулю

Дополнительный код модуля р подается также на входы умножителей на константу, на которых формируются значения 3p, 5p, 6p,.. (2i-1)p в дополнительном коде. С выходов умножителей на константу сформированные значения 3p, 5p, 6p,.. (2i- 1)p в дополнительном коде поступают на вторые входы k-х сумматоров, где k =(2i -1), а i =2,3,4…. log2n. На вторые входы k-х сумматоров, где k =2i (i =1,2,3,4…. log2n) подается дополнительный код модуля р с выхода преобразователя кода со сдвигом влево на i разрядов (косая передача влево).

На выходах сумматоров параллельно формируются разности c=z-k×p, где k=1,2,3,4…. 2i, которые подаются на информационные входы мультиплексора.

Переносы из старших разрядов сумматоров поступают на управляющие входы мультиплексора. На выходе переноса k-го сумматора будет формироваться «1», если значение z превышает значение k×p (остаток с>0). Эта «1» будет поступать на k-й управляющий вход мультиплексора. Если значение z меньше значения k×p (с<0), на выходе переноса k-го сумматора будет формироваться «0», который будет поступать на k-й управляющий вход мультиплексора. При поступлении на k-й управляющий вход мультиплексора сигнала «0» с выхода переноса k-го сумматора, мультиплексор подключит на выход блока информационный вход, на который подается значение с информационного выхода (k-1)-го сумматора. Данное значение будет представлять результат приведения по модулю р числа z.

Полученная схема минимизирована по аппаратным затратам, но при большом n они все равно высоки. Более оптимальным в плане аппаратных затрат и быстродействия является подход, когда операция приведения по модулю совмещается во времени с операцией получения приводимого произведения.

Список литературы:

1.Айтхожаева Е.Ж., Тынымбаев С.Т. Аспекты аппаратного приведения по модулю в асимметричной криптографии. // Вестник НАН РК. - 2014. - №5. - С. 88-93.

2.Петренко В.И., Кузьминов Ю.В. Умножитель по модулю. Патент РФ RU 2299461. Бюллетень № 14. Опубликован 20.05.07.

Соседние файлы в папке 3-Prikladnye-informacionnye-tehnologii