Поделиться через


Функция StrongNameGetPublicKey

Получает открытый ключ из пары закрытого и открытого ключей. Пару ключей можно указать в качестве имени контейнера ключей в поставщике служб шифрования (CSP) или в виде необработанной коллекции байтов.

Эта функция является нерекомендуемой. Используйте вместо него метод ICLRStrongName::StrongNameGetPublicKey .

Синтаксис

BOOLEAN StrongNameGetPublicKey (
    [in]  LPCWSTR   szKeyContainer,  
    [in]  BYTE      *pbKeyBlob,  
    [in]  ULONG     cbKeyBlob,  
    [out] BYTE      **ppbPublicKeyBlob,  
    [out] ULONG     *pcbPublicKeyBlob  
);  

Параметры

szKeyContainer
[in] Имя контейнера ключей, содержащего пару открытого и закрытого ключей. Если pbKeyBlob имеет значение NULL, szKeyContainer необходимо указать допустимый контейнер в CSP. В этом случае извлекает открытый ключ из пары ключей, StrongNameGetPublicKey хранящейся в контейнере.

Если pbKeyBlob значение не равно NULL, предполагается, что пара ключей содержится в большом двоичном объекте ключа (BLOB).

Ключи должны быть 1024-разрядными ключами подписывания Rivest-Shamir-Adleman (RSA). В настоящее время другие типы ключей не поддерживаются.

pbKeyBlob
[in] Указатель на пару открытого и закрытого ключей. Эта пара имеет формат, созданный функцией Win32 CryptExportKey . Если pbKeyBlob имеет значение NULL, предполагается, что контейнер ключей, указанный параметром szKeyContainer , содержит пару ключей.

cbKeyBlob
[in] Размер в байтах pbKeyBlob.

ppbPublicKeyBlob
[out] Возвращенный большой двоичный объект открытого ключа. Параметр ppbPublicKeyBlob выделяется средой CLR и возвращается вызывающей объекту. Вызывающий объект должен освободить память с помощью функции StrongNameFreeBuffer .

pcbPublicKeyBlob
[out] Размер возвращаемого большого двоичного объекта открытого ключа.

Возвращаемое значение

true при успешном завершении; в противном случае — false.

Комментарии

Открытый ключ содержится в структуре PublicKeyBlob .

StrongNameGetPublicKey Если функция не завершается успешно, вызовите функцию StrongNameErrorInfo, чтобы получить последнюю созданную ошибку.

Требования

Платформы: см. раздел Требования к системе.

Заголовка: StrongName.h

Библиотека: Включено в качестве ресурса в MsCorEE.dll

версии платформа .NET Framework: доступно с версии 1.0.

См. также раздел