Открыть сервис

Криптографическая подпись

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

История

Идея создания аналога собственноручной подписи для электронных сообщений возникла одновременно с развитием компьютерных сетей. В 1976 году американские криптографы Уитфилд Диффи и Мартин Хеллман в своей работе «Новые направления в криптографии» впервые предложили концепцию асимметричной криптографии, которая теоретически позволяла реализовать цифровую подпись. Однако практическая реализация требовала решения задачи «неотказуемости» (невозможности для подписанта отказаться от своей подписи).

Первая практически применимая схема была разработана в 1977 году Рональдом Ривестом, Ади Шамиром и Леонардом Адлеманом в рамках алгоритма RSA. В 1979 году Лэмпорт предложил одноразовую подпись, основанную на хеш-функциях. В 1985 году Тахер Эль-Гамаль опубликовал алгоритм, ставший основой для стандарта DSA (Digital Signature Algorithm), принятого в 1991 году Национальным институтом стандартов и технологий США (NIST).

В России развитие криптографической подписи началось в 1990-х годах. В 1994 году был принят первый государственный стандарт ГОСТ Р 34.10-94, который определял алгоритмы формирования и проверки электронной подписи на основе эллиптических кривых. В 2002 году вступил в силу Федеральный закон «Об электронной цифровой подписи» (№ 1-ФЗ), который был заменён в 2011 году на Федеральный закон «Об электронной подписи» (№ 63-ФЗ), действующий в настоящее время.

Основные принципы работы

Криптографическая подпись основана на асимметричной криптографии. Каждый участник системы обладает парой ключей: закрытым (секретным) и открытым (публичным). Закрытый ключ используется для создания подписи и должен храниться в тайне. Открытый ключ распространяется свободно и используется для проверки подписи.

Процесс создания подписи

  1. Вычисление хеша документа. Исходное сообщение (документ) обрабатывается криптографической хеш-функцией (например, SHA-256, ГОСТ Р 34.11-2012 «Стрибог»), которая преобразует его в строку фиксированной длины — дайджест. Хеш-функция обладает свойством необратимости: по дайджесту невозможно восстановить исходное сообщение.
  2. Шифрование хеша закрытым ключом. Полученный дайджест шифруется с использованием закрытого ключа подписывающего лица. Результат этого преобразования и является цифровой подписью.
  3. Прикрепление подписи к документу. Подпись либо присоединяется к исходному документу (отсоединённая подпись), либо объединяется с ним в единый файл (присоединённая подпись).

Процесс проверки подписи

  1. Расшифровка подписи открытым ключом. Получатель использует открытый ключ отправителя, чтобы расшифровать цифровую подпись и получить исходный дайджест.
  2. Вычисление хеша полученного документа. Получатель самостоятельно вычисляет хеш-функцию от полученного документа.
  3. Сравнение дайджестов. Если два дайджеста совпадают, подпись считается подлинной, а документ — неизменённым. Если дайджесты различаются, это означает, что либо документ был изменён после подписания, либо подпись была создана с использованием другого закрытого ключа.

Классификация криптографических подписей

По способу реализации

  • Алгоритмические подписи — основаны на математических алгоритмах (RSA, DSA, ECDSA, ГОСТ Р 34.10-2012).
  • Подписи на основе хеш-функций — одноразовые подписи (схема Лэмпорта, схема Меркла).
  • Постквантовые подписи — устойчивые к атакам с использованием квантовых компьютеров (например, CRYSTALS-Dilithium, FALCON).

По степени защищённости

  • Простая электронная подпись — создаётся с использованием кодов, паролей или иных средств, не требующих сертификата ключа проверки. Используется в корпоративных системах, но не имеет юридической силы в России для значимых документов.
  • Усиленная неквалифицированная электронная подпись (НЭП) — создаётся с использованием криптографических алгоритмов, ключ проверки содержится в сертификате, выданном удостоверяющим центром (УЦ), но не обязательно аккредитованным Минцифры России.
  • Усиленная квалифицированная электронная подпись (КЭП) — наиболее защищённый вид. Создаётся с использованием криптографических алгоритмов, подтверждённых ФСБ России, и сертификата ключа проверки, выданного аккредитованным УЦ. КЭП приравнивается к собственноручной подписи и имеет юридическую силу во всех случаях, кроме тех, где закон требует нотариального удостоверения.

По типу ключа

  • Симметричные подписи — редко используются, так как требуют общего секретного ключа для подписывающего и проверяющего.
  • Асимметричные подписи — стандартный подход, где закрытый и открытый ключи различны.

Применение

Электронный документооборот

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

Финансовые операции

В банковской сфере подпись используется для подтверждения платежей, подписания кредитных договоров, открытия счетов и проведения торгов на биржах. Системы дистанционного банковского обслуживания (ДБО) требуют использования КЭП для операций с крупными суммами.

Аутентификация программного обеспечения

Разработчики программного обеспечения подписывают свои приложения цифровой подписью, чтобы гарантировать их подлинность и целостность. Операционные системы и браузеры проверяют подпись перед установкой или запуском программы. Например, Microsoft Authenticode позволяет подписывать исполняемые файлы (.exe, .dll).

Защита электронной почты

Протоколы S/MIME и PGP используют криптографические подписи для подтверждения авторства и целостности писем. Это предотвращает подделку отправителя и изменение содержимого сообщения в пути.

Блокчейн и криптовалюты

В технологии блокчейн (например, Bitcoin, Ethereum) криптографические подписи используются для подтверждения права собственности на цифровые активы и авторизации транзакций. Каждая транзакция подписывается закрытым ключом владельца, что предотвращает несанкционированное расходование средств.

Криптографические алгоритмы

Международные стандарты

  • RSA — один из первых и наиболее распространённых алгоритмов. Основан на сложности факторизации больших целых чисел. Длина ключа обычно составляет 2048 или 4096 бит.
  • DSA (Digital Signature Algorithm)стандарт NIST, основанный на задаче дискретного логарифмирования. Используется в правительственных и коммерческих системах США.
  • ECDSA (Elliptic Curve Digital Signature Algorithm) — вариант DSA на эллиптических кривых, обеспечивающий ту же степень безопасности при меньшей длине ключа (например, 256 бит вместо 3072 бит для RSA). Используется в криптовалютах и мобильных устройствах.

Российские стандарты

  • ГОСТ Р 34.10-2012 — стандарт, определяющий алгоритмы формирования и проверки электронной подписи на эллиптических кривых. Применяется в государственных информационных системах и при межведомственном взаимодействии.
  • ГОСТ Р 34.11-2012 — хеш-функция «Стрибог», используемая совместно с ГОСТ Р 34.10-2012. Выдаёт дайджест длиной 256 или 512 бит.

Критика и уязвимости

Несмотря на высокую надёжность, криптографические подписи не лишены недостатков. Основные проблемы включают:

  • Компрометация закрытого ключа. Если злоумышленник получает доступ к закрытому ключу, он может создавать поддельные подписи от имени владельца. Защита ключей требует использования аппаратных средств (токенов, смарт-карт) и строгих процедур хранения.
  • Квантовая угроза. Алгоритмы RSA и ECDSA уязвимы перед атаками с использованием квантовых компьютеров (алгоритм Шора). В связи с этим ведётся разработка постквантовых криптографических схем.
  • Человеческий фактор. Владельцы ключей могут забыть пароль от токена, потерять носитель или передать ключ третьим лицам, что снижает безопасность.
  • Атаки на хеш-функции. Коллизии (два разных сообщения с одинаковым хешем) могут позволить подделать подпись. Современные хеш-функции (SHA-256, «Стрибог») считаются устойчивыми к коллизиям.

Правовое регулирование в России

В Российской Федерации правовое регулирование криптографической подписи осуществляется Федеральным законом № 63-ФЗ «Об электронной подписи» (2011 год). Закон устанавливает три вида подписи (простая, неквалифицированная, квалифицированная) и определяет требования к удостоверяющим центрам. Аккредитация УЦ проводится Минцифры России. Ключи квалифицированной подписи должны создаваться с использованием средств криптографической защиты информации (СКЗИ), сертифицированных ФСБ России.

С 2022 года в России действует обязательный переход на использование машиночитаемых доверенностей (МЧД) для подтверждения полномочий представителей юридических лиц при подписании документов КЭП. Это направлено на повышение прозрачности и контроля в корпоративном документообороте.

Источники

  • Федеральный закон от 06.04.2011 № 63-ФЗ «Об электронной подписи» (ред. от 14.07.2022).
  • ГОСТ Р 34.10-2012 «Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи».
  • Диффи У., Хеллман М. «Новые направления в криптографии» (1976).
  • Ривест Р., Шамир А., Адлеман Л. «Метод получения цифровых подписей и криптосистем с открытым ключом» (1978).
  • Шнайер Б. «Прикладная криптография» (1996).
  • Материалы Национального института стандартов и технологий США (NIST) по стандарту DSA (1991).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →