Bagikan melalui


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).
KEK dihitung dari nomor rahasia bersama yang dihitung dari kunci privat satu pihak dan kunci umum pihak lain. Bidang parameter berisi OID algoritma KEK yang digunakan untuk membungkus atau mengenkripsi CEK. Algoritma pembungkus berikut didukung:
  • 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)
Bidang parameter berisi vektor inisialisasi acak, AES-IV.

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

Lihat juga

IX509PublicKey