Bagikan melalui


Prosedur untuk Data Penandatanganan

Satu fungsi, CryptSignMessage, melakukan semua tugas yang tercantum dalam Membuat Pesan yang Ditandatangani. Namun, inisialisasi struktur dan data lainnya masih diperlukan. Ilustrasi berikut menunjukkan hubungan antara parameter fungsi yang menunjuk ke struktur atau array dan data yang diinisialisasi. Ilustrasi hanya menunjukkan parameter fungsi dan anggota struktur yang berasal dari struktur atau fungsi lain. Parameter lainnya adalah inisialisasi langsung.

peta inisialisasi untuk panggilan ke cryptsignmessage

Untuk menandatangani data menggunakan CryptSignMessage

  1. Dapatkan penunjuk ke data yang akan ditandatangani.
  2. Tetapkan penunjuk ke data untuk mengindeks nol dari array "data yang akan ditandatangani".
  3. Dapatkan handel ke penyedia kriptografi.
  4. Buka penyimpanan sertifikat yang berisi sertifikat penanda tangan.
  5. Dapatkan alamat ke sertifikat penanda tangan.
  6. Tetapkan alamat sertifikat ke indeks nol array MsgCert .
  7. Tetapkan alamat sertifikat lain untuk disertakan dengan pesan ke array MsgCert .
  8. Menginisialisasi struktur CRYPT_ALGORITHM_IDENTIFIER , menginisialisasi anggota pszObjId ke algoritma hash yang diinginkan dan anggota lainnya sebagaimana mewajibkan.
  9. Menginisialisasi struktur CRYPT_SIGN_MESSAGE_PARA , menginisialisasi anggota pSigningCert ke alamat sertifikat penanda tangan, anggota array MsgCert ke alamat penanda tangan dan sertifikat lainnya, anggota HashAlgorithm ke alamat struktur CRYPT_ALGORITHM_IDENTIFIER , dan anggota lainnya sebagaimana mestinya.
  10. Panggil fungsi CryptSignMessage , melewati struktur CRYPT_SIGN_MESSAGE_PARA untuk parameter pSignPara , alamat array "data yang akan ditandatangani" untuk parameter rgpbToBeSigned , alamat untuk parameter output pbSignedBlob , dan nilai untuk parameter lain yang sesuai.