Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции ЗИ.doc
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
6 Мб
Скачать
☆

Гост р 34.11‑94

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

  • генерация ключей – слов длиной 256 битов;

    • для генерации ключей используется стартовый вектор хеширования, последовательность двоичных символов, подлежащих хешированию и три параметра С2=С3=0256, С4=180811602411608(0818)21808(0818)4(1809)4

  • шифрующее преобразование – зашифрование 64-битных подслов стартового вектора хеширования (256 бит) на ключах Ki (i=0,..4) с использованием алгоритма по ГОСТ 28147-89 в режиме простой замены;

  • перемешивающее преобразование результата хеширования

Хэш-значение последнего блока сообщения не является его окончательным хэш-значением. На деле используется три переменные сцепления: Hn - это хэш-значение последнего блока, Z - это XOR всех блоков сообщения, а L - длина сообщения. С использованием этих переменных и дополненного последнего блока M', окончательное хэш-значение равно:

H = f(Z  M',f(L,f(M', Hn)))

Инфраструктура открытых ключей Основы инфраструктуры открытых ключей Идея криптографии с открытым ключом

В криптографии с симметричными ключами (symmetric key), для шифрования и дешифрования используется один и тот же секретный ключ (secret key), то есть ключ шифрования совпадает с ключом дешифрования. Стороны могут передавать друг другу данные, зашифрованные секретным ключом, только после того, как они обменяются этим общим ключом.

В отличие от шифрования с секретным ключом фундаментальным свойством шифрования с открытым ключом является различие между ключом шифрования и ключом дешифрования. Открытый ключ позволяет зашифровать открытый текст, но не позволяет расшифровать его. В этом смысле открытый ключ можно назвать односторонним (one‑way). Чтобы расшифровать текст, нужен ключ дешифрования, который отличается от ключа шифрования, хотя и связан с ним.

Таким образом, при шифровании с открытым ключом у каждого пользователя должно быть два ключа — открытый (public) и личный (private) — секретный ключ. Если открытый ключ сделать общедоступным, пользователи смогут отправлять вам зашифрованные с ним данные, которые только вы будете способны расшифровать с помощью своего личного секретного ключа.

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

Концепция криптографии с открытыми ключами была выдвинута Уитфилдом Диффи (Whitfield Diffie) и Мартином Хеллманом (Martin Hellman), и независимо Ральфом Мерклом (Ralph Merkle). Их вкладом в криптографию было убеждение, что ключи можно использовать парами - ключ шифрования и ключ дешифрирования - и что может быть невозможно получить один ключ из другого. Диффи и Хеллман впервые представили эту идею на Национальной компьютерной конференции (National Computer Conference) 1976 года, через несколько месяцев была опубликована их основополагающая работа "New Directions in Cryptography'' ("Новые направления в криптографии").