Metode IX509PublicKey::get_EncodedParameters (certenroll.h)
Properti EncodedParameters mengambil array byte yang berisi parameter yang terkait dengan algoritma kunci publik . Array byte diwakili oleh string yang dikodekan Unicode.
Properti ini bersifat hanya baca.
Sintaks
HRESULT get_EncodedParameters(
EncodingType Encoding,
BSTR *pValue
);
Parameter
Encoding
pValue
Nilai kembali
Tidak ada
Keterangan
Panggil metode InitializeFromEncodedPublicKeyInfo atau metode Inisialisasi untuk menginisialisasi objek kunci publik sebelum memanggil properti ini.
Objek AlgorithmIdentifier Abstract Syntax Notation One (ASN.1) yang dirujuk oleh objek SubjectPublicKeyInfo dalam sertifikat X.509 versi 3 berisi pengidentifikasi objek algoritma (OID) dan parameter opsional.
SubjectPublicKeyInfo ::= SEQUENCE
{
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING
}
AlgorithmIdentifier ::= SEQUENCE
{
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL
}
Format dan konten parameter berbeda menurut algoritma. Kontrol Pendaftaran Sertifikat menghasilkan nilai parameter untuk berbagai algoritma sesuai kebutuhan. Untuk informasi selengkapnya, lihat bagian berikut ini:
- Algoritma Kunci Umum RSA
- Transportasi Kunci Menggunakan RSA-OAEP
- Perjanjian Kunci Menggunakan ECDH
- Enkripsi Konten Menggunakan AES
Algoritma Kunci Umum RSA
RSA sering digunakan untuk mengenkripsi kunci privat dan mengirimkannya ke otoritas sertifikasi (CA) untuk pengarsipan. Algoritma XCN_OID_RSA_RSA (1.2.840.113549.1.1.1) OID harus memiliki nilai parameter NULL . Nilai ASN.1 NULL diwakili oleh dua byte. Nomor tag 0x05 dan nilai yang terkait dengan tag 0x00. Ini diperlihatkan oleh contoh sertifikat berikut.
...
Public Key Algorithm:
Algorithm ObjectId: 1.2.840.113549.1.1.1 RSA (RSA_KEYX)
Algorithm Parameters:
05 00
...
Transportasi Kunci Menggunakan RSA-OAEP
Algoritma RSA-OAEP, XCN_OID_RSAES_OAEP (1.2.840.113549.1.1.7), juga didukung untuk transportasi utama. Bidang parameter memiliki sintaks berikut.
RSAES-OAEP-params ::= SEQUENCE
{
hashFunc [0] AlgorithmIdentifier DEFAULT sha1OID,
maskGenFunc [1] AlgorithmIdentifier DEFAULT mgf1SHA1OID,
pSourceFunc [2] AlgorithmIdentifier DEFAULT pSpecifiedEmptyOID
}
Perjanjian Kunci Menggunakan ECDH
Algoritma kurva elips tunggal Diffie-Hellman, XCN_OID_DH_SINGLE_PASS_STDDH_SHA1_KDF (1.3.133.16.840.63.0.2), didukung untuk perjanjian kunci. Perjanjian kunci menggunakan dua tingkat enkripsi:- Pesan dienkripsi dengan menggunakan kunci enkripsi konten (CEK) dan algoritma enkripsi simetris .
- CEK dienkripsi (dibungkus) dengan menggunakan kunci enkripsi kunci simetris (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)
Enkripsi Konten Menggunakan AES
Standar Enkripsi Lanjutan (AES) digunakan untuk mengenkripsi konten. Algoritma berikut didukung:- 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))
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | certenroll.h |
DLL | CertEnroll.dll |