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] 返回的公钥 BLOB。 参数 ppbPublicKeyBlob
由公共语言运行时分配,并返回给调用方。 调用方必须使用 StrongNameFreeBuffer 函数释放此内存。
pcbPublicKeyBlob
[out] 返回的公钥 BLOB 的大小。
返回值
如果成功完成,则为 true
;否则为 false
。
注解
公钥包含在 PublicKeyBlob 结构中。
如果 StrongNameGetPublicKey
函数未成功完成,请调用 StrongNameErrorInfo 函数来检索上次生成的错误。
要求
平台:请参阅系统要求。
标头:StrongName.h
库:作为资源包含在 MsCorEE.dll 中
.NET Framework 版本:自 1.0 起可用