алгоритмы цифровой подписи 2014
Это интересно!!!
алгоритм цифровой подписи rsa пример

алгоритм цифровой подписи

14.4. Алгоритм цифровой подписи ГОСТ 34.10-2001. 14.5. Разновидности ЭЦП. Вопросы для самопроверки.

Идея цифровой подписи как законного средства подтверждения подлинности и авторства документа в электронной форме впервые была явно сформулирована в 1976 году в статье двух молодых американских специалистов по вычислительным наукам из Стэнфордского университета Уитфилда Диффи (Witfield Diffie) и Мартина Хеллмана (Martin Hellman).
Суть цифровой подписи состоит в том, что для гарантированного подтверждения подлинности информации, содержащейся в электронном документе, а также для возможности неопровержимо доказать третьей стороне (партнеру, арбитру, суду и т. п.), что электронный документ был составлен именно конкретным лицом или по его поручению и именно в том виде, в котором он предъявлен, автору документа предлагается выбрать свое индивидуальное число (называемое обычно индивидуальным ключом [ 1], паролем, кодом и т. д.) и каждый раз для "цифрового подписывания" сворачивать (замешивать) этот свой индивидуальный ключ, хранимый в секрете от всех, с содержимым конкретного электронного документа. Результат такого "сворачивания" - другое число - может быть назван цифровой подписью данного автора под данным конкретным документом.
Постановка задачи
Для практического воплощения этой идеи требовалось найти конкретные и конструктивные ответы на следующие вопросы:
- Как "замесить" содержание документа с индивидуальным ключом пользователя, чтобы они стали неразделимы?
- Как проверить, что содержание подписываемого документа и индивидуальный ключ пользователя подлинные, не зная заранее ни того, ни другого?
- Как обеспечить возможность многократного использования автором одного и того же индивидуального ключа для цифрового подписывания большого числа электронных документов?
- Как гарантировать невозможность восстановления индивидуального ключа пользователя по любому количеству подписанных с его помощью электронных документов?
- Как гарантировать, что положительным результат проверки подлинности цифровой подписи и содержимого электронного документа будет в том и только в том случае, когда подписывался именно данный документ и именно с помощью данного индивидуального ключа?
- Как обеспечить юридическую полноправность электронного документа с цифровыми подписями, существующего только в электронном виде, без бумажного дубликата или заменителей?
Чтобы дать удовлетворительный ответ на эти вопросы, потребовалось около двадцати лет, и сейчас мы располагаем полноценным арсеналом технических средств авторизации электронных документов, называемым цифровой подписью.
Рассмотрим эти ответы подробнее. Основная идея Диффи и Хеллмана состояла в том, чтобы искать ответы на первые четыре вопроса (математические) из списка по следующей схеме:

Алгоритм цифровой подписи Digital Signature Algorithm (DSA) предложен в 1991г. в США для использования в стандарте цифровой подписи DSS

- пользователи располагают средствами, позволяющими случайно выбирать индивидуальные ключи для подписывания из множества всех возможных ключей,
- по каждому выбранному индивидуальному ключу для подписывания легко вычислить парный к нему ключ для проверки подписей,
- процедура вычисления ключа проверки из ключа подписывания широко известна, практически реализуема и гарантирует невозможность восстановления ключа подписывания,
- процедуры подписывания и проверки подписи широко известны, в каждой из них используется только один из пары ключей, и гарантируется невозможность получения неверного ответа, а также невозможность восстановления ключа подписывания по ключу проверки.
Самым сложным из этих условий является, конечно же, гарантирование невозможности восстановления ключа подписывания по ключу проверки и любому количеству подписанных электронных документов. На сегодня лучший из предложенных способов его выполнения состоит в том, чтобы использовать такие процедуры подписывания и проверки, что практическое восстановление ключей подписи по ключам проверки требует решения известной сложной вычислительной задачи [ 2]. Поскольку задача является общеизвестно сложной (если ее до сих пор не научились решать за обозримое время), то есть надежда, что ее не сумеют решить быстро и в ближайшем будущем.
Практический результат двадцатилетних научных поисков таких задач оказался до некоторой степени парадоксальным: при всем многообразии известных сложных вычислительных задач практически применимой оказалась одна - так называемая задача дискретного логарифмирования. В простейшем варианте ее можно сформулировать так. Если заданы три больших целых положительных числа a, n, x, то, располагая даже несложными вычислительными устройствами типа карманного калькулятора или просто карандашом и бумагой, можно довольно быстро вычислить число a
x как результат умножения числа a на себя x раз, а затем и остаток от деления этого числа нацело на n, записываемый как b = a
x mod n. Задача же дискретного логарифмирования состоит в том, чтобы по заданным числам a, b, n, таким, что b = a
x mod n, найти x.
Оказывается, задача дискретного логарифмирования при правильном выборе целых чисел столь сложна, что позволяет надеяться на практическую невозможность восстановления числа x (индивидуального ключа подписывания) по числу b (применяемому в качестве ключа проверки).
Прежде чем обсуждать практическую невозможность решения той или иной вычислительной задачи, следует договориться о том, какие вычислительные мощности и мозговые ресурсы доступны тому, кто будет эту задачу решать. Поскольку давать конкретные оценки возможностей потенциальных мозговых ресурсов взломщика системы цифровой подписи - дело весьма сложное и неблагодарное, мы будем просто исходить из предположения, что он располагает полной информацией о наилучших известных мировой науке методах решения данной задачи.

RSA стал первым алгоритмом такого типа, пригодным и для шифрования и для цифровой подписи.  Алгоритм DSA (Digital Signature Algorithm)

Далее, если взломщик располагает вычислительной системой общей мощностью, скажем, 1 миллиард (10
9) операций в секунду, а это мощность современного суперкомпьютера типа Cray-3, то
- за сутки непрерывной работы такой системы может быть решена задача сложностью около 100 триллионов (или 10
14) операций,
- за месяц - около 3.10
15,
- за год - около 3.10
16,
- за десять лет - около 3.10
17,
- за тридцать лет - около 10
18 операций.
Таким образом, даже если допустить, что потенциальный взломщик цифровой подписи располагает вычислительной системой, эквивалентной по мощности тысяче (10
3) суперкомпьютеров типа Cray-3, на выполнение вычислений объемом 10
21 операций ему потребовалось бы не менее тридцати лет непрерывной работы системы, а значит, цифровая подпись с надежностью не менее 10
21 может считаться практически неподделываемой.
В этом месте автору обычно задают вопрос: "А что, если специальным службам известны более быстрые методы решения задачи фальсификации цифровых подписей?" В настоящее время ответ на него оказывается довольно простым. Если вы боитесь, что обычно предлагаемого при длине ключей 64 байта запаса надежности в 10
18-10
21 недостаточно, применяйте алгоритмы с более длинными ключами. Современные процессоры класса Intel 486 и Pentium позволяют за доли секунды вычислять и проверять цифровые подписи с ключами длиной до 512 байт, а стойкость большинства широко применяемых методов цифровой подписи при такой длине ключей заведомо превосходит все разумные требования (более чем 10
50) [ 3]. Итак, мы видим, что современные общепризнанные принципы построения системы цифровой подписи просты и изящны:
- методы вычисления и проверки цифровых подписей всех пользователей системы одинаковы, всем известны и основываются на широко известных математических задачах,
- методы вычисления ключей проверки цифровых подписей из индивидуальных ключей подписывания одинаковы для всех и хорошо известны, их надежность также основывается на широко известных математических задачах,
- индивидуальные ключи подписывания выбираются самими пользователями по случайному закону из множества всех возможных ключей,
- при конкретном алгоритме цифровой подписи его стойкость может быть оценена без привлечения какой-либо "закрытой" информации на основе только известных математических результатов и разумных допущений о вычислительных мощностях потенциального взломщика, поскольку она базируется на общедоступных теоретических результатах по оценке сложности широко известных вычислительных задач.
Алгоритмы: американские разработки
Сопоставим теперь некоторые конкретные алгоритмы цифровой подписи и выясним их преимущества и недостатки в различных ситуациях.
Для удобства оценки основных свойств того или иного алгоритма мы будем сравнивать его основные характеристики:
- длину ключей,
- длину цифровой подписи,
- сложность (время) вычисления,
- сложность (время) проверки подлинности цифровой подписи,
при условии, что уровень стойкости подписи по отношению к любым методам фальсификации не ниже 10
21. За "базовую" длину ключей и длину самой цифровой подписи примем 64 байта.
RSA - первый алгоритм цифровой подписи, который был разработан в 1977 году в Массачусетском технологическом институте. RSA основывается на том, что задача дискретного логарифмирования при выборе целого параметра n в виде произведения двух различных простых чисел примерно равных по порядку величины (то есть n = pq) становится не менее сложной, чем разложение n на эти простые множители, а последняя задача давно (еще со времен Архимеда и Евклида) известна в математике как сложная.
По современным оценкам сложность задачи разложения на простые множители при целых числах n из 64 байт составляет порядка 10
17-10
18 операций, то есть находится где-то на грани досягаемости для серьезного взломщика. Поэтому обычно в системах цифровой подписи на основе алгоритма RSA применяют более длинные целые числа n (обычно от 75 до 128 байт). Это приводит к увеличению длины цифровой подписи относительно 64-байтного варианта примерно на 20-100% (в данном случае ее длина совпадает с длиной записи числа n), а также от 70% до 800% увеличивает время вычислений при подписывании и проверке.
Кроме того, при генерации и вычислении ключей в системе RSA необходимо проверять большое количество довольно сложных дополнительных условий на простые числа p и q (что сделать достаточно трудно и чего обычно не делают, пренебрегая вероятностью неблагоприятного исхода - возможной подделки цифровых

Алгоритм DSA (Digital Signature Algorithm) был разработан в 1981 г. и с тех пор используется как стандарт США для электронной цифровой подписи


И отдельную позицию занимает один из наиболее популярных алгоритмов цифровой подписи DSA (Digital Signature Algorithm).

Алгоритм DSA (Digital Signature Algorithm )  Правовые условия использования электронной цифровой подписи в электронных документах регламентирует


DSA (Digital Signature Algorithm) — криптографический алгоритм с использованием открытого ключа для создания электронной подписи, но не для шифрования (в отличие от RSA и схемы Эль-Гамаля).


Для создания цифровой подписи используется алгоритм DSA (Digital Signature Algorithm). В качестве хэш-алгоритма стандарт предусматривает использование

С какими целями используется цифровая подпись?  Классификация и особенности категории "Алгоритмы цифровой подписи" 2014, 2015.


Алгоритмы цифровой подписи, применяемые в системе “Нотариус”, включают: собственную разработку “ЛАН Крипто” 1991–1994 гг., названную Нотариус-АМ26 октября 2015


Алгоритмы электронной цифровой подписи. Впервые идею ЭЦП предложили в 1976г. У. Диффи и М. Хеллман, Стенфордский университет, США.

Цифровая подпись на базе алгоритма RSA 1. Есть абонент A и текст для подписи M. 2  Перейдем теперь к описанию алгоритма цифровой подписи Рабина.


Алгоритмы вычисления хэш-функции установлены в ГОСТ Р 34.11-2012. Параметры схемы цифровой подписи, необходимые для ее формирования и проверки


Вскоре после RSA были разработаны другие ЭЦП, такие как алгоритмы цифровой подписи Рабина, Меркле.

Глава 5. Алгоритмы электронной цифровой подписи на основе конечных векторных пространств.  5.11.3. Алгоритм электронной цифровой подписи.


Алгоритм Цифровой подписи (DSA) является Федеральное правительство Соединенных Штатов стандарт или FIPS для цифровых подписей.


Алгоритм Sig выработки цифровой подписи для бита t (t О{0,1}) заключается просто в выборе соответствующей половины из пары, составляющей секретный ключ подписи

Электронно-цифровая подпись: RSA. Начало.  Таким образом, все необходимые свойства подписи описанным алгоритмом обеспечиваются, что же касается


Алгоритмы цифровой подписи тесно связаны с асимметричными шифрами. Например, алгоритм цифровой подписи RSA – это практически шифр RSA


Приведены различные способы организации скрытых каналов в алгоритме цифровой подписи ГОСТ Р 34.10-2001. Рассмотрены примеры использования скрытых каналов для обмена сообщениями, для тайной передачи ключа подписи

Схема использования алгоритма цифровой подписи на базе RSA для обмена двух абонентов подписанными сообщениями показана на рис. 14.


Рекомендуем

rd-ok.ru Телефон: +7 (382) 089-44-12 Адрес: Краснодарский край, Армавир, Посёлок РТС, дом 43