Функции хэширования и алгоритмы электронной цифровой подписи

ФЕДЕРАЛЬНОЕ АГЕНСТВО ВОЗДУШНОГО ТРАНСПОРТА

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО Проф ОБРАЗОВАНИЯ “Столичный Муниципальный ТЕХНИЧЕСКИЙ Институт Штатской АВИАЦИИ” (МГТУГА)

Кафедра вычислительных машин, комплексов, систем и сетей.

Лабораторная работа № 3

КРИПТОГРАФИЧЕСКИЕ Способы

ОБЕСПЕЧЕНИЯ ПОДЛИННОСТИ И ЦЕЛОСТНОСТИ Электрических ДОКУМЕНТОВ.

Электрическая ЦИФРОВАЯ ПОДПИСЬ

Выполнил:

студент группы ЭВМ 4-1

Герасимов Д.А.

«__» _________ 2012г.

Москва 2012

Цель работы

Исследование современных принципов обеспечения Функции хэширования и алгоритмы электронной цифровой подписи подлинности и целостности электрических документов с внедрением способов криптографического преобразования инфы. Построение функ­ций хэширования на базе блочных шифраторов с скрытым ключом. Исследование и апробирование функции хэширования по ГОСТ Р 34.11–94 и алгоритмов электрической цифровой подписи EGSA (Эль-Гамаля), ГОСТ Р 34.10–94 и ГОСТ Р 34.10–01.

Функции хэширования и методы электрической цифровой Функции хэширования и алгоритмы электронной цифровой подписи подписи

Функцией хэширования либо хэш-функцией (Hash-function) назы­вается метод сжатия (преобразования) текста m Î М (где М – место текстов) случайной длины L до некого числового значения z = h(m) фиксированной длины, именуемого хэш-значением либо дайджестом этого текста (MessageDigest). При всем этом значение z хэш-функции сложным образом находится в зависимости Функции хэширования и алгоритмы электронной цифровой подписи от начального текста m и обязательно меняется при хоть какой его модификации. Таким макаром, не существует 2-ух различных текстов m1¹m2, имеющих одинаковоехэш-значение z,т.е. всегда справедливоh(m1) ¹h(m2). Не считая того, по отношению к злодею (противнику) хэш-функция является однонаправленной, т.е. вернуть по Функции хэширования и алгоритмы электронной цифровой подписи ее хэш-значению z начальный текст m не представляется вероятным.

На практике высококачественные функции хэширования отлично реализуются на базе блока хэширования, модифицирующего две входные последовательности частей (к примеру, бит) схожей длины в одну выходную последовательность (хэш-значение) таковой же длины. Входными последовательностями могут являться i-й блок текста Функции хэширования и алгоритмы электронной цифровой подписи mi (за ранее весь текст m, подлежащий хэшированию, разбивается на блоки m = (m1, …, mi, …, mn) фиксированной длины) и хэш-значение zi-1, приобретенное для предшествующего блока mi-1 текста m. В итоге формируется хэш-значение zi для текущего блока mi:

zi = h(mi, zi-1).

Хэш-значение, приобретенное для последнего Функции хэширования и алгоритмы электронной цифровой подписи блока mn, является результирующим хэш-значением всего текста (сообщения) m. Таким макаром формируется хэш-значение фиксированной длины, незави­симо от длины входного текста m. Схема описанной конструкции изображена на рис. 1.


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

Для обеспечения обоюдной зависимости (сцепления, оборотной связи) блоков текста итог криптографического преобразования (последовательность на Функции хэширования и алгоритмы электронной цифровой подписи выходе шифратора) суммируется по модулю 2 с текущим блоком данных mi, предшествующим хэш-значением zi-1 либо некой гаммированной последовательностью. Приобретенная на выходе сумматора последо­вательность будет являться текущим хэш-значением zi. Качество (стойкость, безопасность) таковой функции хэширования определяется криптостойкостью применяемого метода симметричного блочного шифрования. Обобщенная схема функции хэширования, у которой хэш-значение Функции хэширования и алгоритмы электронной цифровой подписи, входной блок данных и ключ шифрования имеют схожую длину, показана на рис. 2.



На базе рассмотренного способа реализован российский эталон функции хэширования ГОСТ Р 34.11-94, который конвертирует двоичную последовательность случайной длины в 256-битовое хэш-значение. В нем применен в режиме обычной подмены метод симметричного блочного шифрования по ГОСТ 28147-89, имеющий 256-битовый ключ и Функции хэширования и алгоритмы электронной цифровой подписи обрабатывающий блоки данных длиной 64 бита. Функция хэширования по ГОСТ Р 34.11-94 создана для использования при формировании электрической цифровой подписи по ГОСТ Р 34.10-94. Подробное описание обозначенных алгоритмов можно отыскать в дополнительной литературе [1, 3, 4, 6-9, 11].

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

Особое числовое значениеz (двоичное, десятичное либо другое), которое неразрывно связано с документом и охарактеризовывает его в целом, является Функции хэширования и алгоритмы электронной цифровой подписи значением функции хэшированияh(m) подписываемого текста m. Число z, зашифрованное скрытым ключом подписанта, на самом деле и является электрической цифровой подписью этого документа.

При проверке подлинности и целостности электрического документа получатель без помощи других вычисляет (естественно, используя схожую с подписантом функцию хэширования) его хэш-значение z' = h(m'). В случае, если Функции хэширования и алгоритмы электронной цифровой подписи расшифрованное при помощи имеющегося у него открытого ключа приобретенное хэш-значение z совпадет с без помощи других вычисленнымхэш-значением z' (т.е. z = z'), то ЭЦП признается подлинной и целостность документа не вызывает колебаний.

Для формирования ЭЦП можно удачно использовать фактически все известные способы открытого (асимметричного) шифрования, что Функции хэширования и алгоритмы электронной цифровой подписи в купе с открытым рассредотачиванием ключей позволяет организовать электрический документооборот с приданием электрическим документам юридической значимости. Обобщенная схема ЭЦП на базе способов асимметричного шифрования приведена на рис. 3.

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

Посреди современных алгоритмов ЭЦП широкую известность получил метод Эль-Гамаля (EGSA -ElGamalSignatureAlgorithm), являющийся более надежным по сопоставлению с методом RSA, так как он основан на задачке дискретного логарифмирования, которая считается вычислительно более сложной, чем разложение огромного числа на обыкновенные множители. Разглядим главные этапы метода Эль-Гамаля.

1. Рассчитываются Функции хэширования и алгоритмы электронной цифровой подписи открытый и закрытый ключи, зачем выбираются некое огромное обычное числоPи огромное целое число G (при этом P> G), которые известны подписанту и получателю и не являются секретом. На практике употребляются очень огромные числа P~10 308 (21024) и G~ 10 154 (2512). Потом подписант выбирает случайное целое число Х такое, что 1< Х £ (Р Функции хэширования и алгоритмы электронной цифровой подписи-1), и вычисляет число

Y = GХmodP,

которое является открытым ключом, применяемым для проверки подлинности подписи отправителя, и открыто передается всем получателям электрических документов. Число Х является скрытым ключом отправителя для формирования ЭЦП и должно храниться в секрете.

2. Начальный электрический документ m представляется подписантом в виде целого числа z, при этом 1

3. Выбирается случайное целое число К, при этом 1<К < (Р-1), такое, что К и Р являются взаимно ординарными, т.е. НОД (К, Р-1) = 1. Потом отправитель вычисляет целое число

а = GКmodP

и, применяя расширенный метод Евклида, вычисляет, используя числа Х иК, целое число bиз уравнения

z Функции хэширования и алгоритмы электронной цифровой подписи = Х × а + К ×b(mod (P-1)).

Пара чисел (a, b) образуют ЭЦП, принадлежащую электрическому документу m и передаваемую совместно с ним получателю. При всем этом пара чисел (Х, К) держится в серьезном секрете (обычно, числоК уничтожается после формирования ЭЦП).

Проверка подлинности ЭЦП приобретенного электрического документа заключается в проверке справедливости соотношения Функции хэширования и алгоритмы электронной цифровой подписи:

Yа×аb(mod P) = Gz'(mod P),

где числа Y, a, b, P, G известны получателю, а число z' рассчитывается им для документа m с внедрением известной обеим сторонам функции хэширования. Если это соотношение производится, то приобретенный электрический документ m признается подлинным и целостным, так как можно математически Функции хэширования и алгоритмы электронной цифровой подписи обосновать, что равенство будет настоящим исключительно в том случае, если подпись S= (a, b) сформирована для документа m с внедрением секретного ключа Х, из которого был получен открытый ключ Y. Тем подтверждается факт того что отправителем электрического документа m может являться только владелец секретного ключа Х.

Необходимо подчеркнуть, что выполнение новейшей Функции хэширования и алгоритмы электронной цифровой подписи ЭЦП по способу EGSA просит выбора всякий раз нового случайного значенияК, так как, если злодей выяснит какое-либо значение К, повторно применяемое подписантом, то он сумеет раскрыть его скрытый ключ.



funkcii-arm-vracha-funkcionalnoj-diagnostki.html
funkcii-cb.html
funkcii-centralnogo-banka-rf.html