Что содержит криптографический сертификат
Сертификат (криптография)
Сертификат (сертификат открытого ключа, сертификат ЭЦП) — цифровой или бумажный документ, подтверждающий соответствие между открытым ключом и информацией, идентифицирующей владельца ключа. Содержит информацию о владельце ключа, сведения об открытом ключе, его назначении и области применения, название центра сертификации и т. д.
Открытый ключ может быть использован для организации защищенного канала связи с владельцем двумя способами:
Принцип работы [ ]
Если же Алиса сформирует сертификат со своим публичным ключом, и этот сертификат будет подписан третьей стороной (например, Трентом), любой, доверяющий Тренту, сможет удостовериться в подлинности открытого ключа Алисы. В централизованной инфраструктуре в роли Трента выступает удостоверяющий центр. В сетях доверия Трент может быть любым пользователем, и следует ли доверять этому пользователю, удостоверившему ключ Алисы, решает сам отправитель сообщения.
Структура сертификата [ ]
Перечень обязательных и необязательных полей, которые могут присутствовать в сертификате, определяется стандартом на его формат (например, X.509 ). Как правило, сертификат включает в себя следующие поля:
Российские стандарты [ ]
В России действуют свои криптографические стандарты. Использование их совместно с сертификатами описано в RFC4491: Using GOST with PKIX.
ar:شهادات رقمية ca:Certificat digital cs:Digitální certifikát de:Digitales Zertifikat el:Ψηφιακό πιστοποιητικό en:Public key certificate es:Certificado digital fa:گواهی دیجیتال fr:Certificat électronique it:Certificato digitale ja:公開鍵証明書 nl:Certificaat (PKI) pl:Certyfikat pt:Certificado digital uk:Цифровий сертифікат vi:Chứng thực khóa công khai zh:電子證書
Что содержит криптографический сертификат
— область математики, связанная с защитой информации. Решает задачи засекречивания информации (шифрования), проверки ее подлинности (аутентичности) и целостности.
Секретность данных
В настоящее время 40-разрядные симметричные ключи считаются весьма ненадежными, для них время полного перебора на высокопроизводительном компьютере оценивается минутами. Рекомендуется использовать 128-разрядные ключи.
Наиболее известные симметричные алгоритмы шифрования:
Из всех криптографических систем симметричные системы обладают самой высокой скоростью шифрования и расшифровки. Однако в симметричных системах есть большая проблема: две стороны должны как-то договориться о ключе шифрования. Передавать ключ по незащищенному каналу нельзя, а если предположить, что стороны имеют в своем распоряжении защищенный канал для передачи ключа, то шифрование им вовсе не нужно: все данные следует передавать по защищенному каналу. В общем виде эта проблема известна как и ставится так: как одна сторона может безопасно передать ключ другой стороне по незащищенному каналу связи? На этот вопрос мы ответим позже в ходе рассмотрения асимметричных криптографических систем.
Проверка целостности данных
Основные характеристики дайджестов:
Дайджесты можно сравнить с отпечатками пальцев. По отпечаткам можно определить их владельца, но больше ничего узнать о нем нельзя.
Перед отправкой сообщение можно хэшировать и добавить к нему полученный дайджест. Получатель может заново вычислить дайджест и сравнить с полученным. Если хэши совпадают, значит и данные не были изменены. Правильно? Не совсем. Ничто не мешает злоумышленнику изменить сообщение, вычислить хэш и добавить его к модифицированному сообщению. Значит перед отправкой хэш сообщения необходимо как-то защитить. Эту проблему мы решим позднее при рассмотрении цифровой подписи.
Обычно применяются следующие хэш-функции:
Хэширование выполняется очень быстро даже для больших объемов данных.
Проверка подлинности
Т.о., если A получил сообщение якобы от B и это сообщение можно расшифровать открытым ключом B, значит сообщение было зашифровано закрытым ключом B, а значит оно от B и пришло, поскольку только B имеет доступ к своему закрытому ключу. Т.о. можно доказать подлинность сообщения. Правда есть проблема: у A нет гарантии, что открытый ключ, использованный для расшифровки, принадлежит именно B. Этот открытый ключ A получил по незащищенному каналу, а значит злоумышленник мог его подменить. Эту проблему мы решим позднее при обсуждении сертификатов.
С другой стороны, если A хочет послать секретное сообщение, которое должен прочитать только B, A должен зашифровать сообщение открытым ключом B, доступным любому желающему. Такое сообщение можно расшифровать только закрытым ключом B, доступ к которому имеет только B. И снова та же проблема: где гарантия, что открытый ключ, использованный для шифрования, принадлежит именно B?
Соединяем хэширование и проверку подлинности: цифровая подпись
Т.о. вопрос защиты дайджеста от модификации мы решили.
Добавим шифрование
Эту проблему позволяют решить цифровые сертификаты.
Сертификаты
Сертификат X.509 содержит по крайней мере следующие поля:
В процессе вычисления цифровой подписи сертификата хэшируются значения всех полей и расширений, т.о. после выпуска сертификата его поля и расширения уже не могут быть изменены, иначе цифровая подпись станет недействительной. Помимо этих неизменных свойств сертификат может содержать и изменяемые свойства, например дружественное имя, описание, признак архивации сертификата. Изменяемым свойством сертификата является также информация о способе хранения закрытого ключа. Само значение закрытого ключа в сертификате никогда не присутствует и хранится отдельно.
Формат имен X.500
Основные компоненты имени X.500.
Компонент | Описание |
---|---|
С | Страна двумя буквами, соответствует имени национального корневого домена |
S или SP | Штат, область, провинция |
L | Населенный пункт |
STREET | Адрес в населенном пункте |
O | Организация |
OU | Отдел в организации |
CN | Общее имя |
E или Email | Адрес электронной почты |
Имена эмитента и субъекта в первой и второй версиях X.509 задаются только в формате X.500, а сертификаты третьей версии могут использовать альтернативные форматы имен.
Сертификаты и доверие
Итак, сертификат связывает открытый ключ с субъектом, например компьютером или пользователем. Но как убедиться, что сертификат и открытый ключ в нем принадлежат субъекту? Это вопрос доверия к эмитенту сертификата.
Теперь понятно, как пользователю A узнать, что сертификат с именем субъекта B и открытый ключ, содержащийся в сертификате, на самом деле принадлежат пользователю B. Если A верит выдавшему сертификат для B эмитенту CA1, что подлинность субъекта B проверена, значит сертификат с именем субъекта B может принадлежать только B.
Процедура проверки сертификата, т.е. проверки связи субъекта с открытым ключом, очень похожа на процедуру проверки удостоверения личности и имеет тот же смысл.
Этапы проверки сертификата | Этапы проверки удостоверения личности | |
---|---|---|
1 | Эмитенту сертификата можно доверять | Указанной в документе организации, выдавшей удостоверение, можно доверять |
2 | Сертификат подписан закрытым ключом эмитента, цифровая подпись действительна | На удостоверении имеется печать выдавшей его организации; нет следов правки, подчистки и т.п. |
3 | Период действия сертификата начался и не истек | Период действия документа начался и не истек |
4 | Сертификат не был отозван эмитентом | Нет информации об аннулировании удостоверения |
5 | Имя субъекта в сертификате соответствует ожидаемому | Фотография субъекта соответствует оригиналу |
Чтобы все доверяющие стороны могли проверить цифровые подписи сертификатов, центр сертификации должен предоставить им свой собственный открытый ключ. Подобно конечным пользователям, центр сертификации предоставляет свой открытый ключ в виде сертификата с цифровой подписью. Однако поля «субъект» и «эмитент» в таком сертификате содержат одну и ту же информацию, а цифровая подпись выполняется собственным закрытым ключом. Т.е. сертификат центра сертификации является ().
Центры сертификации можно разделить на две категории: открытые и частные. ЦС действуют через Internet, предоставляя услуги сертификации всем желающим. К таковым относятся например известные компании VeriSign и Thawte Consulting. ЦС обычно принадлежат корпорациям или закрытым сетям. Такие ЦС, как правило, выдают сертификаты только пользователям внутри их собственной сферы деятельности.
Цепочки сертификатов
Использование ключа
Сертификаты и связанные с ними ключи используются для разных целей, но в конечном счете все сводится к удостоверению личности.
Расширениями X.509 v3 «использование ключа» («key usage») и «улучшенное использование ключа» («enhanced key usage») задается набор допустимых вариантов использования ключа, например SSL-аутентификация сервера и защита электронной почты. Очень важно использовать сертификаты строго по назначению. Если хоть один сертификат в цепочке используется не по назначению, цепочка не пройдет проверку. Естественно, при движении по цепочке сертификатов от корня к листу область разрешенного использования ключа может только сужаться.
Системные хранилища сертификатов
Ниже перечислены основные (не все) хранилища компьютера.
Хранилища | Физические составные части хранилища | |||
---|---|---|---|---|
ID | Название | ID | Название | Расположение |
My | «Личные» (содержит сертификаты компьютера) | .Default | «.Реестр» | HKLM\Software\Microsoft\ SystemCertificates\My |
Root | «Доверенные корневые центры сертификации» | .Default | «.Реестр» | HKLM\Software\Microsoft\ SystemCertificates\Root |
CA | «Промежуточные центры сертификации» | .Default | «.Реестр» | HKLM\Software\Microsoft\ SystemCertificates\CA |
Как можно видеть из таблицы, хранилище компьютера My.Default, оно же «Личные.Реестр» физически располагается в ветви реестра «HKLM\Software\Microsoft\SystemCertificates\My».
Хранилища | Физические составные части хранилища | |||
---|---|---|---|---|
ID | Название | ID | Название | Расположение |
My | «Личные» (содержит сертификаты пользователя) | .Default | «.Реестр» | HKCU\Software\Microsoft\ SystemCertificates\My |
Root | «Доверенные корневые центры сертификации» | .Default | «.Реестр» | HKCU\Software\Microsoft\ SystemCertificates\Root |
.LocalMachine | «.Локальный компьютер» | Представляет собой ссылку на хранилище компьютера «Root» | ||
CA | «Промежуточные центры сертификации» | .Default | «.Реестр» | HKCU\Software\Microsoft\ SystemCertificates\CA |
.LocalMachine | «.Локальный компьютер» | Представляет собой ссылку на хранилище компьютера «CA» |
Хранилища служб существуют только под Windows NT 4.0, Windows 2000 и Windows XP. Ниже приведены основные хранилища службы.
Хранилища | Физические составные части хранилища | |||
---|---|---|---|---|
ID | Название | ID | Название | Расположение |
My | «Личные» (содержит сертификаты службы) | .Default | «.Реестр» | HKLM\Software\Microsoft\Crytography\ Services\ServiceName\SystemCertificates\My |
Root | «Доверенные корневые центры сертификации» | .Default | «.Реестр» | HKLM\Software\Microsoft\Crytography\ Services\ServiceName\SystemCertificates\Root |
.LocalMachine | «.Локальный компьютер» | Представляет собой ссылку на хранилище компьютера «Root» | ||
CA | «Промежуточные центры сертификации» | .Default | «.Реестр» | HKLM\Software\Microsoft\Crytography\ Services\ServiceName\SystemCertificates\CA |
.LocalMachine | «.Локальный компьютер» | Представляет собой ссылку на хранилище компьютера «CA» |
Во всех трех случаях в названии хранилища Root («доверенные корневые центры сертификации») употребляется слово «доверенные» и неслучайно. Помещая сертификат корневого ЦС в хранилище Root, мы автоматически обеспечиваем доверие к этому ЦС.
Доступ к хранилищам сертификатов пользователя имеет только этот пользователь. Доступ по записи к хранилищам компьютера и служб этого компьютера имеет только администратор компьютера.
Закрытые ключи чаще всего также хранятся в системном реестре, но отдельно от сертификатов. Если на компьютере имеется закрытый ключ, соответствующий сертификату, в изменяемых свойствах сертификата присутствует ссылка на контейнер закрытого ключа. Очень важно, чтобы закрытый ключ хранился в той же ветви реестра, что и сертификат, т.е. либо оба в ветви HKLM, либо оба в HKCU. В противном случае могут быть проблемы доступа к закрытому ключу сертификата.
Средства просмотра сертификатов и хранилищ
Наиболее удобным интерактивным средством для просмотра системных хранилищ и сертификатов является оснастка «сертификаты» консоли mmc. Оснастка «сертификаты» позволяет просматривать хранилища текущего пользователя, локального компьютера и его служб, а также сертификаты удаленного компьютера и его служб, импортировать сертификаты в системное хранилище или экспортировать их в файл, перемещать сертификаты из хранилища в хранилище и пр. На работу с хранилищами удаленного компьютера наложено ограничение: отсутствует доступ к закрытым ключам сертификатов. У этого средства всего один существенный недостаток: оно реализовано только под Windows 2000 и Windows XP. Под остальными платформами достойной замены оснастке «сертификаты» нет.
В Internet Explorer также имеется диалог «Диспетчер сертификатов» (см. меню «Сервис\Свойства обозревателя», закладку «содержание», кнопка «Сертификаты»). Однако этот диалог позволяет просматривать только хранилища текущего пользователя, т.е. сертификаты из хранилища локального компьютера My увидеть нельзя.
Кроме того, имеется работающая под любой платформой утилита командной строки certmgr.exe, позволяющая в консольном режиме посмотреть свойства сертификата, добавить сертификат в системное хранилище или удалить его. У утилиты две проблемы: не устанавливает код возврата в случае ошибки и задает много вопросов.
Импорт и экспорт сертификатов
Оснастка «сертификаты» и диспетчер сертификатов позволяют экспортировать сертификат из системного хранилища в файл одного из перечисленных выше форматов. Сертификаты экспортируются, как правило, в целях создания резервной копии или для переноса на другой компьютер. Операцию выполняет мастер экспорта сертификатов. Разумеется, если Вы экспортируете сертификат вместе с закрытым ключом, закрытый ключ необходимо защищать паролем.
Сертификаты можно импортировать из файла в системное хранилище при помощи контекстного меню проводника, а также из оснастки «сертификаты» и диспетчера сертификатов. Операцию выполняет мастер импорта сертификатов. Если сертификат импортируется вместе с закрытым ключом, Вам придется решить два вопроса.
Следует быть очень внимательным при экспорте и импорте сертификатов вместе с закрытым ключом. Следует помнить обо всех копиях закрытого ключа и убедиться, что все они защищены.
Использование сертификатов в протоколах передачи данных
SSL был разработан Netscape в 1994 году. С тех пор получил широкое признание и в настоящее время поддерживается практически всеми Web-браузерами и Web-серверами, а также прочими программными и аппаратными средствами. К настоящему времени реализованы три версии: SSLv2, SSLv3 и TLSv1 (также известный как SSLv3.1). Доминирующими являются версии SSLv3 и TLSv1. Кроме того с целью исправления ошибок в SSLv2 Microsoft разработала свой собственный SSL-протокол PCTv1, который не был стандартизован, и в настоящее время практически не используется.
Каково назначение сертификата ключа ЭЦП?
Сертификат ЭЦП — это ключевой компонент электронной подписи, без которого она будет считаться недействительной. Как выглядит этот сертификат и где его получить, какова продолжительность его действия? Ответы на эти и другие вопросы уже подготовлены для вас в нашей статье.
Сертификат открытого ключа проверки электронной цифровой подписи — что это, каково его назначение
Сертификат ЭЦП с присвоенным ему уникальным номером предоставляется удостоверяющим центром в электронном виде или на бумажном носителе.
Выбор сертификата ключа проверки электронной подписи
Выделяют квалифицированный и неквалифицированный сертификаты ЭЦП. Их различие в первую очередь состоит в функциональности. К примеру, электронную подпись с неквалифицированным сертификатом могут применить либо физлица — при работе с личным кабинетом налогоплательщика, либо фирмы-поставщики — при участии в электронных торгах.
Электронная подпись с квалифицированным сертификатом имеет более широкий спектр действия: начиная со входа на портал Госуслуг и заканчивая подписанием любых юридически значимых документов, не требующих обязательного бумажного оформления с ручной подписью.
Как сделать неквалифицированный сертификат ключа электронной подписи
Неквалифицированный сертификат выдается любым удостоверяющим центром на платной основе. Он также может быть сформирован любым опытным IT-специалистом при создании ЭЦП с помощью криптографических программ.
О различии и сходстве неквалифицированной и квалифицированной подписей читайте в нашем материале «Чем отличаются два основных типа электронных подписей».
Как создать квалифицированный сертификат ЭЦП
Самостоятельно создать ЭЦП с квалифицированным сертификатом не получится. Квалифицированный сертификат выдается только аккредитованными удостоверяющими центрами. Поэтому для его получения придется обратиться в один из таких центров с заявлением на выдачу сертификата.
Подробнее узнать о назначении квалифицированной подписи и порядке ее получения вы можете в нашей статье «Усиленная квалифицированная электронная подпись – что это такое?».
Заявление на сертификат ключа проверки электронной подписи — образец заполнения
Заявление на выдачу сертификата оформляется в виде приложения к договору на приобретение сертификата ключа ЭЦП. Бланк для заполнения данного заявления у каждого аккредитованного центра свой, но сведения, вносимые в него, одинаковы.
Чтобы наглядно увидеть, как примерно выглядит этот документ и какие сведения понадобятся для его заполнения, мы подготовили для вас образец уже заполненного заявления (см. ниже).
Продление сертификата ЭЦП
Срок сертификатов ЭЦП, выдаваемых удостоверяющими центрами, ограничен и составляет 12 месяцев (год) независимо от того, квалифицированный сертификат или неквалифицированный. Некоторые крупные аккредитованные центры могут оформить сертификат на 15 месяцев. Но не более. Как только установленный срок сертификата истечет, электронная подпись станет недействительной.
Если планируется применять электронную подпись после окончания установленного срока сертификата, то необходимо подать заявление на продление срока его действия в удостоверяющий центр, выдавший этот сертификат, оформить допсоглашение и оплатить выставленный центром счет.
Как обновить сертификат ЭЦП
После оформления соглашения и оплаты счета ехать в удостоверяющий центр и забирать обновленный сертификат не надо. Современные технологии позволяют обновлять сертификаты, не покидая рабочего места. У каждого аккредитованного центра свой механизм обновления сертификатов, описание которого обычно представлено на сайте центра в довольно подробном виде с иллюстрациями.
Перевыпуск сертификата ЭЦП
Иногда возникают ситуации, когда владелец электронной подписи теряет USB-носитель, меняет свои личные или юридические реквизиты или же законодательство вносит изменения в требования к электронным подписям. В таких случаях понадобится перевыпуск сертификата. В большинстве случаев эта услуга предоставляется удостоверяющими центрами на платной основе. И лишний раз менять реквизиты или терять USB-ключи финансово невыгодно. Правда, некоторые удостоверяющие центры предлагают услугу «Сопровождение сертификата», которая позволяет до определенного числа за период действия сертификата перевыпускать его за более низкую стоимость.
В случае перевыпуска сертификата ЭЦП просто обновить его не получится — придется устанавливать заново. Для установки нового сертификата понадобится программа КриптоПро CSP, находящаяся в меню «Пуск» — «Настройки» — «Панель управления». В этой программе на вкладке «Сервис» установить новый сертификат можно либо через кнопку «Просмотреть сертификаты в контейнере…», либо через кнопку «Установить личный сертификат…». Далее нужно следовать указаниям программы. Дополнительно можно воспользоваться подробными инструкциями, предоставляемыми сайтами аккредитованных центров.
Как удалить старые сертификаты ЭЦП
Удалить старые сертификаты ЭЦП будет намного проще, чем установить или обновить новые. Для этого нужно зайти в программу «Сертификаты» через меню «Пуск» — «Программы» — «Крипто-Про», открыть подпапку «Личное», выбрать старый сертификат, нажать правой клавишей мыши и из появившегося меню выбрать функцию «Удалить». Сертификат будет удален.
Но специалисты не рекомендуют этого делать, так как устаревшие сертификаты могут понадобиться для просмотра ранее подписанных документов и отчетов. Например, при удалении старых сертификатов просмотреть отчеты и письма, переданные с их помощью через ТКС, уже будет нельзя. И придется обращаться в аккредитованные центры с просьбой предоставить удаленные сертификаты.
Чтобы старые сертификаты сохранились в электронном виде, но и не появлялись в списке действующих сертификатов, достаточно вместо удаления сертификата открыть его двойным щелчком левой клавиши мыши и в появившемся окне на вкладке «Состав» нажать на кнопку «Свойства». В новом окошке переставить точечку на «Разрешить только следующие назначения» и убрать галочку «Проверка подлинности клиента». Таким образом старый сертификат сохранится, но и мешать при использовании действующих сертификатов уже не будет.
Где посмотреть уникальный номер сертификата ЭЦП
Для входа в личный кабинет налогоплательщика ЮЛ, настройки обмена юридически значимыми документами с банками и другими контрагентами понадобится уникальный номер сертификата ЭЦП. Для того чтобы посмотреть этот номер, нужно произвести несколько несложных действий, наглядно показанных на рисунке ниже.
Как долго надо хранить сертификат ЭЦП
Нужно ли владельцу электронной подписи хранить сертификаты ЭЦП после истечения срока их действия? Да, желательно сохранить их у себя в электронном или бумажном виде, так как они могут пригодиться в любой момент для подтверждения юридической значимости ранее подписанных с помощью них документов. При определении срока хранения сертификата ЭЦП можно ориентироваться на установленные законодательством сроки хранения документов в бумажном виде. Ознакомиться с ними вы можете в нашей статье «Основные сроки хранения документов в организации (архив)».
Но еще раз напомним, что это лишь рекомендация для владельцев ЭЦП. Обязанность хранить сертификаты законодательно закреплена за выдавшими их аккредитованными удостоверяющими центрами (п. 1 ст. 15 закона «Об электронной подписи» от 06.04.2011 № 63-ФЗ). Период хранения выданных сертификатов ограничен только сроком деятельности аккредитованного центра. То есть пока аккредитованный цент работает — можно в любой момент запросить у него информацию о ранее выданных сертификатах. Но как только удостоверяющий центр прекращает свою деятельность — обязанность по хранению сертификатов с него снимается.
В будущем планируется перевести хранение всех выданных сертификатов под контроль единой государственной базы, чтобы минимизировать риск их утери в случае прекращения деятельности аккредитованных центров. Но пока такой системы хранения нет, поэтому негласно ответственность за сохранность сертификата полностью лежит на его владельце.
Причины отзыва сертификата ЭЦП
Помимо аннулирования сертификата ЭЦП в связи с окончанием срока его действия и его отзыва владельцем электронной подписи есть еще несколько причин, по которым сертификат может стать недействительным (п. 6, п. 6.1 ст. 14 закона № 63-ФЗ):
Итоги
Таким образом, сертификат является неотъемлемой частью ключа электронной подписи, подтверждает подлинность и достоверность этого ключа, выступает в качестве его юридически значимого документального сопровождения. При отсутствии сертификата ключ ЭЦП будет считаться недействительным.