Ключевое слово в защите информации
ключевое слово
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход. Новые регистрации запрещены.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline AndrewVL  
#1 Оставлено : 18 февраля 2014 г. 10:40:58(UTC)
AndrewVL

Статус: Активный участник

Группы: Участники
Зарегистрирован: 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


В чем может быть проблема?


Спасибо
Offline Андрей Писарев  
#2 Оставлено : 18 февраля 2014 г. 10:53:09(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 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

Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#3 Оставлено : 18 февраля 2014 г. 10:57:56(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 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));
Техническую поддержку оказываем тут
Наша база знаний
Offline AndrewVL  
#4 Оставлено : 18 февраля 2014 г. 15:37:48(UTC)
AndrewVL

Статус: Активный участник

Группы: Участники
Зарегистрирован: 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'
Offline Андрей Писарев  
#5 Оставлено : 18 февраля 2014 г. 15:46:39(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,190
Мужчина
Российская Федерация

Сказал «Спасибо»: 621 раз
Поблагодарили: 2397 раз в 1886 постах
а КриптоПРО CSP какой версии?

WinInet... контекст сертификата и вперед...

Техническую поддержку оказываем тут
Наша база знаний
Offline MCR  
#6 Оставлено : 19 февраля 2014 г. 11:25:00(UTC)
MCR

Статус: Активный участник

Группы: Участники
Зарегистрирован: 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 гостовый.
Offline AndrewVL  
#7 Оставлено : 19 февраля 2014 г. 14:34:28(UTC)
AndrewVL

Статус: Активный участник

Группы: Участники
Зарегистрирован: 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.

Как их подружить с ГОСТом?
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.