Funktionen des Kryptografiedienstanbieters

In jedem der folgenden Abschnitte wird eine Funktion identifiziert, die von Xenroll.dll, die zum Verwalten eines Kryptografieanbieters verwendet werden kann. In jedem Thema wird auch erläutert, wie sie CertEnroll.dll funktion ersetzen, oder gibt an, dass keine Zuordnung zwischen den beiden Bibliotheken vorhanden ist:

EnumAlgs

Die EnumAlgs-Funktion in Xenroll.dll eine Kryptografiealgorithmussammlung ab.

Wenn Sie CertEnroll.dll, können Sie die folgenden Aktionen ausführen, um Informationen zu den Algorithmen abzurufen, die von einem Kryptografiedienstanbieter (Cryptographic Service Provider, CSP) unterstützt werden:

  1. Rufen Sie die Request-Eigenschaft für ein vorhandenes IX509Enrollment-Objekt auf.
  2. Rufen Sie die GetInnerRequest-Methode für die anforderung auf, die aus Schritt 1 zurückgegeben wurde, um die innerste Anforderung abzurufen.
  3. Rufen Sie QueryInterface für das ix509CertificateRequest-Objekt auf, das aus Schritt 2 zurückgegeben wurde, um in ein IX509CertificateRequestPkcs10-Objekt zu casten.
  4. Rufen Sie die PrivateKey-Eigenschaft in der PKCS # 10-Anforderung auf.
  5. Rufen Sie die CspInformations-Eigenschaft für das IX509PrivateKey-Objekt auf, das aus Schritt 4 abgerufen wurde.
  6. Rufen Sie die CspAlgorithms-Eigenschaft für ein bestimmtes ICspInformation-Objekt in der ICspInformations-Auflistung auf, die in Schritt 5 abgerufen wurde.

enumContainersWStr

Die enumContainersWStr-Funktion in Xenroll.dll ruft einen Schlüsselcontainer nach Index aus der Auflistung ab.

Die CertEnroll.dll-Bibliothek implementiert diese Funktionalität nicht direkt.

enumProvidersWStr

Die enumProvidersWStr-Funktion in Xenroll.dll ruft einen CSP nach Index aus der Auflistung ab.

Wenn Sie CertEnroll.dll, können Sie die folgenden Aktionen ausführen, um die Sammlung kryptografischer Container abzurufen:

  1. Rufen Sie die Request-Eigenschaft für ein vorhandenes IX509Enrollment-Objekt auf.
  2. Rufen Sie die GetInnerRequest-Methode für die anforderung auf, die aus Schritt 1 zurückgegeben wurde, um die innerste Anforderung abzurufen.
  3. Rufen Sie QueryInterface für das ix509CertificateRequest-Objekt auf, das aus Schritt 2 zurückgegeben wurde, um in ein IX509CertificateRequestPkcs10-Objekt zu casten.
  4. Rufen Sie die PrivateKey-Eigenschaft in der PKCS # 10-Anforderung auf.
  5. Rufen Sie die CspInformations-Eigenschaft für das IX509PrivateKey-Objekt auf, das aus Schritt 4 abgerufen wurde.

GetAlgNameWStr

Die GetAlgNameWStr-Funktion in Xenroll.dll ruft den Namen eines kryptografischen Algorithmus ab.

Wenn Sie CertEnroll.dll, können Sie die folgenden Aktionen ausführen, um den Algorithmusnamen abzurufen:

  1. Rufen Sie die Request-Eigenschaft für ein vorhandenes IX509Enrollment-Objekt auf.
  2. Rufen Sie die GetInnerRequest-Methode für die anforderung auf, die aus Schritt 1 zurückgegeben wurde, um die innerste Anforderung abzurufen.
  3. Rufen Sie QueryInterface für das ix509CertificateRequest-Objekt auf, das aus Schritt 2 zurückgegeben wurde, um in ein IX509CertificateRequestPkcs10-Objekt zu casten.
  4. Rufen Sie die PrivateKey-Eigenschaft in der PKCS # 10-Anforderung auf.
  5. Rufen Sie die Algorithm-Eigenschaft für das IX509PrivateKey-Objekt auf, um den Algorithmusobjektbezeichner abzurufen.
  6. Rufen Sie die FriendlyName-Eigenschaft auf der IObjectId-Schnittstelle auf, um den Anzeigenamen des Algorithmus abzurufen.

getProviderTypeWStr

Die getProviderTypeWStr-Funktion in Xenroll.dll ruft den Kryptografieanbietertyp ab.

Wenn Sie CertEnroll.dll, können Sie die folgenden Aktionen ausführen, um den Anbietertyp abzurufen:

  1. Rufen Sie die Request-Eigenschaft für ein vorhandenes IX509Enrollment-Objekt auf.
  2. Rufen Sie die GetInnerRequest-Methode für die anforderung auf, die aus Schritt 1 zurückgegeben wurde, um die innerste Anforderung abzurufen.
  3. Rufen Sie QueryInterface für das ix509CertificateRequest-Objekt auf, das aus Schritt 2 zurückgegeben wurde, um in ein IX509CertificateRequestPkcs10-Objekt zu casten.
  4. Rufen Sie die PrivateKey-Eigenschaft in der PKCS # 10-Anforderung auf.
  5. Rufen Sie die ProviderType-Eigenschaft für das IX509PrivateKey-Objekt auf, das aus Schritt 4 abgerufen wurde.

HashAlgID

Die HashAlgID-Funktion in Xenroll.dll ruft einen ganzzahligen Wert ab, der die ID des Algorithmus enthält, der zum Signieren einer Anforderung verwendet wird.

Wenn Sie CertEnroll.dll, können Sie die folgenden Aktionen ausführen, um den Hashalgorithmus abzurufen:

HashAlgorithmWStr

Die HashAlgorithmWStr-Funktion in Xenroll.dll gibt einen Zeichenfolgenwert an oder ruft einen Zeichenfolgenwert ab, der den Hashalgorithmus identifiziert, der zum Signieren einer Anforderung verwendet wird.

Wenn Sie CertEnroll.dll, können Sie die folgenden Aktionen ausführen, um den Hashalgorithmus abzurufen:

ProviderFlags

Die ProviderFlags-Funktion in Xenroll.dll die Flags an, die beim Abrufen eines Handle für einen CSP verwendet werden, oder ruft sie ab.

Die CertEnroll.dll-Bibliothek lässt diese Funktion nicht perfekt zu, aber Sie können umfassende Eigenschaftsinformationen aus dem Registrierungsobjekt und dem privaten Schlüssel abrufen. Weitere Informationen finden Sie in den Eigenschaften, die von den Schnittstellen IX509Enrollment und IX509PrivateKey verfügbar gemacht werden.

ProviderNameWStr

Die ProviderNameWStr-Funktion in Xenroll.dll gibt den Namen eines CSP an oder ruft den Namen ab.

Wenn Sie CertEnroll.dll, können Sie die folgenden Aktionen ausführen, um den Anbieternamen abzurufen:

  1. Rufen Sie die Request-Eigenschaft für ein vorhandenes IX509Enrollment-Objekt auf.
  2. Rufen Sie die GetInnerRequest-Methode für die anforderung auf, die aus Schritt 1 zurückgegeben wurde, um die innerste Anforderung abzurufen.
  3. Rufen Sie QueryInterface für das ix509CertificateRequest-Objekt auf, das aus Schritt 2 zurückgegeben wurde, um in ein IX509CertificateRequestPkcs10-Objekt zu casten.
  4. Rufen Sie die PrivateKey-Eigenschaft in der PKCS # 10-Anforderung auf.
  5. Rufen Sie die ProviderName-Eigenschaft für das IX509PrivateKey-Objekt auf, das aus Schritt 4 abgerufen wurde.

ProviderType

Die ProviderType-Funktion in Xenroll.dll gibt einen ganzzahligen Wert an, der den Typ des CSP identifiziert, oder ruft diesen ab.

Wenn Sie CertEnroll.dll, können Sie die folgenden Aktionen ausführen, um den Anbietertyp abzurufen:

  1. Rufen Sie die Request-Eigenschaft für ein vorhandenes IX509Enrollment-Objekt auf.
  2. Rufen Sie die GetInnerRequest-Methode für die anforderung auf, die aus Schritt 1 zurückgegeben wurde, um die innerste Anforderung abzurufen.
  3. Rufen Sie QueryInterface für das ix509CertificateRequest-Objekt auf, das aus Schritt 2 zurückgegeben wurde, um in ein IX509CertificateRequestPkcs10-Objekt zu casten.
  4. Rufen Sie die PrivateKey-Eigenschaft in der PKCS # 10-Anforderung auf.
  5. Rufen Sie die ProviderType-Eigenschaft für das IX509PrivateKey-Objekt auf, das aus Schritt 4 abgerufen wurde.

Zuordnen Xenroll.dll zu CertEnroll.dll

ICspAlgorithm

ICspAlgorithms

ICspInformation

ICspInformations

IX509Enrollment

IX509PrivateKey