Grundlagen: Cryptographic Service Provider (CSP) und Key Storage Provider (KSP)

Seit Windows NT 4.0 gibt es im Rahmen der CryptoAPI die Cryptographic Service Provider (CSP).

Sinn ist, dass sich eine Anwendung nicht um die konkrete Implementierung der Schlüsselverwaltung kümmern muss, sondern dies generischen Betriebssystem-Schnittstellen überlassen kann. Beispielsweise spielt es für die Zertifizierungsstellen-Software technisch keine Rolle, wie ihr privater Schlüssel geschützt ist – ob in Software oder beispielsweise mit einem Hardware Security Modul (HSM). Der Aufruf des privaten Schlüssel ist für die Zertifizierungsstelle immer identisch.

Mit Windows Vista und der Einführung der Cryptography Next Generation (CNG) als Ablöser für die CryptoAPI wurden die Key Storage Provider (KSP) eingeführt.

„Grundlagen: Cryptographic Service Provider (CSP) und Key Storage Provider (KSP)“ weiterlesen

Fehlersuche für die automatische Zertifikatbeantragung (Autoenrollment) via RPC/DCOM

Folgendes Szenario angenommen:

  • Es ist eine Zertifikatvorlage für die automatische Beantragung von Zertifikaten konfiguriert (Autoenrollment).
  • Die Zertifikatvorlage ist auf einer ins Active Directory integrierten Zertifizierungsstelle (Enterprise Certification Authority) veröffentlicht.
  • Die für die automatische Zertifikatbeantragung konfigurierten Benutzer oder Computer beantragen allerdings nicht wie vorgesehen Zertifikate.

Nachfolgend eine Anleitung zur Fehlersuche.

„Fehlersuche für die automatische Zertifikatbeantragung (Autoenrollment) via RPC/DCOM“ weiterlesen

Details zum Ereignis mit ID 58 der Quelle Microsoft-Windows-CertificateServicesClient-CertEnroll

Ereignisquelle:Microsoft-Windows-CertificateServicesClient-CertEnroll
Ereignis-ID:58 (0x825A003A)
Ereignisprotokoll:Application
Ereignistyp:Warning
Ereignistext (englisch):The "%3" algorithm for the "%2" provider was not loaded because initialization failed.
Ereignistext (deutsch):Der "%3"-Algorithmus für den "%2"-Anbieter wurde aufgrund eines Initialisierungsfehlers nicht geladen.
„Details zum Ereignis mit ID 58 der Quelle Microsoft-Windows-CertificateServicesClient-CertEnroll“ weiterlesen

Liste der Use Cases für Zertifikate, die bestimmte Cryptographic Service Provider (CSP) oder Key Storage Provider (KSP) benötigen

Mit Windows Server 2008 wurde zusammen mit den NSA Suite B Algorithmen (auch als Cryptography Next Generation, CNG bekannt) mit den Key Storage Providern eine neue, moderne Schnittstelle für die Erzeugung, Speicherung und Verwendung von privaten Schlüsseln im Windows-Ökosystem eingeführt.

In den meisten Fällen spielt es keine Rolle, welche CSP oder KSP für Zertifikate verwendet wird. Einige Anwendungen werden allerdings nicht oder nicht korrekt funktionieren, wenn der falsche Provider gewählt wurde.

Nachfolgend eine Liste mir bekannter Anwendungsfälle für Zertifikate, die nur mit einem bestimmten Cryptographic Service Provider (CSP) oder Key Storage Provider (KSP) zusammenarbeiten.

„Liste der Use Cases für Zertifikate, die bestimmte Cryptographic Service Provider (CSP) oder Key Storage Provider (KSP) benötigen“ weiterlesen

Die Beantragung eines Zertifikats ist nicht möglich, da die Zertifikatvorlage nicht angezeigt wird. Die Fehlermeldung lautet "Can not find a valid CSP in the local machine."

Folgendes Szenario angenommen:

  • Es wird für einen Benutzer oder einen Computer ein Zertifikat von einer Zertifizierungsstelle über die Verwaltungskonsole für Zertifikate (certlm.msc oder certmgr.msc) beantragt.
  • Autoenrollment beantragt kein Zertifikat von der gewünschten Zertifikatvorlage, obwohl es aktiviert ist und die Berechtigungen entsprechend gesetzt sind.
  • Die gewünschte Zertifikatvorlage wird bei manueller Beantragung über die Microsoft Management Konsole (MMC) nicht angezeigt. Aktiviert man das Kontrollkästchen "Show all templates", wird für die gewünschte Zertifikatvorlage folgende Fehlermeldung angezeigt:
Cannot find object or property.
Can not find a valid CSP in the local machine.
„Die Beantragung eines Zertifikats ist nicht möglich, da die Zertifikatvorlage nicht angezeigt wird. Die Fehlermeldung lautet "Can not find a valid CSP in the local machine."“ weiterlesen

Welcher Cryptographic Service Provider (CSP) sollte für den Registrierungsdienst für Netzwerkgeräte (NDES) verwendet werden?

Bei der Konfiguration einer Zertifikatvorlage für die Registration Authority (RA) Zertifikate für den Registrierungsdienste für Netzwerkgeräte (Network Device Enrollment Service, NDES), kommt insbesondere bei der Verwendung von Hardware Security Modulen (HSM) die Frage auf, welcher Cryptographic Service Provider (CSP) des HSM-Herstellers verwendet werden sollte.

„Welcher Cryptographic Service Provider (CSP) sollte für den Registrierungsdienst für Netzwerkgeräte (NDES) verwendet werden?“ weiterlesen

Der Registrierungsdienst für Netzwerkgeräte (NDES) protokolliert die Fehlermeldung "The Network Device Enrollment Service cannot retrieve one of its required certificates (0x80070057). The parameter is incorrect."

Folgendes Szenario angenommen:

  • Ein NDES Server ist im Netzwerk konfiguriert.
  • Bei Aufruf der NDES-Beantragungs-Webseite (mscep) und der NDES-Administrations-Webseite (certsrv/mscep_admin) wird der HTTP-Fehler 500 (Internal Server Error) gemeldet.
  • Es werden die Ereignisse Nr. 2 und 10 im Anwendungs-Ereignisprotokoll hinterlegt:
The Network Device Enrollment Service cannot be started (0x80070057). The parameter is incorrect.
The Network Device Enrollment Service cannot retrieve one of its required certificates (0x80070057). The parameter is incorrect.
„Der Registrierungsdienst für Netzwerkgeräte (NDES) protokolliert die Fehlermeldung "The Network Device Enrollment Service cannot retrieve one of its required certificates (0x80070057). The parameter is incorrect."“ weiterlesen

Importieren eines Zertifikats in eine Smartcard

Manchmal ist es erforderlich, ein Zertifikat, welches einen Software-Schlüssel verwendet, in eine Smartcards zu importieren.

„Importieren eines Zertifikats in eine Smartcard“ weiterlesen