Что такое ЭЦП?


Всем привет!

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

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

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

Говоря об электронных документах в Республике Казахстан в первую очередь следует упомянуть Закон “Об электронном документе и электронной цифровой подписи”, в частности интересны следующие места:

  • Глава 2, Статья 7, пункт 1: “Электронный документ, соответствующий требованиям настоящего Закона и удостоверенный посредством электронной цифровой подписи лица, имеющего полномочия на его подписание, равнозначен подписанному документу на бумажном носителе.” - то есть электронный документ, подписанный цифровой подписью, равнозначен распечатанному документу с обычной подписью (при соблюдении определенных условий);
  • Глава 3, Статья 10, пункт 1: “Электронная цифровая подпись равнозначна собственноручной подписи подписывающего лица и влечет одинаковые юридические последствия при выполнении следующих условий:…” - опять же ЭЦП равнозначна обычной подписи (при соблюдении определенных условий).

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

Так же в законе вводятся следующие основополагающие понятия (приведены определения из текста Закона):

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

Для того, чтобы упростить понимание этих понятий, поясним их:

  • ключевая пара, состоящая из открытого и закрытого ключей (открытый и закрытый ключ ЭЦП, в соответствии с терминологией Закона) - это два блока компьютерных данных они связаны друг с другом математически, в соответствии с используемым криптографическим алгоритмом. Закрытый ключ используется для вычисления ЭЦП, открытый ключ используется для проверки ЭЦП. Ключевая пара генерируется в процессе подачи заявки на выпуск регистрационного свидетельства.
    graph LR Pub[Открытый ключ]-->Priv[Закрытый ключ] Priv-->Pub
  • регистрационное свидетельство, которое зачастую называют электронный сертификат, либо просто сертификат – это электронный документ специального формата, связывающий определенный открытый ключ с конкретным субъектом (владельцем регистрационного свидетельства, в соответствии с терминологией Закона). В нашем случае под субъектом подразумевается физическое лицо, либо представитель юридического лица - в таких регистрационных свидетельствах присутствуют ФИО, ИИН, а для сертификатов юридического лица еще и БИН.
  • электронная цифровая подпись - это тоже блок компьютерных данных, его вычисляют математически, в соответствии с криптографическим алгоритмом, из подписываемого электронного документа и закрытого ключа. То есть ЭЦП - уникальна для каждого подписываемого документа и каждого закрытого ключа.
    graph TD Priv[Закрытый ключ]-->Alg{{Криптографический алгоритм}} Doc[Документ]-->Alg Alg-->Sign[ЭЦП]

Интересный факт: Не стоит думать о том, что концепция регистрационных свидетельств - это что-то новое, отнюдь, пользователи сети Интернет сталкиваются с электронными сертификатами повсеместно, ведь именно на них построен защищенный протокол HTTPS, только в этом случае субъектами выступают веб сайты, то есть в сертификатах приведены URL, такие как sigex.kz.

Техническая подробность: Регистрационное свидетельство тоже подписано цифровой подписью. Иначе как подтвердить то, что оно не было изменено злоумышленником? Подписывают регистрационные свидетельства закрытым ключом Удостоверяющего Центра, у которого, в свою очередь, так же есть регистрационное свидетельство. Подробнее об этом можно почитать, к примеру, в статье Инфраструктура открытых ключей на Википедии.

Важно понимать что:

  • В удостоверяющем центре НЕ выпускают цифровую подпись или ЭЦП. Выражение “Я получил ЭЦП в ЦОН” в корне неверно, да и вообще не корректно говорить “у меня есть ЭЦП”, на самом деле речь идет о регистрационном свидетельстве и соответствующем ему закрытом ключе.
  • Иногда регистрационное свидетельство и связанный с ним закрытый ключ называют ключами ЭЦП, это довольно вольный, но устоявшийся в РК термин. По большому счету он не противоречит здравому смыслу, так как регистрационное свидетельство содержит в себе открытый ключ. Но не в коем случае нельзя путать “ключи ЭЦП” и “ЭЦП” - это абсолютно разные вещи.
  • Подписание документа цифровой подписью (ЭЦП) не означает банального копирования ЭЦП в документ. Нет, под подписанием электронного документа цифровой подписью следует понимать процесс вычисления цифровой подписи, на основании содержимого электронного документа и закрытого ключа.
  • Проверка ЭЦП под документом (в упрощенном смысле) - это математическая процедура, в которую передают содержимое документа, цифровую подпись и открытый ключ, в качестве ответа получают ошибку, либо успех. Так как цифровая подпись (ЭЦП) вычислена на основании содержимого документа, то любое изменение содержимого документа приведет к тому, что ЭЦП перестанет проходить проверку.
    graph TD Pub[Открытый ключ]-->Alg{{Криптографический алгоритм}} Doc[Документ]-->Alg Sign[ЭЦП]-->Alg Alg-->Result[Подпись верна/Подпись не верна]
  • Успешная проверка ЭЦП означает (то есть электронная цифровая подпись проверяет):
    • неизменность - переданный на проверку документ, это именно тот документ, который был подписан;
    • неотказуемость - переданный на проверку открытый ключ соответствует именно тому закрытому ключу, который был использован при подписании;
    • принадлежность - удостоверяющий центр, выпустив регистрационное свидетельство, подтверждает что закрытым ключом, соответствующим данному открытому ключу, владеет определенный субъект.
  • При подписании одного и того же документа разными закрытыми ключами будут сформированы разные ЭЦП (даже в том случае, если в соответствующих сертификатах указан один и тот же субъект).
  • При подписании разных документов одним и тем же закрытым ключом будут сформированы разные ЭЦП.
  • Один субъект может иметь одновременно несколько регистрационных свидетельств (по крайней мере в НУЦ РК).
  • Субъектом сертификата юридического лица в НУЦ РК выступает сотрудник юридического лица. В таких регистрационных свидетельствах всегда присутствует и ИИН и БИН. Так же в них присутствуют, так называемые, полномочия (их указывают при подаче заявления на выпуск сертификата), на момент написания статьи их 5:
    • Первый руководитель
    • Право подписи
    • Право подписи финансовых документов
    • Сотрудник отдела кадров
    • Сотрудник организации
  • Даже в том случае, если электронный документ подписан цифровой подписью с использованием регистрационного свидетельства юридического лица, это не значит что его подписал тот, кто имеет право подписывать документы от имени этого юридического лица - необходимо проверять полномочия. Подписать мог уборщик у которого есть сертификат юридического лица с полномочием “Сотрудник организации” которое он использует во внутренней информационной системе организации для подписания наряд-заданий.

И еще несколько не очевидных моментов:

  • Оригиналом электронного документа является именно электронный документ, любое его распечатанное представление - это копия. Почему? Потому что из распечатанного представления невозможно восстановить электронный документ, а значит и невозможно выполнить проверку подписи.
  • Наличие QR кодов на распечатанном представлении документа не обеспечивает юридической значимости этого распечатанного представления, зачастую распечатанное представление может носить исключительно информационный характер.
  • В сам подписанный электронный документ встроить QR коды не получится - ведь это приведет к тому, что содержимое документа изменится и подпись перестанет проходить проверку.
  • Некоторые форматы хранения данных (PDF, DOCX) обходят это ограничение предлагая подписывать только часть документа и встраивать подпись (обычно не визуально) в файл. Но этот подход уязвим к атакам когда злоумышленники хитрым образом меняют файл так, что подпись продолжает проходить проверку, но при просмотре отображаются совсем другие данные.
  • Другое исключение - когда в QR кодах записаны не только подписи, но и сам подписанный документ, тогда из QR кодов можно восстановить и документ и подпись. Правда чем же тогда является этот самый распечатанный документ? Ведь никто не гарантирует того, что записанный в QR кодах документ соответствует тому, что было распечатано. Именно так устроены документы электронного правительства - в QR кодах присутствуют и подписанные данные (в формате XML) и подпись. На странице Анализ документов EGOV можно загрузить документ egov и просмотреть что же именно было подписано.

Остались вопросы? Спросите у нас, мы с удовольствием ответим: Контакты.