Warning: Parameter 1 to NP_SEO::event_PreItem() expected to be a reference, value given in /home/bh52645/public_html/fucktheplanet.ru/nucleus/libs/MANAGER.php on line 370

Хэш функции и совсем чуть чуть об электронной подписи

Как отмечено во введении криптографическими методами можно обеспечить не только конфиденциальность, но и проконтролировать целостность передаваемых или хранимых данных. Контроль целостности в основном производится путем расчета некоторой «контрольной суммы» данных. Математиками и инженерами, работающими в области передачи данных и теории кодирования, разработано множество алгоритмов, рассчитывающих контрольные суммы передаваемых данных.
Для многих приложений простой контрольной суммы (например, известного алгоритма crc32 или последовательного побайтного или пословного сложения исходного текста с известной константой) оказывается достаточно, особенно тогда, когда важна скорость обработки данных и не известен заранее объем данных (типичный случай – передача данных по каналам связи).
Проблема простых алгоритмов вычисления контрольной суммы в том, что достаточно легко подобрать несколько массивов данных, имеющих одинаковую контрольную сумму. Криптографически стойкие контрольные суммы вычисляются как результат применения к исходному тексту так называемой хэш функции.

Одним из результатов теории сложности итеории функций является гипотеза о существовании односторонних функций. Под односторонней функцией понимается функция, определенная (например) на множестве натуральных чисел и не требующая для вычисления своего значения больших вычислительных ресурсов. Но вычисление обратной функции(то есть, по известному значению функции восстановить значение аргумента) оказывается невозможно теоретически или (в крайнем случае) невозможно вычислительно. Строгое существование односторонних функций пока не доказано. Поэтому все используемые в настоящее время хэш функции являются лишь «кандидатами» в односторонние функции, хотя и имеют достаточно хорошие свойства. Основными свойствами криптографически «хорошей» хэш функции является свойство рассеивания, свойство стойкости к коллизиям и свойство необратимости. О необратимости мы уже говорили. Коллизией хэш функции H называется ситуация,при которой существуют два различных текста T1 и T2, но H(T1) = H(T2). Значение хэш функции всегда имеет фиксированную длину, а на длину исходного текста не накладывается никаких ограничений. Из этого следует, что коллизии существуют. Требование стойкости к коллизиям обозначает, что для криптографически «хорошей» хэш функции для заданного текста T1 вычислительно невозможно найти текст T2, вызывающий коллизию. Свойство рассеивания требует, чтобы минимальные изменения текста, подлежащего хэшированию, вызывали максимальные изменения в значении хэш функции.

Основные применяемые на сегодняшнийдень алгоритмы, реализующие хэш функции,являются MD2, MD4, MD5, SHA и его вариант SHA1, российский алгоритм, описываемый стандартом ГОСТ Р 34.11 94. Наиболее часто используются MD5, SHA1 и в России 34.11. Длина значения хэш функции различна. Типичной длиной является 16–32 байта. В свете последних криптоаналитических результатов, вероятно, придется в недалеком будущем отказаться от MD5, так как было заявлено: «его стойкость к коллизиям опустилась и, вероятно, подошла близко к той отметке, после которой о стойкости вообще говорить не приходится». В заголовок раздела вынесены слова «электронная подпись». Но не сказать об электронной подписи совсем было бы неправильно. Дело в том, что без несимметричной криптографии электронной подписи не было бы вообще! Идея электронной подписи проста. Когда описывался процесс шифрования с использованием несимметричного алгоритма, то отмечалось, что для зашифрования сообщения использовался открытый ключ, а для расшифрования – секретный. Но в применении к шифрованию ключи взаимозаменяемы. Можно зашифровать сообщение на своем секретном ключе, и тогда любой желающий сможет его расшифровать, используя открытый ключ. Это свойство несимметричных алгоритмов и используетсяпри формировании и проверке электронно цифровой подписи. Cобственно ЭЦП документа – это его хэш сумма, зашифрованная секретным ключом. Проверка ЭЦП документа сводится к вычислению хэш суммы документа, расшифрованию хэш суммы, содержащейся в подписи, и сравнению двух величин. Если значения вычисленной и сохраненной в подписи хэш сумм совпали, то считается, что подпись под документом верна.

Комментарии

Нет комментариев. Вы можете быть первым!

Оставить комментарий


Warning: Parameter 1 to NP_Captcha::event_FormExtra() expected to be a reference, value given in /home/bh52645/public_html/fucktheplanet.ru/nucleus/libs/MANAGER.php on line 370