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

Уведомление

Icon
Error

4 Страницы123>»
Опции
К последнему сообщению К первому непрочитанному
Offline r2d2  
#1 Оставлено : 11 октября 2012 г. 16:39:02(UTC)
r2d2

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

Группы: Участники
Зарегистрирован: 11.10.2012(UTC)
Сообщений: 7

Сказал(а) «Спасибо»: 1 раз
Пытаюсь запустить примеры из NET.SDK server, client, client2 – то что касается SSL.
На сертификатах созданных с помощью makecert все работает замечательно.
На тестовых сертификатах, созданных УЦ Криптопро, происходит ошибка.

Ошибка происходит на стороне сервера
sslStream.AuthenticateAsServer(serverCertificate, clientCertificateRequired, SslProtocols.Tls, true);
A call to SSPI failed, see inner exception + The specified data could not be decrypted

На форуме нашел похожий вопрос где причиной было отсутствие серверной лицензии, в моем случае все на месте – CryptoProCSP серверная и клиентская лицензии до конца 2012 года.

Серверный сертификат - Server Authentication (1.3.6.1.5.5.7.3.1) - StoreLocation.LocalMachine
Клиентский - Client Authentication (1.3.6.1.5.5.7.3.2) - StoreLocation.CurrentUser

Попытки запуска под WXP и W7 дают одно и то же.

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


System.Security.Authentication.AuthenticationException: A call to SSPI failed, see inner exception. ---> System.Componen
tModel.Win32Exception: The specified data could not be decrypted
--- End of inner exception stack trace ---
at System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, Ex
ception exception)
at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncReq
uest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncReq
uest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRe
quest)
at System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.Security.SslStream.AuthenticateAsServer(X509Certificate serverCertificate, Boolean clientCertificateReq
uired, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation)
at Samples.Ssl.Server.ProcessClient(TcpClient client) in E:\a\Ssl\cs\Server.cs:line 96

Offline marleyb998  
#2 Оставлено : 15 октября 2012 г. 16:06:23(UTC)
marleyb998

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

Группы: Участники
Зарегистрирован: 12.10.2012(UTC)
Сообщений: 16

Тема актуальна! Ошибка точь в точь. Думаю дело в том что нет доступа к закрытому ключу (несмотря на то, что в хранилище сертификатов есть на него ссылка)
Offline khomenko  
#3 Оставлено : 15 октября 2012 г. 16:44:17(UTC)
Михаил Хоменко

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

Группы: Администраторы, Участники
Зарегистрирован: 28.04.2010(UTC)
Сообщений: 140
Мужчина
Откуда: Крипто-Про

Поблагодарили: 15 раз в 14 постах
Добрый день, попробуйте для начала запустить "сервер" с правами администратора.
Offline marleyb998  
#4 Оставлено : 15 октября 2012 г. 17:29:50(UTC)
marleyb998

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

Группы: Участники
Зарегистрирован: 12.10.2012(UTC)
Сообщений: 16

khomenko написал:
Добрый день, попробуйте для начала запустить "сервер" с правами администратора.


Здравствуйте! Отлаживаю в DEBUG в VS2010, в app.manifest выставил requireAdministrator. Не помогло. Сертификат генерировал на Вашем Тестовом УЦ. Type of Certificate Needed: Сертификат проверки подлинности сервера, Использование ключей: Оба. КриптоПро CSP 3.6.53.59, Тип лицензии Клиентская, TLS-сервер и драйвер.

Сертификат выбрал как описано в примере SelectMy.cs, только изменил параметр storeLocation на StoreLocation.LocalMachine. found.PrivateKey != null, так что закрытый ключ вроде бы доступен

Отредактировано пользователем 15 октября 2012 г. 17:37:01(UTC)  | Причина: Не указана

Offline khomenko  
#5 Оставлено : 15 октября 2012 г. 17:44:44(UTC)
Михаил Хоменко

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

Группы: Администраторы, Участники
Зарегистрирован: 28.04.2010(UTC)
Сообщений: 140
Мужчина
Откуда: Крипто-Про

Поблагодарили: 15 раз в 14 постах
1) При генерации сертификата сервера выставили галку: Использовать локальное хранилище компьютера для сертификата ?
2) Без отладчика, запустить server с правами администратора, результат тот же ?
Offline marleyb998  
#6 Оставлено : 15 октября 2012 г. 18:30:49(UTC)
marleyb998

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

Группы: Участники
Зарегистрирован: 12.10.2012(UTC)
Сообщений: 16

1) Нет, но пометил экспортируемым. Скопировал с помощью cpconfigadmin.exe (Сервис->Скопировать...) на съемный носитель (обычную флешку), на компьютере, где ведется разработка аналогично установил сертификат (в оснастке есть ссылка, мол, есть закрытый ключ для этого сертификата)
2) Тот же.

на "сервере" в методе sslStream.AuthentificateAsServer() не требую сертификат "клиента" и не проверяю список отзыва во время проверки подлинности.

Может проблема как раз в том, что на машине "сервера" нет доступа к Тестовому УЦ?
Offline khomenko  
#7 Оставлено : 15 октября 2012 г. 18:43:34(UTC)
Михаил Хоменко

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

Группы: Администраторы, Участники
Зарегистрирован: 28.04.2010(UTC)
Сообщений: 140
Мужчина
Откуда: Крипто-Про

Поблагодарили: 15 раз в 14 постах
На сервере корневые сертификаты Тестового УЦ установлены для localmachine ?

Через оснастку КриптоПро, проверьте что ссылка на зк действительна:
cpconfigadmin.exe : Сервис->Просмотреть сертификат в контейнере... -> [По сертификату + ключевой контейнер компьютера]

Далее для полученного ключа выполните:
csptest -keyset -check -container <имя_контейнера> -machinekeyset
из папки:
"C:\Program Files\Crypto Pro\CSP\"
Offline marleyb998  
#8 Оставлено : 15 октября 2012 г. 19:03:02(UTC)
marleyb998

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

Группы: Участники
Зарегистрирован: 12.10.2012(UTC)
Сообщений: 16

На сервере сертификат "Test Center CRYPTO-PRO" установлен в Сертификаты (локальный компьютер)->Доверенные КЦС->Реестр

Имя ключевого контейнера: REGISTRY\\Gost1Test2

C:\Program Files\Crypto Pro\CSP>csptest -keyset -check -container Gost1Test2 -machinekeyset
CSP (Type:75) v3.6.5359 KC1 Release Ver:3.6.6497 OS:Windows CPU:AMD64 FastCode:N
oHardwareSupport.
AcquireContext: OK. HCRYPTPROV: 2523056
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider
Container name: "Gost1Test2"

Signature key is not available.
Exchange key is available. HCRYPTKEY: 0x262450
Check key passed.
Certificate in container matches AT_KEYEXCHANGE key.

Keys in container:
exchange key
Total: SYS: 0,047 sec USR: 0,078 sec UTC: 1,840 sec
[ErrorCode: 0x00000000]
Offline khomenko  
#9 Оставлено : 15 октября 2012 г. 19:13:07(UTC)
Михаил Хоменко

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

Группы: Администраторы, Участники
Зарегистрирован: 28.04.2010(UTC)
Сообщений: 140
Мужчина
Откуда: Крипто-Про

Поблагодарили: 15 раз в 14 постах
Можете прислать информацию об установленном КриптоПро .NET:
запустить:
"C:\Program Files\Crypto Pro\.NET\alarm.exe" info
прислать файлик osinfo.xml

Желательно обновиться до последней версии 1.0.4668.1


Offline marleyb998  
#10 Оставлено : 15 октября 2012 г. 19:20:21(UTC)
marleyb998

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

Группы: Участники
Зарегистрирован: 12.10.2012(UTC)
Сообщений: 16

Попробую обновиться
Вложение(я):
osinfo.xml (72kb) загружен 5 раз(а).

У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
4 Страницы123>»
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.