04.01.2005 16:29:55 | Узнать провайдера по умолчанию | | Ответов: 19 |
|
vvoid | | |
|
ОПРОС!!!
Уважаемые посетители форума. Обращаюсь к тем кто использует провайдер КРИПТО-ПРО. Узнайте пожалуйста, какой криптопровайдер в вашей системе используется по умолчанию.
Если вы не располагаете программными средствами для этого, то можете заглянуть в реестр (Пуск->Run->regedit), найти ключ "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types\Type 001" и посмотреть поле Name и поле TypeName. Если Вам не сложно, проделайте эти действия и напишите результаты.
Заранее благодарен всем-всем-всем. |
|
Ответы:
|
|
Это будет не провайдер по умолчанию, а дефолтный провайдер 1 типа. |
|
|
Вообщем-то меня это и интересует. Дефoлтный провайдер первого, как Вы выразились типа, то есть типа "RSA Full (Signature and Key Exchange)" |
|
|
Да, и ещё, попутный вопрос. Какой тип у криптопровайдера КриптоПРО? |
|
|
71 & 75 (эллиптика)
А провайдер первого типа завит от версии windows и экспортных ограничений. |
|
|
Я правильно понял? Получается, что в системе создаётся новый тип провайдера, что отмечается созданием в реестре ключей
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider Types\Type 071" и "...\Туре 075" |
|
|
Да.
Может Вы знаете, как сделать иначе? ;)
PS. И вообще-то мы на каникулах:) |
|
|
Как сделать по другому я не знаю, но знаю, что не красиво поддержку проверки виндой вашего сертификата организовывать использую службы.
И если вы так сделали, то наверно не следует искать на вашем сайте ответ на вопрос как легально это реализовать! |
|
13.01.2005 11:10:52 | Василий |
|
Вы не правы.
1. Проверку подписи (сертификата или другого документа) делает не винда, как Вы написали, а именно криптопровайдер (CSP).
2. Каждый криптопровайдер характеризуется именем и типом. CSP, не входящие в состав ОС, при установке регистрируют в реестре своё название. Примеры: "eToken Base Cryptographic Provider" (разработчик - компания Aladdin), "Gemplus GemSAFE Card CSP v1.0" (компания Gemplus). Тип CSP определяется разработчиком. |
|
|
В том то и суть, что проверку сертификата винда проводит используя функции (алгоритмы) криптопровайдера. По идее вся эта машина должна работать по приблизительно следующему механизму: 1.из сертификата винда читает OID алгоритма для проверки.
2.По этому OID-у каким-либо способом она должна найти алгоритм (фактически AlgID).
3.Далее, возможно путём банального перебора зарегистрированных провайдеров, она вытягивает имя провайдера в котором реализован данный алгоритм.
4.После этого последовательностью вызовов определённых функций CryptoAPI, которые обеспечивают интерфейс для работы с криптопровайдером, проводится проверка сертификата, с использованием нужного алгоритма.
Всё вроде честно и логично. НО!!! Вроде бы всё зарегистрировано, в реестре вся цепочка отслеживается, а винда упорно не обращается к нужному провайдеру.
На сколько я понял, у вас возникла та же проблема. Вы наверное тоже бились над её легальным решением и у вас похоже ничего не вышло, поэтому вы вешаеете непонятную службу, при отключении которой винда уже не может проверить ваш сертификат. :( И при банальном даблклике теперь открывается просмотрщик сертификатов с грустной надписью: "This certificate has an nonvalid digital signature." (Галимая подпись у сертификата, если говорить русским языком).
Может я где и ошибся, тогда укажите где. И если я зря оклевтал вашу контору, то искренне прошу прощения. |
|
|
Ну что ж, коль возразить нечего, то похоже я оказался прав, на счёт кривых методов работы вашего (надо заметить и не только вашего) криптопровайдера. Это тешит самолюбие, но, к сожалению не решает проблему! %( |
|
20.01.2005 10:36:19 | Василий |
|
А в чём, собственно, проблема-то? |
|
|
Как это в чём? В кривых методах работы провайдера. Что за висящие службы в NT (хоть бы описания им дали толковые, или хоть какие-нибудь), что за постоянно висящие приложения в 9х, без которых (если их пристрелить) система ваши сертификаты проверить не может. А ещё, что это за прикол: при обращении к любому сертификату первое обращение идёт к вашему провайдеру, а потом только вызывается нужный, а это, помимо всего прочего, ещё и тормозит работу системы!!!
Неужели нельзя было зарегистрировать свой провайдер так, чтобы система вызывала его только тогда, когда это необходимо. То есть поставить сообтветствие между OID-ом конкретного алгоритма (в вашем случае например: алгоритм - GOST R 34.11/34.10-2001, OID - 1.2.643.2.2.3) и конретным провайдером (вашим Crypto PRO CSP)???Тогда система сама бы всё "понимала" и не нужны были бы подозрительные службы, приклады, перехваты и перевызовы!
А вы говорите "В чём проблема?" - разве это не проблема??? |
|
|
Осталось только найти такую систему. Или, может, Вам встречались подобные? |
|
|
Зачем искать систему - всех на неё не пересадишь. Поэтому осталось только найти, как сволочи-майкрософтовцы сами это реализуют. Их вообще не поймёшь - вроде хотели сделать универсальный расширяемый механизм, а получилось всё через .... (как обычно вообщем)Ведь если на каждый провайдер вешать какието службы, поддерживать загруженность каких-либо длл по таймеру (секунд так 20 ;-) - кому надо, тот поймёт) и т.д. то и система эта скоро загнётся. А вы случайно майкрософтовцев не доставали вопросом "КАК???"? |
|
|
Спрашивали, но результата пока не видно. Дальше только хуже.
В CSP 3.0, кстати, все поинтереснее реализовано ;) |
|
20.01.2005 22:44:00 | Анатолий |
|
Microsoft Strong Cryptographic Provider |
|
|
2 mAxDM: "В CSP 3.0, кстати, все поинтереснее реализовано" - не беда - от этого всем лучше ;-)
2 Анатолий:"Microsoft Strong Cryptographic Provider" - чё-то я не понял это вы к чему?
|
|
|
>2 Анатолий:"Microsoft Strong Cryptographic Provider" - чё-то я не понял это вы к чему?
а как же "ОПРОС!!!" ? :) |
|
|
Вот блин. Тема развилась, а про начало уже и подзабыл! ;-)
|
|