Migration Stammzertifizierungsstelle SHA1 zu SHA256 (Hashalgorithmus)

Ab dem 01.01.2016 wird Microsoft SSL Zertifikate mit SHA1 als Hashalgorithmus für ungültig erklären. Webserver oder Dienste die Zertifikate mit SHA1 nutzen, lösen also Zertifikatswarnungen im Browser bei den Benutzern aus. Daher sollte langsam aber sicher damit begonnen werden, SHA1 Zertifikate auszutauschen. Damit eine interne CA Zertifikate mit SHA256 (SHA2) ausstellen kann, muss die CA von SHA1 auf SHA2 umgestellt werden. Hier gibt es das entsprechende Howto:

Hier sieht man das der Hashalgorithmus der CA auf SHA1 steht. Die CA kann somit auch nur Zertifikate mit SHA1 ausstellen.

image

Als Beispiel hier ein IIS Webserver der sein Zertifikat von der CA mit SHA1 bezogen hat. Auch hier ist der Hashalgorithmus SHA1

image

Um die CA auf SHA256 (SHA2) umzustellen, muss der folgende Befehl auf der Kommandozeile ausgeführt werden:

certutil -setreg ca\csp\CNGHashAlgorithm SHA256

image

Wenn die Ausgabe wie oben ausschaut, muss die CA neugestartet werden, also einmal stoppen und wieder starten:

image

Ob SHA256 als Hashalgorithmus genutzt wird, lässt sich wieder in den Eigenschaften der CA prüfen

SHA256

Somit haben wir den Hashalgorithmus der CA auf SHA-256 geändert. Zuvor ausgestellte Zertifikate behalten ihre Gültigkeit, natürlich ändert sich nichts an den Zertifikaten, wie hier noch einmal im Beispiel des IIS

image

Erst neue oder erneuerte Zertifikate werden mit SHA-256 signiert. Über die Zertifikate-SnapIn in der MMC können Zertifikate erneuert werden:

image

Nachdem das Zertifikat erneuert wurde, wurde es mit SHA256 durch die CA signiert:

image

Und hier noch einmal das Beispiel mit dem IIS, alles gültig, mit SHA256:

image

Das Root-Zertifikat enthält natürlich auch noch SHA1 als Hashalgorithmus, denn es wurde bisher nicht erneuert. Es besteht allerdings nicht unbedingt die Notwendigkeit bis 2016 das Root-Zertifikat zu erneuern, den Zertifizierungsstellen Zertifikate behalten auch mit SHA1 ihre Gültigkeit.

image

Auch hier lässt sich das Zertifikat entsprechend erneuern (Achtung: der Assistent hält die CA an):

image

image

Nachdem das Zertifikat erneuert wurde enthält es ebenfalls SHA256:

image

Und hier noch einmal zum Vergleich das Beispiel IIS, alte und neue Zertifikate behalten Ihre Gültigkeit.

image

Natürlich müssen alte SHA1 Zertifikate erneuert werden, damit ab 2016 keine Zertifikatswarnungen auftauchen, allerdings sollte kein größeres Problem darstellen, außer etwas Fleißarbeit.

19 Replies to “Migration Stammzertifizierungsstelle SHA1 zu SHA256 (Hashalgorithmus)”

  1. Hi,
    leider hat es nicht geklappt nach dieser Anleitung. Der Wert wurde zwar gesetzt und ist auch mit -getreg wieder auslesbar. Dienst gestartet, Server gestartet, ohne Erfolg. In den Eigenschaften der Zertifizierungstelle steht immer noch SAH-1 bei Zertifikat 0 (abgelaufen) und Zertifikat 1. Was kann man noch prüfen, tun?

    Alter Wert:
    CNGHashAlgorithm REG_SZ = SHA256

    Neuer Wert:
    CNGHashAlgorithm REG_SZ = SHA256
    CertUtil: -setreg-Befehl wurde erfolgreich ausgeführt.

    CNGHashAlgorithm REG_SZ = SHA256
    CertUtil: -getreg-Befehl wurde erfolgreich ausgeführt.

  2. Hallo Heinz,
    wie im Artikel beschrieben, muss du das Zertifikat der CA erneuern, damit SHA256 genutzt wird.
    Gruß, Frank

  3. Das Problem ist der Kryptografie Anbieter: „Microsoft Strong Cryptographic Provider“
    Es muss erst durch den „Microsoft Software Key Storage Provider“ ersetzt werden.

  4. Hallo,

    mich würde interessieren wie man mit erneuerten Zertifikaten richtig umgeht, also z.B. mit dem erneuerten Zertifizierungsstellenzertifikat „Zertifikat Nr. 1“. Dieses wird ja entweder über GPO oder über das AD verteilt.
    Was passiert mit dem „Zertifikat Nr. 0“?
    MUSS der Client das auch behalten wenn nichts mehr dieses Zertifikat nutzt, also muss eine „Versionskette“ beibehalten bleiben oder kann ich es problemlos löschen, wenn ich wollte dass im Zertifikatsspeicher derselbe Zertifikatsname nicht 2~3mal vorhanden ist?

    Wie funktioniert das mit abgelösten Vorlagen? Wann benutze ich sie und was ist der Unterschied zwischen Ihnen und dem Ändern der bereits genutzten Vorlage? Wenn ich die Vorlage ändere ändert sich auch deren Versionsnummer; hat das irgendwelche Auswirkungen auf die Clients/Benutzer, welche Zertifikate auf Basis der älteren Vorlage ausgestellt bekommen haben?

    Grüße

    AStraube

  5. Hi,
    Certsvc meldet Erfolg, jedoch kann das Zertikfat mit dem selben Schlüssel nicht erneuert werden. Fehler:
    Die Anforderung enthält keine Zertifikatvorlageninformationen.
    Muss jetzt das Zertifikat ersetzt werden?
    Falls ja, welche Schritte sind dann erforderlich?

  6. Hi,
    ich habe vor längerm auch nach deiner Anleitung auf SHA256 gewechselt.
    Jetzt musste ich feststellen das Office 2010 keine SHA256 Zertifikate für die Signierung von Macros auflistet sondern nur SHA1.

    Es gibt wohl einen Hotfix https://support.microsoft.com/en-us/kb/2598139 aber der sagt das keines der installierten Produkte auf dem System betroffen wäre.

    Kann ich denn bei der Zertifikatserstellung troztdem noch manuell SHA1 erzwingen?

    Gruß Marco

  7. Hallo
    Für SHA256 muss ich den Kryptografieanbieter zu ändern, gibt es hierfür auch etwas zu beachten?

    Aktuell benutze ich „Microsoft Strong Cryptographic Provider“ geändert werden müsste es zu „Microsoft Software Cryptographic Provider“

    Nach
    certutil -setreg ca\csp\cnghashalgorithm 0x0000800c
    bekomme ich eine Erfolgsmeldung, aber ein Starten der CA schlägt fehl.
    Fehlermeldung: „0x57 Falscher Parameter“
    (Zugriff auf CN=Public Key Services, CN=Services, CN=Configuration, DC=domainname,DC=com ist möglich)
    Ein zurücksetzen mit
    certutil -setreg ca\csp\cnghashalgorithm 0x0000800a
    lässt die CA wieder starten.

    Gruß
    Markus

  8. Hallo
    bei mir tritt der gleiche Fehler auf, ich müsste den Kryptografieanbieter ändern, damit ich SHA256 nutzen kann.
    Änderung von “Microsoft Strong Cryptographic Provider” zu “Microsoft Software Cryptographic Provider”. Hat jemand eine Idee bzw. Lösung?

    Gruß
    Tobi

  9. Kann man diese Umstellung auch mit einer PKi auf WIndows Server 2008 R2 realisieren, oder ist hierzu ein Update auf 2012 nötig?

    Cheers

  10. kleiner Tip:
    wenn man sha256 klein schreibt (certutil -setreg ca\csp\CNGHashAlgorithm sha256), dann startet die CA nicht mehr und wirft einen kryptischen Fehler. Ausnahmsweise es hier „case sensitive“. Einfach den Befehl nochmal mit groß SHA256 ausführen und dann startet sie wieder

  11. Was muss ich den nun tun, um auf einem Windows 2008R2 Server den Kryptograpie-Anbieter von „Microsoft Strong Cryptographic Provider“ der RootCA auf „Microsoft Software Key Storage Provider“ zu ändern?

    MfG Sven

  12. Hallo zusammen,

    der Provider meiner RootCA ist Ultimaco Crypto Server CSP. Ich würde diesen gerne umstellen, damit SHA256 möglich ist. Gibt es hierzu etwas zu beachten?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.