Bagikan melalui


Pendekodean Data yang Ditandatangani

Proses umum berikut mendekode jenis data yang ditandatangani .

Untuk mendekode pesan yang ditandatangani

  1. Dapatkan pointer ke BLOB yang dikodekan.
  2. Panggil CryptMsgOpenToDecode, melewati argumen yang diperlukan.
  3. Panggil CryptMsgUpdate sekali, meneruskan handel yang diambil di langkah 2 dan penunjuk ke data yang akan didekode. Ini menyebabkan tindakan yang sesuai diambil pada pesan, tergantung pada jenis pesan.
  4. Panggil CryptMsgGetParam, meneruskan handel yang diambil di langkah 2 dan jenis parameter yang sesuai untuk mengakses data yang didekodekan. Misalnya, teruskan CMSG_CONTENT_PARAM untuk mendapatkan penunjuk ke konten yang didekodekan.

Proses umum berikut memverifikasi tanda tangan pesan yang didekodekan dan ditandatangani.

Untuk memverifikasi tanda tangan pesan yang didekodekan dan ditandatangani

  1. Panggil CryptMsgGetParam, meneruskan handel pesan dan CMSG_SIGNER_CERT_INFO_PARAM untuk mendapatkan CERT_INFO penanda tangan dari pesan.
  2. Panggil CertOpenStore untuk membuka penyimpanan sementara yang diinisialisasi dengan sertifikat dari pesan.
  3. Panggil CertGetSubjectCertificateFromStore untuk mendapatkan CERT_INFO penanda tangan dari sertifikat yang disertakan dalam pesan.
  4. Panggil CryptMsgControl, meneruskan CMSG_CTRL_VERIFY_SIGNATURE untuk memverifikasi tanda tangan.
  5. Panggil CryptMsgClose untuk menutup pesan.

Hasil dari prosedur ini adalah bahwa tanda tangan diverifikasi dan penunjuk diambil ke konten pesan yang didekodekan yang diperoleh pada langkah 4 prosedur untuk mendekode pesan yang ditandatangani.

Untuk detail pengodean C, lihat Contoh Program C: Menandatangani, Mengodekan, Mendekode, dan Memverifikasi Pesan.