Реферат: Баричев С. Криптография без секретов
· 1024 бит - для коммерческой информации;
· 2048 бит - для особо секретной информации.[11]
Третий немаловажный аспект реализации RSA - вычислительный. Ведь приходится использовать аппарат длинной арифметики. Если используется ключ длиной k бит, то для операций по открытому ключу требуется О(k2) операций, по закрытому ключу - О(k3) операций, а для генерации новых ключей требуется О(k4) операций.
Криптографический пакет BSAFE 3.0 (RSA D.S.) на компьютере Pentium-90 осуществляет шифрование со скоростью 21.6 Кбит/c для 512-битного ключа и со скоростью 7.4 Кбит/c для 1024 битного. Самая «быстрая» аппаратная реализация обеспечивает скорости в 60 раз больше.
По сравнению с тем же алгоритмом DES, RSA требует в тысячи и десятки тысяч раз большее время.
Криптосистема Эль-Гамаля
Данная система является альтернативой RSA и при равном значении ключа обеспечивает ту же криптостойкость[12].
В отличие от RSA метод Эль-Гамаля основан на проблеме дискретного логарифма. Этим он похож на алгоритм Диффи-Хелмана. Если возводить число в степень в конечном поле достаточно легко, то восстановить аргумент по значению (то есть найти логарифм) довольно трудно.
Основу системы составляют параметры p и g - числа, первое из которых - простое, а второе - целое.
Александр генерирует секретный ключ а и вычисляет открытый ключ y = gа mod p. Если Борис хочет послать Александру сообщение m, то он выбирает случайное число k, меньшее p и вычисляет
y1 = gk mod p и
y2 = m Å yk,
где Å означает побитовое сложение по модулю 2. Затем Борис посылает (y1,y2) Александру.
Александр, получив зашифрованное сообщение, восстанавливает его:
m = (y1a mod p) Å y2.
Алгоритм цифровой подписи DSA, разработанный NIST (National Institute of Standard and Technology) и являющийся частью стандарта DSS частично опирается на рассмотренный метод.
Криптосистемы на основе эллиптических уравнений
Эллиптические кривые - математический объект, который может определен над любым полем (конечным, действительным, рациональным или комплексным). В криптографии обычно используются конечные поля. Эллиптическая кривая есть множество точек (x,y), удовлетворяющее следующему уравнению:
y2 = x3 + ax + b,
а также бесконечно удаленная точка. Для точек на кривой довольно легко вводится операция сложения, которая играет ту же роль, что и операция умножения в криптосистемах RSA и Эль-Гамаля.
В реальных криптосистемах на базе эллиптических уравнений используется уравнение
y2 = x3 + ax + b mod p,
где р - простое.
Проблема дискретного логарифма на эллиптической кривой состоит в следующем: дана точка G на эллиптической кривой порядка r (количество точек на кривой) и другая точка Y на этой же кривой. Нужно найти единственную точку x такую, что Y = xG, то есть Y есть х-я степень G.
Электронная подпись
В чем состоит проблема аутентификации данных?
В конце обычного письма или документа исполнитель или ответственное лицо обычно ставит свою подпись. Подобное действие обычно преследует две цели. Во-первых, получатель имеет возможность убедиться в истинности письма, сличив подпись с имеющимся у него образцом. Во-вторых, личная подпись является юридическим гарантом авторства документа. Последний аспект особенно важен при заключении разного рода торговых сделок, составлении доверенностей, обязательств и т.д.
Если подделать подпись человека на бумаге весьма непросто, а установить авторство подписи современными криминалистическими методами - техническая деталь, то с подписью электронной дело обстоит иначе. Подделать цепочку битов, просто ее скопировав, или незаметно внести нелегальные исправления в документ сможет любой пользователь.
С широким распространением в современном мире электронных форм документов (в том числе и конфиденциальных) и средств их обработки особо актуальной стала проблема установления подлинности и авторства безбумажной документации.
В разделе криптографических систем с открытым ключом было показано, что при всех преимуществах современных систем шифрования они не позволяют обеспечить аутентификацию данных. Поэтому средства аутентификации должны использоваться в комплексе и криптографическими алгоритмами.
Итак, пусть имеются два пользователя Александр и Борис. От каких нарушений и действий злоумышленника должна защищать система аутентификации.
Отказ (ренегатство).
Александр заявляет, что он не посылал сообщение Борису, хотя на самом деле он все-таки посылал.
Для исключения этого нарушения используется электронная (или цифровая) подпись.
Модификация (переделка).
Борис изменяет сообщение и утверждает, что данное (измененное) сообщение послал ему Александр.
Подделка.
Борис формирует сообщение и утверждает, что данное (измененное) сообщение послал ему Александр.
Активный перехват.
Владимир перехватывает сообщения между Александром и Борисом с целью их скрытой модификации.
Для защиты от модификации, подделки и маскировки используются цифровые сигнатуры.
Маскировка (имитация).
Владимир посылает Борису сообщение от имени Александра .
В этом случае для защиты также используется электронная подпись.
Повтор.
Владимир повторяет ранее переданное сообщение, которое Александра посылал ранее Борису . Несмотря на то, что принимаются всевозможные меры защиты от повторов, именно на этот метод приходится большинство случаев незаконного снятия и траты денег в системах электронных платежей.
Наиболее действенным методом защиты от повтора являются
* использование имитовставок,
* учет входящих сообщений.
![]() |
![]() |
||||||
![]() |
|||||||
![]() |
Возможные нарушения защиты сообщений,. посылаемых пользователем А пользователю В.
Электронная подпись на основе алгоритма RSA
Наиболее простым и распространенным инструментом электронной подписи является уже знакомый алгоритм RSA. Ниже оно будет рассмотрена в качестве примера. Кроме этого существуют еще десятки других схем цифровой подписи.
Предположим, что
d,p,q - секретные, а е, n=pq - открытые.
Замечания.
1. Разложение по n дает: j(n)=(p-1)(q-1); зная j(n) и e, можно найти d.
2. Из e и d можно найти кратность j(n); кратность j(n) позволяет определить делители n.
Пусть DATA - передаваемое Александром Борису сообщение.
Александр подписывает DATA для Бориса при передаче :
EeB,nB { EdA,nA {DATA}}.
При этом он использует:
* закрытый ключ EdA,nA Александра,
* открытый ключ EeB,nB Бориса.
Борис может читать это подписанное сообщение сначала при помощи закрытого ключа EdВ,nВ Бориса с целью получения
EdA,nA {DATA} = EdB,nB {EeB,nB {EdA,nA {DATA}}}
и затем - открытого ключа EeA,nA Александра для получения
DATA = EeA,nA { EdA,nA {DATA}}.
Таким образом, у Бориса появляется сообщение DATA, посланное ему Александром.
Очевидно, что данная схема позволяет защититься от нескольких видов нарушений.
Александр не может отказаться от своего сообщения, если он признает, что секретный ключ известен только ему.
Нарушитель без знания секретного ключа не может ни сформировать, ни сделать осмысленное изменение сообщения, передаваемого по линии связи.
Данная схема позволяет при решении многих конфликтных ситуаций обходиться без посредников.
Иногда нет необходимости зашифровывать передаваемое сообщение, но нужно его скрепить электронной подписью. В этом случае текст шифруется закрытым ключом отправителя и полученная цепочка символов прикрепляется к документу. Получатель с помощью открытого ключа отправителя расшифровывает подпись и сверяет ее с текстом.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11