IX509PublicKey::ComputeKeyIdentifier 方法 (certenroll.h)
ComputeKeyIdentifier 方法會從公鑰的 160 位 SHA-1 哈希建立標識符。
語法
HRESULT ComputeKeyIdentifier(
[in] KeyIdentifierHashAlgorithm Algorithm,
[in] EncodingType Encoding,
[out] BSTR *pValue
);
參數
[in] Algorithm
KeyIdentifierHashAlgorithm 列舉的值,指定要用來建立密鑰標識碼的哈希演算法。
如果此值是 SKIHashDefault 或 SKIHashSha1,則識別碼是藉由只哈希包含索引鍵的位元組數位建立,並排除 ( DER) 卷標、長度和未使用的位字段 可辨別編碼規則。
如果此值為 SKIHashCapiSha1,則會藉由哈希包含標記、長度、未使用位數目和公鑰的 DER 編碼位元組陣列來建立標識符。
[in] Encoding
EncodingType 列舉值,指定要套用至 pValue 參數中包含的哈希的 Unicode 編碼類型。 預設值為 XCN_CRYPT_STRING_BASE64。
[out] pValue
包含金鑰標識碼的 BSTR 變數指標。
傳回值
如果函式成功,函式會傳回 S_OK。
如果函式失敗,它會傳回 指出錯誤的 HRESULT 值。 可能的值包括 (但不限於) 下表中的這些值。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值。
傳回碼/值 | Description |
---|---|
|
找不到演算法物件識別碼或公鑰參數。 |
備註
您必須先呼叫 InitializeFromEncodedPublicKeyInfo 方法或 Initialize 方法,才能呼叫 ComputeKeyIdentifier 來初始化公鑰物件。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | certenroll.h |
Dll | CertEnroll.dll |