MakeCert

Hinweis

MakeCert ist veraltet. Verwenden Sie das PowerShell-Cmdlet New-SelfSignedCertificate,um selbstsignierte Zertifikate zu erstellen.

Das MakeCert-Tool erstellt ein X.509-Zertifikat, das vom Teststammschlüssel oder einem anderen angegebenen Schlüssel signiert wird, das Ihren Namen an den öffentlichen Teil des Schlüsselpaars bindet. Das Zertifikat wird in einer Datei, einem Systemzertifikatspeicher oder beidem gespeichert. Das Tool wird im Ordner Bin des \ Installationspfads des Microsoft Windows Software Development Kit (SDK) installiert.

Das MakeCert-Tool verwendet die folgende Befehlssyntax:

MakeCert [ BasicOptions | ExtendedOptions ] OutputFile

OutputFile ist der Name der Datei, in die das Zertifikat geschrieben wird. Sie können OutputFile weglassen, wenn das Zertifikat nicht in eine Datei geschrieben werden soll.

Optionen

MakeCert enthält grundlegende und erweiterte Optionen. Meistens werden die Basisoptionen zum Erstellen von Zertifikaten verwendet. Die erweiterten Optionen stellen eine höhere Flexibilität zur Verfügung.

Die Optionen für MakeCert sind auch in drei Funktionsgruppen unterteilt:

  • Grundlegende Optionen, die nur für die Zertifikatspeichertechnologie spezifisch sind.
  • Erweiterte Optionen, die nur für SPC-Datei- und Private Key-Technologie spezifisch sind.
  • Erweiterte Optionen, die für SPC-Datei-, private Schlüssel- und Zertifikatspeichertechnologie gelten.

Die in den folgenden Tabellen angegebenen Optionen können nur mit Internet Explorer 4.0 oder höher verwendet werden.

Basic-Option Beschreibung
-a Algorithmus Hashalgorithmus. Muss entweder auf SHA-1 oder MD5 (Standard) festgelegt werden. Informationen zu MD5 finden Sie unter MD5.
-b DateStart Datum, an dem das Zertifikat zuerst gültig wird. Der Standardwert ist, wenn das Zertifikat erstellt wird. Das Format von DateStart ist mm/tt/yyyy.
-cy CertificateTypes Zertifikattyp. CertificateTypes können end für end-entity oder authority for certification authority sein.
-e DateEnd Datum, an dem die Gültigkeitsdauer endet. Der Standardwert ist das Jahr 2039.
-eku OID1,OID2 ... Fügt eine Liste von durch Komma getrennten,erweiterten Schlüsselverwendungsobjektbezeichnern (OIDs) in das Zertifikat ein. Beispielsweise fügt -eku 1.3.6.1.5.5.7.3.2 die Clientauthentifizierungs-OID ein. Definitionen von zulässigen OIDs finden Sie in der Datei Wincrypt.h in CryptoAPI 2.0.
-h NumChildren Maximale Höhe der Struktur unter diesem Zertifikat.
-l PolicyLink Link zu Richtlinieninformationen der SPC-Agentur (z. B. eine URL).
-m nMonths Dauer der Gültigkeitsdauer.
-n"Name" Name für das Zertifikat des Herausgebers. Dieser Name muss dem X.500-Standard entsprechen. Die einfachste Methode ist die Verwendung des Formats "CN=MyName". Beispiel: -n "CN=Test".
-nscp Die Netscape-Clientauthentifizierungserweiterung sollte enthalten sein.
-pe Markiert den privaten Schlüssel als exportierbar.
-r Erstellen eines selbstsignierten Zertifikats
-sc SubjectCertFile Der Name der Zertifikatdatei mit dem vorhandenen öffentlichen Schlüssel des Betreffs, der verwendet werden soll.
-sk SubjectKey Speicherort des Schlüsselcontainers des Subjekts, der den privaten Schlüssel enthält. Wenn kein Schlüsselcontainer vorhanden ist, wird ein Schlüsselcontainer erstellt. Wenn weder die Option -sk noch -sv verwendet wird, wird standardmäßig ein Standardschlüsselcontainer erstellt und verwendet.
-sky SubjectKeySpec Schlüsselspezifikation des Betreffs. SubjectKeySpec muss einer von drei möglichen Werten sein:
  • Signatur (AT_SIGNATURE Schlüsselspezifikation)
  • Exchange (AT_KEYEXCHANGE Schlüsselspezifikation)
  • Eine ganze Zahl, z. B. 3
Weitere Informationen finden Sie im Hinweis, der auf diese Tabelle folgt.
-sp SubjectProviderName CryptoAPI-Anbieter für Betreff. Der Standardwert ist der Anbieter des Benutzers. Informationen zu CryptoAPI-Anbietern finden Sie in der CryptoAPI 2.0 dokumentation.
-sr SubjectCertStoreLocation Der Registrierungsspeicherort des Zertifikatspeichers des Subjekts. SubjectCertStoreLocation muss entweder LocalMachine (Registrierungsschlüssel HKEY_LOCAL_MACHINE) oder CurrentUser (Registrierungsschlüssel)HKEY_CURRENT_USER. CurrentUser ist die Standardeinstellung.
-ss SubjectCertStoreName Name des Zertifikatspeichers des Subjekts, in dem das generierte Zertifikat gespeichert wird.
-sv SubjectKeyFile Name der PVK-Datei des Betreffs. Wenn weder die Option -sk noch -sv verwendet wird, wird standardmäßig ein Standardschlüsselcontainer erstellt und verwendet.
-sy nSubjectProviderType CryptoAPI-Anbietertyp für Betreff. Der Standardwert ist PROV_RSA_FULL. Informationen zu CryptoAPI-Anbietertypen finden Sie in der CryptoAPI 2.0 Dokumentation.
-#Serialnumber Seriennummer des Zertifikats. Der Höchstwert ist 2^31. Der Standardwert ist ein vom Tool generierter Wert, der garantiert eindeutig ist.
-$CertificateAuthority Typ der Zertifizierungsstelle. CertificateAuthority muss entweder auf "commercial" (für Zertifikate, die von kommerziellen Softwareherausgebern verwendet werden) oder einzeln (für Zertifikate, die von einzelnen Softwareherausgebern verwendet werden) festgelegt werden.
-? Zeigt die grundlegenden Optionen an.
-! Zeigt die erweiterten Optionen an.

Hinweis

Wenn die Option -sky key specification in Internet Explorer Version 4.0 oder höher verwendet wird, muss die Spezifikation mit der Schlüsselspezifikation übereinstimmen, die durch die Datei des privaten Schlüssels oder den Privaten Schlüsselcontainer angegeben wird. Wenn die Schlüsselspezifikationsoption nicht verwendet wird, wird die von der Datei mit dem privaten Schlüssel oder dem Container für den privaten Schlüssel angegebene Schlüsselspezifikation verwendet. Wenn im Schlüsselcontainer mehrere Schlüsselspezifikationen vorhanden sind, versucht MakeCert zunächst, die AT _ SIGNATURE-Schlüsselspezifikation zu verwenden. Wenn dies fehlschlägt, versucht MakeCert, AT _ KEYEXCHANGE zu verwenden. Da die meisten Benutzer entweder über einen AT _ SIGNATURE-Schlüssel oder einen AT _ KEYEXCHANGE-Schlüssel verfügen, muss diese Option in den meisten Fällen nicht verwendet werden.

Die folgenden Optionen gelten nur für SPC-Dateien (Software Publisher Certificate) und technologie für private Schlüssel.

SPC- und private Schlüsseloption Beschreibung
-ic IssuerCertFile Speicherort des Zertifikats des Ausstellers.
-ik IssuerKey Speicherort des Schlüsselcontainers des Ausstellers. Der Standardwert ist der Teststammschlüssel.
-iky IssuerKeySpec Die Schlüsselspezifikation des Ausstellers, die einer von drei möglichen Werten sein muss:
  • Signatur (AT_SIGNATURE Schlüsselspezifikation)
  • Exchange (AT_KEYEXCHANGE Schlüsselspezifikation)
  • Eine ganze Zahl, z. B. 3
Weitere Informationen finden Sie im Hinweis, der auf diese Tabelle folgt.
-ip IssuerProviderName CryptoAPI-Anbieter für Aussteller. Der Standardwert ist der Anbieter des Benutzers. Informationen zu CryptoAPI-Anbietern finden Sie in der CryptoAPI 2.0-Dokumentation.
-iv IssuerKeyFile Datei mit privatem Schlüssel des Ausstellers. Der Standardwert ist der Teststamm.
-iy nIssuerProviderType CryptoAPI-Anbietertyp für Aussteller. Der Standardwert ist PROV_RSA_FULL. Informationen zu CryptoAPI-Anbietertypen finden Sie in der CryptoAPI 2.0-Dokumentation.

Hinweis

Wenn die -iky-Schlüsselspezifikationsoption in Internet Explorer 4.0 oder höher verwendet wird, muss die Spezifikation mit der Schlüsselspezifikation übereinstimmen, die durch die Datei mit dem privaten Schlüssel oder den privaten Schlüsselcontainerangegeben wird. Wenn die Schlüsselspezifikationsoption nicht verwendet wird, wird die durch die Datei des privaten Schlüssels oder den Privaten Schlüsselcontainer angegebene Schlüsselspezifikation verwendet. Wenn im Schlüsselcontainer mehrere Schlüsselspezifikationen vorhanden sind, versucht MakeCert zunächst, die AT _ SIGNATURE-Schlüsselspezifikation zu verwenden. Wenn dies fehlschlägt, versucht MakeCert, AT _ KEYEXCHANGE zu verwenden. Da die meisten Benutzer entweder über einen AT _ SIGNATURE-Schlüssel oder einen AT _ KEYEXCHANGE-Schlüssel verfügen, muss diese Option in den meisten Fällen nicht verwendet werden.

Die folgenden Optionen gelten nur für Zertifikatspeichertechnologien.

Zertifikatspeicheroption Beschreibung
-ic IssuerCertFile Datei, die das Zertifikat des Ausstellers enthält. MakeCert sucht im Zertifikatspeicher nach einem Zertifikat mit einer genauen Übereinstimmung.
-in IssuerNameString Allgemeiner Name des Zertifikats des Ausstellers. MakeCert sucht im Zertifikatspeicher nach einem Zertifikat, dessen allgemeiner Name IssuerNameString enthält.
-ir IssuerCertStoreLocation Registrierungsspeicherort des Zertifikatspeichers des Ausstellers. IssuerCertStoreLocation muss entweder LocalMachine (Registrierungsschlüssel HKEY _ LOCAL _ MACHINE) oder CurrentUser (Registrierungsschlüssel HKEY _ CURRENT _ USER) sein. CurrentUser ist die Standardeinstellung.
-is IssuerCertStoreName Der Zertifikatspeicher des Ausstellers, der das Zertifikat des Ausstellers und die zugehörigen Informationen zum privaten Schlüssel enthält. Wenn mehr als ein Zertifikat im Speicher vorhanden ist, muss der Benutzer es mithilfe der Option -ic oder -in eindeutig identifizieren. Wenn das Zertifikat im Zertifikatspeicher nicht eindeutig identifiziert wird, schlägt MakeCert fehl.