Externe Eigenschaftenfunktionen
Eigenschaften werden verwendet, um einem Zertifikat einen Wert zu zuordnen. Eigenschaften werden nie an eine Zertifizierungsstelle gesendet oder von ihr verarbeitet, und sie werden nicht in einem Zertifikat gespeichert. In der Regel werden sie einem Zertifikat zugeordnet, nachdem das Zertifikat von der Zertifizierungsstelle empfangen und bevor es in einem Speicher gespeichert wird. Die Eigenschaften werden zusammen mit dem Zertifikat im Speicher gespeichert. CertEnroll.dll implementiert die ICertProperty-Schnittstelle und die folgenden Schnittstellen, die von ICertProperty abgeleitet wurden:
- ICertPropertyArchived
- ICertPropertyArchivedKeyHash
- ICertPropertyAutoEnroll
- ICertPropertyBackedUp
- ICertPropertyDescription
- ICertPropertyEnrollment
- ICertPropertyFriendlyName
- ICertPropertyKeyProvInfo
- ICertPropertyRenewal
- ICertPropertyRequestOriginator
- ICertPropertySHA1Hash
In jedem der folgenden Abschnitte wird eine Funktion identifiziert, die von Xenroll.dll zum Verwalten externer Zertifikateigenschaften exportiert wird. In jedem Abschnitt wird auch erläutert, wie sie CertEnroll.dll funktion ersetzen, oder gibt an, dass keine Zuordnung zwischen den beiden Bibliotheken vorhanden ist:
- addBlobPropertyToCertificateWStr
- GetPrivateKeyArchiveCertificate
- resetBlobProperties
- SetPrivateKeyArchiveCertificate
- SetSignerCertificate
- ThumbPrintWStr
- Zugehörige Themen
addBlobPropertyToCertificateWStr
Die addBlobPropertyToCertificateWStr-Funktion in Xenroll.dll dem Zertifikat eine -Eigenschaft hinzu.
In CertEnroll.dll implementieren alle von ICertProperty abgeleiteten Objekte eine SetValueOnCertificate-Methode, mit der Sie eine Eigenschaft einem Zertifikat zuordnen können. Außerdem implementiert das IX509Enrollment-Objekt direkt die CertificateFriendlyName- und CertificateDescription-Eigenschaften.
GetPrivateKeyArchiveCertificate
Die GetPrivateKeyArchiveCertificate-Funktion in Xenroll.dll das Austauschzertifikat ab, das zum Archivieren eines privaten Schlüssels verwendet wird.
Sie können das IX509CertificateRequestCmc-Objekt in CertEnroll.dll, um eine Anforderung für eine Zertifizierungsstelle zum Archivieren Ihres privaten Schlüssels zu erstellen. Sie müssen ein Austauschzertifikat von der Zertifizierungsstelle abrufen und den in diesem Zertifikat enthaltenen öffentlichen Schlüssel verwenden, um den privaten Schlüssel zu verschlüsseln, den Sie zur Archivierung übermitteln. Rufen Sie zum Angeben oder Abrufen eines Zertifizierungsstellenaustauschzertifikats die KeyArchivalCertificate-Eigenschaft für dieses Objekt auf.
resetBlobProperties
Die resetBlobProperties-Funktion in Xenroll.dll entfernt die Eigenschaftensammlung aus dem Zertifikat.
In CertEnroll.dll implementieren alle von ICertProperty abgeleiteten Eigenschaftenobjekte die RemoveFromCertificate-Eigenschaft, mit der Sie die Zuordnung einer Eigenschaft zu einem Zertifikat entfernen können.
SetPrivateKeyArchiveCertificate
Die Funktion SetPrivateKeyArchiveCertificate in Xenroll.dll ein Austauschzertifikat an, das zum Archivieren eines privaten Schlüssels verwendet wird.
Sie können das IX509CertificateRequestCmc-Objekt in CertEnroll.dll, um eine Anforderung für eine Zertifizierungsstelle zum Archivieren Ihres privaten Schlüssels zu erstellen. Sie müssen ein Austauschzertifikat von der Zertifizierungsstelle abrufen und den in diesem Zertifikat enthaltenen öffentlichen Schlüssel verwenden, um den privaten Schlüssel zu verschlüsseln, den Sie zur Archivierung übermitteln. Rufen Sie zum Angeben oder Abrufen eines Zertifizierungsstellenaustauschzertifikats die KeyArchivalCertificate-Eigenschaft für dieses Objekt auf.
SetSignerCertificate
Die SetSignerCertificate-Funktion in Xenroll.dll Gibt ein Signiererzertifikat an.
Das ISignerCertificate-Objekt in CertEnroll.dll kann verwendet werden, um eine PKCS # 7-,CMC- oder selbstsignierte Zertifikatanforderung zu signieren. Sie können das -Objekt mithilfe eines vorhandenen Signaturzertifikats initialisieren und es einer Anforderung zuordnen, indem Sie eine der folgenden Eigenschaften aufrufen:
- SignerCertificates auf IX509CertificateRequestCmc
- SignerCertificate auf IX509CertificateRequestPkcs7
- SignerCertificate auf IX509CertificateRequestCertificate
Wenn Sie eine CMC-Anforderung aus einer inneren Anforderung und einer Vorlage initialisieren oder eine PKCS 7-Anforderung aus einer vorhandenen Anforderung initialisieren, kann das Signaturzertifikat # festgelegt werden.
ThumbPrintWStr
Die ThumbPrintWStr-Funktion in Xenroll.dll gibt den Wert des Zertifikathashs an oder ruft den Wert ab.
In CertEnroll.dll können Sie das ICertPropertySHA1Hash-Objekt verwenden, um einen Hashwert (Fingerabdruck ) abzurufen, der durch Aufrufen der InitializeFromCertificate-Methode erstellt wurde.