- О сертификате: что это такое
- Что такое электронная подпись
- Excel и word
- Блок “настройка криптопровайдеров”
- Где можно использовать электронную подпись
- Для чего нужен сертификат
- Зачем копировать сертификаты эцп
- Зачем нужна электронная подпись
- Извлечение сертификата из контейнера
- Инструкция по поиску и скачиванию сертификата удостоверяющего центра
- Как перевыпустить сертификат
- Как подписать документ электронной подписью
- Как привязать сертификат к контейнеру
- Как приобрести подпись физическому лицу
- Как работает: сертификаты
- Какую эцп можно проверить самостоятельно
- Открытый и закрытый ключ
- Пароль от контейнера электронной подписи
- Пин-код от токена электронной подписи
- Подтверждение документа с отсоединенной эп
- Практическое руководство. получение отпечатка сертификата
- Просмотр сертификатов через certmgr
- Просмотр сертификатов через консоль управления
- Просмотр сертификатов через криптопро
- Решение №2. подбор пин-кода и права администратора
- Состав: из чего состоит сертификат эп
- Сравнение сервисов для проверки эцп
- Файлы сертификатов в проводнике
- Часть 1. самоподписанный сертификат
- Заключение
О сертификате: что это такое
Сертификат ключа ЭЦП — это документ, несущий информацию о владельце. В открытом ключе зашифрованы данные о статусе владельца, реквизитах и полномочиях. Сертификат подтверждает принадлежность ключа конкретному лицу, отвечающему за его применение.
Документ имеет электронный цифровой или бумажный вариант. Выдача сертификата электронного ключа происходит в удостоверяющем центре. Вся информация о сертификатах хранится в едином федеральном реестре. УЦ гарантирует соответствие предоставленных данных действительности, подтверждает личность владельца и защищает цифровой ключ от взлома.
Электронная цифровая подпись (ЭЦП) — аналог рукописного варианта подписи владельца. Используется в документообороте и при работе с электронными системами управления финансами. ЭП составляет электронный сертификат, выданный удостоверяющим центром.
Цифровой аналог реальной подписи делится на квалифицированный и неквалифицированный тип. В зависимости от профиля у электронного сертификата есть уровень допуска для работы с теми или иными ресурсами. Квалифицированный вариант обладает самой высокой степенью защиты, благодаря чему его применяют в операциях с недвижимостью, финансами и для подписания документов.
Информация о сертификатах хранится в базах Единого реестра ЕСИА. Вносить данные имеют право удостоверяющие центры, прошедшие сертификацию. Все УЦ делятся на аккредитованные и неаккредитованные.
Что такое электронная подпись
Электронная подпись — это технология, которая помогает подтвердить подлинность электронного документа: договора, справки, выписки или чего-то ещё.
Если упрощённо, работает так:
👉 Есть некий документ, подписанный ЭП
👉 С помощью специальной программы можно проверить подлинность этой подписи и документа
✅ Если программа говорит, что всё окей, то мы можем быть уверены: документ подписал именно тот, кто в нём указан; и с момента подписания в документе ничего не изменилось.
❌ Или программа может сказать, что подпись не совпала. Это значит, что либо документ подписал другой человек, либо после подписания кто-то изменил этот документ (например, дописал ноль в стоимость контракта). Так мы поймём, что этому документу нельзя доверять.
С технической точки зрения ЭП — небольшой файлик, который прилагается к искомому документу. Файлик пересылается вместе с основным документом, его можно передавать по открытым каналам связи, в нём нет ничего секретного.
Электронная подпись нужна, чтобы защищать договоры, выдавать официальные справки, заключать сделки и участвовать в торгах по госзакупкам.
Excel и word
Для проверки электронной подписи в стандартном интерфейсе Microsoft Office необходимо установить платный плагин «КриптоПро Office Signature».
Как проверить подлинность электронной подписи:
- нажать «Файл» — «Сведения» — «Просмотр подписи»;
- выбрать «Состав подписи».
Аналогичным способом можно проверить данные о сертификате. Через меню «Файл» переходят к подменю «Просмотр подписи», а там выбирают «Состав подписи».
Для получения информации о сертификате в диалоговом окне переходят во вкладку «Просмотр».
Блок “настройка криптопровайдеров”
Рис. 2. Диалоговое окно редактирования вложенного блока “Общие настройки”
Требовать ЭЦП при согласовании:
Требовать ЭЦП при ознакомлении:
Требовать ЭЦП при подписании:
Запретить изменение требования ЭЦП в подзадачах согласования:
Запретить изменение требования ЭЦП в подзадачах ознакомления:
Решение по задаче содержит в себе весь подписываемый текст документов (в т.ч. атрибуты и решения по всем документам). Для просмотра содержимого решения необходимо в диалоговом окне Создание ЭЦП (рис. 4) нажать на ссылку Решение по задаче, отобразится диалоговое окно Решение по задаче (рис. 3).
Рис. 3. Диалоговое окно “Решение по задаче”
Рассмотрим подписание пакета документов с использованием различных криптопровайдеров.
В диалоговом окне (рис. 4) необходимо один раз выбрать сертификат в поле Сертификат*, установить флажок в поле Решение по задачеи нажать на кнопку Подписать.
Рис. 4. Диалоговое окно “Создание ЭЦП”
2. Подписание пакета документов с использованием КриптоПро CSP (рис. 5).
В диалоговом окне (рис. 5) необходимо один раз выбрать сертификат в поле Сертификат*, флажками отметить нужные файлы и при необходимости установить флажок в поле Решение по задаче. Далее следует нажать на кнопку Подписать.
Рис. 5. Диалоговое окно “Создание ЭЦП”
При использовании данного криптопровайдера у пользователя есть возможность подписать файлы версий без решения по задаче и наоборот, подписать решение по задаче без файлов версий.
Выбор сертификата при подписании множества документов:
Рис. 6. Диалоговое окно “Создание ЭЦП”
Рис. 7. Диалоговое окно “КриптоПро CSP”
Установка флажка в поле Запомнить пароль позволит сохранить введенные данные в поле Пароль и автоматически заполнить их при следующем подписании документов.
Рис. 8. Диалоговое окно “Создание ЭЦП”
При нажатии на кнопку Подписать (рис. 8) документы будут подписаны в соответствии с установленными настройками криптопровайдера. Подробнее см. в разделе выше.
Блок “Настройки внутреннего криптопровайдера”
В открывшемся диалоговом окне (рис. 9) следует заполнить требуемые параметры и нажать на кнопку Сохранить.
Рис. 9. Диалоговое окно настройки внутреннего криптопровайдера
Проверять соответствие алгоритма подписи:
Отключить проверку сертификата для существующих подписей:
Рис. 10. Окно информации о проверке электронной подписи
Рис. 11. Диалоговое окно добавления нового сертификата
Отпечаток* (Authority Key Identifier, SHA-1 хеш от закодированного с помощью DER открытого ключа) используется для проверки подлинности сертификатов пользователей.
Если Адрес сервера указан корректно и сервер доступен, Отпечаток можно получить автоматически, нажав на кнопку Получить с центра сертификации.
Внимание! Если указан центр сертификации, осуществляющий проверку открытого ключа, только сертификаты, успешно проходящие проверку этим центром, считаются корректными. Если предполагается использование коммерческих сертификатов, корневые сертификаты сторонних центров сертификации должны быть добавлены в контейнер доверенных сертификатов указанного центра сертификации. Если центр сертификации не указан, пользовательский сертификат проверяется по цепочке до корневого сертификата центра сертификации, добавленного в контейнер доверенных сертификатов на компьютере пользователя. Пользовательский сертификат успешно проходит проверку, если корневой сертификат центра сертификации, издавшего пользовательский сертификат, добавлен в контейнер доверенных сертификатов в операционной системе пользователя. |
В качестве центра сертификации может использоваться как корпоративный сервер организации, так и центр сертификации внешней организации, предоставляющей услуги сертификации. Центром сертификации издается корневой сертификат и сертификаты пользователей.
Адрес сервера можно разделить на две части:
Блок “Настройки КриптоПро”
В открывшемся диалоговом окне (рис. 12) следует заполнить необходимые настройки и нажать на кнопку Сохранить.
Рис. 12. Диалоговое окно настройки КриптоПро
Настройки Проверять соответствие алгоритма подписи и Корневые сертификаты удостоверяющих центров (УЦ) полностью аналогичны настройкамвнутреннего криптопровайдера, описанным выше.
Адрес службы штампов времени – адрес службы штампов времени, используемый для присвоения подписываемому документу метки времени, в соответствии с которой в дальнейшем будет осуществляться проверка целостности подписи.
Где можно использовать электронную подпись
Простая | Неквалифицированная | Квалифицированная | |
---|---|---|---|
Внешние и внутренние электронные документы | |||
Документооборот с физическими лицами | |||
Госуслуги | — | ||
Документы для ИФНС в личном кабинете налогоплательщика | — | ||
ПФР и ФСС | — | — | |
Арбитражный суд | — | — |
Для чего нужен сертификат
Рукописная подпись имеет юридическую силу, так как подтверждается присутствующей личностью. В электронном документообороте гарантией сделки служит квалифицированный сертификат, поскольку в нем содержится вся информация об участнике процесса, она подтверждает принадлежность ЭЦП владельцу.
Подделку или махинации с подписанием документов предотвращает ключ. Он кодируется методом криптографии, делится на открытый и закрытый. Кодирование настолько сложно, что полностью исключает взлом. Только владелец токена с подписью может внести данные в документ, засвидетельствовав свое согласие на сделку или передачу информации.
Зачем копировать сертификаты эцп
Перенос ключей и сертификатов электронной подписи необходим в нескольких случаях. Первый из них — работа с ЭЦП сразу на нескольких ПК. Переставлять флешку с ключом не всегда удобно, поэтому пользователи предпочитают иметь копию на рабочем столе. Вторая причина для создания резервной копии — возможность потери или порчи USB-носителя.
Зачем нужна электронная подпись
Электронная подпись понадобится тем, кто собирается использовать в работе электронные документы, сдавать отчетность и получать услуги в интернете.
Вот как используют электронную подпись юридические лица:
А вот что могут сделать с электронной подписью обычные граждане:
Обычно физлица делают электронную подпись, чтобы передавать документы госслужбам — например, удаленно подают заявление на регистрацию по месту жительства или отправляют иск или доверенность в суд. Но на самом деле электронная подпись может заменить рукописную в любых случаях. Вот как, к примеру, ее можно использовать:
О том, как еще обычный человек может использовать электронную подпись на практике, мы рассказывали в другой статье.
Извлечение сертификата из контейнера
Как извлечь сертификат из контейнера закрытого ключа:
- Запустить КриптоПро CSP.
- Перейти во вкладку «Сервис».
- Нажать «Посмотреть сертификаты в контейнере».
- В новом окне будет список контейнеров закрытого ключа, из которого выбирают нужный, и нажимают «ОК».
- При необходимости ввести pin-код и нажать «ОК».
- В открывшемся окне необходимо нажать кнопку «Свойства».
- Перейти на вкладку «Состав» и нажать кнопку «Копировать».
- В новом окне нажимают «Далее» и выбирают пункт «Не экспортировать закрытый ключ».
- В следующем рабочем окне выбирают первый пункт кодировки.
- Затем нажимают «Обзор», выбирают путь сохранения сертификата и указывают имя файла, нажимают «Сохранить».
Для завершения процесса нужно нажать на кнопку «Далее», затем «Готово».
Инструкция по поиску и скачиванию сертификата удостоверяющего центра
Если у вас нет сертификата своего удостоверяющего центра или вы не смогли скачать сертификат на официальном сайте, то рекомендуем вам обратиться к нашим специалистам за помощью в установке и настройке ЭЦП. А можете воспользоваться этой инструкцией и найти сертификат удостоверяющего центра самостоятельно.
- Если вы не знаете ОГРН своего удостоверяющего центра, то необходимо открыть свой сертификат или запустить КриптоПро CSP, предварительно вставив носитель с ЭЦП.
- Перейдите во вкладку “Сервис”.
- Нажмите на кнопку “Просмотреть сертификаты в контейнере”.
- В открывшемся окне “Сертификаты в контейнере закрытого ключа” нажмите кнопку “Обзор…” или кнопку “По сертификату…”.
- Мы нажали кнопку “Обзор” и у нас появилось окно “Выбор контейнера”.
- Выберите свою действующую ЭЦП и нажмите кнопку “ОК”.
- Появится окно с информацией о сертификате: кому выдан (субъект), кем выдан (Поставщик), срок действия (действителен с и по), а также серийный номер.
- Нажмите кнопку “Свойства”.
- В открывшемся окне “Сертификат” перейдите во вкладку “Состав”, нажмите на строку “Издатель” и скопируйте ОГРН удостоверяющего центра из нижней области окна.
- В этом же окне “Сертификат” во вкладке “Состав” нажмите на строку “Идентификатор ключа центра сертификатов” и скопируйте значение “Идентификатор ключа”.
- Перейдите наофициальный Портал уполномоченного федерального органа в области использования электронной подписи.
- Вставьте в пустое поле ранее скопированный ОГРН удостоверяющего центра. Мы рекомендуем вводить ОГРН, а не наименование, чтобы исключить установку сертификатов “чужих” удостоверяющих центров.
- Нажмите на наименование удостоверяющего центра, обозначенного синим цветом.
- На открывшейся странице нажмите на знаки , обведённые в круг, как показано на скриншоте.
- Сделайте поиск по странице, нажав кнопки на клавиатуре Ctrl F. Введите в поисковую строку ранее скопированный идентификатор ключа удостоверяющего центра.
- Нажмите на строку отпечаток, обведённую в красный прямоугольник на скриншоте. Это запустит процедуру скачивания сертификата удостоверяющего центра, выдавшего вам электронную подпись.
- После скачивания файла, вы можете установить сертификат удостоверяющего центра.
Как установить сертификат удостоверяющего центра? Инструкция.
Если не знаете, как правильно установить сертификат и выбрать хранилище для него.
Как проверить, установились ли сертификаты, и как их найти? Инструкция.
Если возникают ошибки и установка сертификата удостоверяющего центра не решила проблему.
Как установить сертификат Минкомсвязи России? Инструкция.
Если возникает ошибка цепочки сертификатов, и установка сертификата удостоверяющего центра не решила проблему.
Как установить сертификат своей ЭЦП? Инструкция.
Если возникает ошибка цепочки сертификатов, и установка сертификата удостоверяющего центра не решила проблему.
Как перевыпустить сертификат
Срок действия сертификата электронной подписи — год. Когда он подойдет к концу, выпустите новый сертификат. Для этого обратитесь с заявлением в удостоверяющий центр или МФЦ. Если в документах ничего не изменилось, нести их снова не нужно. Если какие-то документы поменялись, нужно принести оригиналы только этих документов.
Минутка технического занудства (слабонервным лучше сразу в конец пролистать, там чуть веселее):
> «В итоге она создаст уникальное сочетание данных документа — хэш-сумму. Уникальным оно будет благодаря закрытому ключу — особой последовательности символов, которая формирует файл подписи.»
Теперь немного про ключи и зачем нужны:
(Увы, весь пост не влез, продолжение ниже)
Итак, как все таки работает электронная подпись?
Parmigiano, это самое понятное описание принципов криптографии открытого ключа, которое я видел. Спасибо огромное!
Parmigiano, отличный сторителлинг. И спасибо за разъяснение! Немного поправим текст в части описания закрытого ключа. А то в ходе редакторских правок и попыток написать все понятным языком чуть упустили техническую точность.
Павел, да вы жёстко всё упустили. После этого начинаешь сомневаться, а корректны ли статьи ТЖ по другим тематикам, где я не специалист. Умилительно наблюдать столь скромную оценку труда Parmigiana, который является лучшим описанием принципов работы ключей для шифрования и контроля целостности простыми словами 😐
Источник
Как подписать документ электронной подписью
Например, так работает процесс подписания с помощью программы « Крипто-АРМ »:
Документы « Микрософт-офис » подписать еще проще:
Инструкция по установке ЭП на сайте поддержки Микрософт
Документы можно подписывать в электронной почте и облачных хранилищах — например, в «Дропбоксе» и на «Яндекс-диске». Для этого нужно установить специальное расширение для браузера. Такое расширение добавляет в интерфейс вашего файлового хранилища кнопку «Подписать».
В « Гугл-докс » плагины для электронной подписи можно найти во вкладке «Дополнения».
Как привязать сертификат к контейнеру
Для привязки сертификата ключа электронной подписи к контейнеру нужно:
- Через «Панель управления» перейти к КриптоПро и выбрать «Свойства»/«Сервис»/«Установить личный сертификат».
- В мастере установки через «Обзор» выбрать сертификат.
- Затем в мастере установки нажать «Далее».
- Выбрать ключевой контейнер, к которому будет привязан сертификат.
- При необходимости сертификат можно поместить в личное хранилище или любое другое место на ПК.
На этом привязка сертификата к контейнеру завершена.
Как приобрести подпись физическому лицу
Обычные граждане могут пользоваться любой подписью — простой, неквалифицированной и квалифицированной. Как правило, простая подпись используется для авторизации на госуслугах, где можно заказывать информационные услуги в электронном виде. Неквалифицированной подписью можно пользоваться по договоренности для обмена документами с юридическими лицами.
А с помощью квалифицированной подписи получают госуслуги, связанные с имущественными операциями. Например, ею можно подписать договор купли-продажи квартиры и подать его на государственную регистрацию. Или оформить юрлицо без посещения налоговых органов, назначить его директора и других должностных лиц.
Физическим лицам проще всего получить подпись в ближайшем МФЦ: рядом может не быть удостоверяющих центров, а МФЦ найдется всегда. Для этого надо записаться на прием и подготовить следующие документы:
Как работает: сертификаты
Электронная подпись состоит из двух принципиальных частей:
Грубо говоря, ЭП должна гарантировать, что документ подписали именно вы и что вы подписали именно этот документ.
В сертификате хранятся данные о владельце подписи:
Но смысл сертификата не в том, что там хранятся эти данные, а в том, кто эти данные туда положил. В России сертификаты и ЭП выдают специальные удостоверяющие центры — это компании, которые гарантируют, что сертификат выдаётся именно тому, кто в этом сертификате указан.
Чтобы получить сертификат, вы приходите лично в эту компанию (удостоверяющий центр), показываете документы, фотографируетесь. Вас заносят в базу удостоверяющего центра и выдают ключи электронной подписи. Так все участники электронного документооборота будут уверены, что все документы, подписанные вашими ключами, подписаны именно вами.
Какую эцп можно проверить самостоятельно
Проверить сертификат электронной подписи необходимо, если:
- заключается сделка в электронном виде вне системы электронного документооборота;
- заявка от участников торгов приходит на почту, а не через ЭТП;
- необходима проверка ЭЦП на выписке из росреестра и т.п.
Возможна проверка только цифровой подписи, составленной при помощи криптографических сервисов, открытых и закрытых ключей. К ним относятся:
- неквалифицированная усиленная подпись. Получить НЭП можно только в удостоверяющем центре. Требует дополнительного соглашения о признании юридической силы.;
- квалифицированная усиленная подпись. Выдается только в аккредитованных Минкомсвязи РФ удостоверяющих центрах. ПО, позволяющее работать с КЭП, имеет сертификацию ФСБ РФ.
Проверка позволяет подтвердить:
- создание ЭЦП при помощи сертификата, действительного на момент заверения документа;
- принадлежность ЭЦП владельцу сертификата;
- неизменность документа после его подписания.
Выбранное средство проверки подписи не влияет на результат, и каждый пользователь вправе отдать предпочтение наиболее удобному сервису.
Открытый и закрытый ключ
Открытый ключ доступен лицам, участвующим в документообороте или сделке. Закрытый известен исключительно владельцу, его нельзя определить, используя открытый ключ. Выданный на них сертификат легализирует оба ключа, обеспечивает их взаимодействие с системой. Через него утверждаются сроки начала и окончания работы ключей.
Подпись на документе ставится открытым ключом. В момент проверки информации от открытого ключа к закрытому идет сигнал. Подпись проходит проверку на соответствие внесенных в базу данных о владельце. Если информация совпадает, идет подтверждение подлинности личности владельца. В таком случае сделка или акт подписания считаются легальными.
Пароль от контейнера электронной подписи
Пароль используют для подписи, сохраненной в память компьютера. Он защищает контейнер ЭП — папку с файлами подписи: сертификатом, закрытым и открытым ключами.
Впервые с паролем владелец ЭП встречается, когда выпускает сертификат ЭП и записывает его в реестр компьютера или на обычную флешку (не токен). Придумать пароль нужно самостоятельно — при записи программа КриптоПро CSP покажет окошко, в которое нужно ввести комбинацию чисел, символов и латинских и русских букв.
Далее этот пароль будет запрашиваться при установке подписи на компьютер, ее копировании и при каждом использовании — подписании документов, работе на электронной торговой площадке или входе в сервисы. Если, конечно, не установить галочку «Запомнить пароль».
Пин-код от токена электронной подписи
Пин-код используется для электронной подписи, которая записана на носитель в виде usb-флешки — на токен. Пин защищает токен, поэтому, если мошенники украдут носитель ЭП, то самой подписью они воспользоваться не смогут.
Впервые владелец ЭП должен ввести пин-код при выпуске подписи — когда ее записывают на токен. Если носитель новый, то нужно ввести «заводское» стандартное значение, например, 12345678 для Рутокена. «Заводское» значение лучше сразу изменить на собственное, чтобы его не смогли подобрать злоумышленники.
После этого пин-код понадобится вводить, чтобы установить сертификат подписи на компьютер, использовать и копировать ЭП, работать с ней за новым компьютером. Чтобы не вводить комбинацию каждый раз, можно нажать галочку «Запомнить пароль». Главное в таком случае самим не забыть последовательность символов.
Подтверждение документа с отсоединенной эп
Документ с отсоединенной ЭЦП можно проверить двумя способами:
- онлайн на сайте;
- при помощи специальной утилиты по хэш-функции.
Для автоматической проверки пользователь переходит по третьей ссылке:
Процесс схож с проверкой сертификата и обычного электронного документа. Однако загрузить необходимо два файла: с подписью и с документом:
После введения кода и подтверждения действия появляется окно с информацией о сертификате, сроком действия, личными данными владельца и данными о УЦ.
Если нужно подтвердить подлинность документа при помощи хэш-функции, то выбирают последнюю ссылку в меню:
Далее пользователь выбирает операционную систему, и скачивает архив:
Затем нужно запустить файл Cpverify.exe, загрузить в рабочую область нужный документ и ввести значение хэш-функции. Его выдает программа. Остается лишь подтвердить свое действие и дождаться результаты проверки.
Практическое руководство. получение отпечатка сертификата
при написании приложения Windows Communication Foundation (WCF), использующего сертификат X. 509 для проверки подлинности, часто бывает необходимо указать утверждения, найденные в сертификате. Например, при использовании перечисления FindByThumbprint в методе SetCertificate необходимо указать утверждение отпечатка.
Чтобы найти значение утверждения, необходимо выполнить два действия. Сначала необходимо открыть оснастку сертификатов консоли управления (MMC). (См. раздел как просмотреть сертификаты с помощью оснастки MMC.) Во-вторых, как описано здесь, найдите подходящий сертификат и скопируйте его отпечаток (или другие значения утверждений).
Вы также можете использовать командлет PowerShell New-SelfSignedCertificate, чтобы создать временные сертификаты для использования только во время разработки. Однако по умолчанию такой сертификат не выдается центром сертификации и не может использоваться в производственных целях. Дополнительные сведения см. в разделе инструкции. Создание временных сертификатов для использования во время разработки.
Просмотр сертификатов через certmgr
В операционных системах семейства Windows также имеется встроенный менеджер для работы с установленными сертификатами. Через него можно просмотреть и личные ключи, и сертификаты удостоверяющих центров, партнеров Microsoft (для предоставления привилегий определенным программам).
Где на компьютере найти сертификат цифровой подписи при помощи менеджера? Для этого необходимо:
- открыть меню «Пуск»;
- ввести команду «certmgr.msc» (без кавычек) и нажать клавишу «Enter»;
- в левой части появившегося окна будут вкладки «Личное» и «Корневые сертификаты удостоверяющего центра» — вот там и можно найти все необходимые ключи.
Для запуска менеджера, а также удаления или копирования файлов сертификатов необходимо обладать правами администратора. В противном случае – программа даже не запустится, ссылаясь на недостаточный уровень прав доступа.
Данное приложение также имеет ряд ограничений по работе с шифрованными сертификатами (со специальной кодировкой данных). Поэтому она не всегда корректно отображает все установленные пользовательские цифровые подписи.
Просмотр сертификатов через консоль управления
Это ещё один встроенный в Windows инструмент, позволяющий на компьютере найти ключ ЭЦП.
Для просмотра сертификатов через консоль управления необходимо выполнить:
- запустить командную строку (нажать комбинацию клавиш Win R, ввести «cmd» и нажать клавишу Enter);
- ввести в терминале команду mmc и нажать Enter;
- кликнуть на «Файл» и выбрать «Добавить или удалить оснастку»;
- выбрать «Добавить», затем «Добавить изолированную оснастку»;
- выбрать «Сертификаты».
Затем также можно выбрать просмотр сертификатов по определенной учетной записи, зарегистрированной в Windows. Чтобы таким методом найти ЭЦП на компьютере также нужно обладать правами администратора.
Через MMC (Просмотр сертификатов в консоли управления) также можно добавлять, удалять, копировать контейнеры с электронной подписью (включая сертификат удостоверяющего центра), но далеко не всем такой метод покажется удобным, так как некоторые команды также придется вводить именно через командную строку.
Просмотр сертификатов через криптопро
Как найти сертификат ЭЦП на компьютере через КриптоПРО (программа-дистрибутив, который используется для работы с электронными подписями)? Для этого необходимо:
- открыть меню «Пуск»;
- перейти на вкладку «Все программы», далее – «КриптоПРО»;
- кликнуть на «Сертификаты».
После этого появится диалоговое окно со списком всех установленных сертификатов на жестком диске. Там же можно посмотреть информацию по каждому из них, удалить из системы, скопировать весь контейнер (связка открытого ключа и сертификата удостоверяющего центра – это позволит пользоваться ЭЦП на другом компьютере).
Опять же, для доступа к данному меню необходимо, чтобы у пользователя имелись права администратора (или предоставлена возможность пользоваться программой от администратора ПК). В противном случае – программа выдаст сообщение о невозможности получить доступ к списку установленных в системе сертификатов.
Можно редактировать список сертификатов и непосредственно из программы КриптоПРО (запустить можно из «Панели управления»). Там доступен более широкий функционал для работы с ЭЦП, а также сертификатами удостоверяющих центров.
Решение №2. подбор пин-кода и права администратора
На то, чтобы подобрать пин-код к токену, есть десять попыток. После десятого неверного ввода символов заблокируется.
Иногда количество попыток ввода можно увеличить. Для этого нужно зайти на токен в качестве администратора и разблокировать пин-код:
- Перейти в панель управления токеном. Например, если используется носитель «Рутокен», то нужно перейти в Пуск — Панель управления — Панель управления «Рутокен» — вкладка «Администрирование».
- Ввести пин-код администратора. Стандартное значение устанавливает производитель: для «Рутокена» — 87654321, для Jacarta SE — 00000000 для PKI-части и 1234567890 для ГОСТ части. Если стандартное значение администратора не подошло, значит его сменили, и нужно вспоминать установленную комбинацию. На это есть десять попыток, потом токен окончательно заблокируется.
- Разблокировать пин-код токена. Для этого на вкладке «Администрирование» нажать «Разблокировать».
Также, если пин-код администратора известен, то можно сбросить попытки ввода другим способом — через КриптоПро CSP:
- Открыть КриптоПро CSP, перейти на вкладку «Оборудование» и нажать кнопку «Настроить типы носителей».
- Выбрать свой токен. Открыть его свойства и перейти в раздел «Информация».
- Разблокировать пин-код.
После разблокировки счетчик попыток ввода сбросится. Но даже тогда, пока правильную комбинацию к токену не введут, доступ будет закрыт и использовать подпись не получится.
Если вспомнить или изменить нужную комбинацию не удалось, придется получать новый сертификат подписи в УЦ: отозвать старый сертификат и получить новый. Токен можно использовать старый — можете отформатировать носитель, тогда старый пин-код и сертификат удалятся.
При записи подписи на новый токен советуем поменять стандартный пин-код носителя на собственный. Это, конечно, может привести к тому, что комбинация вновь потеряется. Но лучше получить новый сертификат, чем пострадать от мошенников, которые смогли взломать «заводское» значение на токене и подписали украденной ЭП важные документы.
Состав: из чего состоит сертификат эп
Электронная подпись имеет вид буквенно-цифрового кода или графического изображения. В работе с сертификатами используется специализированное ПО, обеспечивающее шифрование информации. Чтобы получить подпись, будущий владелец должен предоставить о себе достоверные данные, подав документы в удостоверяющий центр.
Составляющие сертификата подписи:
Перед получением производится подробная проверка указанных данных. Только после подтверждения происходит выдача лицу электронного сертификата. Выполняются изготовление и передача носителя с ключом. Чтобы создать и подписать юридический документ, владельцу необходимо установить специализированное ПО.
На официальных порталах программ производителей выложен инструкции, как пользоваться ЭП в их программах (Microsoft Office, Acrobat Reader и других). Через установленное на ПК программное обеспечение наносится скрипт подписи. После нанесения ЭП документ не может быть изменен сторонними лицами.
Источник
Сравнение сервисов для проверки эцп
Если вы проверяете ЭП через официальные сервисы, то результаты будут верными и отразят данные о владельце, сертификате, УЦ, выдавшем реквизит. Какой из способов выбрать — зависит от личных предпочтений, технических условий и дополнительных функций. Ознакомится с ними можно в сравнительной таблице сервисов:
Плагин КриптоПро | КриптоАРМ | Госуслуги | Онлайн-сервис Контур | |
Стоимость | Для Excel и Word платный, для PDF — бесплатный | Бесплатно | Бесплатно | Бесплатно |
Формат проверяемого документа | PDF, Word, Excel | Все | Все | Все |
Максимальный объем файла | Не ограничен | Не ограничен | Не ограничен | 100 МБ |
Вид проверяемой ЭЦП | НЭП/КЭП | НЭП/КЭП | НЭП/КЭП | НЭП/КЭП |
Подтверждение отсоединенной и присоединенной ЭП | Оба типа | Оба типа | Оба типа | Только отсоединенная |
Функция шифрования и расшифрования ЭД, формирования подписи | Доступна лишь в платных версиях | Доступна лишь в платных версиях | Не предусмотрена | Доступно бесплатно |
Подтверждение достоверность ЭЦП необходимо при удаленной работе, заключении договоров, проверки сделок и т.п. В результате пользователь получает всю необходимую информацию о заверителе, а также убеждается в неизменности электронного документа после его подписания.
Проверить ЭЦП можно несколькими способами, используя специальные плагины для ПО, онлайн-сервисы или официальный портал государственных услуг. Обычно процесс занимает несколько минут, но в зависимости от загруженности сервера данные могут быть доступны в течение пары часов.
Файлы сертификатов в проводнике
А вот закрытый сертификат ЭЦП не копируется на жесткий диск – он хранится исключительно на защищенном USB-рутокене и используется как раз для генерации открытых ключей (при этом нужно ещё вводить секретный пароль, который предоставляет удостоверяющий центр).
Если же физически скопировать открытый сертификат на другой компьютер, то пользоваться им можно будет лишь в том случае, если там же установлен корневой сертификат удостоверяющего центра, выдавшего ЭЦП. В противном случае – сертификат не пройдет проверку подлинности.
Где ещё на компьютере хранится сертификат электронной подписи? Ещё одна копия, для программного использования, хранится в шифрованном виде в папке Windows, но получить доступ туда или даже скопировать сам файл сертификата не получится – операционная система не предоставит таких прав доступа.
Ещё следует учесть, что для просмотра файлов сертификатов пользователь должен обладать правами администратора. Если же он вошел в систему как «Гость», то к системным папкам на диске С (или другом, где установлена сама система) он не сможет получить доступ.
Сам файл сертификата имеет расширение .cer или .csr (в зависимости от кодировки), занимает буквально несколько килобайт памяти. Точно такие же файлы используются в дистрибутивах Linux, в MacOS – это уже стандартизированный формат электронных подписей.
Часть 1. самоподписанный сертификат
Для начала рассмотрим вариант самоподписанного сертификата корневого уровня.
Для упрощения задачи сгенерируем сертификат, который будет содержать только необходимые параметры:
Сделать это можно с помощью библиотеки Bouncy Castle, следующим образом:
private void button1_Click(object sender, EventArgs e)
{
var KeyGenerate = new RsaKeyPairGenerator();
KeyGenerate.Init(new KeyGenerationParameters(new SecureRandom(new CryptoApiRandomGenerator()), 1024));
AsymmetricCipherKeyPair kp = KeyGenerate.GenerateKeyPair();
var gen = new X509V3CertificateGenerator();
var certName = new X509Name("CN=CA");
var serialNo = new BigInteger("1",10);
gen.SetSerialNumber(serialNo);
gen.SetSubjectDN(certName);
gen.SetIssuerDN(certName);
gen.SetNotAfter(DateTime.Now.AddYears(100));
gen.SetNotBefore(DateTime.Now);
gen.SetSignatureAlgorithm("SHA1WITHRSA");
gen.SetPublicKey(kp.Public);
var myCert = gen.Generate(kp.Private);
byte[] result = DotNetUtilities.ToX509Certificate(myCert).Export(X509ContentType.Cert);
FileStream fs = new FileStream("D:\test1.crt", FileMode.CreateNew);
fs.Write(result, 0, result.Length);
fs.Flush();
fs.Close();
}
В результате выполнения данной процедуры будет создан стандартный x.509 сертификат, который, будучи открытым с помощью hex-редактора, выглядит вот таким чудесным образом:
30 82 01 8F 30 81 F9 A0 03 02 01 02 02 01 01 30
0D 06 09 2A 86 48 86 F7 0D 01 01 05 05 00 30 0D
31 0B 30 09 06 03 55 04 03 0C 02 43 41 30 20 17
0D 31 33 30 39 31 35 31 35 33 35 30 32 5A 18 0F
32 31 31 33 30 39 32 32 31 35 33 35 30 32 5A 30
0D 31 0B 30 09 06 03 55 04 03 0C 02 43 41 30 81
9F 30 0D 06 09 2A 86 48 86 F7 0D 01 01 01 05 00
03 81 8D 00 30 81 89 02 81 81 00 8D 80 B5 8E 80
8E 94 D1 04 03 6A 45 1A 54 5E 7E EE 6D 0C CB 0B
82 03 F1 7D C9 6F ED 52 02 B2 08 C3 48 D1 24 70
C3 50 C2 1C 40 BC B5 9D F8 E8 A8 41 16 7B 0B 34
1F 27 8D 32 2D 38 BA 18 A5 31 A9 E3 15 20 3D E4
0A DC D8 CD 42 B0 E3 66 53 85 21 7C 90 13 E9 F9
C9 26 5A F3 FF 8C A8 92 25 CD 23 08 69 F4 A2 F8
7B BF CD 45 E8 19 33 F1 AA E0 2B 92 31 22 34 60
27 2E D7 56 04 8B 1B 59 64 77 5F 02 03 01 00 01
30 0D 06 09 2A 86 48 86 F7 0D 01 01 05 05 00 03
81 81 00 0A 1C ED 77 F4 79 D5 EC 73 51 32 25 09
61 F7 00 C4 64 74 29 86 5B 67 F2 3D A9 39 34 6B
3C A9 92 B8 BF 07 13 0B A0 9B DF 41 E2 8A F6 D3
17 53 E1 BA 7F C0 D0 BC 10 B7 9B 63 4F 06 D0 7B
AC C6 FB CE 95 F7 8A 72 AA 10 EA B0 D1 6D 74 69
5E 20 68 5D 1A 66 28 C5 59 33 43 DB EE DA 00 80
99 5E DD 17 AC 43 36 1E D0 5B 06 0F 8C 6C 82 D3
BB 3E 2B A5 F1 94 FB 53 7B B0 54 22 6F F6 4C 18
1B 72 1C
Тот же самый сертификат, но уже открытый с помощью стандартных средств windows:
Имя сертификата CA
Издатель CA
Версия сертификата 3
Серийный номер 0x1
Недействителен до... 15.09.2022 15:35:00 GMT
Недействителен после... 22.09.2113 15:35:00 GMT
Цифровая подпись (SHA-1) F9 AD 58 B5 50 3D F6 36 5E B8 89 D4 DC C8 5F CC 25 4B 93 A2
Цифровая подпись (SHA-256) 42 02 24 20 4E 8F 3A 3E 31 38 88 E5 C5 E7 C3 03 14 3A A6 52 EA 78 B9 77 42 5B 99 EB 4B BA 23 82
Открытый ключ(1024 битный) Алгоритм открытого ключа rsaEncryption
Модуль
00: 8D 80 B5 8E 80 8E 94 D1 04 03 6A 45 1A 54 5E 7E
10: EE 6D 0C CB 0B 82 03 F1 7D C9 6F ED 52 02 B2 08
20: C3 48 D1 24 70 C3 50 C2 1C 40 BC B5 9D F8 E8 A8
30: 41 16 7B 0B 34 1F 27 8D 32 2D 38 BA 18 A5 31 A9
40: E3 15 20 3D E4 0A DC D8 CD 42 B0 E3 66 53 85 21
50: 7C 90 13 E9 F9 C9 26 5A F3 FF 8C A8 92 25 CD 23
60: 08 69 F4 A2 F8 7B BF CD 45 E8 19 33 F1 AA E0 2B
70: 92 31 22 34 60 27 2E D7 56 04 8B 1B 59 64 77 5F
Экспонента 01 00 01
Подпись Алгоритм подписи sha1WithRSAEncryption
Подпись
00: 0A 1C ED 77 F4 79 D5 EC 73 51 32 25 09 61 F7 00
10: C4 64 74 29 86 5B 67 F2 3D A9 39 34 6B 3C A9 92
20: B8 BF 07 13 0B A0 9B DF 41 E2 8A F6 D3 17 53 E1
30: BA 7F C0 D0 BC 10 B7 9B 63 4F 06 D0 7B AC C6 FB
40: CE 95 F7 8A 72 AA 10 EA B0 D1 6D 74 69 5E 20 68
50: 5D 1A 66 28 C5 59 33 43 DB EE DA 00 80 99 5E DD
60: 17 AC 43 36 1E D0 5B 06 0F 8C 6C 82 D3 BB 3E 2B
70: A5 F1 94 FB 53 7B B0 54 22 6F F6 4C 18 1B 72 1C
Имея два этих файла, один с двоичными данными, а другой с описанием сертификата, попробуем разобраться что здесь к чему.
Прежде всего, нужно отметить, что файл *.crt хранит информацию о сертификате в закодированном виде. Для кодирования применяется особый язык, называемый ASN.1.
ASN.1 — стандарт записи, описывающий структуры данных для представления, кодирования, передачи и декодирования данных. Wikipedia
С помощью языка ASN.1 можно описывать сложные структуры, состоящие из данных различных типов. Типичный пример ASN.1-файла выглядит как-то так:
Однако ASN.1 разрабатывался в те светлые времена, когда «640 КБ должно было хватать каждому» и тратить место на такую громоздкую запись не было никакой возможности. Поэтому, в целях экономии места, а также более удобной обработки хранимой в ASN.1-форме информации, был разработан специальный метод кодирования — DER.
DER-кодировка описывается следующим правилом. Первым записывается байт, характеризующий тип данных, затем последовательность байтов хранящих сведения о длине данных и затем уже записываются сами данные.
К примеру, для кодировки целого числа INTEGER 65537 используется следующая форма: 0203 01 00 01.Здесь первый байт 02, определяет тип INTEGER (полную таблицу типов вы можете найти например тут), второй байт 03 показывает длину блока. А следующие за этим байты 01 00 01, являются шестнадцатеричной записью нашего числа 65537.
В нашем случае, для описание простейшего самоподписаного сертификата, достаточно 9 типов данных. Приведем таблицу кодирования для этих типов:
Зная как кодируется каждый из этих типов, мы можем попытаться распарсить наш *.crt файл.
3082 01 8F3081 F9A0030201 02 0201 01 30
0D0609 2A 86 48 86 F7 0D 01 01 05 0500300D
310B30090603 55 04 03 0C02 43 41 302017
0D 31 33 30 39 31 35 31 35 33 35 30 32 5A 180F
32 31 31 33 30 39 32 32 31 35 33 35 30 32 5A 30
0D310B30090603 55 04 03 0C02 43 41 3081
9F 300D0609 2A 86 48 86 F7 0D 01 01 01 0500
0381 8D 00 3081 890281 81 00 8D 80 B5 8E 80
8E 94 D1 04 03 6A 45 1A 54 5E 7E EE 6D 0C CB 0B
82 03 F1 7D C9 6F ED 52 02 B2 08 C3 48 D1 24 70
C3 50 C2 1C 40 BC B5 9D F8 E8 A8 41 16 7B 0B 34
1F 27 8D 32 2D 38 BA 18 A5 31 A9 E3 15 20 3D E4
0A DC D8 CD 42 B0 E3 66 53 85 21 7C 90 13 E9 F9
C9 26 5A F3 FF 8C A8 92 25 CD 23 08 69 F4 A2 F8
7B BF CD 45 E8 19 33 F1 AA E0 2B 92 31 22 34 60
27 2E D7 56 04 8B 1B 59 64 77 5F 0203 01 00 01
300D0609 2A 86 48 86 F7 0D 01 01 05 050003
81 81 00 0A 1C ED 77 F4 79 D5 EC 73 51 32 25 09
61 F7 00 C4 64 74 29 86 5B 67 F2 3D A9 39 34 6B
3C A9 92 B8 BF 07 13 0B A0 9B DF 41 E2 8A F6 D3
17 53 E1 BA 7F C0 D0 BC 10 B7 9B 63 4F 06 D0 7B
AC C6 FB CE 95 F7 8A 72 AA 10 EA B0 D1 6D 74 69
5E 20 68 5D 1A 66 28 C5 59 33 43 DB EE DA 00 80
99 5E DD 17 AC 43 36 1E D0 5B 06 0F 8C 6C 82 D3
BB 3E 2B A5 F1 94 FB 53 7B B0 54 22 6F F6 4C 18
1B 72 1C
Преобразуя байты-идентификаторы типов и убирая байты описывающие длину блоков получим следующую структуру:
SEQUENCE(3 elem)
SEQUENCE(7 elem)
[0](1 elem)
INTEGER 2
INTEGER 1
SEQUENCE(2 elem)
OBJECT IDENTIFIER 1.2.840.113549.1.1.5
NULL
SEQUENCE(1 elem)
SET(1 elem)
SEQUENCE(2 elem)
OBJECT IDENTIFIER 2.5.4.3
UTF8String CA
SEQUENCE(2 elem)
UTCTime 13-09-15 15:35:02 UTC
GeneralizedTime 2113-09-22 15:35:02 UTC
SEQUENCE(1 elem)
SET(1 elem)
SEQUENCE(2 elem)
OBJECT IDENTIFIER 2.5.4.3
UTF8String CA
SEQUENCE(2 elem)
SEQUENCE(2 elem)
OBJECT IDENTIFIER 1.2.840.113549.1.1.1
NULL
BIT STRING(1 elem)
SEQUENCE(2 elem)
INTEGER 00: 8D 80 B5 8E 80 8E 94 D1 04 03 6A 45 1A 54 5E 7E
EE 6D 0C CB 0B 82 03 F1 7D C9 6F ED 52 02 B2 08
C3 48 D1 24 70 C3 50 C2 1C 40 BC B5 9D F8 E8 A8
41 16 7B 0B 34 1F 27 8D 32 2D 38 BA 18 A5 31 A9
E3 15 20 3D E4 0A DC D8 CD 42 B0 E3 66 53 85 21
7C 90 13 E9 F9 C9 26 5A F3 FF 8C A8 92 25 CD 23
08 69 F4 A2 F8 7B BF CD 45 E8 19 33 F1 AA E0 2B
92 31 22 34 60 27 2E D7 56 04 8B 1B 59 64 77 5F
INTEGER 65537
SEQUENCE(2 elem)
OBJECT IDENTIFIER 1.2.840.113549.1.1.5
NULL
BIT STRING 00: 0A 1C ED 77 F4 79 D5 EC 73 51 32 25 09 61 F7 00
C4 64 74 29 86 5B 67 F2 3D A9 39 34 6B 3C A9 92
B8 BF 07 13 0B A0 9B DF 41 E2 8A F6 D3 17 53 E1
BA 7F C0 D0 BC 10 B7 9B 63 4F 06 D0 7B AC C6 FB
CE 95 F7 8A 72 AA 10 EA B0 D1 6D 74 69 5E 20 68
5D 1A 66 28 C5 59 33 43 DB EE DA 00 80 99 5E DD
17 AC 43 36 1E D0 5B 06 0F 8C 6C 82 D3 BB 3E 2B
A5 F1 94 FB 53 7B B0 54 22 6F F6 4C 18 1B 72 1C
Это уже более похоже на то, что мы видим при открытии сертификатов в браузере или Windows. Пробежимся по каждому элементу:
Важным моментом, о котором стоит особенно упомянуть являются данные, для которых вычисляется подпись. Интуитивно может показаться, что подписываются все данные идущие до последнего поля BIT STRING, содержащего подпись. Но на самом деле это не так. В стандарте x.
SEQUENCE(7 elem)
[0](1 elem)
INTEGER 2
INTEGER 1
SEQUENCE(2 elem)
OBJECT IDENTIFIER 1.2.840.113549.1.1.5
NULL
SEQUENCE(1 elem)
SET(1 elem)
SEQUENCE(2 elem)
OBJECT IDENTIFIER 2.5.4.3
UTF8String CA
SEQUENCE(2 elem)
UTCTime 13-09-15 15:35:02 UTC
GeneralizedTime 2113-09-22 15:35:02 UTC
SEQUENCE(1 elem)
SET(1 elem)
SEQUENCE(2 elem)
OBJECT IDENTIFIER 2.5.4.3
UTF8String CA
SEQUENCE(2 elem)
SEQUENCE(2 elem)
OBJECT IDENTIFIER 1.2.840.113549.1.1.1
NULL
BIT STRING(1 elem)
SEQUENCE(2 elem)
INTEGER 00: 8D 80 B5 8E 80 8E 94 D1 04 03 6A 45 1A 54 5E 7E
EE 6D 0C CB 0B 82 03 F1 7D C9 6F ED 52 02 B2 08
C3 48 D1 24 70 C3 50 C2 1C 40 BC B5 9D F8 E8 A8
41 16 7B 0B 34 1F 27 8D 32 2D 38 BA 18 A5 31 A9
E3 15 20 3D E4 0A DC D8 CD 42 B0 E3 66 53 85 21
7C 90 13 E9 F9 C9 26 5A F3 FF 8C A8 92 25 CD 23
08 69 F4 A2 F8 7B BF CD 45 E8 19 33 F1 AA E0 2B
92 31 22 34 60 27 2E D7 56 04 8B 1B 59 64 77 5F
INTEGER 65537
Т.о. если перед вами будет стоять задача проверить ЭЦП x.509 сертификата, то для этого сперва необходимо извлечь TBS-сертификат.
Еще одно замечание относится к отпечатку сертификата. Как видите сам сертификат не содержит никаких сведений об отпечатке. Это объясняется тем, что отпечаток представляет собой обычное хеш-значение SHA-1 от всего файла сертификата, со всеми его полями, включая подпись издателя. Поэтому хранить отпечаток не обязательно, можно просто вычислять хеш при каждом просмотре сертификата.
Заключение
Тех усидчивых людей, которые продрались сквозь все эти ASN.1 выражения и шестнадцатеричные наборы данных, я хотел бы поблагодарить за прочтение. Надеюсь вам было хоть немного интересно. И стало чуточку понятнее, что же такое на самом деле X.509 сертификат.
Ну и как всегда немного ссылок для тех, кому хочется больше подробностей.
- RFC5280 — спецификация x.509 сертификата и списка отзывов сертификатов.
- Руководство по выживанию — SSL/TLS и сертификаты X.509
- ASN.1 простыми словами, вариант статьи для хабра
- on-line утилита для декодирования DER-файлов
- Первичный стандарт ITU-T X.509 ( русский перевод). Спасибо ystr за ссылку.