
- •Содержание
- •Введение
- •1.1. Общая система секретной связи (по К. Шеннону)
- •1.1.1. Основные криптографические термины
- •1.1.2. Модель системы секретной связи К.Шеннона
- •1.2. Подходы к оценке надежности реальных криптосистем
- •1.2.2. Метод сведения к общей алгоритмической проблеме
- •Глава 2. ОБЩИЕ АЛГОРИТМИЧЕСКИЕ ПРОБЛЕМЫ АНАЛИЗА ОСНОВНЫХ ТИПОВ ШИФРОВ
- •2.1. Элементарные шифры
- •2.2. Основные типы шифров
- •2.2.1 Потоковые шифры. Последовательность выбора шифрпреобразований
- •2.2.2. Качество гаммы
- •2.2.3. Периодичность гаммы
- •2.2.4. Блочные шифры
- •2.2.5. Алгоритмические проблемы, связанные со стойкостью основных типов шифров
- •Глава 3. ТЕСТИРОВАНИЕ УЗЛОВ КРИПТОСХЕМ КАК МЕТОД КОМПРОМЕТАЦИИ ШИФРОВ
- •3.1. Компрометация шифров
- •3.2. Задача тестирования линейной рекуррентной составляющей криптоузла
- •3.3. Задача восстановления параметров искаженной линейной рекурренты
- •3.3.1. Представление элементов рекурренты через элементы начального заполнения
- •3.3.2. Производные соотношения
- •3.3.4. Качественная характеристика задачи восстановления параметров линейной искаженной рекурренты
- •Глава 4. КРИПТОГРАФИЧЕСКИЕ СВОЙСТВА БУЛЕВЫХ ФУНКЦИЙ
- •4.1. Нелинейность булевой функции
- •4.2. Критерии распространения и корреляционная иммунность
- •4.3. Устойчивые булевы отображения
- •Глава 5. ОСОБЕННОСТИ ПРИМЕНЕНИЯ АЛГОРИТМА ГОСТ 28147-89
- •5.1. Криптоэквивалентная схема алгоритма ГОСТ 28147-89
- •5.2. Влияние блока подстановки на последовательности выходов итераций
- •5.2.1 Расшифрование в режиме простой замены
- •5.2.2. Возможность ослабления шифра за счет структуры сеансового ключа
- •5.3. Замечания о режимах шифрования и имитовставки
- •Глава 6. ВЫБОР ДОЛГОВРЕМЕННОГО КЛЮЧА АЛГОРИТМА ГОСТ 28147-89
- •6.1. Область сильных ключей
- •6.1.1. Достаточность условия равновероятности псевдогаммы для выбора сильного блока подстановки
- •6.2. Контроль долговременного ключа алгоритма ГОСТ 28147-89
- •6.2.1. Угроза внедрения слабых параметров
- •6.2.2. Подход к выявлению слабых долговременных ключей
- •6.2.3. Свойства теста
- •6.2.4. Тестирование долговременного ключа
- •Глава 7. ЭЛЕМЕНТЫ ТЕОРИИ СРАВНЕНИЙ
- •7.1.1. Расширенный алгоритм Эвклида
- •7.2. Модульная арифметика
- •7.2.1. Функция Эйлера и малая теорема Ферма
- •7.3. Сравнения первой степени от одного неизвестного
- •7.3.1. Китайская теорема об остатках
- •7.3.2. Степенные сравнения по простому модулю
- •Глава 8. ВЫЧИСЛЕНИЕ КВАДРАТНОГО КОРНЯ В ПРОСТОМ ПОЛЕ
- •8.1.1. Символ Лежандра
- •8.1.2. Символ Якоби
- •8.2. Алгоритм нахождения квадратного корня в простом поле
- •9.1. Построение криптосистемы RSA. Идея цифровой подписи
- •9.2. Смешанные криптосистемы. Протокол Диффи-Хэллмана ключевого обмена
- •9.3. Цифровая подпись Эль-Гамаля
- •9.3.1. Криптосистема Эль-Гамаля
- •9.3.2. Механизм цифровой подписи Эль-Гамаля
- •9.3.3. Ослабление подписи Эль-Гамаля вследствие некорректной реализации схемы
- •9.3.4. Варианты цифровой подписи типа Эль-Гамаля
- •10.1 Обозначения и постановка задачи
- •10.2. Построение корней из единицы в поле
- •10.3. Алгоритм дискретного логарифмирования
- •10.3.1. Пример вычисления дискретного логарифма
- •10.4. Фальсификация подписи Эль-Гамаля в специальном случае выбора первообразного элемента и характеристики поля
- •10.4.1. Слабые параметры в подписи Эль-Гамаля
- •Глава 11. МЕТОДЫ ФАКТОРИЗАЦИИ ПОЛЛАРДА
- •11.2.1. Оценка вероятности выбора критической пары
- •11.2.2. Оптимизация выбора критической пары
- •Глава 12. НЕКОТОРЫЕ СЛУЧАИ ОСЛАБЛЕНИЯ КРИПТОСИСТЕМЫ RSA
- •12.1. Атаки на RSA, не использующие факторизацию модуля
- •12.2. Атаки на RSA, использующие факторизацию модуля
- •12.2.1. Алгоритм факторизации Диксона
- •Глава 13. ТЕСТ ФЕРМА ПРОВЕРКИ ЧИСЕЛ НА ПРОСТОТУ
- •13.1. Решето Эратосфена и критерий Вильсона
- •13.2. Тест на основе малой теоремы Ферма
- •13.2.1. Основные свойства псевдопростых чисел
- •13.2.2. Свойства чисел Кармайкла
- •13.2.3. (n-1) - критерий Люка
- •13.2.3. Понятие о последовательностях Люка. (n+1) - критерий Люка
- •Глава 14. ТЕСТЫ СОЛОВЕЯ-ШТРАССЕНА И РАБИНА-МИЛЛЕРА ПРОВЕРКИ ЧИСЕЛ НА ПРОСТОТУ
- •14.1. Тест Соловея-Штрассена
- •14.1.1. Эйлеровы псевдопростые числа
- •14.2. Тест Рабина-Миллера
- •14.2.1. Сильно псевдопростые числа
- •Глава 15. ПОСТРОЕНИЕ БОЛЬШИХ ПРОСТЫХ ЧИСЕЛ
- •15.1. Детерминированный тест, основанный на обобщенном критерии Люка
- •15.1.1. Теорема Поклингтона
- •15.1.2. Обобщение критерия Люка
- •15.2. Детерминированный тест, основанный на теореме Димитко
- •Глава 16. ВЫБОР ПАРАМЕТРОВ КРИПТОСИСТЕМЫ RSA
- •16.1. Общие требования к выбору параметров
- •16.2. Метод Гордона построения сильно простых чисел
- •16.3. Пример построения сильно простого числа
- •Глава 17. ОБЩИЕ СВЕДЕНИЯ ОБ ИНОСТРАННЫХ КРИПТОСРЕДСТВАХ
- •17.1. Аппаратные криптосредства
- •17.2. Основные принципы построения систем управления ключами
- •17.2.1. Ключевые системы потоковых шифров
- •17.3. Блочные шифры в смешанных криптосистемах
- •17.3.2. Смешанная криптосистема на основе алгоритмов RSA и IDEA
- •ЗАКЛЮЧЕНИЕ
- •ЛИТЕРАТУРА

Цифровая подпись Эль-Гамаля 125
Таким образом, для r1,s1 проверочное соотношение выполняется, т.е.
подпись может быть подделана, если не контролируются ограничения на длины параметров.
9.3.4. Варианты цифровой подписи типа Эль-Гамаля
Построение различных вариантов подписей типа Эль-Гамаля можно осуществить, исходя из сравнения вида Ak + Bx +C = 0 mod q ,
связывающего секретный ключ x и рандомизатор k с блоками цифровой
подписи r, s . Здесь A, B,C ≠ 0(q), где |
q = p −1 (для краткости |
обозначений). |
|
Из Ak + Bx + C = 0 mod q следует, что A = −k−1Bx − k−1C modq . |
|
С очевидными переобозначениями, можно записать: A = bx + c mod q . |
|
Следовательно, g A =[g x ]b gc (mod p), т.е. |
через g x и другие параметры |
можно проверить некоторое соотношение, не раскрывая значения x . |
|
|||||||
|
В классической подписи Эль-Гамаля для сообщения m, r = gk (p), а блок |
|||||||
s |
определяется |
из |
сравнения |
Ak + Bx +C = 0 mod q , |
при |
|||
(A, B,C)=(s,r,−h(m)). |
Действительно, |
в |
этом |
случае, |
||||
s = k−1(h − xr)mod(q), т.е. h = xr + ks mod(p −1). |
|
|
|
|||||
|
Рассмотрим пример на построение цифровой подписи Эль-Гамаля. |
|
||||||
|
Выберем |
p =17 . |
Поскольку 3(p−1) 2 = 6561 = −1(p), то g = 3 - |
|||||
первообразный элемент. |
|
|
|
|
|
|
||
|
Примем |
x =5. |
Тогда |
открытый |
ключ |
|
y = g x (p)=35 =5(17). |
|
Пустьh(m)=9 . |
|
|
|
|
|
|

126 Глава 9. КРИПТОСИСТЕМА RSA, ПРОТОКОЛ ДИФФИ-ХЭЛЛМАНА И ЦИФРОВАЯ ПОДПИСЬ ЭЛЬ-ГАМАЛЯ
Выберем рандомизатор k = 7 . Вычислим первую часть подписи
r = gk (p)=37 =11(17).
Затем – вторую часть подписи, по формуле
k −1 = 7(16). Получим s =14(16). Подпись равна 11,14 .
Проверка подписи. Вычисляем хэш-код сообщения h =9) и проверяем соотношениеgh = yr rs (p).
Получим: gh =39 =14(17), yr = 511 =11(17),
14 =99(17), то есть в данном случае подпись верна.
h (допустим, что
rs =1114 =9(17),

Глава 10.
АЛГОРИТМ СИЛЬВЕРА-ПОЛЛИГА- ХЭЛЛМАНА
Основное в этой главе…
Алгоритм дискретного логарифмиро-
вания ……………….…………………....130
Логарифмирование в группе единиц кольца вычетов по модулю pr……..134
Фальсификация подписи Эль-Гамаля в специальном случае выбора первообразного элемента и характеристики поля………..…….………………………..137

128 Глава 10. АЛГОРИТМ СИЛЬВЕРА - ПОЛЛИГА - ХЭЛЛМАНА
Известно, что дискретная экспонента, т.е. функция вида f (x)= axmod p , где p - простое, ведет себя при больших значениях x и ord pa как односторонняя. Соответствующая обратная функция (дискретный логарифм) вычислительно нереализуема.
Аналогичная ситуация может возникнуть и в общем случае коммутативной конечной группы.
Групповая операция в мультипликативной записи называется умножением. Возведение в степень x определяется как произведение элемента b G на себя x раз.
Пусть G конечная коммутативная группа, b G , и
случае x называется дискретным логарифмом элемента y по основанию b.
Задача дискретного логарифмирования является алгоритмической проблемой, на которой основана стойкость многих практически используемых криптоалгоритмов. Поэтому методы дискретного логарифмирования, применимые вчастныхслучаях, важнысточкизрениявыборапараметровкриптосистем.
Алгоритм Сильвера-Поллига-Хэллмана позволяет решить дискретного логарифмирования в конечном поле Fq , состоящем из элементов, при условии, что число q −1 - «гладкое», т.е. все простые делители числа q −1 невелики [15,44,45].
Последнее означает, что имеющиеся ресурсы памяти и вычислительной мощности позволяют провести необходимые вычисления в реальное время.
Заметим, что вычисление больших степеней элементов в конечном поле можно выполнить относительно быстро.
10.1. Обозначения и постановка задачи
Обозначим множество ненулевых элементов поля Fq через Fq* .
Задача дискретного логарифмирования, которую мы рассмотрим, формулируется следующим образом.