Не удалось загрузить список доверенных узлов. Для работы с электронной подписью в браузере Internet Explorer потребуется плагин КриптоПро CADESCOM. Дополнительные настройки для Opera

Установить Рутокен в КриптоПро

Благодаря использованию Рутокен можно надежно защитить информацию от несанкционированного доступа. Защищенная файловая система сохранит в безопасности данные благодаря криптографическому шифрованию. Создано специально ПО, которое объединяет возможности двух программ - КриптоПро Рутокен CSP . Объединив идентификатор и СКЗИ получился надежный модуль, на котором можно безопасно хранить данные.

Так как все действия выполняются внутри ключа-идентификатора и протокол обмена данными защищен уникальной технологией, рационально использовать подобный дистрибутив при работе с электронными документами высокой важности. Если использовать отдельно Рутокен, необходимо прежде всего установить драйвера на ПО. Нельзя подключать идентификатор до установки драйверов. После инсталляции потребуется установка модулей поддержки для КриптоПро. Пройдя этапы подготовки, можно подключать ключ Рутокен. Затем следует запустить программу КриптоПро и во вкладке Оборудование настроить считыватели. Для работы идентификатора нужно выбрать пункт «Все считыватели смарт-карт» и нажать «Далее».

Для проверки CAdES-X Long Type 1 подписи https://www.cryptopro.ru/sites/default/files/products/cades/demopage/cades_xlong_sample.html

Согласитесь со всеми всплывающими окнами, если таковые будут.

Вы должны увидеть страницу такого вида:

Если Вы видите такое окно, то переходите к шагу 2, если нет, то читайте дальше.


Если Вы видите такое окно, значит не установлен или не доступен КриптоПро CSP, см. пункт как проверить установку или установить КриптоПро CSP.

Если Вы видите такое окно, значит CAdESBrowserPlug-in не установлен или не доступен, см. пункт как проверить установлен ли плагин, Как убедится, что правильно настроен браузер.

Шаг 2

В поле Сертификат выделите нужный сертификат и нажмите Подписать.

Примечание : В поле Сертификат отображаются все сертификаты, установленные в хранилище Личное текущего пользователя, и сертификаты, записанные в ключевые контейнеры. Если в списке нет сертификатов или отсутствует нужный, значит необходимо вставить ключевой носитель с закрытым ключом и .

Если после нажатия кнопки Подписать Вы видите такой результат, значит Вы успешно выполнили подпись и КриптоПро ЭЦП Browser plug-in работает в штатном режиме.

Если Вы получили ошибку, то смотрите раздел Информация об ошибках.

Как проверить установлен ли КриптоПро CSP

Проверить установлен ли КриптоПро CSP можно зайдя в панель управления Программы и компоненты (Установка и удаление программ). Там же можно увидеть версию установленного продукта:

Если КриптоПро CSP не был установлен, то пробную версию (на 3 месяца) можно скачать у нас на сайте (для загрузки файла необходима действующая учетная запись на нашем портале): https://www.cryptopro.ru/sites/default/files/private/csp/40/9944/CSPSetup.exe

После загрузки.exe файла запустите его и выберите пункт «Установить (рекомендуется)». Установка произойдет в автоматическом режиме.

Как проверить установлен ли КриптоПро ЭЦП Browser plug-in

Проверить установлен ли КриптоПро ЭЦП Browser plug-in можно зайдя в панель управления Программы и компоненты (Установка и удаление программ). Там же можно увидеть версию установленного продукта.

Если КриптоПро ЭЦП Browser plug-in не установлен, то дистрибутив можно скачать у нас на сайте: https://www.cryptopro.ru/products/cades/plugin/get_2_0

Инструкция по установке плагина: https://cpdn.cryptopro.ru/content/cades/plugin-installation-windows.html

Как убедится, что включено расширение в браузере

Если Вы используете Google Chrome , то Вы должны включить расширение. Для этого в правом верхнем углу браузера нажмите на значок Настройка и управление Google Chrome (три точки)- Дополнительные инструменты -Расширения.

Убедитесь, что расширение CryptoPro Extension for CAdES Browser Plug-in присутствует и включено. При отсутствии расширения, переустановите КриптоПро ЭЦП Browser plug-in или скачайте расширение через Интернет магазин Chrome: https://chrome.google.com/webstore/detail/cryptopro-extension-for-c/iifchhfnnmpdbibifmljnfjhpififfog?hl=ru

Если Вы используете Mozilla Firefox версии 52 и выше, то требуется дополнительно установить расширение для браузера.

Разрешите его установку:

Нажмите Добавить:

Перейдите Инструменты-Дополнения-Расширения и убедитесь, что расширение включено:

Если Вы используете Internet Explorer , то при переходе на страницу, в которую встроен CAdESBrowserPlug-in, Вы увидите внизу страницы следующее сообщение:

Нажмите Разрешить.

В окне Подтверждение доступа нажмите Да:

Если Вы используете Opera, то необходимо установить расширение из каталога дополнений Opera:

И во всплывающем окне нажать - Установить расширение:


В следующем окне нажмите - Установить:


Либо перейдите Меню-Расширения-Расширения:

Нажмите Добавить расширения и в строке поиска введите CryptoPro, выберите наш плагин и нажмите Добавить в Opera. После этого перезапустите браузер.

Проверить включен ли плагин можно в Меню-Расширения-Расширения:

Если Вы используете Яндекс Браузер, то необходимо перейти Опции-Настройки-Дополнения и убедиться, что КриптоПро ЭЦП есть и включен. Если расширение отсутствует, то Вы можете скачать его Каталога расширений для Яндекс Браузера, используя поиск по слову КриптоПро.


Информация об ошибках

1) Появляется окно КриптоПро CSP Вставьте ключевой носитель

Появление данного окна значит, что у Вас не вставлен носитель с закрытым ключом для выбранного Вами сертификата.

Необходимо вставить ключевой носитель. Убедится что ОС его «видит» и попробовать заново.

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

2) Не удалось создать подпись из-за ошибки: Не удается построить цепочку сертификатов для доверенного корневого центра. (0x800B010A)


Эта ошибка возникает, когда невозможно проверить статус сертификата (нет привязки к закрытому ключу, нет доступа к спискам отзыва или OCSP службе), либо не установлены корневые сертификаты.

Выполните привязку сертификата к закрытому ключу :

Проверьте строится ли цепочка доверия: откройте файл сертификата (можно его открыть через Пуск-Все программы-КриптоПро- Сертификаты-Текущий Пользователь-Личное-Сертификаты), перейдите на вкладку Путь сертификации. Если на этой вкладке присутствуют красные кресты, или вообще нет ничего кроме текущего сертификата (кроме тех случаев если сертификат является самоподписанным)

Скриншоты с примерами сертификатов, у которых не строится цепочка доверия.

Чтобы цепочка доверия построилась необходимо скачать и установить корневые и промежуточные сертификаты. Скачать их можно с сайта УЦ, издавшего сертификат.

Если вы используете квалифицированный сертификат, то попробуйте установить в доверенные корневые эти 2 сертификата (это сертификаты Головного УЦ Минкомсвязи и от них, при наличии интернета должна построится цепочка доверия у любого квалифицированного сертификата), если не поможет, то обращайтесь в УЦ, выдавший Вам сертификат.

Чтобы установить скачанный сертификат в доверенные корневые центры сертификации, нажмите по нему правой кнопкой-Выберите пункт -Установить сертификат- Текущий пользователь- Поместить все сертификаты в следующие хранилище-Обзор-Доверенные корневые центры сертификации-Ок- Далее- Готово- когда появится предупреждение системы безопасности об установке сертификата- нажмите Да-Ок. если Вы устанавливаете сертификат промежуточного центра сертификации то выбирайте хранилище- промежуточные центры сертификации.

Важно: Если вы создаете CAdES-Tили CAdES-XLongType 1, Ошибка может возникать если нет доверия к сертификату оператора TSP службы, в этом случае необходимо установить в доверенные корневые центры сертификации корневой сертификат УЦ его издавшего.

3) Если подпись создается, но ошибка при проверке цепочки сертификатов горит, это значит, что нет доступа к спискам отозванных сертификатов.

Списки отозванных сертификатов можно скачать на сайте УЦ, выдавшем сертификат, после получения списка его необходимо установить, процедура идентична процедуре установки промежуточного сертификата ЦС.

4) Ошибка: 0x8007064A

Причина ошибки истек срок действия лицензий на КриптоПро CSP и/или КриптоПро TSP Client 2.0 и/или Криптопро OCSP Client 2.0.

Для создания CAdES-BES подписи должна быть действующая лицензия на КриптоПро CSP

Для создания XLT1 должны быть действующими лицензии на следующие программные продукты: КриптоПро CSP, КриптоПро TSP Client 2.0, КриптоПро OCSP Client 2.0

Посмотреть статус лицензий можно через: Пуск- Все программы- КРИПТО-ПРО- Управление лицензиями КриптоПро PKI.

Решение: Приобрести лицензию на нужный программный продукт и активировать её:

Пуск- Все программы- КРИПТО-ПРО- Управление лицензиями КриптоПро PKI -выбрать нужный программный продукт- открыть контекстное меню (щелкнуть правой кнопкой мыши) -выбрать пункт Все задачи выбрать пункт Ввести серийный номер... -ввести серийный номер лицензии -нажать кнопку OK

5) Набор ключей не существует (0 x80090016)

Причина ошибки: У браузера не хватает прав для выполнения операции- добавьте наш сайт в доверенные

6) Отказано в доступе (0x80090010)

Причина ошибки: Истек срок действия закрытого ключа. Проверьте срок действия Зайдите в Пуск->Все программы(все приложения)->КриптоПро->Крипто-Про CSP. Перейдите на вкладку Сервис. Выберите пункт Протестировать, выберите контейнер с закрытым ключом и в результатах тестирования Вы сможете увидеть срок его действия. Рекомендуется получить новый ключ.

7) Ошибка : Invalid algorithm specified. (0x80090008)

Данная ошибка возникает, если Вы используете сертификат, алгоритм которого не поддерживается Вашим криптопровайдером.

Пример: У вас установлен КриптоПро CSP 3.9 а сертификат Выпущен по ГОСТ 2012.

Или если используется алгоритм хеширования, не соответствующий сертификату.

Так же проверьте актуальность версии КриптоПро CSP.

Ситуация, когда при попытке войти в личный кабинет по ЭП возникает уведомление об ошибке, означает что плагин не установлен или не включен.

Если плагин установлен , то внизу появится уведомление о попытке запустить надстройку. Нажмите кнопку "Разрешить", обновите страницу и повторите вход по ЭП. Действие может потребоваться выполнить несколько раз (на каждую отключенную надстройку плагина).

Если браузер не запросил разрешения на работу надстройки (например, в настройках заблокированы всплывающие окна), то включите его вручную. Для этого:

1. Нажмите значок настроек в правом верхнем углу и выберите пункт "Настроить надстройки".


2. В открывшемся окне установите условие "Отображать все надстройки" (1)

правой кнопкой мыши кликните на название надстройки в разделе "Crypto-Pro" и выберите "Включить".

Если в разделе несколько надстроек - включите поочередно каждую.


Если плагин не был установлен (т.е. в надстройках нет раздела Crypto-Pro), скачайте и установите плагин при закрытых окнах браузера. Предложение скачать плагин появится вместе с уведомлением об ошибке в браузере. Запустите установку, нажав кнопку "Выполнить" (либо сначала сохраните файл, затем запустите его для установки плагина).


После окончания установки запустите браузер и выполните вход на площадку.

Ключевые слова: эксплорер, надстройки

Железный человек 2 мая 2015 в 09:46

Электронная цифровая подпись на сайте при помощи КриптоПро ЭЦП Browser plug-in

В данной статье рассмотрим использование электронно-цифровой подписи на сайте.

Что необходимо, чтобы человек смог использовать электронно-цифровую подпись на сайте?

1) СКЗИ (средство криптографической защиты информации)
Мой опыт работы показывает, что порядка 90% использует КриптоПро CSP (скачать), который в явном или неявном виде продвигают удостоверяющие центры. Порядка 10% VipNet CSP (), который можно использовать бесплатно. С остальными СКЗИ на практике не встречался.
2) КриптоПро ЭЦП Browser plug-in (страница плагина).
3) Установленная подпись (хотя бы одна).

Проверка возможности осуществления подписи
javascript (+jquery)

1) Попытка создать объект cades.
Нужно сделать примечание, что тут и далее, будет деление на браузер с ActiveX(читай IE) и остальные.
Проверка будет осуществляться:

Return ("ActiveXObject" in window);
для ActiveX:

Try { store = new ActiveXObject("CAdESCOM.store"); status = true; } catch (e) { status = false; }
Для остальных:

If (navigator.mimeTypes["application/x-cades"]) { status = true; } else { status = false; }
Если проверка прошла неудачно, то уведомляем об этом пользователя.
Стоит иметь ввиду, что после обновления хрома до версии 42 (спасибо статье за информацию) нужно включить:

Chrome://flags/#enable-npapi
Следующая проверка - а разрешен ли плагин для запуска (не для IE проверка)?

Try { store = objSign.CreateObject("CAPICOM.store"); status = true; } catch (e) { status = false; }
Где objSign:

ObjSign = $("", { "id": "cadesplugin", "type": "application/x-cades", "css": { "visibility": "hidden", "height": "0px", "width": "0px", "position": "absolute" } }).appendTo("body").get(0);
Проверяем на СКЗИ путем попытки открыть хранилище.

Try { store.Open(); status = true; } catch (e) { status = false; }
Проверяем на существование сертификатов в хранилище:

If ("Certificates" in store) { certs = store.Certificates; }

И их количество (бывает, что Certificates есть, но пуст, что нам тоже не подойдет):

If (certs.Count) { status = true; } else { status = false; }

Первый шаг сделали - проверили возможность подписания чего-либо.

Выбор электронной цифровой подписи

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

1) Группируем по удостоверяющим центрам
Информация об удостоверяющем центре хранится в сертификате.

Certs.Item(i).GetInfo(1)
где certs - сертификаты из хранилища, см выше
i - порядковый номер сертификата от 1 (обратите внимание) до certs.Count.
Обратите внимание, что, в случае «кривых» сертификатов, вернуться может и undefined, имеет смысл сделать один дефолтный УЦ для таких случаев.

Теперь мы знаем список УЦ, услугами которых воспользовался клиент.
Запоминаем их и выведем через optgroup.
Сам text у option будет таким:
cert.GetInfo(6) + " (" + formatDate(cert.ValidFromDate) + " - " + formatDate(cert.ValidToDate) + ")"
в cert.GetInfo(6) - кому выдан сертификат
в ValidFromDate - с какого срока сертификат начал/начнет действие
в ValidToDate - соответственно, до какого срока

Ну и форматирование даты стандартное:

Function formatDate(d) { try { d = new Date(d); return ("0" + d.getDate()).slice(-2) + "." + ("0" + (d.getMonth() + 1)).slice(-2) + "." + d.getFullYear(); } catch (e) { return ""; } }
Еще можно подсветить option.
Зеленым - для работоспособных сертификатов, красным - нет.
Информацию можно получить при помощи самого сертификата.

Try { return cert.IsValid().Result; } catch (e) { return false; }
Стоит отметить, что сама по себе данная проверка имеет малую ценность, ибо все причины не может отсечь.
Но самые базовые, например, проверка даты - проверяет.

В value у option запишем отпечаток cert.Thumbprint .
Можно порядковый номер записать, можно другие данные - на ваше усмотрение.

Подписание
Ну и, собственно, самый главный шаг, к которому мы стремились - подписание.

1) Находим выбранный сертификат.
Для нашего примера:

Certs.Find(0, thumbprint).Item(1)
0 - означает, что мы ищем по отпечатку
1 - что используем первый результат выборки (по факту единственный)

2) Подписываем:

If (isActiveX()) { var CPSigner = new ActiveXObject("CAdESCOM.CPSigner"); } else { var CPSigner = objSign.CreateObject("CAdESCOM.CPSigner"); } CPSigner.Certificate = cert; if (isActiveX()) { var SignedData = new ActiveXObject("CAdESCOM.CadesSignedData"); } else { var SignedData = objSign.CreateObject("CAdESCOM.CadesSignedData"); } SignedData.Content = text; return SignedData.SignCades(CPSigner, 1, false);

Где cert - сертификат, при помощи которого подписываем
text - собственно, что подписываем
Ну а в return возвращается подписанное сообщение.

P.s. По максимуму код постарался вычистить от специфики проекта. Если кому-то этот материал пригодится и будет интересно - напишу и серверную часть. Проверка подписанного сообщения (с цепочкой и без), проверка сертификата (ocsp и без), использования tsp и т.д.

Теги: criptopro, ЭЦП, openssl, cades, javascript

Большое спасибо, Михаил, все сделали оперативно а главное понятно для меня... Так как мы с вами нашли общий язык. хотелось бы в дальнейшем так же продолжить связь именно с вами. Надеюсь на плодотворное сотрудничество.

Олеся Михайловна - генеральный директор ООО "ВКС"

От имени предприятия ГУП "Севастопольское авиационное предприятие" выражаем благодарность за профессионализм и оперативность вашей компании! Желаем вашей компании дальнейшего процветания!

Гуськова Лилия Ивановна - менеджер. ГУП "САП"

Спасибо вам, Михаил, большое за помощь в оформлении. Очень квалифицированный сотрудник +5!

Надия Шамильевна - предприниматель ИП Аношкина

От лица компании "АКБ-Авто" и от себя лично выражаю Вам и всем сотрудникам вашей компании благодарность за продуктивную и качественную работу, чуткое отношение к требованиям клиента и оперативность в исполнении заказываемых работ.

Насибуллина Альфира - Старший менеджер "АКБ-Авто"

Хочу поблагодарить консультанта Михаила за отличную работу, своевременные и полные консультации. Очень внимателен к проблемам клиента и вопросам, оперативное решение самых казалось бы для меня сложных ситуаций. Очень приятно работать с Михаилом!!! Теперь своим клиентам и знакомым буду рекомендовать Вашу компанию. Да и консультанты в тех.поддержке тоже очень вежливы, внимательны, помогли справится со сложной установкой ключа. Спасибо!!!

Ольга Севостьянова.

Приобретение ключа оказалось очень лёгким и, даже, приятным. Огромная благодарность за содействие менеджеру Михаилу. Объясняет сложные и массивные для понимания вещи ёмко, но очень понятно. К тому же я позвонил на горячую бесплатную линию и в режиме он-лайн, вместе с Михаилом оставил заявку. Мне изготовили ключ через 2 рабочих дня. В общем, рекомендую если экономите своё время, но в тоже время хотите иметь понимание - что покупаете и за что платите. Спасибо.

Левицкий Александр Константинович г. Самара

Личная благодарность консультанту Михаилу Владимировичу за оперативную консультацию и работу по ускоренному получению сертификата ЭП. В ходе предварительной консультации подбирается оптимальный набор индивидуальных услуг. Конечный результат получен незамедлительно.

Стоянова Н.Л. - главный бухгалтер ООО "СИТЕКРИМ"

Спасибо за оперативную работу и компетентную помощь! Консультацией остался очень доволен!

Дмитрий Фомин

ООО "Эксперт Система" благодарит за оперативную работу консультанта Михаила! Желаем Вашей компании роста и процветания!

Суханова М.С. - Оценщик ООО "Эксперт Система", г. Волгоград

Спасибо консультанту, представившемуся Михаилом, за оперативность в работе с клиентами.

Пономарев Степан Геннадьевич

Большое спасибо консультанту Михаилу, за оказанную помощь в получении ЭЦП. За оперативную работу и консультирование по вопросам возникающим в процессе оформления.

Леонид Некрасов

Компания в лице консультанта Михаила делает невозможное! Ускорение аккредитации менее чем за 1 час! Оплата по факту оказания услуги. Думал, такого не бывает. С полной ответственностью могу советовать связываться с Центром выдачи электронных подписей.