StrongNameGetPublicKey 函式
更新:2007 年 11 月
從私密/公開金鑰組取得公開金鑰。您可使用密碼編譯服務提供者 (CSP) 內的金鑰容器名稱或原始的位元組集合等方式來提供金鑰組。
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] 傳回的公開金鑰 BLOB。ppbPublicKeyBlob 參數是由 Common Language Runtime 所配置,且會傳回給呼叫端。呼叫端必須使用 StrongNameFreeBuffer 函式來釋放記憶體。pcbPublicKeyBlob
[out] 所傳回公開金鑰 BLOB 的大小。
傳回值
如果成功完成則為 true,否則為 false。
備註
公開金鑰包含在 PublicKeyBlob 結構中。
如果 StrongNameGetPublicKey 函式未順利完成,請呼叫 StrongNameErrorInfo 函式來擷取最後產生的錯誤。
需求
**平台:**請參閱 .NET Framework 系統需求。
**旗頭:**StrongName.h
程式庫:包含做為 MsCorEE.dll 中的資源
**.NET Framework 版本:**3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0
請參閱
參考
StrongNameTokenFromPublicKey 函式