рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Алгоритм цифровой подписи (DIGITAL SIGNATURE ALGORITHM, DSA)

Алгоритм цифровой подписи (DIGITAL SIGNATURE ALGORITHM, DSA) - раздел Компьютеры, Однонаправленные хэш-функции В Августе 19991 Года Национальный Институт Стандартов И Техники (National Ins...

В августе 19991 года Национальный институт стандартов и техники (National Institute of Standards and Tech­nology, NIST) предложил для использования в своем Стандарте цифровой подписи (Digital Signature Standard, DSS) Алгоритм цифровой подписи (Digital Signature Algorithm, DSA). Согласно Federal Register [538]:

Предлагается Федеральный стандарт обработки информации (Federal Information Processing Standard, FIPS) для Стандарта цифровой подписи (Digital Signature Standard, DSS). В этом стандарте определяется алгоритм цифровой подписи с открытым ключом (DSA), пригодный для федеральных применений, требующих цифровой подписи . Предложенный DSS использует открытый ключ для проверки получателем целостности полученных данных и личности отправителя . DSS также может быть использован третьей стороной для проверки правил ьности подписи и связанных с ней данных.

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

И:

Предложенный стандарт представляет собой результат оценки различных методик цифровой подписи . Принимая реше­ние, NIST следовал положению раздела 2 Акта о компьютерной безопасности (Computer Security Act) 1987 года о том, что NIST разрабатывает стандарты," . . . обеспечивающие рентабельные безопасность и секретность Федеральной информации, выбирая из технологий, предлагающих сравнимую степень защиты, ту, которая обладает наиболее подходящими рабочими и эксплуатационными характеристиками".

Среди факторов, рассмотренных в процессе принятия решения были уровень обеспечиваемой безопасности, простота а п-паратной и программной реализации, простота экспорта за пределы США, применимость патентов, влияние на национал ь-ную безопасность и обеспечение правопорядка, а также степень эффективностикак функции подписи, так и функции прове р-ки. Казалось, что обеспечить соответствующую защиту Федеральным системам можно многими способами. Выбранный удовлетворяет следующим требованиям:

NIST ожидает, что его можно будет использовать бесплатно. Широкое использование этой технологии, обусловленной его доступностью, послужит к экономической выгоде правительства и общества.

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

Прежде, чем все совсем запутается, позвольте мне разобраться с названиями : DSA - это алгоритм, a DSS стандарт. Стандарт использует алгоритм. Алгоритм является частью стандарта.

Реакция на заявление

Заявление NIST вызвало поток критических замечаний и обвинений . К сожалению, они были скорее полити­ческими, чем научными. RSA Data Security, Inc., продающая алгоритм RSA, возглавила критиков DSS. Они требовали, чтобы в стандарт использовался алгоритм RSA. RSADSI получило немало денег за лицензирование алгоритма RSA, и стандарт бесплатной цифровой подписи прямо повлиял бы на самую суть ее коммерческих успехов. (Примечание: DSA необязательно не нарушает патенты, мы рассмотрим эту тему позднее .)

До заявления о принятии алгоритма RSADSI вело компанию против "общего модуля," который, возможно, позволит правительству подделывать подписи. Когда было объявлено, что алгоритм не использует общий мо­дуль, критика была продолжена с других позиций [154], как с помощью писем в NIST, так и с помощью заявле­ний в прессе. (Четыре письма в NIST появилось в [1326]. Читая их, не забывайте, что по крайней мере два авто­ра, Ривест и Хеллман, были финансово заинтересованы в том, чтобы DSS не был принят.)

Многие большие компании, разрабатывающие программное обеспечение, которые уже лицензировали алг о-ритм RSA, также выступили против DSS. В 1982 году правительство попросило предоставить ему алгоритмы с открытым ключом для выбора одного из них в качестве стандарта [537]. После этого в течение девяти лет от NIST не было никаких известий. Такие компании, как IBM, Apple, Novell, Lotus, Northern Telecom, Microsoft, DEC и Sun потратили много денег, реализуя алгоритм RSA. Они не были заинтересованы в потере инвестиций.

Всего к концу первого периода обсуждения(28 февраля 1992 года) NIST получил 109 замечаний. Рассмотрим по порядку критические замечания в адрес DSA.

1. DSA нельзя использовать для шифрования или распределения ключей .

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

2. DSA был разработан NSA, и в алгоритме могут быть специальные лазейки.


Большинство первоначальных комментариев были просто параноидальными : "Отрицание NIST существую­щих алгоритмов без видимых причин не внушает доверия к DSS, а усиливает подозрение, что существует тай­ная программа, стремящаяся позволить NIST и/или NSA вскрывать национальную криптосистему с открытым ключом" [154]. Серьезный вопрос относительно безопасности DSA был задан Аржаном Ленстрой (Arjen Lenstra) и Стюартом Хабером (Stuart Haber) из Bellcore. Он будет рассмотрен ниже.

3. DSA медленнее RSA [800].

Более или менее справедливо. Скорости генерации подписи примерно одинаковы, но проверка подписи с помощью DSA от 10 до 40 раз медленнее. Однако генерация ключей быстрее. Но эта операция неинтересна, пользователь редко применяет ее. С другой стороны проверка подписи - это наиболее частая опер ация.

Проблема критики в том, что существует много способов поиграть параметрами тестирования, добиваясь нужных результатов. Предварительные вычисления могут ускорить генерацию подписи DSA, но они не всегда возможны. Сторонники RSA подбираят числа так, чтобы выделить преимущества своего алгоритма, а сторо н-ники DSA используют свой способ оптимизации. В любом случае компьютеры становятся все быстрее и быст­рее. Хотя разница в скорости и существует, в большинстве прилож ений она не будет заметна.

4. RSA - это стандарт de facto.

Вот два примера подобных жалоб. Письмо Роберта Фоллета (Robert Follett), директора программы стандар­тизации компании IBM [570]:

IBM считает, что NIST предложил стандарт схемы цифровой подписи, отличающийся от принимаемых международных стандартов. Пользователи и организации пользователей убедили нас в том, что поддержка международных стандартов, и с-пользующих RSA, в самом ближайшем будущем станет необходимым условием продажи средств обеспечения без опасности.

Письмо Леса Шроера (Les Shroyer), вице-презитента и директора компании Motorola [1444]:

У нас должен быть единый, надежный, признанный всеми алгоритм цифровой подписи, который можно использовать по
всему миру как между американскими и неамериканскими объектами, так и между системами компании Motorola и система­
ми других производителей. Отсутствие других жизнеспособных технологий цифровой подписи за последние восемь лет сд е-
лало RSA фактическим стандартом_ Motorola и многие другие компании. . . вложили в RSA миллионы долларов. Мы со­
мневаемся во взаимодействии и возможности поддержки двух различных стандартов , такое положение приведет к росту рас­
ходов, задержек развертывания и усложнению систем. . . .

Многим компаниям хотелось, чтобы NIST принял ISO 9796, международный стандарт цифровой подписи, использующий RSA [762.]. Хотя это и серьезный аргумент, он недостаточен, чтобы принять международный стандарт в качестве национального. Бесплатный стандарт лучше отвечал бы общественным интересам Соед и-ненных Штатов.

5. Выбор национального алгоритма не был открытым, не было дано достаточно времени для анализа .

Сначала NIST утверждал, что разработал DSA самостоятельно, затем признал помощь NSA. Наконец NIST подтвердил, что NSA является автором алгоритма. Это многих обеспокоило - NSA не внушает людям доверие. Даже так, алгоритм был опубликован и доступен для анализа, кроме того, NIST продлил время анализа и ком­ментирования алгоритма.

6. DSA может нарушать другие патенты. Это так. Этот вопрос будет рассмотрен в разделе, рассматриваю­щим патенты.

7. Размер ключа слишком мал.

Это единственно справедливая критика DSS. Первоначально предлагалось использовать модуль длиной 512 битов [1149]. Так как безопасность алгоритма определяется сложностью вычисления дискретных логарифмов по заданному модулю, этот вопрос волновал многих криптографов. С тех пор вычисление дискретных логариф­мов в конечном поле достигло определенных успехов, и 512 битов слишком мало для долговременной подписи (см. раздел 7.2). Согласно Браяну ЛаМаччиа (Brian LaMacchia) и Эндрю Одлыжко (Andrew Odlyzko), " . . . даже безопасность, обеспечиваемая 512-битовыми простыми числами, по видимому, находится на пределе . . . " [934]. В ответ на эти замечания NIST сделал длину ключа переменной, от 512 до 1024 битов. Немного, но все-таки получше.

19 мая 1994 года был издан окончательный вариант стандарта [1154]. При этом было сказано [542]:

Этот стандарт может применяться всеми Федеральными департаментами и управлениями для защиты несекретной и н-формации. . . . Этот стандарт будет использован при проектировании и реализации схем подписи с открытыми ключами, к о-торые разрабатывают Федеральные департаменты и управления, или которые разрабатываются по из заказу . Частные и ком­мерческие организации могут принять и и спользовать этот стандарт.

Прежде чем пользоваться этим стандартом и реализовывать его, прочтите ниже раздел о пате нтах.

Описание DSA

DSA, представляющий собой вариант алгоритмов подписи Schnorr и EIGamal, полностью описан в [1154].


Алгоритм использует следующие параметры:

р = простое число длиной L битов, где L принимает значение, кратное 64, в диапазоне от 512 до 1024. (В первоначальном стандарте размер р был фиксирован и равен 512 битам [1149]. Это вызвало множество крити­ческих замечаний, и NIST этот пункт алгоритма [1154].)

q = 160-битовой простое число - множитель р-.

g = hW mod/;, где h - любое число, меньшее р-, для которого h™ mod/; больше 1.

х — число, меньшее q.

y = gx mod p.

В алгоритме также используется однонаправленная хэш-функция : Щт). Стандарт определяет использование SHA, рассмотренного в разделе 18.7.

Первые три параметра, р, q и g, открыты и могут быть общими для пользователей сети. Закрытым ключом является х, а открытым - у. Чтобы подписать сообщение, т:

(1) Алиса генерирует случайное число к, меньшее q

(2) Алиса генерирует

r = (gk mod p) mod q

s = (кл(Щт) +хг)) mod q

Ее подписью служат параметры г и s, она посылает их Бобу.

(3) Боб проверяет подпись, вычисляя
w = sl mod q

Mi = (Щт) * w) mod q

u2 = (rw) mod q

v = ((gUl*yU2) mod p) mod q

Если v = г, то подпись правильна.

Доказательства математических соотношений можно найти в [1154]. 19th представляет собой краткое опи­сание алгоритма.

Табл. 20-1.
________________________________________ Подписи DSA
________________________________________

Открытый ключ:

р простое число длиной от 512 до 1024 битов (может использоваться группой пользователей)

q 160-битовый простой множитель р-1 (может использоваться группой пользователей)

g = hW modр, где h - любое число, меньшее р-, для которого h™ mod p > 1 (может использоваться группой пользователей)

у = gx mod p (р-битовое число)

Закрытый ключ:
х < q
(160-битовое число)

Подпись:

к выбирается случайно, меньшее q

г (подпись) = (g* mod/;) mod q

s (подпись) = Л (Щт) + xr)) mod ?

/7/>оверк«: w = sAmod q Mi = (Я(от) * w) mod ^ м2 = (rw) mod ^


v = ((gu>*yuz) mod p) mod q

Если v = г, то подпись правильна.

– Конец работы –

Эта тема принадлежит разделу:

Однонаправленные хэш-функции

На сайте allrefs.net читайте: Однонаправленные хэш-функции...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Алгоритм цифровой подписи (DIGITAL SIGNATURE ALGORITHM, DSA)

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Однонаправленные хэш-функции
18.1 Основы Однонаправленная функция ЩМ) применяется к сообщению произвольной длины М и возвращает значение фиксированной длины h. h = ЩМ), где

Длины однонаправленных хэш-функций
64-битовые хэш-функции слишком малы, чтобы противостоять вскрытию методом дня рождения . Более практичны однонаправленные хэш-функции, выдающие 128-битовые хэш-значения . При этом, чтобы найти два

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

Криптоанализ Snefru
Используя дифференциальный криптоанализ, Бихам и Шамир показали небезопасность двухпроходного Snefru (с 128-битовым хэш-значением) [172]. Их способ вскрытия за несколько минут обнаруживает пару соо

Описание MD5
После некоторой первоначальной обработки MD5 обрабатывает входной текст 512-битовыми блоками, раз­битыми на 16 32-битовых подблоков. Выходом алгоритма является набор из четырех 32-битовых блоков, к

Безопасность MD5
Рон Ривест привел следующие улучшения MD5 в сравнении с MD4 [1322]: 1. Добавился четвертый этап. 2. Теперь в каждом действии используется уникальная прибавляемая константа .

Описание SHA
Во первых, сообщение дополняется, чтобы его длина была кратной 512 битам . Используется то же дополне­ние, что и в MD5: сначала добавляется 1, а затем нули так, чтобы длина полученного сообщения бы

Безопасность SHA
SHA очень похожа на MD4, но выдает 160-битовое хэш-значение. Главным изменением является введение расширяющего преобразования и добавление выхода предыдущего шага в следующий с целью получения боле

Схемы, в которых длина хэш-значения равна длине блока
Вот общая схема (см. 10-й): Н0 = 1„, , где 1„ - случайное начальное значение Щ = ЕА(В) © С где А

Длина хэш-значения равна длине блока
Hi=EHi(Mi⊕Hi-l)⊕Mi⊕Hi-l Hi=EHi

Модификация схемы Davies-Meyer
Лай (Lai) и Массей (Massey) модифицировали метод Davies-Meyer, чтобы можно было использовать шифр IDEA [930, 925]. IDEA использует 64-битовый блок и 128-битовый ключ. Вот предложенная ими схема:

Preneel-Bosselaers-Govaerts-Vandewalle
Эта хэш-функция, впервые предложенная в [1266], выдает хэш-значение, в два раза большее длины блока алгоритма шифрования: при 64-битовом алгоритме получается 128-битовое хэш-значение . При

Quisquater-Girault
Эта схема, впервые предложенная в [1279], генерирует хэш-значение, в два раза большее длины блока. Ее скорость хэширования равна 1. Она использует два хэш-значения, G, и Я„ и хэширует вместе два бл

Тандемная (Tandem) и одновременная (Abreast) схемы Davies-Meyer
Другой способ обойти ограничения, присущие блочным шифрам с 64-битовым ключом, использует алг о-ритм, подобный IDEA (см. раздел 13.9), с 64-битовым блоком и 128-битовым ключом. Следующие две схемы

MDC-2 u MDC-4
MDC-2 и MDC-4 разработаны в IBM [1081, 1079]. В настоящее время изучается вопрос использования MDC-2, иногда называемой Meyer-Schilling, в качестве стандарта ANSI и ISO [61, 765], этот вариант был

Хэш-функция AR
Хэш-функция AR была разработана Algorithmic Research, Ltd. и затем распространена ISO только для ин­формации [767]. Ее базовая структура является вариантом используемого блочного шифра (DES в упомя

Хэш-функция ГОСТ
Эта хэш-функция появилась в России и определена в стандарте ГОСТ Р 34.11.94 [657]. В ней используется блочный алгоритм ГОСТ (см. раздел 14.1), хотя теоретически может использоваться любой блочный а

СВС-МАС
Простейший способ создать зависящую от ключа однонаправленную хэш-функцию - шифрование сообщения блочным алгоритмом в режимах СВС или CFB. Хэш-значением является последний шифрованный блок, за­шифр

Алгоритм проверки подлинности сообщения (Message Authenticator Algorithm, MAA)
Этот алгоритм является стандартом ISO [760]. Он выдает 32-битовое хэш-значение и был спроектирован для мэйнфреймов с быстрыми инструкциями умножения [428]. v = v <« 1 e

Методы Джунемана
Этот MAC также называют квадратичным конгруэнтным кодом обнаружения манипуляции ( quadratic con-graential manipulation detection code, QCMDC) [792, 789]. Сначала разделим сообщение на от-битовые бл

RIPE-MAC
RIPE-MAC был изобретен Бартом Пренелом [1262] и использован в проекте RIPE [1305] (см. раздел 18.8). Он основан на ISO 9797 [763] и использует DES в качестве функции блочного шифрования. Существует

IBC-хэш
IBC-хэш - это еще один MAC, используемый в проекте RIPE [1305] (см. раздел 18.8). Он интересен потому, что его безопасность доказана, вероятность успешного вскрытия может быть оценена количественно

Однонаправленная хэш-функция MAC
В качестве MAC может быть использована и однонаправленная хэш-функция [1537]. Пусть Алиса и Боб ис­пользуют общий ключ К, и Алиса хочет отправить Бобу MAC сообщения М. Алиса объединяе

Безопасность алгоритмов с открытыми ключами
Так как у криптоаналитика есть доступ к открытому ключу, он всегда может выбрать для шифрования любое сообщение. Это означает, что криптоаналитик при заданном C = EKЦP) мож

Создание открытого ключа из закрытого
Рассмотрим работу алгоритма, не углубляясь в теорию чисел : чтобы получить нормальную последователь­ность рюкзака, возьмем сверхвозрастающую последовательность рюкзака, например, {2,3,6,13,27,52},

Шифрование
Для шифрования сообщение сначала разбивается на блоки, равные по длине числу элементов последов а-тельности рюкзака. Затем, считая, что единица указывает на присутствие члена последовательности, а

Дешифрирование
Законный получатель данного сообщения знает закрытый ключ: оригинальную сверхвозрастающую поел е-довательность, а также значения я и от, использованные для превращения ее в нормальную последователь

Практические реализации
Для последовательности из шести элементов нетрудно решить задачу рюкзака, даже если последовател ь-ность не является сверхвозрастающей. Реальные рюкзаки должны содержать не менее 250 элементов . Дл

Безопасность метода рюкзака
Взломали криптосистему, основанную на проблеме рюкзака, не миллион машин, а пара криптографов . Сна­чала был раскрыт единственный бит открытого текста [725]. Затем Шамир показал, что в определенных

Скорость RSA
Аппаратно RSA примерно в 1000 раз медленнее DES. Скорость работы самой быстрой СБИС-реализации RSA с 512-битовым модулем - 64 килобита в секунду [258]. Существуют также микросхемы, которые выполня-

Вскрытие с выбранным шифротекстом против RSA
Некоторые вскрытия работают против реализаций RSA. Они вскрывают не сам базовый алгоритм, а над­строенный над ним протокол. Важно понимать, что само по себе использование RSA не обеспечивает безопа

Вскрытие общего модуля RSA
При реализации RSA можно попробовать раздать всем пользователям одинаковый модуль я, но каждому свои значения показателей степени е и d. К сожалению, это не работает. Наиболее очевидная проб

Вскрытие малого показателя шифрования RSA
Шифрование и проверка подписи RSA выполняется быстрее, если для е используется небольшое значение, но это также может быть небезопасным [704]. Если е(е + 1)/2 линейно

Полученные уроки
Джудит Мур (Judith Moore) на основании перечисленных вскрытий приводит следующие ограничения RSA [1114, 1115]: — Знание одной пары показателей шифрования/дешифрирования для данного модуля

Вскрытие шифрования и подписи с использованием RSA
Имеет смысл подписывать сообщение перед шифрованием (см. раздел 2.7), но на практике никто не выпол­няет этого. Для RSA можно вскрыть протоколы, шифрующие сообщение до его подписания [48].

Стандарты
RSA de facto является стандартом почти по всему миру. ISO почти, but not quite, created an RSA digital-signature standard; RSA служит информационным дополнением ISO 9796 [762.]. Французское

Патенты
Алгоритм RSA запатентован в Соединенных Штатах [1330], но ни водной другой стране. РКР получила ли­цензию вместе с другими патентами в области криптографии с открытыми ключами (раздел 25.5). Срок д

Патенты
Алгоритм Pohlig-Hellman запатентован в США [722] и в Канаде. РКР получила лицензию вместе с другими патентами в области криптографии с открытыми ключами (см. раздел 25.5). 19.5 Rabin

Шифрование EIGamal
Модификация EIGamal позволяет шифровать сообщения. Для шифрования сообщения М сначала выбирает­ся случайное число к, взаимно простое ср - 1. Затем вычисляются

Патенты
EIGamal незапатентован. Но, прежде чем двигаться вперед и реализовывать алгоритм, нужно знать, что РКР считает, что этот алгоритм попадает под действие патента Диффи-Хеллмана [718]. Однако срок дей

Другие алгоритмы, основанные на линейных кодах, исправляющих ошибки
Алгоритм Нидеррейтера (Niederreiter) [1167] очень близок к алгоритму МакЭлиса и считает, что открытый ключ - это случайная матрица проверки четности кода, исправляющего ошибки . Закрытым ключом слу

Битовым показателем степени (на SPARC II)
512 битов 768 битов 1024 бита Подпись 0.20 с 0.43 с 0.57 с Проверка 0.35 с 0.80 с 1.27 с Практические реализации DSA часто можно ускорить с помощью предварительных вычисл

Генерация простых чисел DSA
Ленстра и Хабер указали, что взломать некоторые модули намного легче, чем другие [950]. Если кто-нибудь заставит пользователей сети использовать один из таких слабых модулей, то их подписи будет ле

Безопасность DSA
С 512 битами DSA недостаточно надежен для длительной безопасности, но он вполне надежен при 1024 б и-тах. В своем первом заявлении на эту тему NSA так комментировало утверждение Джо Эбернети (Joe A

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

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

Дискретных логарифмов
Уравнение подписи Уравнение проверки (1) r'k=s+mx mod q (2) r'k=m+sx mod q (3) sk= r'+mx mod q /-gy-mod p

ONG-SCHNORR-SHAMIR
Эта схема подписи использует многочлены по модулю п [1219, 1220]. Выбирается большое целое число (знать разложение п на множители не обязательно). Затем выбирается случайное число

Безопасность ESIGN
Когда этот алгоритм был впервые предложен, к было выбрано равным 2 [1215]. Такая схема быстро была взломана Эрни Брикеллом (Ernie Brickell) и Джоном ДеЛаурентисом [261], которые распространи

Патенты
ESICN запатентован в Соединенных Штатах [1208], Канаде, Англии, Франции, Германии и Италии. Любой, кто хочет получить лицензию на алгоритм, должен обратиться в Отдел интеллектуальной собственности

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги