Начнем сразу со схемы. Она проста и достаточно наглядна.
Базовыми структурами современной криптографии являются: блочный шифр, криптографическая хэш-функция (функция хэширования) и электронная подпись (ГОСТ оперирует термином ЭЦП, а федеральный закон «Об электронной подписи» — ЭП).
Следует отметить, что ГОСТ 34.311-95 имеет одинаковую силу с ГОСТ Р 34.11-94 «в связи с идентичностью», обозначен как действующий, несмотря на то, что ГОСТ Р 34.11-94 — заменен.
Ссылки на Госстандарт
- ГОСТ 28147-89 Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования
- ГОСТ Р 34.11-94 Информационная технология. Криптографическая защита информации. Функция хэширования
- ГОСТ 34.311-95 Информационная технология. Криптографическая защита информации. Функция хэширования
- ГОСТ Р 34.10-2001 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи
- ГОСТ Р 34.10-2012 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи
- ГОСТ Р 34.11-2012 Информационная технология. Криптографическая защита информации. Функция хэширования
- ГОСТ Р 34.12-2015 Информационная технология. Криптографическая защита информации. Блочные шифры
- ГОСТ Р 34.13-2015 Информационная технология. Криптографическая защита информации. Режимы работы блочных шифров
Комментарии (22)
gotch
22.09.2015 17:11Я дилетантский вопрос задам, сугубо самообразовательного свойства, а есть какая-то таблица совместимости использования, например, алгоритма хеширования, длины хеша и алгоритма ЭЦП?
lumag
22.09.2015 17:35+2- Симметричные шифры
- ГОСТ Р 34.12-2015 / Кузнечик — 128-битный блок, ключ 256 бит.
- ГОСТ Р 34.12-2015 / ГОСТ 28147-89 / Магма — 64-битный блок, ключ 256 бит.
- Хеш-функции.
- ГОСТ Р 34.11-2015 / Стрибог — два варианта размера, 256 бит и 512 бит. Размер блока данных — 512 бит.
- ГОСТ Р 34.11-94 /ГОСТ 34.311-95 (устарел). — 256 бит. Размер блока данных — 256 бит.
ЭЦП
- ГОСТ Р 34.10-2012/ ГОСТ Р 34.10-2001. Алгоритм подписи на эллиптических кривых. Изначально (2001 год) длина ключа 256 бит. В 2012 году добавлена поддержка 512-битных ключей.
- ГОСТ Р 34.10-94 / ГОСТ 34.311-94 (устарел) — вычисления подписи над полем целых чисел. Специфицированы длины ключей 510–512 бит и 1021–1024 бит.
- Симметричные шифры
lumag
22.09.2015 17:58+2- Имитовставка:
- ГОСТ Р 34.13-2015 — CMAC
- ГОСТ 28147-89 определяет отдельный алгоритм выработки имитовставки
- В методических документах описано использование алгорита HMAC совместно с ГОСТ Р 34.11-94 или ГОСТ Р 34.11-2012
- Совместимость:
- ГОСТ Р 34.10-94 уже не применяется.
- ГОСТ Р 34.10-2001 (256 бит) может использоваться с ГОСТ Р 34.11-94 (256 бит).
- ГОСТ Р 34.10-2012 (256 бит) может использоваться с ГОСТ Р 34.11-2012 (256 бит).
- ГОСТ Р 34.10-2012 (512 бит) может использоваться с ГОСТ Р 34.11-2012 (512 бит).
- При использовании в TLS используется шифрование и имитовставка по ГОСТ 28147-89 или отсутствие шифрования и имитовставка на основе HMAC + ГОСТ Р 34.11 (-94 или -2012).
- Имитовставка:
lockywolf
22.09.2015 18:28+1Как они вообще соотносятся со стандартными RSA/AES/SHA512?
Есть ли хоть одна причина выбрать их, кроме необходимости проходить что-нибудь вроде ФСТЭК?nvv
22.09.2015 19:56Соотносятся в каком плане? Например: стойкость, распространенность, эффективность аппаратной реализации.
RSA — может применяться как для ЭП, так и, теоретически, для шифрования данных
AES — блочный шифр
SHA512 — хэшlockywolf
22.09.2015 19:59Спасибо, я знаю, зачем применяются инструменты, которые я перечислил.
Меня интересует, в каких случаях я должен применить для решения своих задач экзотические гостовские инструменты вместо повсеместно распространённых.nvv
22.09.2015 20:16это решения, требующие сертификации (только криптографией занимается ФСБ, а не ФСТЭК)
это решения с ограничениями по эффективности реализации / потребляемым ресурсам при заданной стойкости
это (для любителей заговоров) уверенность в качестве алгоритмов — посмотрите статьи с разоблачительными «взломами слабого и ненадежного ГОСТ», которые препятствовали международной стандартизации ISO www.tc26.ru/ISO_IEC/ISO28147-89/index.php
lockywolf
22.09.2015 22:00По первому и третьему пункту вопросов нет. Первый вообще не имеет отношения к технологии, третий же не поддаётся проверке в связи с кардинально меньшей распространёностью ГОСТ.
А вот пункт два любопытен. Где можно почитать сравнение вычислительной сложности ГОСТ с популярными решениям?nvv
23.09.2015 12:52В ISO/IEC 18033-3:2010 приведены несколько шифров (64-bit block TDEA, MISTY1, CAST-128, HIGHT; 128-bit AES, Camellia, SEED).
сравнение ГОСТ 28147-89 с шифрами, созданными в 70-80-е годы XX века или со стандартами, принятыми на 10+ лет позже?
btd
22.09.2015 18:56А нет ли официального описания алгоритма (к примеру кузнечика)? Например если я реализовать хочу.
nvv
22.09.2015 19:07Описание с контрольными примерами непосредственно в ГОСТ.
На сайте Госстандарта или профильного комитета tc26.ru/standard/gost
GamePad64
22.09.2015 19:04Есть ли какая-нибудь кроссплатформенная библиотека для работы со всеми этими алгоритмами?
lumag
22.09.2015 19:25+1LibreSSL и libgcrypt поддерживают работу с этими алгоритмами (кроме ''Кузнечика'').
nvv
22.09.2015 19:52Посмотрите раздел Open Source на сайте компании Криптоком www.cryptocom.ru/opensource/index.html
lumag
22.09.2015 19:54Криптоком делал реализацию ГОСТ-ов для OpenSSL, сделал по состоянию на начало двухтысячных. Т.е. Стрибог и ЭЦП с 512-битными ключами не поддерживается.
nvv
22.09.2015 20:03многие RFC по ГОСТ созданы при их участии: rfc6986, rfc7091 и др.
lumag
22.09.2015 20:34Что не отменяет того, что в OpenSSL нет обновленных алгоритмов. Частично вина лежит на самих авторах OpenSSL, которые не спешат принимать патчи (например, Стрибог висит в патч-трекере уже давно).
gotch
29.09.2015 12:38Крипто Ком сделал свой коммит по трагичной случайности? Тогда они еще не поняли, что на Open Source можно будет заработать?
StrangerInRed
Очень полезно.nvv
вы о своем комментарии?
наглядное представление ГОСТов по порядку появления и сфере применения, надеюсь, снизит количество ошибок у «начинающих» (и в рефератах/курсовых)
zorge_van_daar
Честно говоря, в словах StrangerInRed есть доля правды. Ну что мешало сделать краткий обзор по каждому пункту, длины ключей, вероятность перебора в современных условиях, известные атаки. Показать отличия новых и старых алгоритмов. Я изучал криптографию в вузе в 2010 году, тут уже 2 госта которые разработаны позднее. Это превратило бы схемку в короткую статью — не было бы претензий к полезности.
Мой совет — в черновики на доработку.
nvv
только 2 новых с 2010 года, не 4? (или вы знакомились с проектами ГОСТ Р 34.10/11 -2012)
— атака перебором ключей давно уже не рассматривается серьёзно, насколько мне известно
— длины ключей, без понимания особенностей алгоритмов и вычислительной сложности, мало что значат (если только для перебора)
— известные а, главное, эффективные атаки — это очень большая тема, по которой есть отличные статьи