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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline DenisKo  
#1 Оставлено : 10 сентября 2019 г. 22:34:46(UTC)
DenisKo

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

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

Сказал(а) «Спасибо»: 1 раз
Подскажите, возможно ли сгенерировать csr с использованием CNG?
Если возможно, подскажите где можно глянуть примеры генерации с использованием КриптоПРО.

На данный момент генерация выполняется с помощью CryptoAPI,
в частности используется функция CryptAcquireContextA.

Однако microsoft планирует убрать поддержку из будущих релизов,
соответственно необходимо переходить на CNG.
Offline Максим Коллегин  
#2 Оставлено : 11 сентября 2019 г. 20:13:27(UTC)
Максим Коллегин

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

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

Сказал «Спасибо»: 32 раз
Поблагодарили: 704 раз в 613 постах
CSP 4.0\5.0 поддерживает CNG, чтобы им воспользоваться нужно добавить в параметры установки
Код:
FULLCNGREGISTER=1 Зарегистрировать Key Storage Provider (CNG)


Цитата:
Однако microsoft планирует убрать поддержку из будущих релизов,
соответственно необходимо переходить на CNG.


Этого я бы не стал бояться. Даже если произойдёт подобное - мы "вернём" поддержку CAPI, поскольку к "новому" интерфейсу есть много вопросов.

Для старта можно посмотреть родные примеры:
https://github.com/micro...icate/CPP/createcert.cpp

Отредактировано пользователем 11 сентября 2019 г. 20:17:09(UTC)  | Причина: Не указана

Знания в базе знаний, поддержка в техподдержке
Offline DenisKo  
#3 Оставлено : 11 сентября 2019 г. 23:17:11(UTC)
DenisKo

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

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

Сказал(а) «Спасибо»: 1 раз
Цитата:
FULLCNGREGISTER=1 Зарегистрировать Key Storage Provider (CNG)

Спасибо, пробовал подобное.
Установку делал так:
Код:
CSPSetup.exe -args "FULLCNGREGISTER=1"

Криптопровайдер называется Crypto-Pro Primitive Provider?

Цитата:
Даже если произойдёт подобное - мы "вернём" поддержку CAPI

Будем надеяться что все же не произойдет,
однако если вдруг они вырубят поддержку например со следующим обновлением Windows будет грустно.

Еще небольшое уточнение, если csr будет сгнерирован при помощи cng,
затем будет выпущен сертификат и записан на токен,
смогут ли пользователи на других компьютерах работать с таким контейнером при помощи обычного криптопровайдера,
или для них так же будет обязательна установка с флагом FULLCNGREGISTER=1.

Еще раз спасибо за помощь.
Offline Максим Коллегин  
#4 Оставлено : 12 сентября 2019 г. 11:59:11(UTC)
Максим Коллегин

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

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

Сказал «Спасибо»: 32 раз
Поблагодарили: 704 раз в 613 постах
Автор: DenisKo Перейти к цитате

Криптопровайдер называется Crypto-Pro Primitive Provider?

Верно.

Контейнер созданный с помощью CNG прочитается CSP и наоборот.
Знания в базе знаний, поддержка в техподдержке
thanks 1 пользователь поблагодарил Максим Коллегин за этот пост.
DenisKo оставлено 12.09.2019(UTC)
Offline DenisKo  
#5 Оставлено : 15 сентября 2019 г. 22:25:34(UTC)
DenisKo

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

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

Сказал(а) «Спасибо»: 1 раз
Цитата:
Контейнер созданный с помощью CNG прочитается CSP и наоборот.

Это хорошая новость. Спасибо большое за помощь.
Код:

	LPCWSTR            provName = L"Crypto-Pro Primitive Provider";
	LPCWSTR            containerName = L"TestContainerName";
	LPCWSTR            algid = L"GR 34.10-2012 512";
	NCRYPT_KEY_HANDLE* phKey = NULL;

	NCRYPT_PROV_HANDLE  hProvider = NULL;
	NCRYPT_KEY_HANDLE   hKey = NULL;
	HRESULT             hr = S_OK;


	hr = NCryptOpenStorageProvider(&hProvider, provName, 0);

	hr = NCryptCreatePersistedKey(
		hProvider,
		&hKey,
		algid,
		containerName,
		AT_SIGNATURE,
		0
	);



Если еще подскажете по какой причине результатом выполнения `NCryptCreatePersistedKey` является `NTE_NOT_SUPPORTED` будет совсем хорошо ).
Offline Максим Коллегин  
#6 Оставлено : 16 сентября 2019 г. 9:37:56(UTC)
Максим Коллегин

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

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

Сказал «Спасибо»: 32 раз
Поблагодарили: 704 раз в 613 постах
Для 2012 ГОСТ заработает только в следующих версиях, спасибо за сообщение.
Пока попробуйте использовать "GR 34.10-2001" или открывать существующий ключ.
Знания в базе знаний, поддержка в техподдержке
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.