Ошибка создания запроса 0x80090017 тип поставщика не определен

Operlaw пишет: Вообщем вот инструкция от КБ.
1. Удалить с АРМ КриптоПРО.
2. Перезагрузить ПК.
3. Удалить Континент АП.
4. Перезагрузить ПК.
5. Очистить систему утилитой от КриптоПРО (запуск от имени администратора) — www.cryptopro.ru/sites/default/files/public/cspclean.exe
6. Очистить систему утилитой от Кода Безопасности (запуск из командной строки от имени администратора с ключами –t и –v) —
Ссылка на утилиту CspCleaner.exe:
cloud.securitycode.ru/nextcloud/index.php/s/QfrzbrM5Gmd4PpN
Пароль: 5iXBS346
7. В случае, если запуск будет произведен не от имени администратора, утилита завершится без вывода какой-либо информации и очистка произведена не будет.
8. Перезагрузить ПК.
9. Установить КриптоПРО.
10. Перезагрузить ПК.
11. Установить Континент АП. При устанавки КАП выбрать максимальную установку с датчиками, с КБ CSP, и т.д.
12. Перезагрузить ПК.
13. В настройках КБ CSP установить биологический ДСЧ в место физического.

И все заработает.

Не работает, выдаёт эту ошибку. А при установке Континента ап (последний 651) нет биологического накопления МИШЕНИй.,они не появляются

Проблема

При импорте сертификата в «Континент-АП» или при попытке подключения возникает ошибка: «Ошибка работы с криптопровайдером 0x80090017. Тип поставщика не определен».

Возможно, перед использованием «Континент-АП» на ПК была установлена система управления Континент, в составе которой есть криптопровайдер «Код Безопасности CSP».

Решение

Возможное решение проблемы – удалить «Континент-АП», очистить реестр от неиспользуемых данных (к примеру, программой CCleaner), повторно установить «Континент-АП». В ходе инсталляции будет восстановлен криптопровайдер, который вызывает ошибку.

Информация оказалась полезной?

Не нашли ответа на свой вопрос? Используйте внутренний поиск:

Operlaw пишет: Вообщем вот инструкция от КБ.
1. Удалить с АРМ КриптоПРО.
2. Перезагрузить ПК.
3. Удалить Континент АП.
4. Перезагрузить ПК.
5. Очистить систему утилитой от КриптоПРО (запуск от имени администратора) — www.cryptopro.ru/sites/default/files/public/cspclean.exe
6. Очистить систему утилитой от Кода Безопасности (запуск из командной строки от имени администратора с ключами –t и –v) —
Ссылка на утилиту CspCleaner.exe:
cloud.securitycode.ru/nextcloud/index.php/s/QfrzbrM5Gmd4PpN
Пароль: 5iXBS346
7. В случае, если запуск будет произведен не от имени администратора, утилита завершится без вывода какой-либо информации и очистка произведена не будет.
8. Перезагрузить ПК.
9. Установить КриптоПРО.
10. Перезагрузить ПК.
11. Установить Континент АП. При устанавки КАП выбрать максимальную установку с датчиками, с КБ CSP, и т.д.
12. Перезагрузить ПК.
13. В настройках КБ CSP установить биологический ДСЧ в место физического.

И все заработает.

Не работает, выдаёт эту ошибку. А при установке Континента ап (последний 651) нет биологического накопления МИШЕНИй.,они не появляются

Форум КриптоПро
 » 
Устаревшие продукты
 » 
КриптоПро CSP 3.6
 » 
CryptAcquireContext ошибка 0x80090017 «Тип поставщика не определен»


Offline

Tora-Bora

 


#1
Оставлено
:

10 сентября 2009 г. 19:21:48(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Есть кусок кода, который должен подписывать сообщение, начинается со строчки
bool result = win32.CryptAcquireContext(out hCryptoProvider, _container, null, 71, 0);
так вот result=false и ошибка 0x80090017, описание: «Тип поставщика не определен»

У меня vista, пробовал на соседнем компе с КриптоПро 3.0, там все работает.

А еще я пробовал, цифру 75:
bool result = win32.CryptAcquireContext(out hCryptoProvider, _container, null, 75, 0);
работает! Но подпись в результате получается не правильная.

Я так понимаю что нету 71 типа провайдера.

Код на C# использует функции win32 библиотеки advapi32.dll, Crypt32.dll


Вверх

Offline

Татьяна

 


#2
Оставлено
:

10 сентября 2009 г. 19:36:11(UTC)

Татьяна

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 06.02.2008(UTC)
Сообщений: 1,491
Откуда: Крипто-Про

Поблагодарили: 40 раз в 37 постах

В 3.6 нет криптопровайдера с типом 71. Он был исключен из продукта, поскольку ГОСТ, по которому он работает, выведен из действия 1-го января 2008-го года.

Татьяна
ООО Крипто-Про


Вверх

Offline

Tora-Bora

 


#3
Оставлено
:

11 сентября 2009 г. 1:46:20(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Спасибо!
Хмм, а почему если я использую тип 75, мою подпись не могут проверить? То-есть все в коде я оставил по-старому, только поменял цифру на 75, подпись сформировалась без ошибок, но сервер отвечает: неверная подпись. Может такое быть, что сервер использует тип 71 и поэтому не может проверить мою подпись?


Вверх

Offline

Максим Коллегин

 


#4
Оставлено
:

11 сентября 2009 г. 3:16:13(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,296
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 680 раз в 599 постах

Должно работать.

Отредактировано пользователем 11 сентября 2009 г. 3:33:41(UTC)
 | Причина: Не указана

Знания в базе знаний, поддержка в техподдержке


Вверх

WWW


Offline

Tora-Bora

 


#5
Оставлено
:

11 сентября 2009 г. 16:21:42(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Хорошо.
А подскажите еще, может другие идентификаторы надо изменить. Дело в том, что мне дали исходники, а там вместо enum’ов цифры указаны, а что они означают и где их взяли непонятно.
AT_SIGNATURE = 2
CERT_ALG_ID = 32798
win32.CryptGetUserKey(hCryptoProvider, win32.AT_SIGNATURE, ref hPubKey);
win32.CryptCreateHash(hCryptoProvider, (uint)CryptoPro.CERT_ALG_ID, IntPtr.Zero, (uint)0, out hHash);

что вот за AT_SIGNATURE и что за CERT_ALG_ID? Может какой алгоритм другой указать?

Вобщем вот весь код подписи:

IntPtr hCryptoProvider = IntPtr.Zero;
IntPtr hPubKey = IntPtr.Zero;
IntPtr hHash = IntPtr.Zero;

try
{
win32.CryptAcquireContext(out hCryptoProvider, _container, null, CryptoPro.TYPE, 0);
win32.CryptGetUserKey(hCryptoProvider, win32.AT_SIGNATURE, ref hPubKey);
win32.CryptCreateHash(hCryptoProvider, (uint)CryptoPro.CERT_ALG_ID, IntPtr.Zero, (uint)0, out hHash);

Encoding encoding = Encoding.GetEncoding(encodingHeaderName);
byte[] buffer = encoding.GetBytes(body);
win32.CryptHashData(hHash, buffer, buffer.Length, 0);

uint signatureLength = 0;
win32.CryptSignHash(hHash, (uint)win32.AT_SIGNATURE, null, 0, null, ref signatureLength);

byte[] signature = new byte[signatureLength];
win32.CryptSignHash(hHash, win32.AT_SIGNATURE, null, 0, signature, ref signatureLength);

retVal = System.Convert.ToBase64String(signature, 0, (int)signatureLength);


Вверх

Offline

Максим Коллегин

 


#6
Оставлено
:

11 сентября 2009 г. 16:39:24(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,296
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 680 раз в 599 постах

Нормальные идентификаторы: первый определен в wincrypt.h, второй — в wincryptex.h

Цитата:

CALG_GR3411

Может проблемы с конвертированием в base64?

Отредактировано пользователем 11 сентября 2009 г. 16:40:50(UTC)
 | Причина: Не указана

Знания в базе знаний, поддержка в техподдержке


Вверх

WWW


Offline

Tora-Bora

 


#7
Оставлено
:

11 сентября 2009 г. 18:32:33(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Да, дело не в криптопровайдере. Сейчас поставил на другую систему CryptoPro 2.0, и с 71 криптопровайдером тоже создается подпись, но результат тот-же самый, ошибка проверки подписи. А подпись ответа нормально проверяется и свою подпись я тоже нормально проверяю, буду трясти техподдержку сервака…


Вверх

Offline

Roberto1

 


#8
Оставлено
:

5 марта 2012 г. 18:00:03(UTC)

Roberto1

Статус: Участник

Группы: Участники

Зарегистрирован: 12.01.2012(UTC)
Сообщений: 19
Откуда: Kazan RF

Добрый день, делаю тот же алгоритм что описал Tora-Bora выше.
на сточке 1-ой строчке CryptSignHash падает:

Код:

                uint signatureLength = 0;
                if (!Crypt32Wrapper.CryptSignHash(hHash, Crypt32Wrapper.AT_KEYEXCHANGE, null, 0, null, ref signatureLength))

Ошибка:
CryptSignHash (1) returns false!!! error = [-2146893802] message = [Набор ключей не существует]»

В чем может быть проблема? Куда капать.

Алгоритм рабочий для типа криптопровайдера 71, переделываю на 75.
пока столкнулся только с тем что

Код:

int code = Crypt32Wrapper.CryptGetUserKey(hCryptoProvider, Crypt32Wrapper.AT_SIGNATURE, ref hPubKey);

возвращает не 0 как раньше а 1, с текстом операция успешно завершена.


Вверх
Пользователи, просматривающие эту тему

Guest

Форум КриптоПро
 » 
Устаревшие продукты
 » 
КриптоПро CSP 3.6
 » 
CryptAcquireContext ошибка 0x80090017 «Тип поставщика не определен»

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

На чтение 6 мин Просмотров 1.4к.

Содержание

  1. Проблема
  2. Решение
  3. Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен
    Ошибка получения криптографического контекста.

Проблема

Решение

Информация оказалась полезной?

115230, Россия, Москва,
1-й Нагатинский проезд, д. 10, стр. 1

2008-2019 © «Код Безопасности». Российский разработчик программных и аппаратных средств защиты информации. Наша продукция охватывает все уровни инфраструктурной безопасности.

Сегодня поговорим о двух ошибках в Континент АП, которые я решил описать в рамках одной статьи (обычно я описываю ошибку и способ её решения в одной статье).

Но так как нижеописаные ошибки – звенья одной цепи, разделять их нет смысла.

Кто бы мог подумать? В большинстве случаев крипто про устанавливается в первую очередь а потом уже весь необходимый софт. Вот и я за много лет отошел от этого правила и с удивление открыл для себя эти «новые» ошибки.

Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен
Ошибка получения криптографического контекста.

Ошибка 0х80090017 возникла у меня, когда я пытался установить сертифика в континент ап.

Первым делом пришла мысль! А установлен ли у меня крипто про. Зашел в панель управления и понял что его нет ))) Быстренько решил этот вопрос. Поставил крипто про, после установки меня не уведомило окошко о «требуется перезагрузить компьютер», ну я радостный пытаюсь опять установить сертификат и соединение но . тут то и пришла на смену первой ошибки вторая.

Бегом перезагрузил компьютер, что бы исключить этот момент из сопутствующих моим ошибочкам.

Помогло. Сертификат континента установился и я смог подключиться.

Наступил 2019 год. Поэтому в соответствии с письмом УФК по Челябинской области «Об изменении порядка получения сертификатов Континента АП», с 01.01.2019 формирование запросов на сертификаты для работы в СКЗИ Континент АП, должно выполняться только с применением криптопровайдера «Код безопасности CSP» и алгоритма открытого ключа по ГОСТ Р 34.10-2012.

В связи с этим, я решил показать как сделать такой запрос на сертификат Континента АП. Первое, что нужно знать, это то, что такой запрос делается на версии программы не ниже чем 3.7.7.651. Если у вас версия другая, то получите нужную в вашем территориальном отделе Федерального казначейства и обновите свой Континент АП.

Кстати, обновить Континент АП до указанной версии очень просто. Не потребуется даже удалять предыдущую. Просто запускаете установку, а дальше установщик всё сделает сам. Правда это относится к версиям, которые используют криптопровайдер «Код безопасности CSP», например версия Континента АП 3.7.5.474. Если же у вас старая версия, какая как 3.5.68.0, то ее придется удалить штатными методами операционной системы, а потом установить новую.

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

После этого откроется окошко, где нужно будет заполнить все поля. Я заполнил их так, как вы видите на рисунке ниже, вы же заполняйте по своему:

В блоке «Файлы для сохранения запроса на сертификат», можно отредактировать имена этих файлов. Не забудьте поставить галочку «Бумажная форма» и по кнопкам «Обзор» укажите место для сохранения файлов на вашем компьютере. После нажатия на кнопку «Подробно», откроются варианты выбора криптопровайдера и формата запроса (рис. 2). Как уже говорилось в начале статьи выбираем криптопровайдер «Код безопасности CSP» и формат запроса «Запрос для СД» (запрос для сервера доступа). Имя контейнера тоже можно отредактировать. Если все это сделано, жмем «ОК» и приступаем к процессу генерации закрытых ключей и запроса на сертификат (рис. 3):

Как видно из рисунка 3, на вашем экране появится мишень, которая перемещается по экрану. Ваша задача кликать по ней мышкой и смотреть за полоской индикатора в окне «Код безопасности CSP», которая должна двигаться. С такой мишенью вы сталкивались, если сами устанавливали программу на компьютер, я же рассказывал об том тут. В конце всех этих действий надо нажать на кнопку «ОК» и процесс генерации ключей и запроса продолжится дальше:

После ввода пароля на носитель, а тут нас заставляют это сделать, как видно из рис. 4, минимальная длина пароля должна быть 6 символов и выбора ключевого носителя для записи ключей (рис. 5), генерация будет завершена (рис. 6). Теперь осталось посмотреть печатную форму и файл запроса, которые были сгенерированы вместе с закрытыми ключами. Открываем форму и видим, что алгоритм открытого ключа остался старый, т.е. сделанный по ГОСТ Р 34.10-2001. Это видно на рисунке ниже:

Но, поверьте мне, повода для паники нет. У вас просто установлен старый шаблон печатной формы. Новый можно скачать отсюда. И еще, для очистки совести, можно узнать в каком виде у нас получился запрос, а именно *.req файл, который тоже был сгенерирован вместе с ключами, ведь на основе именно его содержимого выдается сертификат. Файл в этом формате можно прочитать специальной программой, которую вы можете скачать отсюда. Открыв файл в ней, мы увидим совсем другую картину:

На рис. 8 показан алгоритм открытого ключа в том случае, когда у вас на компьютере установлен Континент АП и выше указанная программа. На рис. 9 показан алгоритм открытого ключа, когда у вас не установлен Континент АП. И в том и в другом случае это нормально. Ну а печатную форму необходимо откорректировать, заменив ее шаблон. На этом всё, спасибо за внимание и пока!

И напоследок. Если вам понравилась эта статья и вы почерпнули из нее что-то новое для себя, то вы всегда можете выразить свою благодарность в денежном выражении. Сумма может быть любой. Это вас ни к чему не обязывает, все добровольно. Если вы всё же решили поддержать мой сайт, то нажмите на кнопку «Поблагодарить», которую вы можете видеть ниже. Вы будете перенаправлены на страницу моего сайта, где можно будет перечислить любую денежную сумму мне на кошелек. В этом случае вас ждет подарок. После успешного перевода денег, вы сможете его скачать.

Проблема

При импорте сертификата в «Континент-АП» или при попытке подключения возникает ошибка: «Ошибка работы с криптопровайдером 0x80090017. Тип поставщика не определен».

Возможно, перед использованием «Континент-АП» на ПК была установлена система управления Континент, в составе которой есть криптопровайдер «Код Безопасности CSP».

Решение

Возможное решение проблемы – удалить «Континент-АП», очистить реестр от неиспользуемых данных (к примеру, программой CCleaner), повторно установить «Континент-АП». В ходе инсталляции будет восстановлен криптопровайдер, который вызывает ошибку.

Информация оказалась полезной?

Не нашли ответа на свой вопрос? Используйте внутренний поиск:

Operlaw пишет: Вообщем вот инструкция от КБ.
1. Удалить с АРМ КриптоПРО.
2. Перезагрузить ПК.
3. Удалить Континент АП.
4. Перезагрузить ПК.
5. Очистить систему утилитой от КриптоПРО (запуск от имени администратора) — www.cryptopro.ru/sites/default/files/public/cspclean.exe
6. Очистить систему утилитой от Кода Безопасности (запуск из командной строки от имени администратора с ключами –t и –v) —
Ссылка на утилиту CspCleaner.exe:
cloud.securitycode.ru/nextcloud/index.php/s/QfrzbrM5Gmd4PpN
Пароль: 5iXBS346
7. В случае, если запуск будет произведен не от имени администратора, утилита завершится без вывода какой-либо информации и очистка произведена не будет.
8. Перезагрузить ПК.
9. Установить КриптоПРО.
10. Перезагрузить ПК.
11. Установить Континент АП. При устанавки КАП выбрать максимальную установку с датчиками, с КБ CSP, и т.д.
12. Перезагрузить ПК.
13. В настройках КБ CSP установить биологический ДСЧ в место физического.

И все заработает.

Не работает, выдаёт эту ошибку. А при установке Континента ап (последний 651) нет биологического накопления МИШЕНИй.,они не появляются

Форум КриптоПро
 » 
Устаревшие продукты
 » 
КриптоПро CSP 3.6
 » 
CryptAcquireContext ошибка 0x80090017 «Тип поставщика не определен»


Offline

Tora-Bora

 


#1
Оставлено
:

10 сентября 2009 г. 19:21:48(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Есть кусок кода, который должен подписывать сообщение, начинается со строчки
bool result = win32.CryptAcquireContext(out hCryptoProvider, _container, null, 71, 0);
так вот result=false и ошибка 0x80090017, описание: «Тип поставщика не определен»

У меня vista, пробовал на соседнем компе с КриптоПро 3.0, там все работает.

А еще я пробовал, цифру 75:
bool result = win32.CryptAcquireContext(out hCryptoProvider, _container, null, 75, 0);
работает! Но подпись в результате получается не правильная.

Я так понимаю что нету 71 типа провайдера.

Код на C# использует функции win32 библиотеки advapi32.dll, Crypt32.dll


Вверх

Offline

Татьяна

 


#2
Оставлено
:

10 сентября 2009 г. 19:36:11(UTC)

Татьяна

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 06.02.2008(UTC)
Сообщений: 1,491
Откуда: Крипто-Про

Поблагодарили: 40 раз в 37 постах

В 3.6 нет криптопровайдера с типом 71. Он был исключен из продукта, поскольку ГОСТ, по которому он работает, выведен из действия 1-го января 2008-го года.

Татьяна
ООО Крипто-Про


Вверх

Offline

Tora-Bora

 


#3
Оставлено
:

11 сентября 2009 г. 1:46:20(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Спасибо!
Хмм, а почему если я использую тип 75, мою подпись не могут проверить? То-есть все в коде я оставил по-старому, только поменял цифру на 75, подпись сформировалась без ошибок, но сервер отвечает: неверная подпись. Может такое быть, что сервер использует тип 71 и поэтому не может проверить мою подпись?


Вверх

Offline

Максим Коллегин

 


#4
Оставлено
:

11 сентября 2009 г. 3:16:13(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,253
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 658 раз в 582 постах

Должно работать.

Отредактировано пользователем 11 сентября 2009 г. 3:33:41(UTC)
 | Причина: Не указана

Знания в базе знаний, поддержка в техподдержке


Вверх

WWW


Offline

Tora-Bora

 


#5
Оставлено
:

11 сентября 2009 г. 16:21:42(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Хорошо.
А подскажите еще, может другие идентификаторы надо изменить. Дело в том, что мне дали исходники, а там вместо enum’ов цифры указаны, а что они означают и где их взяли непонятно.
AT_SIGNATURE = 2
CERT_ALG_ID = 32798
win32.CryptGetUserKey(hCryptoProvider, win32.AT_SIGNATURE, ref hPubKey);
win32.CryptCreateHash(hCryptoProvider, (uint)CryptoPro.CERT_ALG_ID, IntPtr.Zero, (uint)0, out hHash);

что вот за AT_SIGNATURE и что за CERT_ALG_ID? Может какой алгоритм другой указать?

Вобщем вот весь код подписи:

IntPtr hCryptoProvider = IntPtr.Zero;
IntPtr hPubKey = IntPtr.Zero;
IntPtr hHash = IntPtr.Zero;

try
{
win32.CryptAcquireContext(out hCryptoProvider, _container, null, CryptoPro.TYPE, 0);
win32.CryptGetUserKey(hCryptoProvider, win32.AT_SIGNATURE, ref hPubKey);
win32.CryptCreateHash(hCryptoProvider, (uint)CryptoPro.CERT_ALG_ID, IntPtr.Zero, (uint)0, out hHash);

Encoding encoding = Encoding.GetEncoding(encodingHeaderName);
byte[] buffer = encoding.GetBytes(body);
win32.CryptHashData(hHash, buffer, buffer.Length, 0);

uint signatureLength = 0;
win32.CryptSignHash(hHash, (uint)win32.AT_SIGNATURE, null, 0, null, ref signatureLength);

byte[] signature = new byte[signatureLength];
win32.CryptSignHash(hHash, win32.AT_SIGNATURE, null, 0, signature, ref signatureLength);

retVal = System.Convert.ToBase64String(signature, 0, (int)signatureLength);


Вверх

Offline

Максим Коллегин

 


#6
Оставлено
:

11 сентября 2009 г. 16:39:24(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,253
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 658 раз в 582 постах

Нормальные идентификаторы: первый определен в wincrypt.h, второй — в wincryptex.h

Цитата:

CALG_GR3411

Может проблемы с конвертированием в base64?

Отредактировано пользователем 11 сентября 2009 г. 16:40:50(UTC)
 | Причина: Не указана

Знания в базе знаний, поддержка в техподдержке


Вверх

WWW


Offline

Tora-Bora

 


#7
Оставлено
:

11 сентября 2009 г. 18:32:33(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Да, дело не в криптопровайдере. Сейчас поставил на другую систему CryptoPro 2.0, и с 71 криптопровайдером тоже создается подпись, но результат тот-же самый, ошибка проверки подписи. А подпись ответа нормально проверяется и свою подпись я тоже нормально проверяю, буду трясти техподдержку сервака…


Вверх

Offline

Roberto1

 


#8
Оставлено
:

5 марта 2012 г. 18:00:03(UTC)

Roberto1

Статус: Участник

Группы: Участники

Зарегистрирован: 12.01.2012(UTC)
Сообщений: 19
Откуда: Kazan RF

Добрый день, делаю тот же алгоритм что описал Tora-Bora выше.
на сточке 1-ой строчке CryptSignHash падает:

Код:

                uint signatureLength = 0;
                if (!Crypt32Wrapper.CryptSignHash(hHash, Crypt32Wrapper.AT_KEYEXCHANGE, null, 0, null, ref signatureLength))

Ошибка:
CryptSignHash (1) returns false!!! error = [-2146893802] message = [Набор ключей не существует]»

В чем может быть проблема? Куда капать.

Алгоритм рабочий для типа криптопровайдера 71, переделываю на 75.
пока столкнулся только с тем что

Код:

int code = Crypt32Wrapper.CryptGetUserKey(hCryptoProvider, Crypt32Wrapper.AT_SIGNATURE, ref hPubKey);

возвращает не 0 как раньше а 1, с текстом операция успешно завершена.


Вверх
Пользователи, просматривающие эту тему

Guest

Форум КриптоПро
 » 
Устаревшие продукты
 » 
КриптоПро CSP 3.6
 » 
CryptAcquireContext ошибка 0x80090017 «Тип поставщика не определен»

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

Содержание

  1. Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен
  2. Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен Ошибка получения криптографического контекста.
  3. Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен
  4. Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен
  5. Тип поставщика не определен 0x80090017
  6. Проблема
  7. Решение
  8. Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен Ошибка получения криптографического контекста.
  9. Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Сегодня поговорим о двух ошибках в Континент АП, которые я решил описать в рамках одной статьи (обычно я описываю ошибку и способ её решения в одной статье).

Но так как нижеописаные ошибки — звенья одной цепи, разделять их нет смысла.

Кто бы мог подумать? В большинстве случаев крипто про устанавливается в первую очередь а потом уже весь необходимый софт. Вот и я за много лет отошел от этого правила и с удивление открыл для себя эти «новые» ошибки.

Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен
Ошибка получения криптографического контекста.

Ошибка 0х80090017 возникла у меня, когда я пытался установить сертифика в континент ап.

Первым делом пришла мысль! А установлен ли у меня крипто про. Зашел в панель управления и понял что его нет ))) Быстренько решил этот вопрос. Поставил крипто про, после установки меня не уведомило окошко о «требуется перезагрузить компьютер», ну я радостный пытаюсь опять установить сертификат и соединение но . тут то и пришла на смену первой ошибки вторая.

Бегом перезагрузил компьютер, что бы исключить этот момент из сопутствующих моим ошибочкам.

Помогло. Сертификат континента установился и я смог подключиться.

Источник

Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

Wmffre пишет: Если бы ещё и версии всего ПО были последние и хорошо при этом оттестированные.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • mileha
  • —>
  • Не в сети
  • Сообщений: 10
  • Спасибо получено: 1

В дополнение к вышеуказанной инструкции. Выполнил её полностью, несколько раз, но ошибка не ушла. При этом в «панель управления» остался неактивный значок Код Безопасности CSP. Помогла только зачистка реестра от следов Континента, с помощью AVZ. Указывал в поиске: Security Code, SecurityCode, Код Безопасности CSP и удалял. Перезагрузился и всё гут, установил Континент, пострелял по мишенькам и серт установился. Я предполагаю достаточно просто очистить реестр с помощью AVZ или другой прогой и всё будет гут.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex67
  • —>
  • Не в сети
  • Сообщений: 1839
  • Спасибо получено: 496

Fixik пишет: А Вы опять изобрели велосипед .

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Источник

Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

Wmffre пишет: Если бы ещё и версии всего ПО были последние и хорошо при этом оттестированные.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • mileha
  • —>
  • Не в сети
  • Сообщений: 10
  • Спасибо получено: 1

В дополнение к вышеуказанной инструкции. Выполнил её полностью, несколько раз, но ошибка не ушла. При этом в «панель управления» остался неактивный значок Код Безопасности CSP. Помогла только зачистка реестра от следов Континента, с помощью AVZ. Указывал в поиске: Security Code, SecurityCode, Код Безопасности CSP и удалял. Перезагрузился и всё гут, установил Континент, пострелял по мишенькам и серт установился. Я предполагаю достаточно просто очистить реестр с помощью AVZ или другой прогой и всё будет гут.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex67
  • —>
  • Не в сети
  • Сообщений: 1839
  • Спасибо получено: 496

Fixik пишет: А Вы опять изобрели велосипед .

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Источник

Проблема

Решение

Информация оказалась полезной?

115230, Россия, Москва,
1-й Нагатинский проезд, д. 10, стр. 1

2008-2019 © «Код Безопасности». Российский разработчик программных и аппаратных средств защиты информации. Наша продукция охватывает все уровни инфраструктурной безопасности.

Сегодня поговорим о двух ошибках в Континент АП, которые я решил описать в рамках одной статьи (обычно я описываю ошибку и способ её решения в одной статье).

Но так как нижеописаные ошибки – звенья одной цепи, разделять их нет смысла.

Кто бы мог подумать? В большинстве случаев крипто про устанавливается в первую очередь а потом уже весь необходимый софт. Вот и я за много лет отошел от этого правила и с удивление открыл для себя эти «новые» ошибки.

Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен
Ошибка получения криптографического контекста.

Ошибка 0х80090017 возникла у меня, когда я пытался установить сертифика в континент ап.

Первым делом пришла мысль! А установлен ли у меня крипто про. Зашел в панель управления и понял что его нет ))) Быстренько решил этот вопрос. Поставил крипто про, после установки меня не уведомило окошко о «требуется перезагрузить компьютер», ну я радостный пытаюсь опять установить сертификат и соединение но . тут то и пришла на смену первой ошибки вторая.

Бегом перезагрузил компьютер, что бы исключить этот момент из сопутствующих моим ошибочкам.

Помогло. Сертификат континента установился и я смог подключиться.

Наступил 2019 год. Поэтому в соответствии с письмом УФК по Челябинской области «Об изменении порядка получения сертификатов Континента АП», с 01.01.2019 формирование запросов на сертификаты для работы в СКЗИ Континент АП, должно выполняться только с применением криптопровайдера «Код безопасности CSP» и алгоритма открытого ключа по ГОСТ Р 34.10-2012.

В связи с этим, я решил показать как сделать такой запрос на сертификат Континента АП. Первое, что нужно знать, это то, что такой запрос делается на версии программы не ниже чем 3.7.7.651. Если у вас версия другая, то получите нужную в вашем территориальном отделе Федерального казначейства и обновите свой Континент АП.

Кстати, обновить Континент АП до указанной версии очень просто. Не потребуется даже удалять предыдущую. Просто запускаете установку, а дальше установщик всё сделает сам. Правда это относится к версиям, которые используют криптопровайдер «Код безопасности CSP», например версия Континента АП 3.7.5.474. Если же у вас старая версия, какая как 3.5.68.0, то ее придется удалить штатными методами операционной системы, а потом установить новую.

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

После этого откроется окошко, где нужно будет заполнить все поля. Я заполнил их так, как вы видите на рисунке ниже, вы же заполняйте по своему:

В блоке «Файлы для сохранения запроса на сертификат», можно отредактировать имена этих файлов. Не забудьте поставить галочку «Бумажная форма» и по кнопкам «Обзор» укажите место для сохранения файлов на вашем компьютере. После нажатия на кнопку «Подробно», откроются варианты выбора криптопровайдера и формата запроса (рис. 2). Как уже говорилось в начале статьи выбираем криптопровайдер «Код безопасности CSP» и формат запроса «Запрос для СД» (запрос для сервера доступа). Имя контейнера тоже можно отредактировать. Если все это сделано, жмем «ОК» и приступаем к процессу генерации закрытых ключей и запроса на сертификат (рис. 3):

Как видно из рисунка 3, на вашем экране появится мишень, которая перемещается по экрану. Ваша задача кликать по ней мышкой и смотреть за полоской индикатора в окне «Код безопасности CSP», которая должна двигаться. С такой мишенью вы сталкивались, если сами устанавливали программу на компьютер, я же рассказывал об том тут. В конце всех этих действий надо нажать на кнопку «ОК» и процесс генерации ключей и запроса продолжится дальше:

После ввода пароля на носитель, а тут нас заставляют это сделать, как видно из рис. 4, минимальная длина пароля должна быть 6 символов и выбора ключевого носителя для записи ключей (рис. 5), генерация будет завершена (рис. 6). Теперь осталось посмотреть печатную форму и файл запроса, которые были сгенерированы вместе с закрытыми ключами. Открываем форму и видим, что алгоритм открытого ключа остался старый, т.е. сделанный по ГОСТ Р 34.10-2001. Это видно на рисунке ниже:

Но, поверьте мне, повода для паники нет. У вас просто установлен старый шаблон печатной формы. Новый можно скачать отсюда. И еще, для очистки совести, можно узнать в каком виде у нас получился запрос, а именно *.req файл, который тоже был сгенерирован вместе с ключами, ведь на основе именно его содержимого выдается сертификат. Файл в этом формате можно прочитать специальной программой, которую вы можете скачать отсюда. Открыв файл в ней, мы увидим совсем другую картину:

На рис. 8 показан алгоритм открытого ключа в том случае, когда у вас на компьютере установлен Континент АП и выше указанная программа. На рис. 9 показан алгоритм открытого ключа, когда у вас не установлен Континент АП. И в том и в другом случае это нормально. Ну а печатную форму необходимо откорректировать, заменив ее шаблон. На этом всё, спасибо за внимание и пока!

И напоследок. Если вам понравилась эта статья и вы почерпнули из нее что-то новое для себя, то вы всегда можете выразить свою благодарность в денежном выражении. Сумма может быть любой. Это вас ни к чему не обязывает, все добровольно. Если вы всё же решили поддержать мой сайт, то нажмите на кнопку «Поблагодарить», которую вы можете видеть ниже. Вы будете перенаправлены на страницу моего сайта, где можно будет перечислить любую денежную сумму мне на кошелек. В этом случае вас ждет подарок. После успешного перевода денег, вы сможете его скачать.

Источник

Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Вообщем вот инструкция от КБ.
1. Удалить с АРМ КриптоПРО.
2. Перезагрузить ПК.
3. Удалить Континент АП.
4. Перезагрузить ПК.
5. Очистить систему утилитой от КриптоПРО (запуск от имени администратора) — www.cryptopro.ru/sites/default/files/public/cspclean.exe
6. Очистить систему утилитой от Кода Безопасности (запуск из командной строки от имени администратора с ключами –t и –v) —
Ссылка на утилиту CspCleaner.exe:
cloud.securitycode.ru/nextcloud/index.php/s/QfrzbrM5Gmd4PpN
Пароль: 5iXBS346
7. В случае, если запуск будет произведен не от имени администратора, утилита завершится без вывода какой-либо информации и очистка произведена не будет.
8. Перезагрузить ПК.
9. Установить КриптоПРО.
10. Перезагрузить ПК.
11. Установить Континент АП. При устанавки КАП выбрать максимальную установку с датчиками, с КБ CSP, и т.д.
12. Перезагрузить ПК.
13. В настройках КБ CSP установить биологический ДСЧ в место физического.

И все заработает.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Jannaaaa5
  • —>
  • Не в сети
  • Сообщений: 17
  • Спасибо получено: 0

Operlaw пишет: Вообщем вот инструкция от КБ.
1. Удалить с АРМ КриптоПРО.
2. Перезагрузить ПК.
3. Удалить Континент АП.
4. Перезагрузить ПК.
5. Очистить систему утилитой от КриптоПРО (запуск от имени администратора) — www.cryptopro.ru/sites/default/files/public/cspclean.exe
6. Очистить систему утилитой от Кода Безопасности (запуск из командной строки от имени администратора с ключами –t и –v) —
Ссылка на утилиту CspCleaner.exe:
cloud.securitycode.ru/nextcloud/index.php/s/QfrzbrM5Gmd4PpN
Пароль: 5iXBS346
7. В случае, если запуск будет произведен не от имени администратора, утилита завершится без вывода какой-либо информации и очистка произведена не будет.
8. Перезагрузить ПК.
9. Установить КриптоПРО.
10. Перезагрузить ПК.
11. Установить Континент АП. При устанавки КАП выбрать максимальную установку с датчиками, с КБ CSP, и т.д.
12. Перезагрузить ПК.
13. В настройках КБ CSP установить биологический ДСЧ в место физического.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Beast2040
  • —>
  • Не в сети
  • Сообщений: 71
  • Спасибо получено: 10

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Краснокам
  • —>
  • Не в сети
  • Сообщений: 24
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

Краснокам пишет: задолбала ваша продукция.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • gurazor
  • —>
  • Не в сети
  • Сообщений: 182
  • Спасибо получено: 24

Краснокам пишет: Всё сделал, даже антивирус удалил. Всё переустановил ничего не помогает. Как же меня задолбала ваша продукция.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

gurazor пишет: не помогают, удаление веток реестра, которые известны, тоже.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • gurazor
  • —>
  • Не в сети
  • Сообщений: 182
  • Спасибо получено: 24

gurazor пишет: не помогают, удаление веток реестра, которые известны, тоже.

а какие именно удаляли?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

gurazor пишет: не помогают, удаление веток реестра, которые известны, тоже.

а какие именно удаляли?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Краснокам
  • —>
  • Не в сети
  • Сообщений: 24
  • Спасибо получено: 0

Краснокам пишет: задолбала ваша продукция.

она такая же наша, как и Ваша
все камни плиз в огород производителя — ООО «Код Безопасности» .

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

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

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

Fixik пишет: главное читать как надо, и делать как написано

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Gvinpin
  • —>
  • Не в сети
  • Сообщений: 1997
  • Спасибо получено: 264

Alex_04 пишет: Если-б в официальных мануалах было прямо всё как надо и после них работало ПО у всех, то оно тогда конечно — делать как написано и ноу траблс!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Wmffre
  • —>
  • Не в сети
  • Сообщений: 713
  • Спасибо получено: 216

Alex_04 пишет: Если-б в официальных мануалах было прямо всё как надо и после них работало ПО у всех, то оно тогда конечно — делать как написано и ноу траблс!

Если б перед установкой у всех были эталонные рабочие места. )

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Источник

На чтение 6 мин Просмотров 1.3к.

Содержание

  1. Проблема
  2. Решение
  3. Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен
    Ошибка получения криптографического контекста.

Проблема

Решение

Информация оказалась полезной?

115230, Россия, Москва,
1-й Нагатинский проезд, д. 10, стр. 1

2008-2019 © «Код Безопасности». Российский разработчик программных и аппаратных средств защиты информации. Наша продукция охватывает все уровни инфраструктурной безопасности.

Сегодня поговорим о двух ошибках в Континент АП, которые я решил описать в рамках одной статьи (обычно я описываю ошибку и способ её решения в одной статье).

Но так как нижеописаные ошибки – звенья одной цепи, разделять их нет смысла.

Кто бы мог подумать? В большинстве случаев крипто про устанавливается в первую очередь а потом уже весь необходимый софт. Вот и я за много лет отошел от этого правила и с удивление открыл для себя эти «новые» ошибки.

Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен
Ошибка получения криптографического контекста.

Ошибка 0х80090017 возникла у меня, когда я пытался установить сертифика в континент ап.

Первым делом пришла мысль! А установлен ли у меня крипто про. Зашел в панель управления и понял что его нет ))) Быстренько решил этот вопрос. Поставил крипто про, после установки меня не уведомило окошко о «требуется перезагрузить компьютер», ну я радостный пытаюсь опять установить сертификат и соединение но . тут то и пришла на смену первой ошибки вторая.

Бегом перезагрузил компьютер, что бы исключить этот момент из сопутствующих моим ошибочкам.

Помогло. Сертификат континента установился и я смог подключиться.

Наступил 2019 год. Поэтому в соответствии с письмом УФК по Челябинской области «Об изменении порядка получения сертификатов Континента АП», с 01.01.2019 формирование запросов на сертификаты для работы в СКЗИ Континент АП, должно выполняться только с применением криптопровайдера «Код безопасности CSP» и алгоритма открытого ключа по ГОСТ Р 34.10-2012.

В связи с этим, я решил показать как сделать такой запрос на сертификат Континента АП. Первое, что нужно знать, это то, что такой запрос делается на версии программы не ниже чем 3.7.7.651. Если у вас версия другая, то получите нужную в вашем территориальном отделе Федерального казначейства и обновите свой Континент АП.

Кстати, обновить Континент АП до указанной версии очень просто. Не потребуется даже удалять предыдущую. Просто запускаете установку, а дальше установщик всё сделает сам. Правда это относится к версиям, которые используют криптопровайдер «Код безопасности CSP», например версия Континента АП 3.7.5.474. Если же у вас старая версия, какая как 3.5.68.0, то ее придется удалить штатными методами операционной системы, а потом установить новую.

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

После этого откроется окошко, где нужно будет заполнить все поля. Я заполнил их так, как вы видите на рисунке ниже, вы же заполняйте по своему:

В блоке «Файлы для сохранения запроса на сертификат», можно отредактировать имена этих файлов. Не забудьте поставить галочку «Бумажная форма» и по кнопкам «Обзор» укажите место для сохранения файлов на вашем компьютере. После нажатия на кнопку «Подробно», откроются варианты выбора криптопровайдера и формата запроса (рис. 2). Как уже говорилось в начале статьи выбираем криптопровайдер «Код безопасности CSP» и формат запроса «Запрос для СД» (запрос для сервера доступа). Имя контейнера тоже можно отредактировать. Если все это сделано, жмем «ОК» и приступаем к процессу генерации закрытых ключей и запроса на сертификат (рис. 3):

Как видно из рисунка 3, на вашем экране появится мишень, которая перемещается по экрану. Ваша задача кликать по ней мышкой и смотреть за полоской индикатора в окне «Код безопасности CSP», которая должна двигаться. С такой мишенью вы сталкивались, если сами устанавливали программу на компьютер, я же рассказывал об том тут. В конце всех этих действий надо нажать на кнопку «ОК» и процесс генерации ключей и запроса продолжится дальше:

После ввода пароля на носитель, а тут нас заставляют это сделать, как видно из рис. 4, минимальная длина пароля должна быть 6 символов и выбора ключевого носителя для записи ключей (рис. 5), генерация будет завершена (рис. 6). Теперь осталось посмотреть печатную форму и файл запроса, которые были сгенерированы вместе с закрытыми ключами. Открываем форму и видим, что алгоритм открытого ключа остался старый, т.е. сделанный по ГОСТ Р 34.10-2001. Это видно на рисунке ниже:

Но, поверьте мне, повода для паники нет. У вас просто установлен старый шаблон печатной формы. Новый можно скачать отсюда. И еще, для очистки совести, можно узнать в каком виде у нас получился запрос, а именно *.req файл, который тоже был сгенерирован вместе с ключами, ведь на основе именно его содержимого выдается сертификат. Файл в этом формате можно прочитать специальной программой, которую вы можете скачать отсюда. Открыв файл в ней, мы увидим совсем другую картину:

На рис. 8 показан алгоритм открытого ключа в том случае, когда у вас на компьютере установлен Континент АП и выше указанная программа. На рис. 9 показан алгоритм открытого ключа, когда у вас не установлен Континент АП. И в том и в другом случае это нормально. Ну а печатную форму необходимо откорректировать, заменив ее шаблон. На этом всё, спасибо за внимание и пока!

И напоследок. Если вам понравилась эта статья и вы почерпнули из нее что-то новое для себя, то вы всегда можете выразить свою благодарность в денежном выражении. Сумма может быть любой. Это вас ни к чему не обязывает, все добровольно. Если вы всё же решили поддержать мой сайт, то нажмите на кнопку «Поблагодарить», которую вы можете видеть ниже. Вы будете перенаправлены на страницу моего сайта, где можно будет перечислить любую денежную сумму мне на кошелек. В этом случае вас ждет подарок. После успешного перевода денег, вы сможете его скачать.

Содержание

  1. Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен
  2. Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен Ошибка получения криптографического контекста.
  3. Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен
  4. Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен
  5. Тип поставщика не определен 0x80090017
  6. Проблема
  7. Решение
  8. Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен Ошибка получения криптографического контекста.
  9. Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Сегодня поговорим о двух ошибках в Континент АП, которые я решил описать в рамках одной статьи (обычно я описываю ошибку и способ её решения в одной статье).

Но так как нижеописаные ошибки — звенья одной цепи, разделять их нет смысла.

Кто бы мог подумать? В большинстве случаев крипто про устанавливается в первую очередь а потом уже весь необходимый софт. Вот и я за много лет отошел от этого правила и с удивление открыл для себя эти «новые» ошибки.

Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен
Ошибка получения криптографического контекста.

Ошибка 0х80090017 возникла у меня, когда я пытался установить сертифика в континент ап.

Первым делом пришла мысль! А установлен ли у меня крипто про. Зашел в панель управления и понял что его нет ))) Быстренько решил этот вопрос. Поставил крипто про, после установки меня не уведомило окошко о «требуется перезагрузить компьютер», ну я радостный пытаюсь опять установить сертификат и соединение но . тут то и пришла на смену первой ошибки вторая.

Бегом перезагрузил компьютер, что бы исключить этот момент из сопутствующих моим ошибочкам.

Помогло. Сертификат континента установился и я смог подключиться.

Источник

Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

Wmffre пишет: Если бы ещё и версии всего ПО были последние и хорошо при этом оттестированные.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • mileha
  • —>
  • Не в сети
  • Сообщений: 10
  • Спасибо получено: 1

В дополнение к вышеуказанной инструкции. Выполнил её полностью, несколько раз, но ошибка не ушла. При этом в «панель управления» остался неактивный значок Код Безопасности CSP. Помогла только зачистка реестра от следов Континента, с помощью AVZ. Указывал в поиске: Security Code, SecurityCode, Код Безопасности CSP и удалял. Перезагрузился и всё гут, установил Континент, пострелял по мишенькам и серт установился. Я предполагаю достаточно просто очистить реестр с помощью AVZ или другой прогой и всё будет гут.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex67
  • —>
  • Не в сети
  • Сообщений: 1839
  • Спасибо получено: 496

Fixik пишет: А Вы опять изобрели велосипед .

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Источник

Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

Wmffre пишет: Если бы ещё и версии всего ПО были последние и хорошо при этом оттестированные.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • mileha
  • —>
  • Не в сети
  • Сообщений: 10
  • Спасибо получено: 1

В дополнение к вышеуказанной инструкции. Выполнил её полностью, несколько раз, но ошибка не ушла. При этом в «панель управления» остался неактивный значок Код Безопасности CSP. Помогла только зачистка реестра от следов Континента, с помощью AVZ. Указывал в поиске: Security Code, SecurityCode, Код Безопасности CSP и удалял. Перезагрузился и всё гут, установил Континент, пострелял по мишенькам и серт установился. Я предполагаю достаточно просто очистить реестр с помощью AVZ или другой прогой и всё будет гут.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex67
  • —>
  • Не в сети
  • Сообщений: 1839
  • Спасибо получено: 496

Fixik пишет: А Вы опять изобрели велосипед .

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Источник

Тип поставщика не определен 0x80090017

Проблема

Решение

Информация оказалась полезной?

115230, Россия, Москва,
1-й Нагатинский проезд, д. 10, стр. 1

2008-2019 © «Код Безопасности». Российский разработчик программных и аппаратных средств защиты информации. Наша продукция охватывает все уровни инфраструктурной безопасности.

Сегодня поговорим о двух ошибках в Континент АП, которые я решил описать в рамках одной статьи (обычно я описываю ошибку и способ её решения в одной статье).

Но так как нижеописаные ошибки – звенья одной цепи, разделять их нет смысла.

Кто бы мог подумать? В большинстве случаев крипто про устанавливается в первую очередь а потом уже весь необходимый софт. Вот и я за много лет отошел от этого правила и с удивление открыл для себя эти «новые» ошибки.

Ошибка работы с криптопровайдером 0х80090017. Тип поставщика не определен
Ошибка получения криптографического контекста.

Ошибка 0х80090017 возникла у меня, когда я пытался установить сертифика в континент ап.

Первым делом пришла мысль! А установлен ли у меня крипто про. Зашел в панель управления и понял что его нет ))) Быстренько решил этот вопрос. Поставил крипто про, после установки меня не уведомило окошко о «требуется перезагрузить компьютер», ну я радостный пытаюсь опять установить сертификат и соединение но . тут то и пришла на смену первой ошибки вторая.

Бегом перезагрузил компьютер, что бы исключить этот момент из сопутствующих моим ошибочкам.

Помогло. Сертификат континента установился и я смог подключиться.

Наступил 2019 год. Поэтому в соответствии с письмом УФК по Челябинской области «Об изменении порядка получения сертификатов Континента АП», с 01.01.2019 формирование запросов на сертификаты для работы в СКЗИ Континент АП, должно выполняться только с применением криптопровайдера «Код безопасности CSP» и алгоритма открытого ключа по ГОСТ Р 34.10-2012.

В связи с этим, я решил показать как сделать такой запрос на сертификат Континента АП. Первое, что нужно знать, это то, что такой запрос делается на версии программы не ниже чем 3.7.7.651. Если у вас версия другая, то получите нужную в вашем территориальном отделе Федерального казначейства и обновите свой Континент АП.

Кстати, обновить Континент АП до указанной версии очень просто. Не потребуется даже удалять предыдущую. Просто запускаете установку, а дальше установщик всё сделает сам. Правда это относится к версиям, которые используют криптопровайдер «Код безопасности CSP», например версия Континента АП 3.7.5.474. Если же у вас старая версия, какая как 3.5.68.0, то ее придется удалить штатными методами операционной системы, а потом установить новую.

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

После этого откроется окошко, где нужно будет заполнить все поля. Я заполнил их так, как вы видите на рисунке ниже, вы же заполняйте по своему:

В блоке «Файлы для сохранения запроса на сертификат», можно отредактировать имена этих файлов. Не забудьте поставить галочку «Бумажная форма» и по кнопкам «Обзор» укажите место для сохранения файлов на вашем компьютере. После нажатия на кнопку «Подробно», откроются варианты выбора криптопровайдера и формата запроса (рис. 2). Как уже говорилось в начале статьи выбираем криптопровайдер «Код безопасности CSP» и формат запроса «Запрос для СД» (запрос для сервера доступа). Имя контейнера тоже можно отредактировать. Если все это сделано, жмем «ОК» и приступаем к процессу генерации закрытых ключей и запроса на сертификат (рис. 3):

Как видно из рисунка 3, на вашем экране появится мишень, которая перемещается по экрану. Ваша задача кликать по ней мышкой и смотреть за полоской индикатора в окне «Код безопасности CSP», которая должна двигаться. С такой мишенью вы сталкивались, если сами устанавливали программу на компьютер, я же рассказывал об том тут. В конце всех этих действий надо нажать на кнопку «ОК» и процесс генерации ключей и запроса продолжится дальше:

После ввода пароля на носитель, а тут нас заставляют это сделать, как видно из рис. 4, минимальная длина пароля должна быть 6 символов и выбора ключевого носителя для записи ключей (рис. 5), генерация будет завершена (рис. 6). Теперь осталось посмотреть печатную форму и файл запроса, которые были сгенерированы вместе с закрытыми ключами. Открываем форму и видим, что алгоритм открытого ключа остался старый, т.е. сделанный по ГОСТ Р 34.10-2001. Это видно на рисунке ниже:

Но, поверьте мне, повода для паники нет. У вас просто установлен старый шаблон печатной формы. Новый можно скачать отсюда. И еще, для очистки совести, можно узнать в каком виде у нас получился запрос, а именно *.req файл, который тоже был сгенерирован вместе с ключами, ведь на основе именно его содержимого выдается сертификат. Файл в этом формате можно прочитать специальной программой, которую вы можете скачать отсюда. Открыв файл в ней, мы увидим совсем другую картину:

На рис. 8 показан алгоритм открытого ключа в том случае, когда у вас на компьютере установлен Континент АП и выше указанная программа. На рис. 9 показан алгоритм открытого ключа, когда у вас не установлен Континент АП. И в том и в другом случае это нормально. Ну а печатную форму необходимо откорректировать, заменив ее шаблон. На этом всё, спасибо за внимание и пока!

И напоследок. Если вам понравилась эта статья и вы почерпнули из нее что-то новое для себя, то вы всегда можете выразить свою благодарность в денежном выражении. Сумма может быть любой. Это вас ни к чему не обязывает, все добровольно. Если вы всё же решили поддержать мой сайт, то нажмите на кнопку «Поблагодарить», которую вы можете видеть ниже. Вы будете перенаправлены на страницу моего сайта, где можно будет перечислить любую денежную сумму мне на кошелек. В этом случае вас ждет подарок. После успешного перевода денег, вы сможете его скачать.

Источник

Криптопро tls ошибка 0x80090017 при обращении к csp тип поставщика не определен

Вообщем вот инструкция от КБ.
1. Удалить с АРМ КриптоПРО.
2. Перезагрузить ПК.
3. Удалить Континент АП.
4. Перезагрузить ПК.
5. Очистить систему утилитой от КриптоПРО (запуск от имени администратора) — www.cryptopro.ru/sites/default/files/public/cspclean.exe
6. Очистить систему утилитой от Кода Безопасности (запуск из командной строки от имени администратора с ключами –t и –v) —
Ссылка на утилиту CspCleaner.exe:
cloud.securitycode.ru/nextcloud/index.php/s/QfrzbrM5Gmd4PpN
Пароль: 5iXBS346
7. В случае, если запуск будет произведен не от имени администратора, утилита завершится без вывода какой-либо информации и очистка произведена не будет.
8. Перезагрузить ПК.
9. Установить КриптоПРО.
10. Перезагрузить ПК.
11. Установить Континент АП. При устанавки КАП выбрать максимальную установку с датчиками, с КБ CSP, и т.д.
12. Перезагрузить ПК.
13. В настройках КБ CSP установить биологический ДСЧ в место физического.

И все заработает.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Jannaaaa5
  • —>
  • Не в сети
  • Сообщений: 17
  • Спасибо получено: 0

Operlaw пишет: Вообщем вот инструкция от КБ.
1. Удалить с АРМ КриптоПРО.
2. Перезагрузить ПК.
3. Удалить Континент АП.
4. Перезагрузить ПК.
5. Очистить систему утилитой от КриптоПРО (запуск от имени администратора) — www.cryptopro.ru/sites/default/files/public/cspclean.exe
6. Очистить систему утилитой от Кода Безопасности (запуск из командной строки от имени администратора с ключами –t и –v) —
Ссылка на утилиту CspCleaner.exe:
cloud.securitycode.ru/nextcloud/index.php/s/QfrzbrM5Gmd4PpN
Пароль: 5iXBS346
7. В случае, если запуск будет произведен не от имени администратора, утилита завершится без вывода какой-либо информации и очистка произведена не будет.
8. Перезагрузить ПК.
9. Установить КриптоПРО.
10. Перезагрузить ПК.
11. Установить Континент АП. При устанавки КАП выбрать максимальную установку с датчиками, с КБ CSP, и т.д.
12. Перезагрузить ПК.
13. В настройках КБ CSP установить биологический ДСЧ в место физического.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Beast2040
  • —>
  • Не в сети
  • Сообщений: 71
  • Спасибо получено: 10

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Краснокам
  • —>
  • Не в сети
  • Сообщений: 24
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

Краснокам пишет: задолбала ваша продукция.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • gurazor
  • —>
  • Не в сети
  • Сообщений: 182
  • Спасибо получено: 24

Краснокам пишет: Всё сделал, даже антивирус удалил. Всё переустановил ничего не помогает. Как же меня задолбала ваша продукция.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

gurazor пишет: не помогают, удаление веток реестра, которые известны, тоже.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • gurazor
  • —>
  • Не в сети
  • Сообщений: 182
  • Спасибо получено: 24

gurazor пишет: не помогают, удаление веток реестра, которые известны, тоже.

а какие именно удаляли?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

gurazor пишет: не помогают, удаление веток реестра, которые известны, тоже.

а какие именно удаляли?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Краснокам
  • —>
  • Не в сети
  • Сообщений: 24
  • Спасибо получено: 0

Краснокам пишет: задолбала ваша продукция.

она такая же наша, как и Ваша
все камни плиз в огород производителя — ООО «Код Безопасности» .

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

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

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Fixik
  • —>
  • Не в сети
  • Сообщений: 5
  • Спасибо получено: 0

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Alex_04
  • —>
  • Не в сети
  • ТОФК
  • Сообщений: 2243
  • Спасибо получено: 377

Fixik пишет: главное читать как надо, и делать как написано

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Gvinpin
  • —>
  • Не в сети
  • Сообщений: 1997
  • Спасибо получено: 264

Alex_04 пишет: Если-б в официальных мануалах было прямо всё как надо и после них работало ПО у всех, то оно тогда конечно — делать как написано и ноу траблс!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Wmffre
  • —>
  • Не в сети
  • Сообщений: 713
  • Спасибо получено: 216

Alex_04 пишет: Если-б в официальных мануалах было прямо всё как надо и после них работало ПО у всех, то оно тогда конечно — делать как написано и ноу траблс!

Если б перед установкой у всех были эталонные рабочие места. )

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Источник

User1665476178 posted

Hi,

I deployed WCF in IIS 6.0, Windows Server 2003 server built. The application is deployed with disabled anonymous access and only Integrated Windows Authentication is enabled. The WCF is using httpBasicBinding with
TransportCredentialOnly security mode and «Windows» as the clientCredentialType.

The web.config contains connection strings that needs to be encrypted so I used
aspnet_regiis.exe -pef «connectionStrings» «<path>» to encrypt the connectionStrings section of the config.

After that, I performed aspnet_regiis -pc «NetFrameworkConfigurationKey» -exp to create a key pair then performed
aspnet_regiis -pa «NetFrameworkConfigurationKey» «<domain user>» to grant permission to the domain user (identity of application pool).

When trying to run the application and the WCF Client, I’m getting this error:

Failed to decrypt using provider ‘RsaProtectedConfigurationProvider’. Error message from the provider:
Provider type not defined. (Exception from HRESULT: 0x80090017)

Server stack trace:
   at System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter)
   at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]:
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
 

I keep on looking for the answers in google but it looks like the
Provider type not defined
is not a common issue. Looking forward for any answers to this issue. Thanks!

User1665476178 posted

Hi,

I deployed WCF in IIS 6.0, Windows Server 2003 server built. The application is deployed with disabled anonymous access and only Integrated Windows Authentication is enabled. The WCF is using httpBasicBinding with
TransportCredentialOnly security mode and «Windows» as the clientCredentialType.

The web.config contains connection strings that needs to be encrypted so I used
aspnet_regiis.exe -pef «connectionStrings» «<path>» to encrypt the connectionStrings section of the config.

After that, I performed aspnet_regiis -pc «NetFrameworkConfigurationKey» -exp to create a key pair then performed
aspnet_regiis -pa «NetFrameworkConfigurationKey» «<domain user>» to grant permission to the domain user (identity of application pool).

When trying to run the application and the WCF Client, I’m getting this error:

Failed to decrypt using provider ‘RsaProtectedConfigurationProvider’. Error message from the provider:
Provider type not defined. (Exception from HRESULT: 0x80090017)

Server stack trace:
   at System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter)
   at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]:
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
 

I keep on looking for the answers in google but it looks like the
Provider type not defined
is not a common issue. Looking forward for any answers to this issue. Thanks!

Форум КриптоПро
 » 
Устаревшие продукты
 » 
КриптоПро CSP 3.6
 » 
CryptAcquireContext ошибка 0x80090017 «Тип поставщика не определен»


Offline

Tora-Bora

 


#1
Оставлено
:

10 сентября 2009 г. 19:21:48(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Есть кусок кода, который должен подписывать сообщение, начинается со строчки
bool result = win32.CryptAcquireContext(out hCryptoProvider, _container, null, 71, 0);
так вот result=false и ошибка 0x80090017, описание: «Тип поставщика не определен»

У меня vista, пробовал на соседнем компе с КриптоПро 3.0, там все работает.

А еще я пробовал, цифру 75:
bool result = win32.CryptAcquireContext(out hCryptoProvider, _container, null, 75, 0);
работает! Но подпись в результате получается не правильная.

Я так понимаю что нету 71 типа провайдера.

Код на C# использует функции win32 библиотеки advapi32.dll, Crypt32.dll


Вверх


Offline

Татьяна

 


#2
Оставлено
:

10 сентября 2009 г. 19:36:11(UTC)

Татьяна

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 06.02.2008(UTC)
Сообщений: 1,491
Откуда: Крипто-Про

Поблагодарили: 40 раз в 37 постах

В 3.6 нет криптопровайдера с типом 71. Он был исключен из продукта, поскольку ГОСТ, по которому он работает, выведен из действия 1-го января 2008-го года.

Татьяна
ООО Крипто-Про


Вверх


Offline

Tora-Bora

 


#3
Оставлено
:

11 сентября 2009 г. 1:46:20(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Спасибо!
Хмм, а почему если я использую тип 75, мою подпись не могут проверить? То-есть все в коде я оставил по-старому, только поменял цифру на 75, подпись сформировалась без ошибок, но сервер отвечает: неверная подпись. Может такое быть, что сервер использует тип 71 и поэтому не может проверить мою подпись?


Вверх


Offline

Максим Коллегин

 


#4
Оставлено
:

11 сентября 2009 г. 3:16:13(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,296
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 680 раз в 599 постах

Должно работать.

Отредактировано пользователем 11 сентября 2009 г. 3:33:41(UTC)
 | Причина: Не указана

Знания в базе знаний, поддержка в техподдержке


Вверх

WWW


Offline

Tora-Bora

 


#5
Оставлено
:

11 сентября 2009 г. 16:21:42(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Хорошо.
А подскажите еще, может другие идентификаторы надо изменить. Дело в том, что мне дали исходники, а там вместо enum’ов цифры указаны, а что они означают и где их взяли непонятно.
AT_SIGNATURE = 2
CERT_ALG_ID = 32798
win32.CryptGetUserKey(hCryptoProvider, win32.AT_SIGNATURE, ref hPubKey);
win32.CryptCreateHash(hCryptoProvider, (uint)CryptoPro.CERT_ALG_ID, IntPtr.Zero, (uint)0, out hHash);

что вот за AT_SIGNATURE и что за CERT_ALG_ID? Может какой алгоритм другой указать?

Вобщем вот весь код подписи:

IntPtr hCryptoProvider = IntPtr.Zero;
IntPtr hPubKey = IntPtr.Zero;
IntPtr hHash = IntPtr.Zero;

try
{
win32.CryptAcquireContext(out hCryptoProvider, _container, null, CryptoPro.TYPE, 0);
win32.CryptGetUserKey(hCryptoProvider, win32.AT_SIGNATURE, ref hPubKey);
win32.CryptCreateHash(hCryptoProvider, (uint)CryptoPro.CERT_ALG_ID, IntPtr.Zero, (uint)0, out hHash);

Encoding encoding = Encoding.GetEncoding(encodingHeaderName);
byte[] buffer = encoding.GetBytes(body);
win32.CryptHashData(hHash, buffer, buffer.Length, 0);

uint signatureLength = 0;
win32.CryptSignHash(hHash, (uint)win32.AT_SIGNATURE, null, 0, null, ref signatureLength);

byte[] signature = new byte[signatureLength];
win32.CryptSignHash(hHash, win32.AT_SIGNATURE, null, 0, signature, ref signatureLength);

retVal = System.Convert.ToBase64String(signature, 0, (int)signatureLength);


Вверх


Offline

Максим Коллегин

 


#6
Оставлено
:

11 сентября 2009 г. 16:39:24(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,296
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 680 раз в 599 постах

Нормальные идентификаторы: первый определен в wincrypt.h, второй — в wincryptex.h

Цитата:

CALG_GR3411

Может проблемы с конвертированием в base64?

Отредактировано пользователем 11 сентября 2009 г. 16:40:50(UTC)
 | Причина: Не указана

Знания в базе знаний, поддержка в техподдержке


Вверх

WWW


Offline

Tora-Bora

 


#7
Оставлено
:

11 сентября 2009 г. 18:32:33(UTC)

Tora-Bora

Статус: Новичок

Группы: Участники

Зарегистрирован: 10.09.2009(UTC)
Сообщений: 4

Да, дело не в криптопровайдере. Сейчас поставил на другую систему CryptoPro 2.0, и с 71 криптопровайдером тоже создается подпись, но результат тот-же самый, ошибка проверки подписи. А подпись ответа нормально проверяется и свою подпись я тоже нормально проверяю, буду трясти техподдержку сервака…


Вверх


Offline

Roberto1

 


#8
Оставлено
:

5 марта 2012 г. 18:00:03(UTC)

Roberto1

Статус: Участник

Группы: Участники

Зарегистрирован: 12.01.2012(UTC)
Сообщений: 19
Откуда: Kazan RF

Добрый день, делаю тот же алгоритм что описал Tora-Bora выше.
на сточке 1-ой строчке CryptSignHash падает:

Код:

                uint signatureLength = 0;
                if (!Crypt32Wrapper.CryptSignHash(hHash, Crypt32Wrapper.AT_KEYEXCHANGE, null, 0, null, ref signatureLength))

Ошибка:
CryptSignHash (1) returns false!!! error = [-2146893802] message = [Набор ключей не существует]»

В чем может быть проблема? Куда капать.

Алгоритм рабочий для типа криптопровайдера 71, переделываю на 75.
пока столкнулся только с тем что

Код:

int code = Crypt32Wrapper.CryptGetUserKey(hCryptoProvider, Crypt32Wrapper.AT_SIGNATURE, ref hPubKey);

возвращает не 0 как раньше а 1, с текстом операция успешно завершена.


Вверх

Пользователи, просматривающие эту тему

Guest

Форум КриптоПро
 » 
Устаревшие продукты
 » 
КриптоПро CSP 3.6
 » 
CryptAcquireContext ошибка 0x80090017 «Тип поставщика не определен»

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

  • Ошибка создания защищенного подключения 005 nokia как исправить
  • Ошибка создания запроса 0x80070002 континент ап
  • Ошибка создания oat файла для пропатченного classes dex
  • Ошибка соединения попробовать еще раз
  • Ошибка создания защищенного подключения 005 nokia 515