Ошибка получения криптографического контекста в Континент АП
После переустановки системы «Континент АП» мы можем попытаться установить в неё сгенерированный ранее сертификат, во время чего и сталкиваемся с сообщением «Ошибка получения криптографического контекста». Проблема может иметь случайный характер, и возникает лишь на данном конкретном ПК, в то же время на других компьютерах всё может устанавливаться без каких-либо проблем. Почему возникает данная ошибка и как её исправить? Расскажем в нашем материале.

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

Рассматриваемая нами ошибка обычно возникает при попытке установки сертификата в систему «Континент АП». Такой сертификат может быть или самостоятельно сгенерирован пользователем, или получен от ответственного специалиста государственного казначейства. В процессе выбора нужного сертификата возникает сообщение об ошибке получения контекста. При этом удаление старой версии КАП и установка новой обычно никак не помогает в решении проблемы.
Причины рассматриваемой дисфункции могут быть следующими:
- Случайный сбой в работе системы Континент АП;
- Пользователь выбран неверный файл сертификата;
- Пользователь выбрал неверный ключевой контейнер;
- Системные файлы на диске повреждены. Проблема может иметь общий характер, и вызвана наличием плохих (битых) секторов на жёстком диске (или флешки).
Давайте разберёмся, как исправить ошибку получения криптографического контекста на вашем PC.
Читайте также: сертификат содержит недействительную цифровую подпись — как поступить? — https://rusadmin.biz/oshibki/etot-sertifikat-soderzhit-nedejstvitelnuyu-tsifrovuyu-podpis-chto-delat/
Перезагрузите ваш компьютер
В данном случае этот тривиальный совет может оказаться весьма эффективным, и поможет избавиться от ошибки получения криптографического контекста на вашем ПК. Поскольку причиной дисфункции может выступать банальный сбой системы, рекомендуем перезагрузить ваш ПК, запустить Континент АП, и установить нужный сертификат.
Выберите корректный файл сертификата программы Континент АП
Помните, что установка сертификатов выполняется на ПК под учётной записью того пользователя, кто в дальнейшем будет выполнять авторизацию на СД Управления.
Для установки пользовательского сертификата аутентификации выполните следующее:
- Наведите курсор на значок в виде щита с правой буквой К справа внизу;
- Щёлкните правой клавишей мыши;
- В появившемся меню выберите «Сертификаты», и далее «Установить сертификат пользователя»;

Выберите опцию «Установить сертификат пользователя» - Откроется окно Проводника, с помощью которого перейдите в папку со скопированными ранее сертификатами;
- Выберите корректный файл сертификата под названием user.cer и нажмите на «Открыть»;

- Если ошибка не возникнет вновь, выполните последующие операции.
Используйте подходящий ключевой контейнер
Также устранить ошибку получения криптографического контекста в Континент АП позволит выбор корректного ключевого контейнера. При выборе файла сертификата user.cer появится окно выбора корректного ключевого контейнера. Вставьте носитель (обычно это флеш-накопитель) в ПК, после чего нажмите на кнопку «Обновить». В окне выбора отобразятся доступные ключевые контейнеры. Останется выбрать нужный контейнер, после чего нажать на кнопку «Ок».

Проверьте целостность системных файлов
В некоторых случаях системные файлы на винчестере (флешке) могут быть повреждены вследствие различных факторов программного и аппаратного характера. Рекомендуем проверить целостность файлов, для чего можно воспользоваться системной утилитой SFC. Выполните следующее.
Система выполнит проверку целостности файлов, на что уйдёт некоторое время. Возможно, в процессе проверки ваш PC будет необходимо перезагрузить. После окончания процесса вновь попробуйте выполнить выбор нужного сертификата.
Это интересно: при проверке отношений доверия произошла системная ошибка – что делать.
Заключение
Выше мы разобрали, когда возникает ошибка получения криптографического контекста в аппаратно-программном комплексе Континент АП, и как её можно исправить. Обычно появление данной ошибки вызвано стандартным сбоем в работе системы, а также неверным выбором файла сертификата и ключевого контейнера. Выполните перечисленные выше шаги, это позволить устранить рассмотренную нами проблему на вашем PC.
Опубликовано 28 июля 2019 Обновлено 09 октября 2020
Здравствуйте!
Я знаю, что эта тема обсуждалась, но у меня уникальный случай.
Начну с того, что версия континент АП 3.7.7.625 (более новые версии не работают на Win10_Pro_64), версия КриптоПро 4.0.9969.
Изначально, при первой настройке и установке, сертификат установился без проблем, но не подключался по причине отсутствия корневого сертификата.
По рекомендации на сайте росказна, были удалены и установлены все сертификаты, теперь при установке личного сертификата всегда вылезает ошибка «Ошибка получения криптографического контекста».
Было использовано 100500 вариантов решения проблемы, но ничего не помогает, даже винду сносил, ставил и семерку и десятку, на голый виндовс ставил только континент и КриптоПро и все равно эта ошибка.
Оф поддержка спустя 2 недели раздумий предложила установить на другом компе, но естественно это ник чему не привело.
Пробовал также поставить КриптоПро 5, но континент ругается на повреждение файлов, переустановка не помогает, видимо несовместимость.
В итоге:
Имеем ошибку Ошибка получения криптографического контекста, все способы известные перепробованы!
Помогите пожалуйста!!!
PS. последняя версия континент АП 3.7.7.651???
|
Дмитрий Г |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 1 раз |
При разворачивании приложения с помощью докера не работает подписание с помощью JCSP. При сборке докера устанавливаю в контейнер КриптоПро CSP с помощью ./install.sh java.lang.IllegalArgumentException: ru.CryptoPro.JCSP.MSCAPI.MSHashNSignException: Hash or Sign ERROR: 0x8009000d При этом если запускаю проект локально, то никаких проблем нет. Подскажите как решить проблему |
![]() |
|
|
Евгений Афанасьев |
|
|
Статус: Сотрудник Группы: Участники Сказал(а) «Спасибо»: 20 раз |
Здравствуйте. |
|
Тех. поддержка |
|
![]() |
|
|
Дмитрий Г |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 1 раз |
Автор: Евгений Афанасьев Здравствуйте. Да, через csptest всё подписывается Чтобы подписать использовал команду: /opt/cprocsp/bin/amd64/csptest -keyset -sign GOST12_256 -keytype exchange -in /tmp/test -out /tmp/test.sig |
![]() |
|
|
Дмитрий Г |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 1 раз |
Неужели никто не сталкивался с такой проблемой? |
![]() |
|
|
Евгений Афанасьев |
|
|
Статус: Сотрудник Группы: Участники Сказал(а) «Спасибо»: 20 раз |
Здравствуйте. |
|
Тех. поддержка |
|
![]() |
|
|
Дмитрий Г |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 1 раз |
Автор: Евгений Афанасьев Здравствуйте. Инициализация класса, который реализует подписание Код:
Функция подписания Код:
Используемые константы Код:
Класс Document из org.w3c.dom.Document; |
![]() |
|
|
Евгений Афанасьев |
|
|
Статус: Сотрудник Группы: Участники Сказал(а) «Спасибо»: 20 раз |
Автор: Дмитрий Г Автор: Евгений Афанасьев Здравствуйте. Да, через csptest всё подписывается Чтобы подписать использовал команду: /opt/cprocsp/bin/amd64/csptest -keyset -sign GOST12_256 -keytype exchange -in /tmp/test -out /tmp/test.sig Тут проверяете с проблемным контейнером? Не увидел параметра — container с указанием ключевого контейнера. Тут есть проверки на случай такой ошибки: |
|
Тех. поддержка |
|
![]() |
|
|
Дмитрий Г |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 1 раз |
Автор: Евгений Афанасьев Тут проверяете с проблемным контейнером? Не увидел параметра — container с указанием ключевого контейнера. Тут есть проверки на случай такой ошибки: Это логи при подписании, по умолчанию использует нужный мне контейнер pfx-7078232a-7ec6-26e8-27d7-5ae023ac2fc2 Код:
Логи если явно указываю контейнер Код:
|
![]() |
|
|
Дмитрий Г |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 1 раз |
Заметил в ходе дебага в логах. Просит пароль при подписании Код:
|
![]() |
|
|
Дмитрий Г |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 1 раз |
Заставил работать все, но решение не очень красивое. Из KeyStore получаю Entry, который потом кастую в JCPPrivateKeyEntry и оттуда достаю приватный ключ. Код получения ключа: Код:
|
![]() |
|
|
|
ВадимPilotnikov
оставлено 12.12.2022(UTC) |
| Пользователи, просматривающие эту тему |
|
Guest |
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
|
Aleksei Neverov |
|
|
Статус: Активный участник Группы: Участники Сказал(а) «Спасибо»: 17 раз |
Коллеги, день добрый Для подписания док-тов используем КриптоПро CSP 5.0.11455 KC1, CAdES plugin, сертификаты на Рутокентах. OC Windows 10 Буквально на прошлой неделе все работало, как надо. Код:
Возникает ошибка Ключ не существует. (0x8009000D) Проверка ключевого носителя средствами КриптоПро тоже сообщает об ошибке (подпись — Ключ не существует), хотя ниже говорится, что сертификат в контейнере соответствует закрытому ключу (как так?) Цитата: Проверка завершилась с ошибкой Проверка другими средствами (Admin PKI, File PRO от Сигнал-КОМ, запрос на сертификат формировался в них) говорит, что с токеном все в порядке. Скажите, пожалуйста, в чем может быть причина такой работы КриптоПро с токеном? Заранее большое спасибо |
![]() |
|
|
Андрей * |
|
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 451 раз |
Здравствуйте. А новая ключевая пара тестируется? |
|
Техническую поддержку оказываем тут |
|
![]() |
WWW |
|
Aleksei Neverov |
|
|
Статус: Активный участник Группы: Участники Сказал(а) «Спасибо»: 17 раз |
Автор: Андрей * Здравствуйте. А новая ключевая пара тестируется? День добрый! Для новой ключевой пары пока не пришел сертификат. |
![]() |
|
|
two_oceans |
|
|
Статус: Эксперт Группы: Участники Сказал(а) «Спасибо»: 110 раз |
Автор: Aleksei Neverov Для новой ключевой пары пока не пришел сертификат. Добрый день. Других неудобств от отсутствия сертификата по идее быть не должно. С сертификатом возможны накладки при использовании разных криптопровайдеров, кодирующих гост-2012 в разные оиды, но пока нет сертификата это не должно быть проблемой. Тыкнув пальцем в небо, мне кажется подозрительным имя контейнера 30303030303030312e6b6579, как будто это шестнадцатиричное представление некого текста. Выходит текст 00000001.key |
![]() |
|
|
|
Aleksei Neverov
оставлено 09.04.2021(UTC) |
|
Агафьин Сергей |
|
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 5 раз |
Добрый день. |
|
С уважением, |
|
![]() |
|
|
|
two_oceans
оставлено 09.04.2021(UTC), Aleksei Neverov оставлено 09.04.2021(UTC) |
|
Aleksei Neverov |
|
|
Статус: Активный участник Группы: Участники Сказал(а) «Спасибо»: 17 раз |
Автор: Агафьин Сергей Добрый день. Коллеги, день добрый Спасибо всем за помощь! |
![]() |
|
| Пользователи, просматривающие эту тему |
|
Guest |
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
CryptSignMessage: Ключ не существует. (0x8009000d)
Итак, новенькая ошибка. Встречается как «гавно» мамонта ))))))) редко редко.
При подписи выдает ошибку.
com.otr.cryptonew.CryptoDataException: Ошибка подписи. CryptSignMessage: Ключ не существует. (0x8009000d)

Сертификаты были на флешке. Попробовал открыть сертификат которым подписывают и вот — что из этого вышло.
На сколько я помню давно давно у клиента была подобная проблема — вирус «поел» сертификаты. Вот они и перестали открываться.

Первым делом проверяйте — открываются ли сертификаты. И надеюсь у Вас есть резервная копия . Желательно на компьютере.
В моем случае у клиента резервная копия была на флешке, на которой так же не открывались сертификаты.
При копировании сертификата возникает ошибка:
«Ошибка копирования контейнера 123456789@28-07-2011 Иванов Иван Иванович: У вас нет разрешений на экспорт ключа, потому что при создании ключа не был установлен соответствующий флаг. Ошибка 0x8009000B (-2146893813) Ключ не может быть использован в указанном состоянии»
Для решения данной проблемы необходимо:
- Проверить наличие лицензии на КриптоПроCSP. Ошибка может возникать на КриптоПРО CSP с истекшими сертификатами со встроенной лицензией. Для автоматического ввода лицензии нужно перейти ссылке и установить лицензию по инструкции.
- Повторить копирование сертификата.
- Если в имени контейнера есть строка типа: _копия_a0b63dd8 (например 06208439@2016-12-29-ЗАО ПФ СКБ Контур_копия_a0b63dd8), то контейнер имеет признак неэкспортируемый. Следуйте инструкции в зависимости от носителя:
сертификат в реестре, на USB-флеш-накопителе, локальном компьютере или дискете
сертификат на рутокене
При копировании, в окне выбора контейнера, нужно поставить переключатель Уникальные имена, продолжить копирование.


Сертификат в реестре, на USB-флеш-накопителе, локальном компьютере или дискете.
Чтобы сделать копию такого сертификата, необходимо:
Это значит, что истек срок действия «КриптоПро». Кстати, при этом должно появиться еще и сообщение: «Срок действия “КриптоПро” истёк». Оно появляется, если закончился:
- пробный период использования программы;
- срок действия годовой лицензии на использование.
Что делать в такой ситуации?
Необходимо ввести серийный номер вновь приобретенной лицензии на использование программы или оплатить ее в интернет-магазине. Кроме того, помехой для извлечения сертификата может послужить некорректная работа «КриптоПро». В этом случае следует установить программу заново.



1 пользователь поблагодарил Дмитрий Г за этот пост.



1 пользователь поблагодарил two_oceans за этот пост.