Статус: Активный участник
Группы: Участники
Зарегистрирован: 17.10.2008(UTC) Сообщений: 70
|
И еще раз здравствуйте. Создать провайдер и загрузить в него ключ у меня получилось Код:
if(!CryptAcquireContext(&hCryptProvCA, 0, 0, PROV_GOST_2001_DH, CRYPT_VERIFYCONTEXT))
{
return false;
}
cbData=1000;
if(!CryptGetProvParam( hCryptProvCA, PP_SELECT_CONTAINER , pbData, &cbData, 0))
{
return false;
}
CString kontainer_name=pbData;
CryptReleaseContext(hProv, 0);
if(!CryptAcquireContext( &hCryptProvCA, kontainer_name, NULL, PROV_GOST_2001_DH, 0))
{
return false;
}
А вот создать новый криптопровайдер, для создания в дальнейшем самоподписаного сертификата не смог. Пытался примерно так: Код:
1) CryptAcquireContext(&hProv, szContainer, NULL, PROV_GOST_2001_DH, 0);
2) CryptAcquireContext(&hProv, 0, NULL, PROV_GOST_2001_DH, CRYPT_NEWKEYSET|CRYPT_MACHINE_KEYSET) ;
не получилось
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 17.10.2008(UTC) Сообщений: 70
|
Немного поторопился. Сделал так: Код:CryptAcquireContext( &hProv, 0, NULL, PROV_GOST_2001_DH, CRYPT_VERIFYCONTEXT );
Вроде прошло, однако есть у меня вопрос. А дальше создание идет как и средствами CryptAPI? То есть дальше идут CryptGenKey для генерации пары и т.д. ?
|
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733  Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
конечно. КриптоПро CSP полностью поддерживает интерфейс CryptoAPI. Цитата:1) CryptAcquireContext(&hProv, szContainer, NULL, PROV_GOST_2001_DH, 0); открытие существующего контейнера szContainer. Цитата:CryptAcquireContext(&hProv, 0, NULL, PROV_GOST_2001_DH, CRYPT_NEWKEYSET|CRYPT_MACHINE_KEYSET) ; создание контейнера с именем по умолчанию в хранилище локального компьютера Цитата:CryptAcquireContext( &hProv, 0, NULL, PROV_GOST_2001_DH, CRYPT_VERIFYCONTEXT ); инициализация провайдера без работы с контейнером |
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 26.02.2012(UTC) Сообщений: 45
Сказал(а) «Спасибо»: 2 раз Поблагодарили: 4 раз в 1 постах
|
Kirill Sobolev написал:конечно. КриптоПро CSP полностью поддерживает интерфейс CryptoAPI. Цитата:1) CryptAcquireContext(&hProv, szContainer, NULL, PROV_GOST_2001_DH, 0); открытие существующего контейнера szContainer. Цитата:CryptAcquireContext(&hProv, 0, NULL, PROV_GOST_2001_DH, CRYPT_NEWKEYSET|CRYPT_MACHINE_KEYSET) ; создание контейнера с именем по умолчанию в хранилище локального компьютера Цитата:CryptAcquireContext( &hProv, 0, NULL, PROV_GOST_2001_DH, CRYPT_VERIFYCONTEXT ); инициализация провайдера без работы с контейнером Чтобы не плодить новых тем... А как создать новый контейнер вида "RaUser-xxxxxxxxxxxxxxxxxxx(hex)", "RaAdmin-xxxxxxxxxxxxxxxxxxxxx(hex)"???? Если брать CryptAcquireContext(&hProv, 0, NULL, PROV_GOST_2001_DH, CRYPT_NEWKEYSET), то по-умолчанию имя будет равно=имя текущего пользователя Отредактировано пользователем 16 сентября 2012 г. 19:16:59(UTC)
| Причина: Не указана
|
|
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,457  Откуда: КРИПТО-ПРО Сказал «Спасибо»: 39 раз Поблагодарили: 750 раз в 645 постах
|
Второй параметр - это имя контейнера) |
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 26.02.2012(UTC) Сообщений: 45
Сказал(а) «Спасибо»: 2 раз Поблагодарили: 4 раз в 1 постах
|
maxdm написал:Второй параметр - это имя контейнера) Да, но вот если мы вызовем СEnroll.createPKCS10, то автоматом получим красивое имя вида hex-hex-hex-hex-hex ) Вот такое: 526a2d41-18ee-472a-9152-75beb7d05484 А вот если будем делать CryptAcquireContext, то либо самим создавать имя, либо null - тогда имя юзера. Все по мсдн, но как получить уникальное имя hex вида? Что еще делает СEnroll волшебного, чего не делаю я? Отредактировано пользователем 16 сентября 2012 г. 20:33:15(UTC)
| Причина: Не указана
|
|
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,457  Откуда: КРИПТО-ПРО Сказал «Спасибо»: 39 раз Поблагодарили: 750 раз в 645 постах
|
CEnroll просто создает имя в форме GUID, что мешает сделать это Вам? |
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 26.02.2012(UTC) Сообщений: 45
Сказал(а) «Спасибо»: 2 раз Поблагодарили: 4 раз в 1 постах
|
maxdm написал:CEnroll просто создает имя в форме GUID, что мешает сделать это Вам? Подскажите, есть ли хорошая функция для этого?
|
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 14,190   Сказал «Спасибо»: 621 раз Поблагодарили: 2397 раз в 1886 постах
|
CAUse написал:maxdm написал:CEnroll просто создает имя в форме GUID, что мешает сделать это Вам? Подскажите, есть ли хорошая функция для этого? Сформировать GUID ... в чем проблема? |
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 26.02.2012(UTC) Сообщений: 45
Сказал(а) «Спасибо»: 2 раз Поблагодарили: 4 раз в 1 постах
|
Андрей * написал:CAUse написал:maxdm написал:CEnroll просто создает имя в форме GUID, что мешает сделать это Вам? Подскажите, есть ли хорошая функция для этого? Сформировать GUID ... в чем проблема? Нашел. Спасибо. Отредактировано пользователем 17 сентября 2012 г. 0:34:17(UTC)
| Причина: Не указана
|
|
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close