Bagikan melalui


Gambaran Umum OID

Ekstensibilitas dicapai dengan menyediakan penggunaan pengidentifikasi objek baru (OID), jenis pengodean baru, dan DLL baru.

OID CryptoAPI dapat mengambil salah satu formulir berikut:

  • String numerik seperti "1.2.3.500.88"
  • String alfanumerik seperti MyFunction
  • Konstanta dengan nilai yang kurang dari atau sama dengan 0xFFFF. Konstanta ini sering dikaitkan dengan nama melalui penggunaan pernyataan #define dalam file header.

Fungsi yang dapat diperluas menerima argumen jenis OID dan pengodean. Fungsi-fungsi ini mencari registri sistem untuk menemukan DLL yang terkait dengan OID dan argumen jenis pengodean yang diteruskan ke fungsi. Jika DLL untuk OID, kombinasi jenis pengodean ditemukan, DLL dimuat dan fungsinya dipanggil. Ilustrasi berikut menunjukkan alur ini untuk fungsi CryptEncodeObject :

aliran oid

Ini memungkinkan fungsionalitas CryptoAPI diperluas saat kebutuhan muncul. Penggunaan metodologi ini menempatkan beban pada pengembang fungsionalitas baru untuk menulis semua kode yang diperlukan untuk fungsionalitas tersebut. Untuk mengodekan beberapa struktur data baru, misalnya, fungsi dalam DLL harus melakukan seluruh proses pengodean.