IX509PublicKey::get_EncodedParameters 方法 (certenroll.h)
EncodedParameters 屬性會擷取位元組陣列,其中包含與公鑰演演算法相關聯的參數。 位元組陣列是以 Unicode 編碼的字串表示。
這個屬性是唯讀的。
語法
HRESULT get_EncodedParameters(
EncodingType Encoding,
BSTR *pValue
);
參數
Encoding
pValue
傳回值
無
備註
呼叫 InitializeFromEncodedPublicKeyInfo 方法或 Initialize 方法,以在呼叫這個屬性之前初始化公鑰物件。
AlgorithmIdentifier Abstract Syntax Notation One (ASN.1) 物件,在 X.509 版 3 憑證中,SubjectPublicKeyInfo 物件所參考的物件包含演演算法 物件標識符 (OID) 和選擇性參數。
SubjectPublicKeyInfo ::= SEQUENCE
{
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING
}
AlgorithmIdentifier ::= SEQUENCE
{
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL
}
參數的格式和內容會因演算法而有所不同。 憑證註冊控制會視需要為各種演算法產生參數值。 如需詳細資訊,請參閱下列各節:
- RSA 公鑰演演算法
- 使用 RSA-OAEP 的金鑰傳輸
- 使用ECDH的金鑰合約
- 使用 AES 的內容加密
RSA 公鑰演演算法
RSA 通常用來加密 私鑰 ,並將其傳送至 證書頒發機構單位 , (CA) 進行封存。 XCN_OID_RSA_RSA (1.2.840.113549.1.1.1) 演算法 OID 必須具有 NULL 參數值。 ASN.1 NULL 值是以兩個字節表示。 卷標編號0x05,且與標記相關聯的值0x00。 下列憑證範例會示範這一點。
...
Public Key Algorithm:
Algorithm ObjectId: 1.2.840.113549.1.1.1 RSA (RSA_KEYX)
Algorithm Parameters:
05 00
...
使用 RSA-OAEP 的金鑰傳輸
密鑰傳輸也支援 RSA-OAEP 演演算法XCN_OID_RSAES_OAEP (1.2.840.113549.1.1.7) 。 parameters 欄位具有下列語法。
RSAES-OAEP-params ::= SEQUENCE
{
hashFunc [0] AlgorithmIdentifier DEFAULT sha1OID,
maskGenFunc [1] AlgorithmIdentifier DEFAULT mgf1SHA1OID,
pSourceFunc [2] AlgorithmIdentifier DEFAULT pSpecifiedEmptyOID
}
使用ECDH的金鑰合約
密鑰協定支援單一傳遞橢圓曲線 Diffie-Hellman 演演算法,XCN_OID_DH_SINGLE_PASS_STDDH_SHA1_KDF (1.3.133.16.840.63.0.2) 。 金鑰協定使用兩種加密層級:- 訊息會使用內容加密金鑰 (CEK) 和 對稱加密演算法來加密 。
- CEK 會使用 對稱金鑰 加密金鑰 (KEK) 來加密 (包裝) 。
- XCN_OID_RSA_SMIMEalgCMS3DESwrap (1.2.840.113549.1.9.16.3.)
- XCN_OID_RSA_SMIMEalgCMSRC2wrap (1.2.840.113549.1.9.16.3.7)
- XCN_OID_NIST_AES128_WRAP (2.16.840.1.101.3.4.1.5)
- XCN_OID_NIST_AES192_WRAP (2.16.840.1.101.3.4.1.25)
- XCN_OID_NIST_AES256_WRAP (2.16.840.1.101.3.4.1.45)
使用 AES 的內容加密
進階加密標準 (AES) 可用來加密內容。 支援下列演算法:- XCN_OID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2)
- XCN_OID_NIST_AES192_CBC (2.16.840.1.101.3.4.1.22)
- XCN_OID_NIST_AES256_CBC (2.16.840.1.101.3.4.1.42)
AES-IV ::= OCTET STRING (SIZE(16))
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | certenroll.h |
Dll | CertEnroll.dll |