Condividi tramite


Funzioni del provider di servizi di crittografia

Ognuna delle sezioni seguenti identifica una funzione esportata da Xenroll.dll che può essere usata per gestire un provider di crittografia. Ogni argomento illustra anche come usare CertEnroll.dll per sostituire la funzione o indica che non esiste alcun mapping tra le due librerie:

EnumAlgs

La funzione EnumAlgs in Xenroll.dll recupera una raccolta di algoritmi di crittografia.

Quando si usa CertEnroll.dll, è possibile eseguire le azioni seguenti per recuperare informazioni sugli algoritmi supportati da un provider di servizi di crittografia :When using CertEnroll.dll, you can perform the following actions to retrieve information about the algorithms supported by a cryptographic service provider (CSP):

  1. Chiamare la proprietà Request su un oggetto IX509Enrollment esistente.
  2. Chiamare il metodo GetInnerRequest sulla richiesta restituita dal passaggio 1 per recuperare la richiesta più interna.
  3. Chiamare QueryInterface sull'oggetto IX509CertificateRequest restituito dal passaggio 2 per eseguire il cast a un oggetto IX509CertificateRequestPkcs10 .
  4. Chiamare la proprietà PrivateKey nella richiesta PKCS #10.
  5. Chiamare la proprietà CspInformations sull'oggetto IX509PrivateKey recuperato dal passaggio 4.
  6. Chiamare la proprietà CspAlgorithms su un oggetto ICspInformation specifico nell'insieme ICspInformations recuperato nel passaggio 5.

enumContainersWStr

La funzione enumContainersWStr in Xenroll.dll recupera un contenitore di chiavi dalla raccolta in base all'indice.

La libreria CertEnroll.dll non implementa direttamente questa funzionalità.

enumProvidersWStr

La funzione enumProvidersWStr in Xenroll.dll recupera un CSP dalla raccolta in base all'indice.

Quando si usa CertEnroll.dll, è possibile eseguire le azioni seguenti per recuperare la raccolta di contenitori crittografici:

  1. Chiamare la proprietà Request su un oggetto IX509Enrollment esistente.
  2. Chiamare il metodo GetInnerRequest sulla richiesta restituita dal passaggio 1 per recuperare la richiesta più interna.
  3. Chiamare QueryInterface sull'oggetto IX509CertificateRequest restituito dal passaggio 2 per eseguire il cast a un oggetto IX509CertificateRequestPkcs10 .
  4. Chiamare la proprietà PrivateKey nella richiesta PKCS #10.
  5. Chiamare la proprietà CspInformations sull'oggetto IX509PrivateKey recuperato dal passaggio 4.

GetAlgNameWStr

La funzione GetAlgNameWStr in Xenroll.dll recupera il nome di un algoritmo di crittografia.

Quando si usa CertEnroll.dll, è possibile eseguire le azioni seguenti per recuperare il nome dell'algoritmo:

  1. Chiamare la proprietà Request su un oggetto IX509Enrollment esistente.
  2. Chiamare il metodo GetInnerRequest sulla richiesta restituita dal passaggio 1 per recuperare la richiesta più interna.
  3. Chiamare QueryInterface sull'oggetto IX509CertificateRequest restituito dal passaggio 2 per eseguire il cast a un oggetto IX509CertificateRequestPkcs10 .
  4. Chiamare la proprietà PrivateKey nella richiesta PKCS #10.
  5. Chiamare la proprietà Algorithm sull'oggetto IX509PrivateKey per recuperare l'identificatore dell'oggetto algoritmo.
  6. Chiamare la proprietà FriendlyName nell'interfaccia IObjectId per recuperare il nome visualizzato dell'algoritmo.

getProviderTypeWStr

La funzione getProviderTypeWStr in Xenroll.dll recupera il tipo di provider di crittografia.

Quando si usa CertEnroll.dll, è possibile eseguire le azioni seguenti per recuperare il tipo di provider:

  1. Chiamare la proprietà Request su un oggetto IX509Enrollment esistente.
  2. Chiamare il metodo GetInnerRequest sulla richiesta restituita dal passaggio 1 per recuperare la richiesta più interna.
  3. Chiamare QueryInterface sull'oggetto IX509CertificateRequest restituito dal passaggio 2 per eseguire il cast a un oggetto IX509CertificateRequestPkcs10 .
  4. Chiamare la proprietà PrivateKey nella richiesta PKCS #10.
  5. Chiamare la proprietà ProviderType nell'oggetto IX509PrivateKey recuperato dal passaggio 4.

HashAlgID

La funzione HashAlgID in Xenroll.dll recupera un valore intero contenente l'ID dell'algoritmo utilizzato per firmare una richiesta.

Quando si usa CertEnroll.dll, è possibile eseguire le azioni seguenti per recuperare l'algoritmo hash:

HashAlgorithmWStr

La funzione HashAlgorithmWStr in Xenroll.dll specifica o recupera un valore stringa che identifica l'algoritmo hash utilizzato per firmare una richiesta.

Quando si usa CertEnroll.dll, è possibile eseguire le azioni seguenti per recuperare l'algoritmo hash:

ProviderFlags

La funzione ProviderFlags in Xenroll.dll specifica o recupera i flag utilizzati durante l'acquisizione di un handle in un provider di servizi di configurazione.

La libreria CertEnroll.dll non esegue il mapping di questa funzione perfettamente, ma è possibile ottenere informazioni dettagliate sulle proprietà dall'oggetto di registrazione e dalla chiave privata. Per altre informazioni, esaminare le proprietà esposte dalle interfacce IX509Enrollment e IX509PrivateKey .

ProviderNameWStr

La funzione ProviderNameWStr in Xenroll.dll specifica o recupera il nome di un provider di servizi di configurazione.

Quando si usa CertEnroll.dll, è possibile eseguire le azioni seguenti per recuperare il nome del provider:

  1. Chiamare la proprietà Request su un oggetto IX509Enrollment esistente.
  2. Chiamare il metodo GetInnerRequest sulla richiesta restituita dal passaggio 1 per recuperare la richiesta più interna.
  3. Chiamare QueryInterface sull'oggetto IX509CertificateRequest restituito dal passaggio 2 per eseguire il cast a un oggetto IX509CertificateRequestPkcs10 .
  4. Chiamare la proprietà PrivateKey nella richiesta PKCS #10.
  5. Chiamare la proprietà ProviderName nell'oggetto IX509PrivateKey recuperato dal passaggio 4.

ProviderType

La funzione ProviderType in Xenroll.dll specifica o recupera un valore intero che identifica il tipo di CSP.

Quando si usa CertEnroll.dll, è possibile eseguire le azioni seguenti per recuperare il tipo di provider:

  1. Chiamare la proprietà Request su un oggetto IX509Enrollment esistente.
  2. Chiamare il metodo GetInnerRequest sulla richiesta restituita dal passaggio 1 per recuperare la richiesta più interna.
  3. Chiamare QueryInterface sull'oggetto IX509CertificateRequest restituito dal passaggio 2 per eseguire il cast a un oggetto IX509CertificateRequestPkcs10 .
  4. Chiamare la proprietà PrivateKey nella richiesta PKCS #10.
  5. Chiamare la proprietà ProviderType nell'oggetto IX509PrivateKey recuperato dal passaggio 4.

Mapping di Xenroll.dll a CertEnroll.dll

ICspAlgorithm

ICspAlgorithms

ICspInformation

ICspInformations

IX509Enrollment

IX509PrivateKey