Криптография с открытым ключом
Защита информации в открытых сетях A f,f -1 B f,f -1 Нелегальный пользователь Традиционная задача защиты Простые задачи
Защита информации в открытых сетях Функция с закрытыми дверями: Защита в открытых сетях Простая задача AiAi AjAj Сложная задача
Большие числа Время до следующего ледникового периода секунд Время до появления нового солнца секунд Возраст планет секунд Возраст Вселенной секунд Число атомов Земли Число атомов Солнца Число атомов в Галактике Число атомов во Вселенной (включая черную материю) Объем Вселенной cm3 (Брюс Шнайер, Прикладная криптография)
Системы публичных ключей АбонентыПубличные ключиСекретные ключи B1B1 BNBN f 1 (.) f N (.) f 1 -1 (.,k 1 ) f N -1 (.,k N )
Система Мак-Элиса Выбирается (n,k) – код, исправляющий t ошибок Пусть G – порождающая матрица кода
Система Мак-Элиса Установки: m – сообщение с – криптограмма Выбираются невырожденные квадратные матрицы М и Р(секрет), маскирующие структуру G Строится новая порождающая матрица G=MGP (то есть строится новый код)
Система Мак-Элиса Шифрование: Выбирается е – случайное слово веса t с=mG+e (то есть кодирование и добавление «ошибочного слова»)
Система Мак-Элиса Секретные ключи: матрицы М и Р Открытые ключи: К
Система Мак-Элиса Расшифрование:
Система публичных ключей на основе полного декодирования Публичные ключи Способ шифрования Секретные ключи Способ расшифрования Задача нелегального пользователя: декодирование в G вектора из E Задание множества E
Параметры кодовых криптосистем Система публичных ключей на базе полного декодирования Код (256,128), t=8 M, M 2 – (256×256) - двоичные матрицы длина публичных ключей КБ рабочий фактор длина секретных ключей КБ Система Макэлиса Код (1024,524), t=50 длина публичного ключа - 66 КБ рабочий фактор длина секретных ключей КБ
Сравнение с известными криптосистмами ПараметрRSAМак-Элиса Сложность вскрытия Совпадает Скорость шифрования ПревосходитСовпадает Скорость расшифрования ПревосходитСовпадает Длина секретных ключей совпадаетСовпадает Длина публичных ключей ДлиннееКороче
Электронная подпись Публичные ключи: H – проверочная матрица (n,k) кода A t – расстояние кода A F() – нелинейная необратимая функция Секретные ключи – процедура декодирования кода A сообщениеподпись uz F 1 (u) = F 2 (z) ? Множество сообщений u Множество допустимых синдромов S F(u) Процедура подписывания (u,z=e) – подписанное сообщение Процедура проверки Параметры подписи: код (1024,424), t=50 F(u) на основе DES Сложность подделки Длина публичного ключа – 66кБ Длина секретного ключа – 2-4кБ
Сравнение с иными алгоритмами подписи ПараметрRSAЭль- Гамаля ХинмеяАлбади- Виккера Сложность подделки совпадаетСовпадаетПревосходит Скорость шифрования ПревосходитСовпадает Скорость дешифрования Превосходит Совпадает Длина секретных ключей Длиннее Совпадает Длина публичных ключей Длиннее Совпадает