Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mszki.docx
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
953.49 Кб
Скачать
  1. Основные математические схемы цифровой подписи. Примеры.

Основано на однонаправленных функциях.

Однонаправленные функции – функции для которых по известному x легко вычислить f(x), а по известному f(x) сложно вычислить х.

Пример:

Т. Существует бесконечное количество простых чисел.

Т. Каждое четное число, больше 2, является суммой простых чисел (гипотеза Гольбаха). Пример: 60=2+2+2+…+2.

Т. Любое целое число >1, м.б. представлено в виде произведения простых чисел. Пример: 35=5*7, 60=2*2*3*5.

Диффи и Халман предложили:

Есть канал связи между А и В. Канал можно подслушать, но нельзя вносить изменения в передаваемую информацию.

Путь y1=ax1(mod q)

y2=ax2(mod q), где x1, x2, q – большие числа.

Тогда ключ k=ax1x2(mod q), где a – некоторая системная константа, q – модуль, x1 – число которое задает абонент ( с помощью генератора случайных чисел).

Пример: Дано q=7, a=3, x1=3, x2=4

Тогда:

1)1ый абонент вычисляет y1=ax1(mod q)=33(mod 7)=27(mod 7)=6 (полученное число передает).

2)2ой абонент вычисляет y2= ax2(mod q)=34(mod7)=81(mod 7)=4 (полученное число передает).

3) получив y2, второй вычисляет ключ:

K=ax1x2(mod q)=y2x1(mod q)=43(mod 7)=64(mod 7)=1

Результат:

Имеем ключ k=1, который никто не передавал, его никто не знает кроме абонента.

Действия противника:

У него есть q=7, a=3, y1=6, y2=4

Ему нужно найти ax1x2, чтобы получить закрытый ключ и иметь возможность дешифровать передаваемые сообщения.

Чтобы вычислить нужно решить уравнение: ax1(mod q)=y1, 3x1(mod 7)=6. Это задача дискретного логарифмирования. Решается только методом перебора, что для больших числе очень сложно.

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

Общий протокол:

Пользователь системы предает другому пользователю и передает в общий доступный справочник процедуру D, которую можно использовать для проверки подлинности передатчика E(x). х – документ, E(x) – подпись, D – процедура проверки.

h(x) – хеш функция.

Изменение документа приводит к изменению хеш функции. Одно из требований предъявляемых к хеш функции это отсутствие коллизий (разные хеш функции при разных результатах). ЭЦП ставиться только на хеш функцию, а не на весь документ.

Стандарты:

1) RSS

2) DSS

3) EL – Jamal – гостированно у нас и в США

США DSS и ГОСТ-34.10.94 (34.11.94)

4) Робин

5) Окомото – Сарами

6) Мацумото - Имаи

      1. Схема цифровой подписи RSA.

Основан на открытых ключах. Безопасность RSA основана на трудности разложения на множители больших чисел. Открытый и закрытый ключи являются функциями двух больших (100-200 разрядов или больше) простых чисел. Предполагается, что восстановление открытого текста по шифротексту и открытому ключу эквивалентно разложению на множители двух больших числе.

1) Для генерации ключей используются два больших случайных простых числа, p и q. Для максимальной безопасности выбирайте p и q равной длинны. Рассчитывается произведение: N=p·q

2) Вычисляется функция Эллера:

Ф(N)=(p-1)·(q-1)

3) Выбрать такое e, чтобы e и Ф(N) были взаимно простые.

4) Найти такое d, чтобы d·e=1 mod Ф(N)

Заметим, что d и N также взаимно простые числа. Числа e и N – это открытые ключи, а число d – закрытый. p и q уничтожаются!

Для шифрования сообщения m оно сначала разбивается на цифровые блоки, меньше n (для двоичных данных выбирается самая большая степень числа 2, меньше N). То есть если p и q – 100-разрядные простые числа, то N будет содержать около 200 разрядов, и каждый блок содержащий mi должен быть около 200 разрядов в длину.

Шифрование: S – сообщение, С – зашифрованное сообщение.

С=Se (mod N)

Дешифрование:

S=Cd (mod N)

ЭЦП

h(x) – хеш функция

M – ЭЦП

Отправитель шифрует: M=(h(x))d(mod N)

Получатель расшифровывает: h(x)=Me(mod N)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]