08.06.2005 15:23:52Структура открытого ключа Ответов: 1
Олег
Добрый день! В Wincryptex.h описан формат открытого ключа. В конце - описание:
BYTE bPublicKey[1/*псевдомассив*/];
/*!< Содержит открытый ключ в сетевом представлении (ASN1 DER)
Под этот открытый ключ отводится 64 байта (провайдер Crypto-Pro GOST R 34.10-2001), то есть на ASN1 заголовок места не хватает. Как, в таком случае, представлен открытый ключ? Как можно его получить в чистом виде?
И еще вопрос: при импорте открытого ключа (если тело ключа было изменено после экспорта) выдается ошибка NTE_BAD_DATA. Открытый ключ (bPublicKey) как-то проверяется?
 
Ответы:
29.06.2005 21:35:30Serge3leo
> Добрый день! В Wincryptex.h описан формат открытого ключа. В конце
> описание:
BYTE bPublicKey[1/*псевдомассив*/];
> /*!< Содержит открытый ключ в сетевом представлении (ASN1 DER)
> Под этот открытый ключ отводится 64 байта
> (провайдер Crypto-Pro GOST R 34.10-2001), то есть на ASN1 заголовок
> места не хватает. Как, в таком случае, представлен открытый ключ?

Это опечатка. Лучше читать документацию, CSP_3_0.chm
CRYPT_PUBLICKEYBLOB.

> Как можно его получить в чистом виде?

Декодировать.

> И еще вопрос: при импорте открытого ключа (если тело ключа было изменено
> после экспорта) выдается ошибка NTE_BAD_DATA. Открытый ключ
> (bPublicKey) как-то проверяется?

Для ключей ГОСТ Р 34.10-2001 всегда производится проверка открытого ключа стандарту и заданному набору параметров.

Для ключей ГОСТ Р 34.10-94 проверка управляется параметрами CSP PP_ADMIN_CHECKPUBLIC/PP_CHECKPUBLIC или из панели управления.