Fungsi Kriptografi
Fungsi kriptografi dikategorikan sesuai dengan penggunaan sebagai berikut:
- Fungsi CryptXML
- Fungsi Penanda tangan
- Fungsi Kriptografi Dasar
- Fungsi Penyimpanan Sertifikat dan Sertifikat
- Fungsi MakeCert
- Fungsi Verifikasi Sertifikat
- Fungsi Pesan
- Fungsi Tambahan
- Fungsi Pencadangan dan Pemulihan Layanan Sertifikat
- Fungsi Callback
- Fungsi Definisi Katalog
- Fungsi Katalog
- Fungsi WinTrust
- Fungsi Pencari Lokasi Objek
Fungsi CryptXML
Fungsi XML kriptografi menyediakan API untuk membuat dan mewakili tanda tangan digital dengan menggunakan data berformat XML. Untuk informasi tentang tanda tangan berformat XML, lihat spesifikasi Sintaksis dan Pemrosesan XML-Signature di https://go.microsoft.com/fwlink/p/?linkid=139649.
Fungsi | Deskripsi |
---|---|
A_SHAFinal | Menghitung hash akhir data yang dimasukkan oleh fungsi MD5Update. |
A_SHAInit | Memulai hashing aliran data. |
A_SHAUpdate | Menambahkan data ke objek hash tertentu. |
CryptXmlCreateReference | Membuat referensi ke tanda tangan XML. |
CryptXmlAddObject | Menambahkan elemen Objek ke Tanda Tangan dalam Konteks Dokumen yang dibuka untuk pengodean. |
CryptXmlClose | Menutup handel objek XML kriptografi. |
CryptXmlDigestReference | Digunakan oleh aplikasi untuk mencerna referensi yang diselesaikan. Fungsi ini menerapkan transformasi sebelum memperbarui hash. |
CryptXmlDllCloseDigest | Membebaskan CRYPT_XML_DIGEST yang dialokasikan oleh fungsi CryptXmlDllCreateDigest . |
CryptXmlDllCreateDigest | Membuat objek hash untuk metode yang ditentukan. |
CryptXmlDllCreateKey | Mengurai elemen KeyValue dan membuat API Kriptografi: Handel kunci BCrypt Generasi Berikutnya (CNG) untuk memverifikasi tanda tangan. |
CryptXmlDllDigestData | Memasukkan data ke dalam hash. |
CryptXmlDllEncodeAlgorithm | Mengodekan elemen SignatureMethod atau DigestMethod untuk algoritma tangkas dengan parameter default. |
CryptXmlDllEncodeKeyValue | Mengodekan elemen KeyValue . |
CryptXmlDllFinalizeDigest | Mengambil nilai hash. |
CryptXmlDllGetAlgorithmInfo | Mendekode algoritma XML dan mengembalikan informasi tentang algoritma. |
CryptXmlDllGetInterface | Mengambil pointer ke fungsi ekstensi kriptografi untuk algoritma yang ditentukan. |
CryptXmlDllSignData | Menandatangani data. |
CryptXmlDllVerifySignature | Memverifikasi tanda tangan. |
CryptXmlEncode | Mengodekan data tanda tangan dengan menggunakan fungsi panggilan balik penulis XML yang disediakan. |
CryptXmlGetAlgorithmInfo | Mendekode struktur CRYPT_XML_ALGORITHM dan mengembalikan informasi tentang algoritma. |
CryptXmlGetDocContext | Mengembalikan konteks dokumen yang ditentukan oleh handel yang disediakan. |
CryptXmlGetReference | Mengembalikan elemen Referensi yang ditentukan oleh handel yang disediakan. |
CryptXmlGetSignature | Mengembalikan elemen Tanda Tangan XML. |
CryptXmlGetStatus | Mengembalikan struktur CRYPT_XML_STATUS yang berisi informasi status tentang objek yang ditentukan oleh handel yang disediakan. |
CryptXmlGetTransforms | Mengembalikan informasi tentang mesin rantai transformasi default. |
CryptXmlImportPublicKey | Mengimpor kunci publik yang ditentukan oleh handel yang disediakan. |
CryptXmlOpenToEncode | Membuka tanda tangan digital XML untuk mengodekan dan mengembalikan handel elemen Tanda Tangan yang dibuka. Handel merangkum konteks dokumen dengan struktur CRYPT_XML_SIGNATURE tunggal dan tetap terbuka sampai fungsi CryptXmlClose dipanggil. |
CryptXmlOpenToDecode | Membuka tanda tangan digital XML untuk mendekode dan mengembalikan handel konteks dokumen yang merangkum struktur CRYPT_XML_SIGNATURE . Konteks dokumen dapat menyertakan satu atau beberapa elemen Tanda Tangan . |
CryptXmlSetHMACSecret | Mengatur rahasia HMAC pada handel sebelum memanggil fungsi CryptXmlSign atau CryptXmlVerify . |
CryptXmlSign | Membuat tanda tangan kriptografi dari elemen SignedInfo . |
CryptXmlVerifySignature | Melakukan validasi tanda tangan kriptografi dari elemen SignedInfo . |
PFN_CRYPT_XML_WRITE_CALLBACK | Membuat transformasi untuk penyedia data tertentu. |
PFN_CRYPT_XML_CREATE_TRANSFORM | Menulis data XML kriptografi. |
PFN_CRYPT_XML_DATA_PROVIDER_READ | Membaca data XML kriptografi. |
PFN_CRYPT_XML_DATA_PROVIDER_CLOSE | Merilis penyedia data XML kriptografi. |
PFN_CRYPT_XML_ENUM_ALG_INFO | Menghitung entri CRYPT_XML_ALGORITHM_INFO yang telah ditentukan dan terdaftar. |
Fungsi Penanda tangan
Menyediakan fungsi untuk menandatangani dan data stempel waktu.
Fungsi | Deskripsi |
---|---|
SignerFreeSignerContext | Membebaskan struktur SIGNER_CONTEXT yang dialokasikan oleh panggilan sebelumnya ke fungsi SignerSignEx . |
SignError | Memanggil fungsi GetLastError dan mengonversi kode pengembalian ke HRESULT. |
SignerSign | Menandatangani file yang ditentukan. |
SignerSignEx | Menandatangani file yang ditentukan dan mengembalikan penunjuk ke data yang ditandatangani. |
SignerSignEx2 | Tanda dan stempel waktu file yang ditentukan, memungkinkan beberapa tanda tangan berlapis. |
SignerTimeStamp | Stempel waktu subjek yang ditentukan. Fungsi ini mendukung stempel waktu Authenticode. Untuk melakukan stempel waktu X.509 Public Key Infrastructure (RFC 3161), gunakan fungsi SignerTimeStampEx2 . |
SignerTimeStampEx | Stempel waktu subjek yang ditentukan dan secara opsional mengembalikan penunjuk ke struktur SIGNER_CONTEXT yang berisi penunjuk ke BLOB. Fungsi ini mendukung stempel waktu Authenticode. Untuk melakukan stempel waktu X.509 Public Key Infrastructure (RFC 3161), gunakan fungsi SignerTimeStampEx2 . |
SignerTimeStampEx2 | Stempel waktu subjek yang ditentukan dan secara opsional mengembalikan penunjuk ke struktur SIGNER_CONTEXT yang berisi penunjuk ke BLOB. Fungsi ini dapat digunakan untuk melakukan Infrastruktur Kunci Umum X.509, RFC 3161-patuh, stempel waktu. |
SignerTimeStampEx3 | Stempel waktu subjek yang ditentukan dan mendukung pengaturan stempel waktu pada beberapa tanda tangan. |
Fungsi Kriptografi Dasar
Fungsi kriptografi dasar menyediakan cara paling fleksibel untuk mengembangkan aplikasi kriptografi. Semua komunikasi dengan penyedia layanan kriptografi (CSP) terjadi melalui fungsi-fungsi ini.
CSP adalah modul independen yang melakukan semua operasi kriptografi. Setidaknya satu CSP diperlukan dengan setiap aplikasi yang menggunakan fungsi kriptografi. Satu aplikasi terkadang dapat menggunakan lebih dari satu CSP.
Jika lebih dari satu CSP digunakan, CSP yang akan digunakan dapat ditentukan dalam panggilan fungsi kriptografi CryptoAPI. Satu CSP, Penyedia Kriptografi Dasar Microsoft, dibundel dengan CryptoAPI. CSP ini digunakan sebagai penyedia default oleh banyak fungsi CryptoAPI jika tidak ada CSP lain yang ditentukan.
Setiap CSP menyediakan implementasi yang berbeda dari dukungan kriptografi yang diberikan kepada CryptoAPI. Beberapa menyediakan algoritma kriptografi yang lebih kuat; yang lain berisi komponen perangkat keras, seperti kartu pintar. Selain itu, beberapa CSP kadang-kadang dapat berkomunikasi langsung dengan pengguna, seperti ketika tanda tangan digital dilakukan dengan menggunakan kunci privat tanda tangan pengguna.
Fungsi kriptografi dasar berada dalam grup luas berikut:
- Fungsi Penyedia Layanan
- Pembuatan Kunci dan Fungsi Exchange
- Fungsi Pengodean dan Pendekodean Objek
- Fungsi Enkripsi dan Dekripsi Data
- Fungsi Hash dan Tanda Tangan Digital
Fungsi Penyedia Layanan
Aplikasi menggunakan fungsi layanan berikut untuk menyambungkan dan memutuskan sambungan penyedia layanan kriptografi (CSP).
Fungsi | Deskripsi |
---|---|
CryptAcquireContext |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Memperoleh handel ke kontainer kunci pengguna saat ini dalam CSP tertentu. |
CryptContextAddRef |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menaikkan jumlah referensi pada handel HCRYPTPROV . |
CryptEnumProviders |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menghitung penyedia di komputer. |
CryptEnumProviderTypes |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menghitung jenis penyedia yang didukung di komputer. |
CryptGetDefaultProvider |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menentukan CSP default baik untuk pengguna saat ini atau untuk komputer untuk jenis penyedia tertentu. |
CryptGetProvParam |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mengambil parameter yang mengatur operasi CSP. |
CryptInstallDefaultContext |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menginstal konteks HCRYPTPROV yang diperoleh sebelumnya untuk digunakan sebagai konteks default. |
CryptReleaseContext |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Merilis handel yang diperoleh oleh fungsi CryptAcquireContext . |
CryptSetProvider dan CryptSetProviderEx |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menentukan CSP default pengguna untuk jenis CSP tertentu. |
CryptSetProvParam |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menentukan atribut CSP. |
CryptUninstallDefaultContext |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menghapus konteks default yang sebelumnya diinstal oleh CryptInstallDefaultContext. |
FreeCryptProvFromCertEx | Merilis handel baik ke penyedia layanan kriptografi (CSP) atau ke kunci API Kriptografi: Generasi Berikutnya (CNG). |
Pembuatan Kunci dan Fungsi Exchange
Pembuatan kunci dan fungsi pertukaran bertukar kunci dengan pengguna lain dan membuat, mengonfigurasi, dan menghancurkan kunci kriptografi.
Fungsi | Deskripsi |
---|---|
CryptDeriveKey |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Membuat kunci yang berasal dari kata sandi. |
CryptDestroyKey |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menghancurkan kunci. |
CryptDuplicateKey |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Membuat salinan kunci yang tepat, termasuk status kunci . |
CryptExportKey |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mentransfer kunci dari CSP ke blob kunci di ruang memori aplikasi. |
CryptGenKey |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Membuat kunci acak. |
CryptGenRandom |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menghasilkan data acak. |
CryptGetKeyParam |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mengambil parameter kunci. |
CryptGetUserKey |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mendapatkan handel ke kunci pertukaran kunci atau tanda tangan. |
CryptImportKey |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mentransfer kunci dari BLOB kunci ke CSP. |
CryptSetKeyParam |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menentukan parameter kunci. |
Fungsi Pengodean dan Pendekodean Objek
Ini adalah fungsi pengodean dan pendekodean umum. Mereka digunakan untuk mengodekan dan mendekode sertifikat, daftar pencabutan sertifikat (CRL), permintaan sertifikat, dan ekstensi sertifikat.
Fungsi | Deskripsi |
---|---|
CryptDecodeObject | Mendekode struktur jenis lpszStructType. |
CryptDecodeObjectEx | Mendekode struktur jenis lpszStructType. CryptDecodeObjectEx mendukung opsi alokasi memori satu kali. |
CryptEncodeObject | Mengodekan struktur jenis lpszStructType. |
CryptEncodeObjectEx | Mengodekan struktur jenis lpszStructType. CryptEncodeObjectEx mendukung opsi alokasi memori satu kali. |
Fungsi Enkripsi dan Dekripsi Data
Fungsi berikut mendukung operasi enkripsi dan dekripsi. CryptEncrypt dan CryptDecrypt memerlukan kunci kriptografi sebelum dipanggil. Ini dilakukan dengan menggunakan fungsi CryptGenKey, CryptDeriveKey, atau CryptImportKey . Algoritma enkripsi ditentukan saat kunci dibuat. CryptSetKeyParam dapat mengatur parameter enkripsi tambahan.
Fungsi | Deskripsi |
---|---|
CryptDecrypt |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mendekripsi bagian ciphertext dengan menggunakan kunci enkripsi yang ditentukan. |
CryptEncrypt |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mengenkripsi bagian teks biasa dengan menggunakan kunci enkripsi yang ditentukan. |
CryptProtectData | Melakukan enkripsi pada data dalam struktur DATA_BLOB . |
CryptProtectMemory | Mengenkripsi memori untuk melindungi informasi sensitif. |
CryptUnprotectData | Melakukan pemeriksaan dekripsi dan integritas data dalam DATA_BLOB. |
CryptUnprotectMemory | Mendekripsi memori yang dienkripsi menggunakan CryptProtectMemory. |
Fungsi Hash dan Tanda Tangan Digital
Fungsi-fungsi ini menghitung hash data dan juga membuat dan memverifikasi tanda tangan digital. Hash juga dikenal sebagai hash pesan.
Fungsi | Deskripsi |
---|---|
CryptCreateHash |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Membuat objek hash kosong. |
CryptDestroyHash |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menghancurkan objek hash. |
CryptDuplicateHash | Menduplikasi objek hash. |
CryptGetHashParam | Mengambil parameter objek hash. |
CryptHashData |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Hash blok data, menambahkannya ke objek hash yang ditentukan. |
CryptHashSessionKey |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Hash kunci sesi, menambahkannya ke objek hash yang ditentukan. |
CryptSetHashParam |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mengatur parameter objek hash. |
CryptSignHash |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menandatangani objek hash yang ditentukan. |
CryptUIWizDigitalSign | Menampilkan panduan yang menandatangani dokumen atau BLOB secara digital. |
CryptUIWizFreeDigitalSignContext | Melepaskan pointer ke struktur CRYPTUI_WIZ_DIGITAL_SIGN_CONTEXT . |
CryptVerifySignature |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Memverifikasi tanda tangan digital, diberikan handel ke objek hash. |
PFNCFILTERPROC | Memfilter sertifikat yang muncul di wizard tanda tangan digital yang ditampilkan oleh fungsi CryptUIWizDigitalSign . |
Fungsi Penyimpanan Sertifikat dan Sertifikat
Fungsi penyimpanan sertifikat dan sertifikat mengelola penggunaan, penyimpanan, dan pengambilan sertifikat, daftar pencabutan sertifikat (CRL), dan daftar kepercayaan sertifikat (CCL). Fungsi-fungsi ini dibagi menjadi grup berikut:
- Fungsi Penyimpanan Sertifikat
- Fungsi Pemeliharaan Penyimpanan Sertifikat dan Sertifikat
- Fungsi Sertifikat
- Fungsi Daftar Pencabutan Sertifikat
- Fungsi Daftar Kepercayaan Sertifikat
- Fungsi Properti yang Diperluas
- Fungsi MakeCert
Fungsi Penyimpanan Sertifikat
Situs pengguna dapat, seiring waktu, mengumpulkan banyak sertifikat. Biasanya, situs memiliki sertifikat untuk pengguna situs serta sertifikat lain yang menjelaskan individu dan entitas yang berkomunikasi dengan pengguna. Untuk setiap entitas, bisa ada lebih dari satu sertifikat. Untuk setiap sertifikat individu, harus ada rantai verifikasi sertifikat yang menyediakan jejak kembali ke sertifikat akar tepercaya. Penyimpanan sertifikat dan fungsi terkaitnya menyediakan fungsionalitas untuk menyimpan, mengambil, menghitung, memverifikasi, dan menggunakan informasi yang disimpan dalam sertifikat.
Fungsi | Deskripsi |
---|---|
CertAddStoreToCollection | Menambahkan penyimpanan sertifikat saudara kandung ke penyimpanan sertifikat koleksi. |
CertCloseStore | Menutup handel penyimpanan sertifikat. |
CertControlStore | Memungkinkan aplikasi untuk diberi tahu ketika ada perbedaan antara konten penyimpanan yang di-cache dan konten penyimpanan yang disimpan ke penyimpanan. Ini juga memberikan desinkronisasi penyimpanan yang di-cache, jika perlu, dan menyediakan sarana untuk melakukan perubahan yang dilakukan di penyimpanan yang di-cache ke penyimpanan yang disimpan. |
CertDuplicateStore | Menduplikasi handel penyimpanan dengan meningkatkan jumlah referensi. |
CertEnumPhysicalStore | Menghitung penyimpanan fisik untuk penyimpanan sistem tertentu. |
CertEnumSystemStore | Menghitung semua penyimpanan sistem yang tersedia. |
CertEnumSystemStoreLocation | Menghitung semua lokasi yang memiliki penyimpanan sistem yang tersedia. |
CertGetStoreProperty | Mendapatkan properti toko. |
CertOpenStore | Membuka penyimpanan sertifikat menggunakan tipe penyedia penyimpanan tertentu. |
CertOpenSystemStore | Membuka penyimpanan sertifikat sistem berdasarkan protokol subsistem. |
CertRegisterPhysicalStore | Menambahkan penyimpanan fisik ke koleksi penyimpanan sistem registri. |
CertRegisterSystemStore | Mendaftarkan penyimpanan sistem. |
CertRemoveStoreFromCollection | Menghapus penyimpanan sertifikat saudara dari penyimpanan koleksi. |
CertSaveStore | Menyimpan penyimpanan sertifikat. |
CertSetStoreProperty | Mengatur properti penyimpanan. |
CertUnregisterPhysicalStore | Menghapus penyimpanan fisik dari koleksi penyimpanan sistem tertentu. |
CertUnregisterSystemStore | Membatalkan pendaftaran penyimpanan sistem tertentu. |
CryptUIWizExport | Menyajikan wizard yang mengekspor sertifikat, daftar kepercayaan sertifikat (CTL), daftar pencabutan sertifikat (CRL), atau penyimpanan sertifikat. |
CryptUIWizImport | Menyajikan wizard yang mengimpor sertifikat, daftar kepercayaan sertifikat (CTL), daftar pencabutan sertifikat (CRL), atau penyimpanan sertifikat. |
Fungsi Pemeliharaan Penyimpanan Sertifikat dan Sertifikat
CryptoAPI menyediakan serangkaian sertifikat umum dan fungsi pemeliharaan penyimpanan sertifikat.
Fungsi | Deskripsi |
---|---|
CertAddSerializedElementToStore | Menambahkan sertifikat berseri atau elemen CRL ke penyimpanan. |
CertCreateContext | Membuat konteks yang ditentukan dari byte yang dikodekan. Konteks baru tidak dimasukkan ke dalam penyimpanan. |
CertEnumSubjectInSortedCTL | Menghitung TrustedSubjects dalam konteks CTL yang diurutkan. |
CertFindSubjectInCTL | Menemukan subjek yang ditentukan dalam CTL. |
CertFindSubjectInSortedCTL | Menemukan subjek yang ditentukan dalam CTL yang diurutkan. |
OpenPersonalTrustDBDialog dan OpenPersonalTrustDBDialogEx | Menampilkan kotak dialog Sertifikat . |
Fungsi Sertifikat
Sebagian besar fungsi Sertifikat memiliki fungsi terkait untuk menangani CRL dan CCL. Untuk informasi selengkapnya tentang fungsi CRL dan CTL terkait, lihat Fungsi Daftar Pencabutan Sertifikat dan Fungsi Daftar Kepercayaan Sertifikat.
Fungsi | Deskripsi |
---|---|
CertAddCertificateContextToStore | Menambahkan konteks sertifikat ke penyimpanan sertifikat. |
CertAddCertificateLinkToStore | Menambahkan tautan di penyimpanan sertifikat ke konteks sertifikat di penyimpanan lain. |
CertAddEncodedCertificateToStore | Mengonversi sertifikat yang dikodekan ke konteks sertifikat, lalu menambahkan konteks ke penyimpanan sertifikat. |
CertAddRefServerOcspResponse | Menaikkan jumlah referensi untuk handel HCERT_SERVER_OCSP_RESPONSE . |
CertAddRefServerOcspResponseContext | Menaikkan jumlah referensi untuk struktur CERT_SERVER_OCSP_RESPONSE_CONTEXT . |
CertCloseServerOcspResponse | Menutup handel respons server protokol status sertifikat online (OCSP). |
CertCreateCertificateContext | Membuat konteks sertifikat dari sertifikat yang dikodekan. Konteks yang dibuat tidak dimasukkan ke dalam penyimpanan sertifikat. |
CertCreateSelfSignCertificate | Membuat sertifikat yang ditandatangani sendiri. |
CertDeleteCertificateFromStore | Menghapus sertifikat dari penyimpanan sertifikat. |
CertDuplicateCertificateContext | Menduplikasi konteks sertifikat dengan meningkatkan jumlah referensinya. |
CertEnumCertificatesInStore | Menghitung konteks sertifikat di penyimpanan sertifikat. |
CertFindCertificateInStore | Menemukan konteks sertifikat pertama, atau berikutnya di penyimpanan sertifikat yang memenuhi kriteria pencarian. |
CertFreeCertificateContext | Membebaskan konteks sertifikat. |
CertGetIssuerCertificateFromStore | Mendapatkan konteks sertifikat dari penyimpanan sertifikat untuk penerbit pertama, atau berikutnya, dari sertifikat subjek yang ditentukan. |
CertGetServerOcspResponseContext | Mengambil konteks respons protokol status sertifikat online (OCSP) yang tidak memblokir waktu yang valid untuk handel yang ditentukan. |
CertGetSubjectCertificateFromStore | Mendapatkan dari penyimpanan sertifikat konteks sertifikat subjek, yang diidentifikasi secara unik oleh penerbit dan nomor serinya. |
CertGetValidUsages | Mengembalikan array penggunaan yang terdiri dari persimpangan penggunaan yang valid untuk semua sertifikat dalam array sertifikat. |
CertOpenServerOcspResponse | Membuka handel ke respons protokol status sertifikat online (OCSP) yang terkait dengan rantai sertifikat server. |
CertRetrieveLogoOrBiometricInfo | Melakukan pengambilan URL informasi logo atau biometrik yang ditentukan dalam ekstensi sertifikat szOID_LOGOTYPE_EXT atau szOID_BIOMETRIC_EXT . |
CertSelectCertificate | Menyajikan kotak dialog yang memungkinkan pengguna memilih sertifikat dari sekumpulan sertifikat yang cocok dengan kriteria tertentu. |
CertSelectCertificateChains | Mengambil rantai sertifikat berdasarkan kriteria pilihan yang ditentukan. |
CertSelectionGetSerializedBlob | Fungsi pembantu yang digunakan untuk mengambil BLOB sertifikat berseri dari struktur CERT_SELECTUI_INPUT . |
CertSerializeCertificateStoreElement | Menserialisasikan sertifikat yang dikodekan konteks sertifikat dan representasi yang dikodekan dari propertinya. |
CertVerifySubjectCertificateContext | Melakukan pemeriksaan verifikasi yang diaktifkan pada sertifikat subjek menggunakan penerbit. |
CryptUIDlgCertMgr | Menampilkan kotak dialog yang memungkinkan pengguna mengelola sertifikat. |
CryptUIDlgSelectCertificate | Menampilkan kotak dialog yang memungkinkan pengguna memilih sertifikat. |
CryptUIDlgSelectCertificateFromStore | Menampilkan kotak dialog yang memperbolehkan pemilihan sertifikat dari penyimpanan tertentu. |
CryptUIDlgViewCertificate | Menyajikan kotak dialog yang menampilkan sertifikat tertentu. |
CryptUIDlgViewContext | Menampilkan sertifikat, CRL, atau CTL. |
CryptUIDlgViewSignerInfo | Menampilkan kotak dialog yang berisi informasi penanda tangan untuk pesan yang ditandatangani. |
GetFriendlyNameOfCert | Mengambil nama tampilan untuk sertifikat. |
RKeyCloseKeyService | Menutup handel layanan utama. |
RKeyOpenKeyService | Membuka handel layanan kunci pada komputer jarak jauh. |
RKeyPFXInstall | Menginstal sertifikat pada komputer jarak jauh. |
Fungsi Daftar Pencabutan Sertifikat
Fungsi-fungsi ini mengelola penyimpanan dan pengambilan daftar pencabutan sertifikat (CRL).
Fungsi | Deskripsi |
---|---|
CertAddCRLContextToStore | Menambahkan konteks CRL ke penyimpanan sertifikat. |
CertAddCRLLinkToStore | Menambahkan tautan di toko ke konteks CRL di penyimpanan yang berbeda. |
CertAddEncodedCRLToStore | Mengonversi CRL yang dikodekan ke konteks CRL, lalu menambahkan konteks ke penyimpanan sertifikat. |
CertCreateCRLContext | Membuat konteks CRL dari CRL yang dikodekan. Konteks yang dibuat tidak dimasukkan ke dalam penyimpanan sertifikat. |
CertDeleteCRLFromStore | Menghapus CRL dari penyimpanan sertifikat. |
CertDuplicateCRLContext | Menduplikasi konteks CRL dengan meningkatkan jumlah referensi. |
CertEnumCRLsInStore | Menghitung konteks CRL di penyimpanan. |
CertFindCertificateInCRL | Mencari daftar pencabutan sertifikat (CRL) untuk sertifikat yang ditentukan. |
CertFindCRLInStore | Menemukan konteks CRL pertama, atau berikutnya di penyimpanan sertifikat yang cocok dengan kriteria tertentu. |
CertFreeCRLContext | Membebaskan konteks CRL. |
CertGetCRLFromStore | Mendapatkan konteks CRL pertama, atau berikutnya dari penyimpanan sertifikat untuk sertifikat penerbit yang ditentukan. |
CertSerializeCRLStoreElement | Menserialisasikan CRL yang dikodekan konteks CRL dan propertinya. |
Fungsi Daftar Kepercayaan Sertifikat
Fungsi-fungsi ini mengelola penyimpanan dan pengambilan daftar kepercayaan sertifikat (CTL).
Fungsi | Deskripsi |
---|---|
CertAddCTLContextToStore | Menambahkan konteks CTL ke penyimpanan sertifikat. |
CertAddCTLLinkToStore | Menambahkan tautan di toko ke konteks CRL di penyimpanan yang berbeda. |
CertAddEncodedCTLToStore | Mengonversi CTL yang dikodekan ke konteks CTL, lalu menambahkan konteks ke penyimpanan sertifikat. |
CertCreateCTLContext | Membuat konteks CTL dari daftar kepercayaan sertifikat yang dikodekan. Konteks yang dibuat tidak dimasukkan ke dalam penyimpanan sertifikat. |
CertDeleteCTLFromStore | Menghapus CTL dari penyimpanan sertifikat. |
CertDuplicateCTLContext | Menduplikasi konteks CTL dengan meningkatkan jumlah referensi. |
CertEnumCTLsInStore | Menghitung konteks CTL di penyimpanan sertifikat. |
CertFindCTLInStore | Menemukan konteks CTL pertama, atau berikutnya di penyimpanan sertifikat yang cocok dengan kriteria tertentu. |
CertFreeCTLContext | Membebaskan konteks CTL. |
CertModifyCertificatesToTrust | Memodifikasi sekumpulan sertifikat dalam CTL untuk tujuan tertentu. |
CertSerializeCTLStoreElement | Menserialisasikan CTL yang dikodekan konteks CTL dan propertinya. |
Fungsi Properti yang Diperluas
Fungsi berikut bekerja dengan properti sertifikat, CRL, dan CTL yang diperluas.
Fungsi | Deskripsi |
---|---|
CertEnumCertificateContextProperties | Menghitung properti untuk konteks sertifikat yang ditentukan. |
CertEnumCRLContextProperties | Menghitung properti untuk konteks CRL yang ditentukan. |
CertEnumCTLContextProperties | Menghitung properti untuk konteks CTL yang ditentukan. |
CertGetCertificateContextProperty | Mengambil properti sertifikat. |
CertGetCRLContextProperty | Mengambil properti CRL. |
CertGetCTLContextProperty | Mengambil properti CTL. |
CertSetCertificateContextProperty | Mengatur properti sertifikat. |
CertSetCRLContextProperty | Mengatur properti CRL. |
CertSetCTLContextProperty | Mengatur properti CTL. |
Fungsi MakeCert
Fungsi berikut mendukung alat MakeCert .
Fungsi | Deskripsi |
---|---|
FreeCryptProvFromCert | Merilis handel ke penyedia layanan kriptografi (CSP) dan secara opsional menghapus kontainer sementara yang dibuat oleh fungsi GetCryptProvFromCert . |
GetCryptProvFromCert | Mendapatkan handel ke CSP dan spesifikasi kunci untuk konteks sertifikat. |
PvkFreeCryptProv | Merilis handel ke CSP dan secara opsional menghapus kontainer sementara yang dibuat oleh fungsi PvkGetCryptProv . |
PvkGetCryptProv | Mendapatkan handel ke CSP berdasarkan nama file kunci privat atau nama kontainer kunci. |
PvkPrivateKeyAcquireContextFromMemory | Membuat kontainer sementara di CSP dan memuat kunci privat dari memori ke dalam kontainer. |
PvkPrivateKeySave | Menyimpan kunci privat dan kunci publik yang sesuai ke file tertentu. |
SignError | Memanggil GetLastError dan mengonversi kode pengembalian ke HRESULT. |
Fungsi Verifikasi Sertifikat
Sertifikat diverifikasi menggunakan CTL atau rantai sertifikat. Fungsi disediakan untuk kedua hal ini:
- Fungsi Verifikasi Menggunakan CTL
- Fungsi Verifikasi Rantai Sertifikat
Fungsi Verifikasi Menggunakan CTL
Fungsi-fungsi ini menggunakan CCL dalam proses verifikasi. Fungsi tambahan untuk bekerja dengan CCL dapat ditemukan di Fungsi Daftar Kepercayaan Sertifikat dan Fungsi Properti yang Diperluas.
Fungsi berikut menggunakan CTL secara langsung untuk verifikasi.
Fungsi | Deskripsi |
---|---|
CertVerifyCTLUsage | Memverifikasi penggunaan CTL. |
CryptMsgEncodeAndSignCTL | Mengodekan dan menandatangani CTL sebagai pesan. |
CryptMsgGetAndVerifySigner | Mengambil dan memverifikasi CTL dari pesan. |
CryptMsgSignCTL | Menandatangani pesan yang berisi CTL. |
Fungsi Verifikasi Rantai Sertifikat
Rantai sertifikat dibuat untuk memberikan informasi kepercayaan tentang sertifikat individual.
Nama Fungsi | Deskripsi |
---|---|
CertCreateCertificateChainEngine | Membuat mesin rantai nondefault baru untuk aplikasi. |
CertCreateCTLEntryFromCertificateContextProperties | Membuat entri CTL yang atributnya adalah properti konteks sertifikat. |
CertDuplicateCertificateChain | Menduplikasi rantai sertifikat dengan meningkatkan jumlah referensi rantai dan mengembalikan pointer ke rantai. |
CertFindChainInStore | Menemukan konteks rantai sertifikat pertama, atau berikutnya di penyimpanan. |
CertFreeCertificateChain | Membebaskan rantai sertifikat dengan mengurangi jumlah referensinya. |
CertFreeCertificateChainEngine | Membebaskan mesin rantai sertifikat nondefault. |
CertFreeCertificateChainList | Membebaskan array pointer ke konteks rantai. |
CertGetCertificateChain | Membangun konteks rantai mulai dari sertifikat akhir dan kembali ke sertifikat akar tepercaya, jika memungkinkan. |
CertIsValidCRLForCertificate | Memeriksa CRL untuk menentukan apakah akan menyertakan sertifikat tertentu jika sertifikat tersebut dicabut. |
CertSetCertificateContextPropertiesFromCTLEntry | Mengatur properti pada konteks sertifikat menggunakan atribut dalam entri CTL. |
CertVerifyCertificateChainPolicy | Memeriksa rantai sertifikat untuk memverifikasi validitasnya, termasuk kepatuhannya terhadap kriteria kebijakan validitas yang ditentukan. |
Fungsi Pesan
Fungsi pesan CryptoAPI terdiri dari dua grup fungsi: fungsi pesan tingkat rendah dan fungsi pesan yang disederhanakan.
Fungsi pesan tingkat rendah membuat dan bekerja langsung dengan pesan PKCS #7. Fungsi-fungsi ini mengodekan data PKCS #7 untuk transmisi dan dekode data PKCS #7 yang diterima. Mereka juga mendekripsi dan memverifikasi tanda tangan pesan yang diterima. Untuk gambaran umum pesan standar dan tingkat rendah PKCS #7, lihat Pesan tingkat rendah.
Fungsi pesan yang disederhanakan berada pada tingkat yang lebih tinggi dan membungkus beberapa fungsi pesan tingkat rendah dan fungsi sertifikat menjadi fungsi tunggal yang melakukan tugas tertentu dengan cara tertentu. Fungsi-fungsi ini mengurangi jumlah panggilan fungsi yang diperlukan untuk menyelesaikan tugas, sehingga menyederhanakan penggunaan CryptoAPI. Untuk gambaran umum pesan yang disederhanakan, lihat Pesan Yang Disederhanakan.
- Fungsi Pesan tingkat rendah
- Fungsi Pesan yang Disederhanakan
Fungsi Pesan tingkat rendah
Fungsi pesan tingkat rendah menyediakan fungsionalitas yang diperlukan untuk mengodekan data untuk transmisi dan untuk mendekode pesan PKCS #7 yang diterima. Fungsionalitas juga disediakan untuk mendekripsi dan memverifikasi tanda tangan pesan yang diterima. Penggunaan fungsi pesan tingkat rendah ini di sebagian besar aplikasi tidak disarankan. Untuk sebagian besar aplikasi, penggunaan Fungsi Pesan Yang Disederhanakan, yang membungkus beberapa fungsi pesan tingkat rendah ke dalam satu panggilan fungsi, lebih disukai.
Fungsi | Deskripsi |
---|---|
CryptMsgCalculateEncodedLength | Menghitung panjang pesan kriptografi yang dikodekan. |
CryptMsgClose | Menutup handel pesan kriptografi. |
CryptMsgControl | Melakukan fungsi kontrol khusus setelah CryptMsgUpdate akhir dari pesan kriptografi yang dikodekan atau didekodekan. |
CryptMsgCountersign | Mengimbangi tanda tangan yang sudah ada dalam pesan. |
CryptMsgCountersignEncoded | Mengimbangi tanda tangan yang sudah ada (SignerInfo yang dikodekan, seperti yang didefinisikan oleh PKCS #7). |
CryptMsgDuplicate | Menduplikasi handel pesan kriptografi dengan meningkatkan jumlah referensi. Jumlah referensi melacak masa pakai pesan. |
CryptMsgGetParam | Memperoleh parameter setelah mengodekan atau mendekode pesan kriptografi. |
CryptMsgOpenToDecode | Membuka pesan kriptografi untuk pendekodean. |
CryptMsgOpenToEncode | Membuka pesan kriptografi untuk pengodean. |
CryptMsgUpdate | Updates isi pesan kriptografi. |
CryptMsgVerifyCountersignatureEncoded | Memverifikasi countersignature dalam hal struktur SignerInfo (seperti yang didefinisikan oleh PKCS #7). |
CryptMsgVerifyCountersignatureEncodedEx | Memverifikasi bahwa parameter pbSignerInfoCounterSignature berisi hash terenkripsi dari bidang encryptedDigest dari struktur parameter pbSignerInfo . |
Fungsi Pesan Yang Disederhanakan
Fungsi pesan yang disederhanakan membungkus Fungsi Pesan Tingkat Rendah ke dalam satu fungsi untuk menyelesaikan tugas tertentu.
Fungsi | Deskripsi |
---|---|
CryptDecodeMessage | Mendekode pesan kriptografi. |
CryptDecryptAndVerifyMessageSignature | Mendekripsi pesan yang ditentukan, dan memverifikasi penanda tangan. |
CryptDecryptMessage | Mendekripsi pesan yang ditentukan. |
CryptEncryptMessage | Mengenkripsi pesan untuk penerima atau penerima. |
CryptGetMessageCertificates | Mengembalikan penyimpanan sertifikat yang berisi sertifikat dan CRL pesan. |
CryptGetMessageSignerCount | Mengembalikan jumlah penanda tangan dalam pesan yang ditandatangani. |
CryptHashMessage | Membuat hash pesan. |
CryptSignAndEncryptMessage | Menandatangani pesan, lalu mengenkripsinya untuk penerima atau penerima. |
CryptSignMessageWithKey | Menandatangani pesan menggunakan kunci privat CSP yang ditentukan dalam parameter ke fungsi. |
CryptSignMessage | Menandatangani pesan. |
CryptVerifyDetachedMessageHash | Memverifikasi pesan hash yang berisi hash yang dilepas. |
CryptVerifyDetachedMessageSignature | Memverifikasi pesan bertanda tangan yang berisi tanda tangan atau tanda tangan yang dilepas. |
CryptVerifyMessageHash | Memverifikasi pesan yang di-hash. |
CryptVerifyMessageSignature | Memverifikasi pesan yang ditandatangani. |
CryptVerifyMessageSignatureWithKey | Memverifikasi tanda tangan pesan yang ditandatangani dengan menggunakan informasi kunci publik tertentu. |
Fungsi Tambahan
Fungsi tambahan dikelompokkan sebagai berikut:
- Fungsi Manajemen Data
- Fungsi Konversi Data
- Fungsi Penggunaan Kunci yang Disempurnakan
- Fungsi Pengidentifikasi Kunci
- Fungsi Dukungan OID
- Fungsi Pengambilan Objek Jarak Jauh
- Fungsi PFX
Fungsi Manajemen Data
Fungsi CryptoAPI berikut mengelola data dan sertifikat.
Fungsi | Deskripsi |
---|---|
CertCompareCertificate | Membandingkan dua sertifikat untuk menentukan apakah sertifikat tersebut identik. |
CertCompareCertificateName | Membandingkan dua nama sertifikat untuk menentukan apakah nama tersebut identik. |
CertCompareIntegerBlob | Membandingkan dua BLOB bilangan bulat. |
CertComparePublicKeyInfo | Membandingkan dua kunci publik untuk menentukan apakah kunci tersebut identik. |
CertFindAttribute | Menemukan atribut pertama yang diidentifikasi oleh pengidentifikasi objeknya (OID). |
CertFindExtension | Menemukan ekstensi pertama yang diidentifikasi oleh OID-nya. |
CertFindRDNAttr | Menemukan atribut RDN pertama yang diidentifikasi oleh OID-nya dalam daftar nama Relative Distinguished Names. |
CertGetIntendedKeyUsage | Memperoleh byte penggunaan kunci yang dimaksudkan dari sertifikat. |
CertGetPublicKeyLength | Memperoleh panjang bit kunci publik/privat dari BLOB kunci publik. |
CertIsRDNAttrsInCertificateName | Membandingkan atribut dalam nama sertifikat dengan CERT_RDN yang ditentukan untuk menentukan apakah semua atribut disertakan di sana. |
CertIsStrongHashToSign | Menentukan apakah algoritma hash yang ditentukan dan kunci umum dalam sertifikat penandatanganan dapat digunakan untuk melakukan penandatanganan yang kuat. |
CertVerifyCRLRevocation | Memverifikasi bahwa sertifikat subjek tidak ada dalam daftar pencabutan sertifikat (CRL). |
CertVerifyCRLTimeValidity | Memverifikasi validitas waktu CRL. |
CertVerifyRevocation | Memverifikasi bahwa sertifikat subjek tidak ada di CRL. |
CertVerifyTimeValidity | Memverifikasi validitas waktu sertifikat. |
CertVerifyValidityNesting | Memverifikasi bahwa validitas waktu subjek bersarang dalam validitas waktu pengeluar sertifikat. |
CryptExportPKCS8 | Fungsi ini digantikan oleh fungsi CryptExportPKCS8Ex . |
CryptExportPKCS8Ex | Mengekspor kunci privat dalam format PKCS #8. |
CryptExportPublicKeyInfo | Mengekspor informasi kunci publik yang terkait dengan kunci privat penyedia yang sesuai. |
CryptExportPublicKeyInfoEx | Mengekspor informasi kunci publik yang terkait dengan kunci privat penyedia yang sesuai. Fungsi ini berbeda dari CryptExportPublicKeyInfo karena pengguna dapat menentukan algoritma kunci publik, sehingga menimpa default yang disediakan oleh CSP. |
CryptExportPublicKeyInfoFromBCryptKeyHandle | Mengekspor info kunci publik yang terkait dengan kunci privat penyedia yang sesuai. |
CryptFindCertificateKeyProvInfo | Menghitung penyedia kriptografi dan kontainer utamanya untuk menemukan kunci privat yang sesuai dengan kunci umum sertifikat. |
CryptFindLocalizedName | Menemukan nama yang dilokalkan untuk nama tertentu, misalnya, menemukan nama yang dilokalkan untuk nama penyimpanan sistem Akar. |
CryptHashCertificate |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Hash konten yang dikodekan. |
CryptHashCertificate2 | Hash blok data dengan menggunakan penyedia hash Cryptography API: Next Generation (CNG). |
CryptHashPublicKeyInfo |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menghitung hash informasi kunci publik yang dikodekan. |
CryptHashToBesigned |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Menghitung hash informasi "yang akan ditandatangani" dalam konten bertanda tangan yang dikodekan (CERT_SIGNED_CONTENT_INFO). |
CryptImportPKCS8 |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mengimpor kunci privat dalam format PKCS #8 ke penyedia layanan kriptografi (CSP). |
CryptImportPublicKeyInfo |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mengonversi dan mengimpor informasi kunci publik ke penyedia, dan mengembalikan handel kunci publik. |
CryptImportPublicKeyInfoEx |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mengonversi dan mengimpor informasi kunci publik ke penyedia, dan mengembalikan handel kunci publik. Parameter tambahan (atas yang ditentukan oleh CryptImportPublicKeyInfo) yang dapat digunakan untuk mengambil alih default disediakan untuk melengkapi CERT_PUBLIC_KEY_INFO. |
CryptImportPublicKeyInfoEx2 | Mengimpor kunci publik ke penyedia asimetris CNG. |
CryptMemAlloc | Mengalokasikan memori untuk buffer. Memori ini digunakan oleh semua fungsi Crypt32.lib yang mengembalikan buffer yang dialokasikan. |
CryptMemFree | Membebaskan memori yang dialokasikan oleh CryptMemAlloc atau CryptMemRealloc. |
CryptMemRealloc | Membebaskan memori yang saat ini dialokasikan untuk buffer, dan mengalokasikan memori untuk buffer baru. |
CryptQueryObject |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mengambil informasi tentang konten BLOB atau file. |
CryptSignAndEncodeCertificate | Mengodekan informasi "yang akan ditandatangani", menandatangani informasi yang dikodekan ini, dan mengodekan informasi yang ditandatangani dan dikodekan yang dihasilkan. |
CryptSignCertificate | Menandatangani informasi "yang akan ditandatangani" dalam konten yang dikodekan dan ditandatangani. |
CryptSIPAddProvider | Menambahkan Paket Antarmuka Subjek (SIP). |
CryptSIPCreateIndirectData | Mengembalikan struktur SIP_INDIRECT_DATA yang berisi hash struktur SIP_SUBJECTINFO yang disediakan, algoritma hash, dan atribut pengodean. Hash dapat digunakan sebagai referensi tidak langsung ke data. |
CryptSIPGetCaps | Mengambil kemampuan SIP. |
CryptSIPGetSignedDataMsg | Mengambil tanda tangan Authenticode dari file. |
CryptSIPLoad | Memuat pustaka tautan dinamis yang mengimplementasikan paket antarmuka subjek dan menetapkan fungsi ekspor pustaka yang sesuai ke struktur SIP_DISPATCH_INFO . |
CryptSIPPutSignedDataMsg | Menyimpan Tanda Tangan Authenticode dalam file target. |
CryptSIPRemoveProvider | Menghapus SIP yang ditambahkan oleh panggilan sebelumnya ke fungsi CryptSIPAddProvider . |
CryptSIPRemoveSignedDataMsg | Menghapus tanda tangan Authenticode yang ditentukan. |
CryptSIPRetrieveSubjectGuid | Mengambil GUID berdasarkan informasi header dalam file tertentu. |
CryptSIPRetrieveSubjectGuidForCatalogFile | Mengambil GUID subjek yang terkait dengan file yang ditentukan. |
CryptSIPVerifyIndirectData | Memvalidasi data hash tidak langsung terhadap subjek yang disediakan. |
CryptUpdateProtectedState | Memigrasikan kunci master pengguna saat ini setelah pengidentifikasi keamanan (SID) pengguna berubah. |
CryptVerifyCertificateSignature | Memverifikasi tanda tangan sertifikat subjek atau CRL dengan menggunakan informasi kunci publik. |
CryptVerifyCertificateSignatureEx | Versi yang diperluas dari CryptVerifyCertificateSignature. |
GetEncSChannel | Menyimpan konten Schannel DLL terenkripsi dalam memori. |
pCryptSIPGetCaps | Diimplementasikan oleh SIP untuk melaporkan kemampuan. |
Fungsi Konversi Data
Fungsi CryptoAPI berikut mengonversi anggota struktur sertifikat ke formulir yang berbeda.
Fungsi | Deskripsi |
---|---|
CertAlgIdToOID | Mengonversi pengidentifikasi algoritma CryptoAPI (ALG_ID) menjadi string pengidentifikasi objek (OID) Abstract Syntax Notation One (ASN.1). |
CertGetNameString | Memperoleh nama subjek atau pengeluar sertifikat dari sertifikat, dan mengonversinya menjadi string karakter yang dihentikan null. |
CertNameToStr | Mengonversi BLOB nama sertifikat menjadi string yang dihentikan nol. |
CertOIDToAlgId | Mengonversi string Pengidentifikasi Objek ASN.1 ke pengidentifikasi algoritma CSP. |
CertRDNValueToStr | Mengonversi Nilai Nama menjadi string yang dihentikan null. |
CertStrToName | Mengonversi string X.500 yang dihentikan null menjadi nama sertifikat yang dikodekan. |
CryptBinaryToString | Mengonversi urutan biner menjadi string yang diformat. |
CryptFormatObject | Memformat data yang dikodekan, dan mengembalikan string Unicode. |
CryptStringToBinary | Mengonversi string yang diformat menjadi urutan biner. |
Fungsi Penggunaan Kunci yang Disempurnakan
Fungsi berikut menangani ekstensi penggunaan kunci yang disempurnakan (EKU) dan properti sertifikat EKU yang diperluas. Ekstensi EKU dan properti yang diperluas menentukan dan membatasi penggunaan sertifikat yang valid. Ekstensi adalah bagian dari sertifikat itu sendiri. Mereka ditetapkan oleh penerbit sertifikat dan bersifat baca-saja. Properti yang diperluas sertifikat adalah nilai yang terkait dengan sertifikat yang dapat diatur dalam aplikasi.
Fungsi | Deskripsi |
---|---|
CertAddEnhancedKeyUsageIdentifier | Menambahkan pengidentifikasi penggunaan ke properti EKU sertifikat. |
CertGetEnhancedKeyUsage | Memperoleh, dari sertifikat, informasi tentang ekstensi atau properti EKU. |
CertRemoveEnhancedKeyUsageIdentifier | Menghapus pengidentifikasi penggunaan dari properti yang diperluas EKU sertifikat. |
CertSetEnhancedKeyUsage | Mengatur properti EKU untuk sertifikat. |
Fungsi Pengidentifikasi Kunci
Fungsi pengidentifikasi kunci memungkinkan pengguna untuk membuat, mengatur, mengambil, atau menemukan pengidentifikasi kunci atau propertinya.
Pengidentifikasi kunci adalah pengidentifikasi unik dari pasangan kunci publik/privat. Ini bisa menjadi pengidentifikasi unik apa pun tetapi biasanya hash SHA1 20 byte dari struktur CERT_PUBLIC_KEY_INFO yang dikodekan. Pengidentifikasi kunci dapat diperoleh melalui CERT_KEY_IDENTIFIER_PROP_ID sertifikat. Pengidentifikasi kunci memungkinkan penggunaan pasangan kunci tersebut untuk mengenkripsi atau mendekripsi pesan tanpa menggunakan sertifikat.
Pengidentifikasi kunci tidak terkait dengan CRL atau CTL.
Pengidentifikasi kunci dapat memiliki properti yang sama dengan konteks sertifikat. Untuk informasi selengkapnya, lihat CertCreateContext.
Fungsi | Deskripsi |
---|---|
CryptCreateKeyIdentifierFromCSP |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Membuat pengidentifikasi kunci dari BLOB kunci publik CSP. |
CryptEnumKeyIdentifierProperties | Menghitung pengidentifikasi utama dan propertinya. |
CryptGetKeyIdentifierProperty |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Memperoleh properti tertentu dari pengidentifikasi kunci tertentu. |
CryptSetKeyIdentifierProperty |
Penting: API ini tidak digunakan lagi. Perangkat lunak baru dan yang sudah ada harus mulai menggunakan Cryptography Next Generation API. Microsoft dapat menghapus API ini dalam rilis mendatang. Mengatur properti pengidentifikasi kunci tertentu. |
Fungsi Dukungan OID
Fungsi-fungsi ini menyediakan dukungan pengidentifikasi objek (OID). Fungsi-fungsi ini menginstal, mendaftarkan, dan mengirimkan ke OID dan pengodean fungsi khusus jenis.
Fungsi CryptoAPI berikut menggunakan fungsi dukungan OID ini:
- CryptEncodeObject
- CryptEncodeObjectEx
- CryptDecodeObject
- CryptDecodeObjectEx
- CertVerifyRevocation
- CertOpenStore
Untuk gambaran umum proses ini, lihat Memperluas Fungsionalitas CryptoAPI.
Fungsi berikut berfungsi dengan OID.
Fungsi | Deskripsi |
---|---|
CryptEnumOIDFunction | Menghitung fungsi OID terdaftar yang diidentifikasi oleh jenis pengodean, nama fungsi, dan OID mereka. |
CryptEnumOIDInfo | Menghitung informasi OID terdaftar yang diidentifikasi oleh grup mereka, dan memanggil pfnEnumOIDInfo untuk kecocokan. |
CryptFindOIDInfo | Menggunakan kunci dan grup yang ditentukan untuk menemukan informasi OID. |
CryptFreeOIDFunctionAddress | Merilis jumlah handel yang bertambah dan dikembalikan oleh CryptGetOIDFunctionAddress atau CryptGetDefaultOIDFunctionAddress. |
CryptGetDefaultOIDDllList | Memperoleh daftar entri DLL default terdaftar untuk set fungsi dan jenis pengodean yang ditentukan. |
CryptGetDefaultOIDFunctionAddress | Memperoleh fungsi default pertama atau berikutnya yang diinstal, atau memuat DLL yang berisi fungsi default. |
CryptGetOIDFunctionAddress | Mencari daftar fungsi yang diinstal untuk jenis pengodean dan kecocokan OID. Jika kecocokan tidak ditemukan di sana, registri akan mencari kecocokan. |
CryptGetOIDFunctionValue | Memperoleh nilai untuk jenis pengodean, nama fungsi, OID, dan nama nilai yang ditentukan. |
CryptInitOIDFunctionSet | Menginisialisasi dan mengembalikan handel set fungsi OID yang diidentifikasi oleh nama fungsi yang disediakan. |
CryptInstallOIDFunctionAddress | Menginstal sekumpulan alamat fungsi OID yang dapat dipanggil. |
CryptRegisterDefaultOIDFunction | Mendaftarkan DLL yang berisi fungsi default yang akan dipanggil untuk jenis pengodean dan nama fungsi yang ditentukan. |
CryptRegisterOIDFunction | Mendaftarkan DLL yang berisi fungsi yang akan dipanggil untuk jenis pengodean, nama fungsi, dan OID yang ditentukan. |
CryptRegisterOIDInfo | Mendaftarkan informasi OID yang ditentukan dalam struktur CRYPT_OID_INFO , mempertahankannya ke registri. |
CryptSetOIDFunctionValue | Mengatur nilai untuk jenis pengodean, nama fungsi, OID, dan nama nilai yang ditentukan. |
CryptUnregisterDefaultOIDFunction | Menghapus pendaftaran untuk DLL yang berisi fungsi default yang akan dipanggil untuk jenis pengodean dan nama fungsi yang ditentukan. |
CryptUnregisterOIDFunction | Menghapus pendaftaran untuk DLL yang berisi fungsi yang akan dipanggil untuk jenis pengodean, nama fungsi, dan OID yang ditentukan. |
CryptUnregisterOIDInfo | Menghapus pendaftaran untuk informasi OID yang ditentukan. |
Fungsi Pengambilan Objek Jarak Jauh
Fungsi berikut memungkinkan pengguna untuk mengambil objek Public Key Infrastructure (PKI), memperoleh URL sertifikat, CTL, atau CRL, atau mengekstrak URL dari objek.
Fungsi | Deskripsi |
---|---|
CryptGetObjectUrl | Memperoleh URL objek jarak jauh dari sertifikat, CTL, atau CRL. |
CryptRetrieveObjectByUrl | Mengambil objek PKI dari lokasi yang ditentukan oleh URL. |
Fungsi PFX
Fungsi berikut mendukung BLOB format Personal Information Exchange (PFX).
Fungsi | Deskripsi |
---|---|
PFXExportCertStore | Ekspor dari sertifikat yang dirujuk menyimpan sertifikat dan, jika tersedia, kunci privat terkait. |
PFXExportCertStoreEx | Ekspor dari sertifikat yang dirujuk menyimpan sertifikat dan, jika tersedia, kunci privat terkait. |
PFXImportCertStore | Mengimpor BLOB PFX, dan mengembalikan handel penyimpanan yang berisi sertifikat dan kunci privat terkait. |
PFXIsPFXBlob | Mencoba mendekode lapisan luar BLOB sebagai paket PFX. |
PFXVerifyPassword | Mencoba mendekode lapisan luar BLOB sebagai paket PFX dan mendekripsinya dengan kata sandi yang diberikan. |
Fungsi Pencadangan dan Pemulihan Layanan Sertifikat
Layanan Sertifikat mencakup fungsi untuk mencadangkan dan memulihkan database Layanan Sertifikat. Fungsi pencadangan dan pemulihan Layanan Sertifikat ini terkandung dalam Certadm.dll. Tidak seperti elemen API lain yang terkait dengan Layanan Sertifikat, fungsi-fungsi ini tidak dienkapsulasi dalam objek yang dapat digunakan untuk memanggil metode kelas. Sebagai gantinya, API pencadangan dan pemulihan dipanggil dengan terlebih dahulu memuat pustaka Certadm.dll ke dalam memori dengan memanggil LoadLibrary lalu menentukan alamat fungsi dengan memanggil GetProcAddress. Setelah Anda selesai memanggil fungsi pencadangan dan pemulihan Layanan Sertifikat, panggil FreeLibrary untuk membebaskan sumber daya Certadm.dll dari memori.
Catatan
Fungsi pencadangan dan pemulihan yang disediakan oleh Certadm.dll tidak mencadangkan atau memulihkan kunci privat Layanan Sertifikat. Untuk informasi tentang mencadangkan kunci privat Layanan Sertifikat, lihat Mencadangkan dan Memulihkan Kunci Privat Layanan Sertifikat.
Untuk memanggil fungsi pencadangan dan pemulihan, Anda harus memiliki hak istimewa pencadangan dan pemulihan. Untuk detailnya, lihat Mengatur Hak Istimewa Pencadangan dan Pemulihan.
Catatan
Jika CoInitializeEx sebelumnya dipanggil dalam utas yang sama yang digunakan untuk memanggil API pencadangan dan pemulihan Layanan Sertifikat, bendera COINIT_APARTMENTTHREADED harus diteruskan ke CoInitializeEx. Artinya, saat menggunakan utas yang sama, Anda tidak dapat memanggil API pencadangan dan pemulihan Layanan Sertifikat jika utas sebelumnya telah diteruskan dalam bendera COINIT_MULTITHREADED dalam panggilan ke CoInitializeEx.
API Pencadangan Layanan Sertifikat didefinisikan dalam Certbcli.h. Namun, saat Anda membuat program, gunakan Certsrv.h sebagai file sertakan.
API berikut diekspor oleh Certadm.dll.
Fungsi | Deskripsi |
---|---|
CertSrvBackupClose | Menutup file yang dibuka. |
CertSrvBackupEnd | Mengakhiri sesi pencadangan. |
CertSrvBackupFree | Membebaskan buffer yang dialokasikan oleh API pencadangan dan pemulihan. |
CertSrvBackupGetBackupLogs | Mengembalikan daftar file log yang perlu dicadangkan. |
CertSrvBackupGetDatabaseNames | Mengembalikan daftar file database yang perlu dicadangkan. |
CertSrvBackupGetDynamicFileList | Mengambil daftar nama file dinamis Layanan Sertifikat yang perlu dicadangkan untuk konteks pencadangan yang diberikan. |
CertSrvBackupOpenFile | Membuka file sebagai persiapan untuk mencadangkannya. |
CertSrvBackupPrepare | Menyiapkan database untuk pencadangan online. |
CertSrvBackupRead | Membaca isi file yang dibuka. |
CertSrvBackupTruncateLogs | Memotong file log. |
CertSrvIsServerOnline | Menentukan apakah server Layanan Sertifikat sedang online (berjalan secara aktif). |
CertSrvRestoreEnd | Mengakhiri sesi pemulihan. |
CertSrvRestoreGetDatabaseLocations | Mengambil lokasi database (digunakan untuk skenario pencadangan dan pemulihan). |
CertSrvRestorePrepare | Memulai sesi pemulihan. |
CertSrvRestoreRegister | Mendaftarkan operasi pemulihan. |
CertSrvRestoreRegisterComplete | Menyelesaikan operasi pemulihan yang terdaftar sebelumnya. |
CertSrvRestoreRegisterThroughFile | Mendaftarkan operasi pemulihan. |
CertSrvServerControl | Mengirim perintah kontrol ke instans Layanan Sertifikat. |
Fungsi Callback
Fungsi panggilan balik di bagian ini digunakan untuk mendaftarkan atau menginstal penyedia penyimpanan sertifikat yang ditentukan aplikasi dan untuk menyediakan fungsionalitas terkait melalui fungsi panggilan balik. Fungsi panggilan balik diimplementasikan oleh aplikasi dan dipanggil oleh fungsi CryptoAPI . Fungsi panggilan balik memungkinkan aplikasi untuk mengontrol, sebagian, cara fungsi CryptoAPI memanipulasi data.
Fungsi panggilan balik | Penggunaan |
---|---|
CertChainFindByIssuerCallback | Fungsi panggilan balik yang ditentukan aplikasi yang memungkinkan aplikasi memfilter sertifikat yang mungkin ditambahkan ke rantai sertifikat. |
CertDllOpenStoreProv | Menentukan fungsi buka penyedia toko. |
CertEnumPhysicalStoreCallback | Fungsi panggilan balik yang digunakan oleh fungsi CertEnumPhysicalStore untuk memformat dan menyajikan informasi di setiap penyimpanan fisik yang ditemukan. |
CertEnumSystemStoreCallback | Fungsi panggilan balik yang digunakan oleh fungsi CertEnumSystemStore untuk memformat dan menyajikan informasi di setiap penyimpanan fisik yang ditemukan. |
CertEnumSystemStoreLocationCallback | Fungsi panggilan balik yang digunakan oleh fungsi CertEnumSystemStoreLocation untuk memformat dan menyajikan informasi di setiap penyimpanan fisik yang ditemukan. |
CertStoreProvCloseCallback | Menentukan apa yang terjadi ketika jumlah referensi toko terbuka menjadi nol. |
CertStoreProvControl | Memungkinkan aplikasi untuk diberi tahu ketika ada perbedaan antara konten penyimpanan yang di-cache yang digunakan dan konten penyimpanan tersebut karena disimpan ke penyimpanan. |
CertStoreProvDeleteCertCallback | Menentukan tindakan yang akan diambil sebelum sertifikat dihapus dari penyimpanan sertifikat. |
CertStoreProvDeleteCRLCallback | Menentukan tindakan yang akan diambil sebelum daftar pencabutan sertifikat (CRL) dihapus dari penyimpanan sertifikat. |
CertStoreProvDeleteCTL | Menentukan apakah CTL dapat dihapus. |
CertStoreProvFindCert | Menemukan sertifikat pertama, atau berikutnya di penyimpanan yang cocok dengan kriteria yang ditentukan. |
CertStoreProvFindCRL | Menemukan CRL pertama, atau berikutnya di penyimpanan yang cocok dengan kriteria yang ditentukan. |
CertStoreProvFindCTL | Menemukan CTL pertama, atau berikutnya di penyimpanan yang cocok dengan kriteria yang ditentukan. |
CertStoreProvFreeFindCert | Membebaskan konteks sertifikat yang ditemukan sebelumnya. |
CertStoreProvFreeFindCRL | Membebaskan konteks CRL yang ditemukan sebelumnya. |
CertStoreProvFreeFindCTL | Membebaskan konteks CTL yang ditemukan sebelumnya. |
CertStoreProvGetCertProperty | Mengambil properti sertifikat yang ditentukan. |
CertStoreProvGetCRLProperty | Mengambil properti tertentu dari CRL. |
CertStoreProvGetCTLProperty | Mengambil properti tertentu dari CTL. |
CertStoreProvReadCertCallback | Saat ini tidak digunakan tetapi mungkin diekspor ke CSP di masa mendatang. |
CertStoreProvReadCRLCallback | Saat ini tidak digunakan tetapi mungkin diekspor ke CSP di masa mendatang. |
CertStoreProvReadCTL | Baca salinan konteks CTL penyedia, dan, jika ada, buat konteks CTL baru. |
CertStoreProvSetCertPropertyCallback | Menentukan tindakan yang akan diambil sebelum panggilan ke CertSetCertificateContextProperty atau CertGetCertificateContextProperty. |
CertStoreProvSetCRLPropertyCallback | Menentukan tindakan yang akan diambil sebelum panggilan ke CertSetCRLContextProperty atau CertGetCRLContextProperty. |
CertStoreProvSetCTLProperty | Menentukan apakah properti dapat diatur pada CTL. |
CertStoreProvWriteCertCallback | Menentukan tindakan yang akan diambil sebelum menambahkan sertifikat ke penyimpanan. |
CertStoreProvWriteCRLCallback | Menentukan tindakan yang akan diambil sebelum menambahkan CRL ke penyimpanan. |
CertStoreProvWriteCTL | Menentukan apakah CTL dapat ditambahkan ke penyimpanan. |
CRYPT_ENUM_KEYID_PROP | Fungsi panggilan balik yang digunakan oleh fungsi CryptEnumKeyIdentifierProperties . |
CRYPT_ENUM_OID_FUNCTION | Fungsi panggilan balik yang digunakan oleh fungsi CryptEnumOIDFunction . |
CRYPT_ENUM_OID_INFO | Fungsi panggilan balik yang digunakan oleh fungsi CryptEnumOIDInfo . |
CryptGetSignerCertificateCallback | Fungsi panggilan balik yang digunakan dengan struktur CRYPT_VERIFY_MESSAGE_PARA untuk mendapatkan dan memverifikasi sertifikat penanda tangan pesan. |
PCRYPT_DECRYPT_PRIVATE_KEY_FUNC | Fungsi panggilan balik yang digunakan oleh fungsi CryptImportPKCS8 . |
PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC | Fungsi panggilan balik yang digunakan saat membuat struktur CRYPT_ENCRYPTED_PRIVATE_KEY_INFO . |
PCRYPT_RESOLVE_HCRYPTPROV_FUNC | Fungsi panggilan balik yang digunakan oleh fungsi CryptImportPKCS8 . |
PFN_CDF_PARSE_ERROR_CALLBACK | Fungsi yang ditentukan pengguna yang disebut untuk kesalahan Fungsi Definisi Katalog saat mengurai file definisi katalog (CDF). |
PFN_CERT_CREATE_CONTEXT_SORT_FUNC | Dipanggil untuk setiap entri konteks yang diurutkan saat konteks dibuat. |
PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY | Fungsi pengidentifikasi objek CNG (OID) yang dapat diinstal untuk mengimpor kunci enkripsi konten (CEK) yang sudah didekripsi. |
PFN_CMSG_CNG_IMPORT_KEY_AGREE | Mengimpor kunci enkripsi konten untuk penerima transportasi kunci pesan yang diselimuti. |
PFN_CMSG_CNG_IMPORT_KEY_TRANS | Fungsi yang dapat diinstal CNG OID untuk mengimpor dan mendekripsi kunci-transport-recipient, terenkripsi, kunci enkripsi konten (CEK). |
PFN_CMSG_EXPORT_KEY_AGREE | Mengenkripsi dan mengekspor kunci enkripsi konten untuk penerima perjanjian kunci pesan yang diselimuti. |
PFN_CMSG_EXPORT_KEY_TRANS | Mengenkripsi dan mengekspor kunci enkripsi konten untuk penerima transportasi utama pesan yang diselimuti. |
PFN_CMSG_EXPORT_MAIL_LIST | Mengenkripsi dan mengekspor kunci enkripsi konten untuk penerima milis dari pesan yang diselimuti. |
PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY | Menghasilkan kunci konten yang digunakan untuk mengenkripsi konten untuk pesan yang diselimuti. |
PFN_CMSG_IMPORT_KEY_AGREE | Mengimpor kunci enkripsi konten untuk penerima transportasi kunci pesan yang diselimuti. |
PFN_CMSG_IMPORT_KEY_TRANS | Mengimpor kunci enkripsi konten untuk penerima transportasi kunci pesan yang diselimuti. |
PFN_CMSG_IMPORT_MAIL_LIST | Mengimpor kunci enkripsi konten untuk penerima transportasi kunci pesan yang diselimuti. |
PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC | Dipanggil oleh CryptExportPublicKeyInfoEx untuk mengekspor BLOB kunci publik dan mengodekannya. |
PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC | Dipanggil untuk mendekode dan mengembalikan pengidentifikasi algoritma hash dan secara opsional parameter tanda tangan. |
PFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC | Dipanggil untuk menandatangani dan mengodekan hash komputasi. |
PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC | Dipanggil untuk mendekripsi tanda tangan yang dikodekan dan membandingkannya dengan hash komputasi. |
PFN_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC | Dipanggil oleh CryptImportPublicKeyInfoEx2 untuk mendekode pengidentifikasi algoritma kunci publik , memuat penyedia algoritma, dan mengimpor pasangan kunci. |
PFNCCERTDISPLAYPROC | Fungsi panggilan balik yang ditentukan pengguna yang memungkinkan pemanggil fungsi CryptUIDlgSelectCertificate untuk menangani tampilan sertifikat yang dipilih pengguna untuk dilihat. |
PFNCMFILTERPROC | Memfilter setiap sertifikat untuk memutuskan apakah sertifikat akan muncul dalam kotak dialog pemilihan sertifikat yang ditampilkan oleh fungsi CertSelectCertificate . |
PFNCMHOOKPROC | Dipanggil sebelum pesan diproses oleh kotak dialog pemilihan sertifikat yang dihasilkan oleh fungsi CertSelectCertificate . |
Fungsi Definisi Katalog
Fungsi-fungsi ini digunakan untuk membuat katalog. Semua fungsi ini dipanggil oleh MakeCat.
Fungsi | Deskripsi |
---|---|
CryptCATCDFClose | Menutup file definisi katalog dan membebaskan memori untuk struktur CRYPTCATCDF yang sesuai. |
CryptCATCDFEnumAttributesWithCDFTag | Menghitung atribut file anggota di bagian CatalogFiles dari CDF. |
CryptCATCDFEnumCatAttributes | Menghitung atribut tingkat katalog dalam bagian CatalogHeader dari CDF. |
CryptCATCDFEnumMembersByCDFTagEx | Menghitung anggota file individual di bagian CatalogFiles dari CDF. |
CryptCATCDFOpen | Membuka CDF yang ada untuk membaca dan menginisialisasi struktur CRYPTCATCDF . |
Fungsi Katalog
Fungsi-fungsi ini digunakan untuk mengelola katalog.
Fungsi | Deskripsi |
---|---|
CryptCATAdminAcquireContext | Memperoleh handel ke konteks administrator katalog. Handel ini dapat digunakan oleh panggilan berikutnya ke fungsi CryptCATAdminAddCatalog, CryptCATAdminEnumCatalogFromHash, dan CryptCATAdminRemoveCatalog . |
CryptCATAdminAcquireContext2 | Memperoleh handel ke konteks administrator katalog untuk algoritma hash dan kebijakan hash tertentu. |
CryptCATAdminAddCatalog | Menambahkan katalog ke database katalog. |
CryptCATAdminCalcHashFromFileHandle | Menghitung hash untuk file. |
CryptCATAdminCalcHashFromFileHandle2 | Menghitung hash untuk file dengan menggunakan algoritma yang ditentukan. |
CryptCATAdminEnumCatalogFromHash | Menghitung katalog yang berisi hash tertentu. |
CryptCATAdminReleaseCatalogContext | Merilis handel ke konteks katalog yang sebelumnya dikembalikan oleh fungsi CryptCATAdminAddCatalog . |
CryptCATAdminReleaseContext | Merilis handel yang sebelumnya ditetapkan oleh fungsi CryptCATAdminAcquireContext . |
CryptCATAdminRemoveCatalog | Menghapus file katalog dan menghapus entri katalog tersebut dari database katalog Windows. |
CryptCATAdminResolveCatalogPath | Mengambil jalur katalog yang sepenuhnya memenuhi syarat. |
CryptCATCatalogInfoFromContext | Mengambil informasi katalog dari konteks katalog tertentu. |
CryptCATClose | Menutup handel katalog yang dibuka sebelumnya oleh fungsi CryptCATOpen . |
CryptCATEnumerateAttr | Menghitung atribut yang terkait dengan anggota katalog. |
CryptCATEnumerateCatAttr | Menghitung atribut yang terkait dengan katalog. |
CryptCATEnumerateMember | Menghitung anggota katalog. |
CryptCATGetAttrInfo | Mengambil informasi tentang atribut anggota katalog. |
CryptCATGetMemberInfo | Mengambil informasi anggota dari PKCS katalog #7. Selain mengambil informasi anggota untuk tag referensi tertentu, fungsi ini membuka konteks anggota. |
CryptCATBuka | Membuka katalog, dan mengembalikan handel konteks ke katalog yang terbuka. |
IsCatalogFile | Mengambil nilai Boolean yang menunjukkan apakah file yang ditentukan adalah file katalog. |
Fungsi WinTrust
Fungsi berikut digunakan untuk melakukan berbagai operasi kepercayaan.
Fungsi | Deskripsi |
---|---|
WintrustAddActionID | Menambahkan tindakan penyedia kepercayaan ke sistem pengguna. |
WintrustGetRegPolicyFlags | Mengambil bendera kebijakan untuk penyedia kebijakan. |
WintrustAddDefaultForUsage | Menentukan pengidentifikasi penggunaan default dan informasi panggilan balik untuk penyedia |
WintrustGetDefaultForUsage | Mengambil pengidentifikasi penggunaan default dan informasi panggilan balik. |
WintrustLoadFunctionPointers | Memuat titik entri fungsi untuk GUID tindakan tertentu. |
WintrustRemoveActionID | Menghapus tindakan yang ditambahkan oleh fungsi WintrustAddActionID . |
WintrustSetDefaultIncludePEPageHashes | Mengatur pengaturan default yang menentukan apakah hash halaman disertakan saat membuat data tidak langsung paket antarmuka subjek (SIP) untuk file portabel yang dapat dieksekusi. |
WintrustSetRegPolicyFlags | Menetapkan bendera kebijakan untuk penyedia kebijakan. |
WinVerifyTrust | Melakukan tindakan verifikasi kepercayaan pada objek tertentu. |
WinVerifyTrustEx | Melakukan tindakan verifikasi kepercayaan pada objek tertentu dan membawa penunjuk ke struktur WINTRUST_DATA. |
WTHelperCertCheckValidSignature | Memeriksa apakah tanda tangan valid. |
WTHelperCertFindIssuerCertificate | Menemukan sertifikat pengeluar sertifikat dari penyimpanan sertifikat yang ditentukan yang cocok dengan sertifikat subjek yang ditentukan. |
WTHelperCertIsSelfSigned | Memeriksa apakah sertifikat ditandatangani sendiri. |
WTHelperGetFileHash | Memverifikasi tanda tangan file yang ditandatangani dan mendapatkan nilai hash dan pengidentifikasi algoritma untuk file tersebut. |
WTHelperGetProvCertFromChain | Mengambil sertifikat penyedia kepercayaan dari rantai sertifikat. |
WTHelperGetProvPrivateDataFromChain | Menerima struktur CRYPT_PROVIDER_PRIVDATA dari rantai dengan menggunakan ID penyedia. |
WTHelperGetProvSignerFromChain | Mengambil penanda tangan atau penghitung berdasarkan indeks dari rantai. |
WTHelperProvDataFromStateData | Mengambil informasi penyedia kepercayaan dari handel tertentu. |
Fungsi Pencari Lokasi Objek
Fungsi panggilan balik berikut dapat diimplementasikan oleh penyedia kustom yang dimaksudkan untuk dipanggil oleh paket keamanan Saluran Aman (Schannel) untuk mengambil sertifikat.
Fungsi | Deskripsi |
---|---|
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH | Menentukan bahwa objek telah berubah. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET | Mengambil objek. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE | Merilis penyedia. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD | Merilis kata sandi yang digunakan untuk mengenkripsi array byte PFX. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE | Melepaskan objek yang dikembalikan oleh penyedia. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER | Melepaskan memori untuk pengidentifikasi objek. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE | Menginisialisasi penyedia. |