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:
|
-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:
|
-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. |