MakeCert

Hinweis

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

 

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

Sie können das Windows SDK aus dem Windows Dev Center herunterladen.

Das MakeCert-Tool verwendet die folgende Befehlssyntax:

MakeCert [BasicOptions|ExtendedOptions] OutputFile

OutputFile ist der Name der Datei, in welche 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. Grundlegende Optionen werden am häufigsten zum Erstellen eines Zertifikats verwendet. Erweiterte Optionen bieten erhöhte Flexibilität.

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

  • Grundlegende Optionen, die ausschließlich für die Zertifikatspeichertechnologie spezifisch sind.
  • Erweiterte Optionen, die ausschließlich für SPC-Datei- und private Schlüsseltechnologie spezifisch sind.
  • Erweiterte Optionen anwendbar bei SPC-Datei-, private Schlüssel- und Zertifikatspeichertechnologie.

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

Option „Basic“ Beschreibung
-aAlgorithmus Hashalgorithmus. Muss entweder auf SHA-1 oder MD5 (Standardeinstellung) festgelegt sein. Weitere Informationen zu MD5 finden Sie unter MD5.
-bDateStart Datum, an dem das Zertifikat zuerst gültig wird. Standardmäßig der Zeitpunkt, an dem das Zertifikat erstellt wird. Das Format von DateStart ist mm/dd/yyyy.
-cyCertificateTypes Zertifikattyp. CertificateTypes können end für die Endentität oder authority für die Zertifizierungsstelle sein.
-eDateEnd Datum, an dem der Gültigkeitszeitraum endet. Der Standardwert ist das Jahr 2039.
-ekuOID1,OID2 Fügt eine Liste mit einem oder mehreren kommagetrennten, erweiterten SchlüsselverwendungsObjektbezeichnern (OIDs) in das Zertifikat ein. Beispielsweise fügt -eku 1.3.6.1.5.5.7.3.2 das Clientauthentifizierungs-OID ein. Definitionen zulässiger OIDs finden Sie in der Datei „Wincrypt.h“ in CryptoAPI 2.0.
-hNumChildren Maximale Höhe der Struktur unterhalb dieses Zertifikats.
-lPolicyLink Link zu Richtlinieninformationen der SPC-Agentur (z. B. eine URL).
-mnMonths Dauer des Gültigkeitszeitraums.
-n"Name" Name des Herausgeberzertifikats Dieser Name muss dem X.500-Standard entsprechen. Die einfachste Methode besteht darin, das Format „CN=MyName“ zu verwenden. Beispiel: -n "CN=Test".
-nscp Die Netscape-Clientauthentifizierungserweiterung sollte enthalten sein.
-pe Kennzeichnet den privaten Schlüssel als exportierbar.
-r Erstellen eines selbstsignierten Zertifikats
-scSubjectCertFile Zertifikatdateiname mit dem vorhandenen öffentlichen Antragstellerschlüssel, der verwendet werden soll.
-skSubjectKey Speicherort des Schlüsselcontainers des Betreffs, in dem der private Schlüssel gespeichert ist. Wenn kein Schlüsselcontainer vorhanden ist, wird ein Schlüsselcontainer erstellt. Wenn weder die Option -sk noch die Option -sv verwendet wird, wird standardmäßig ein Schlüsselcontainer erstellt und verwendet.
-skySubjectKeySpec Die Schlüsselspezifikation des Betreffs. SubjectKeySpec muss einen von drei möglichen Werten aufweisen:
  • Signatur (AT_SIGNATURE Schlüsselspezifikation)
  • Exchange (AT_KEYEXCHANGE-Schlüsselspezifikation)
  • Eine ganze Zahl, z. B. 3
Weitere Informationen finden Sie in der Notiz, die auf diese Tabelle folgt.
-spSubjectProviderName CryptoAPI-Anbieter für Betreff. Der Standardwert ist der Anbieter des Benutzers. Informationen zu CryptoAPI-Anbietern finden Sie in der CryptoAPI 2.0-Dokumentation.
-srSubjectCertStoreLocation Registrierungsspeicherort des Betreff-Zertifikatspeichers. SubjectCertStoreLocation muss entweder auf LocalMachine (Registrierungsschlüssel HKEY_LOCAL_MACHINE) oder CurrentUser (Registrierungsschlüssel HKEY_CURRENT_USER) festgelegt werden. CurrentUser ist der Standardwert.
-ssSubjectCertStoreName Name des Betreff-Zertifikatspeichers, in dem das generierte Zertifikat gespeichert wird.
-svSubjectKeyFile Name der PVK-Datei des Betreffs. Wenn weder die Option -sk noch die Option -sv verwendet wird, wird standardmäßig ein Schlüsselcontainer erstellt und verwendet.
-synSubjectProviderType CryptoAPI-Anbietertyp für Betreff. Der Standard ist PROV_RSA_FULL. Informationen zu CryptoAPI-Anbietertypen finden Sie in der CryptoAPI 2.0-Dokumentation.
-#SerialNumber Seriennummer des Zertifikats. Der maximale Wert ist 2^31. Der Standardwert ist ein Wert, der garantiert eindeutig ist und vom Tool generiert wird.
-$CertificateAuthority Typ der Zertifizierungsstelle. CertificateAuthority muss entweder auf kommerziell (für Zertifikate, die von kommerziellen Software-Herausgebern verwendet werden) oder individuell (für Zertifikate, die von einzelnen Software-Herausgebern verwendet werden sollen) festgelegt werden.
-? Zeigt die grundlegenden Optionen an.
-! Zeigt die erweiterten Optionen an.

 

Hinweis

Wenn die Schlüsselspezifikationsoption -sky in Internet Explorer, Version 4.0 oder höher, verwendet wird, muss die Spezifikation mit der von der privaten Schlüsseldatei oder dem privaten Schlüsselcontainer angegebenen Schlüsselspezifikation übereinstimmen. Wenn die Schlüsselspezifikationsoption nicht verwendet wird, wird die von der privaten Schlüsseldatei oder dem Container für private Schlüssel angegebene Schlüsselangabe 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 Software Publisher Certificate-Dateien (SPC) und private Schlüsseltechnologie.

SPC- und private Schlüsseloption Beschreibung
-icIssuerCertFile Speicherort des Zertifikats des Ausstellers.
-ikIssuerKey Speicherort des Schlüsselcontainers des Ausstellers. Der Standardwert ist der Teststammschlüssel.
-ikyIssuerKeySpec 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 in der Notiz, die auf diese Tabelle folgt.
-ipIssuerProviderName CryptoAPI-Anbieter für Aussteller. Der Standardwert ist der Anbieter des Benutzers. Informationen zu CryptoAPI-Anbietern finden Sie in der CryptoAPI 2.0-Dokumentation.
-ivIssuerKeyFile Private Schlüsseldatei des Ausstellers. Der Standardwert ist der Teststamm.
-iynIssuerProviderType CryptoAPI-Anbietertyp für Aussteller. Der Standard ist PROV_RSA_FULL. Informationen zu CryptoAPI-Anbietertypen finden Sie in der CryptoAPI 2.0-Dokumentation.

 

Hinweis

Wenn die Schlüsselspezifikationsoption -iky in Internet Explorer 4.0 oder höher, verwendet wird, muss die Spezifikation mit der von der privaten Schlüsseldatei oder dem privaten Schlüsselcontainer angegebenen Schlüsselspezifikation übereinstimmen. Wenn die Schlüsselspezifikationsoption nicht verwendet wird, wird die von der privaten Schlüsseldatei oder dem Container für private Schlüssel angegebene Schlüsselangabe 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 Zertifikatspeicher-Technologie.

Option zum Speichern von Zertifikaten Beschreibung
-ic IssuerCertFile Datei, die das Ausstellerzertifikat enthält. MakeCert sucht im Zertifikatspeicher nach einem Zertifikat mit einer genauen Übereinstimmung.
-in IssuerNameString Allgemeiner Name des Zertifikatausstellers. MakeCert sucht im Zertifikatspeicher nach einem Zertifikat, dessen allgemeiner Name IssuerNameString enthält.
-ir IssuerCertStoreLocation Registrierungsspeicherort des Zertifikatspeichers des Ausstellers. IssuerCertStoreLocation muss entweder auf LocalMachine (Registrierungsschlüssel HKEY_LOCAL_MACHINE) oder CurrentUser (Registrierungsschlüssel HKEY_CURRENT_USER) festgelegt werden. CurrentUser ist der Standardwert.
-is IssuerCertStoreName Zertifikatspeicher des Ausstellers, der das Zertifikat des Ausstellers und die zugehörigen privaten Schlüsselinformationen 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.