Функция StrongNameGetPublicKey
Получает открытый ключ из пары открытого и закрытого ключей. Пара ключей может предоставляться в виде имени контейнера ключей в поставщике служб шифрования (CSP) или в виде необработанной коллекции байтов.
Не рекомендуется использовать эту функцию в .NET Framework 4. Вместо этого используйте метод 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, предполагается, что пара ключей расположена в большом двоичном объекте ключей.
Ключи должны быть 1024-разрядными ключами подписи RSA. В настоящее время другие типы ключей не поддерживаются.
pbKeyBlob
[in] Указатель на пару открытого и закрытого ключей. Формат этой пары создается функцией CryptExportKey для Win32. Если значение параметра pbKeyBlob равно NULL, предполагается, что пары ключей содержатся в контейнере ключей, заданном параметром szKeyContainer.cbKeyBlob
[in] Размер (в байтах) pbKeyBlob.ppbPublicKeyBlob
[out] Возвращаемый большой двоичный объекта ключа. Параметр ppbPublicKeyBlob выделяется средой CLR и возвращается вызывающему объекту. Вызывающий объект должен освободить память посредством функции StrongNameFreeBuffer.pcbPublicKeyBlob
[out] Размер возвращаемого большого двоичного объекта открытого ключа.
Возвращаемое значение
Значение true, если выполнение успешно, в противном случае — значение false.
Заметки
Открытый ключ содержится в структуре PublicKeyBlob.
Если выполнение функции StrongNameGetPublicKey не завершилось успешно, нужно вызвать функцию StrongNameErrorInfo для извлечения последней сгенерированной ошибки.
Требования
Платформы: см. раздел Требования к системе для .NET Framework.
Заголовок: StrongName.h
Библиотека: включена как ресурс в MsCorEE.dll
Версии платформы .NET Framework: 4, 3.5 с пакетом обновления 1 (SP1), 3.5, 3.0 с пакетом обновления 1 (SP1), 3.0, 2.0 с пакетом обновления 1 (SP1), 2.0, 1.1, 1.0
См. также
Ссылки
Другие ресурсы
Метод ICLRStrongName::StrongNameGetPublicKey
Метод ICLRStrongName::StrongNameTokenFromPublicKey
Журнал изменений
Дата |
Журнал |
Причина |
---|---|---|
Июль 2010 |
Добавлена ссылка на рекомендуемый альтернативный способ. |
Улучшение информации. |