Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.01.2010(UTC) Сообщений: 34
|
Здравствуйте.
Может слегка не в тему.
Есть задача на Delphi пройти авторизацию на сайте госзакупок. С помощью P12FromGostCSP вынул сетификат и закрытый ключь пользователя в формате P12.
с помощью openssl разделил файл на сертификат и закрытый ключ Команда openssl.exe pkcs12 -in file.p12 -nodes
в настройках openssl закочентировал строку - CRYPT_PARAMS = id-Gost28147-89-CryptoPro-A-ParamSet
пробовал вместо нее такую CRYPT_PARAMS = id-GostR3410-2001-CryptoPro-A-ParamSet
В данном случае вообще не читает файл p12.
В delphi кинул на форму вместе с idHttp еще и IdSSLIOHandlerSocketOpenSSL1 Указал файл закрытого ключа и файл сертификата в формате PEM. Пробую запустить SSl - TIdSSLIOHandlerSocketOpenSSL(idhttp1.IOHandler).StartSSL; Выдает ошибку
could not load certificate error:0609E09C: digital envelop routine:PKEY_SET_TYPE: unsupported algorithm
В чем может быть проблема?
Спасибо
|
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 14,190   Сказал «Спасибо»: 621 раз Поблагодарили: 2397 раз в 1886 постах
|
Автор: AndrewVL  Здравствуйте.
Может слегка не в тему.
Есть задача на Delphi пройти авторизацию на сайте госзакупок. С помощью P12FromGostCSP вынул сетификат и закрытый ключь пользователя в формате P12.
с помощью openssl разделил файл на сертификат и закрытый ключ Команда openssl.exe pkcs12 -in file.p12 -nodes
в настройках openssl закочентировал строку - CRYPT_PARAMS = id-Gost28147-89-CryptoPro-A-ParamSet
пробовал вместо нее такую CRYPT_PARAMS = id-GostR3410-2001-CryptoPro-A-ParamSet
В данном случае вообще не читает файл p12.
В delphi кинул на форму вместе с idHttp еще и IdSSLIOHandlerSocketOpenSSL1 Указал файл закрытого ключа и файл сертификата в формате PEM. Пробую запустить SSl - TIdSSLIOHandlerSocketOpenSSL(idhttp1.IOHandler).StartSSL; Выдает ошибку
could not load certificate error:0609E09C: digital envelop routine:PKEY_SET_TYPE: unsupported algorithm
В чем может быть проблема?
Спасибо Выкинуть idHttp Использовать WinInet |
|
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 14,190   Сказал «Спасибо»: 621 раз Поблагодарили: 2397 раз в 1886 постах
|
Код:
// ERROR_INTERNET_CLIENT_AUTH_CERT_NEEDED: /// WinInet error: 12044
InternetSetOptionW(hInet, INTERNET_OPTION_CLIENT_CERT_CONTEXT, Certificate_CONTEXT, SIZEOF(cert_context));
|
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.01.2010(UTC) Сообщений: 34
|
не дружу я с WinInet )
Попробовал на Synapse.
var HTTP: THTTPSend;
begin http:=THTTPSend.Create; Http.Sock.SSL.PFXfile := 'c:\p12.p12'; Http.Sock.SSL.SSLType:=LT_TLSv1; Http.Sock.SSL.KeyPassword:='123';
Http.Sock.SSLDoConnect; Http.HTTPMethod('GET', 'https://URL');
получаю на последней строке
'error:2306B076:PKCS12 routines:PKCS12_gen_mac:unknown digest algorithm'
|
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 14,190   Сказал «Спасибо»: 621 раз Поблагодарили: 2397 раз в 1886 постах
|
а КриптоПРО CSP какой версии?
WinInet... контекст сертификата и вперед...
|
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 06.03.2012(UTC) Сообщений: 177
Сказал(а) «Спасибо»: 57 раз Поблагодарили: 11 раз в 8 постах
|
Автор: AndrewVL  не дружу я с WinInet )
Попробовал на Synapse.
var HTTP: THTTPSend;
begin http:=THTTPSend.Create; Http.Sock.SSL.PFXfile := 'c:\p12.p12'; Http.Sock.SSL.SSLType:=LT_TLSv1; Http.Sock.SSL.KeyPassword:='123';
Http.Sock.SSLDoConnect; Http.HTTPMethod('GET', 'https://URL');
получаю на последней строке
'error:2306B076:PKCS12 routines:PKCS12_gen_mac:unknown digest algorithm' Synapse про гост, скорее всего, ниxего не знает. Как и про pfx гостовый.
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.01.2010(UTC) Сообщений: 34
|
Автор: MCR  Автор: AndrewVL  не дружу я с WinInet )
Попробовал на Synapse.
var HTTP: THTTPSend;
begin http:=THTTPSend.Create; Http.Sock.SSL.PFXfile := 'c:\p12.p12'; Http.Sock.SSL.SSLType:=LT_TLSv1; Http.Sock.SSL.KeyPassword:='123';
Http.Sock.SSLDoConnect; Http.HTTPMethod('GET', 'https://URL');
получаю на последней строке
'error:2306B076:PKCS12 routines:PKCS12_gen_mac:unknown digest algorithm' Synapse про гост, скорее всего, ниxего не знает. Как и про pfx гостовый. Скорее всего да. Пробовал на Indy. ругается unsupported algorithm. Как их подружить с ГОСТом?
|
|
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close