MakeCert
Note
MakeCert は非推奨となっています。 自己署名証明書を作成するには、Powershell コマンドレット New-SelfSignedCertificate を使用します。
MakeCert ツールは、テスト ルート キーまたはその他の指定されたキーによって署名された X.509 証明書を作成し、その名前をキー ペアの公開部分にバインドします。 証明書は、ファイル、システム証明書ストア、またはその両方に保存されます。 このツールは、Microsoft Windows Software Development Kit (SDK) インストール パスの \Bin フォルダーにインストールされます。
MakeCert ツールでは、次のコマンド構文を使用します。
MakeCert [BasicOptionsExtendedOptions|] OutputFile
OutputFile は、証明書が書き込まれるファイルの名前です。 証明書をファイルに書き込まない場合は、 OutputFile を省略できます。
オプション
MakeCert には、基本オプションと拡張オプションが含まれています。 証明書の作成に最も一般的に使用されるのは基本オプションです。 拡張オプションを使用すると、証明書をより柔軟に設定できます。
MakeCert のオプションは、次の 3 つの機能グループにも分かれています。
- 証明書ストア テクノロジのみに固有の基本的なオプション。
- SPC ファイルと秘密キー テクノロジのみに固有の拡張オプション。
- SPC ファイル、秘密キー、証明書ストア テクノロジに適用できる拡張オプション。
次の表に示すオプションは、Internet Explorer 4.0 以降でのみ使用できます。
基本オプション | 説明 |
---|---|
-aアルゴリズム | ハッシュ アルゴリズム。 SHA-1 または MD5 (既定値) に設定する必要があります。 MD5 の詳細については、 MD5 を参照してください。 |
-bDateStart | 証明書が最初に有効になる日付。 既定では、証明書が作成されます。 DateStart の形式は mm/dd/yyyy です。 |
-cyCertificateTypes | 証明書の種類。 CertificateTypes は、エンド エンティティの 場合は終了 、証明機関の 場合 は 機関にすることができます。 |
-eDateEnd | 有効期間が終了する日付。 既定値は 2039 年です。 |
-ekuOID1、OID2 ... | 1 つ以上のコンマ区切り 拡張キー使用法オブジェクト識別子 (OID) の一覧を証明書に挿入します。 たとえば、 -eku 1.3.6.1.5.5.7.3.2 では、クライアント認証 OID が挿入されます。 許容される OID の定義については、CryptoAPI 2.0 の Wincrypt.h ファイルを参照してください。 |
-hNumChildren | この証明書の下のツリーの最大高さ。 |
-lPolicyLink | SPC 機関ポリシー情報 (URL など) へのリンク。 |
-mnMonths | 有効期間の期間。 |
-n"Name" | 発行元の証明書の名前。 この名前は X.500 標準に準拠している必要があります。 最も簡単な方法は、"CN=MyName" 形式を使用することです。 例: -n "CN=Test"。 |
-nscp | Netscape クライアント認証拡張機能を含める必要があります。 |
-pe | 秘密キーをエクスポート可能としてマークします。 |
-r | 自己署名証明書を作成する。 |
-scSubjectCertFile | 使用する既存のサブジェクト公開キーを持つ証明書ファイル名。 |
-skSubjectKey | 秘密キーを保持するサブジェクトのキー コンテナーの場所。 キー コンテナーが存在しない場合は、作成されます。 sk オプションも -sv オプションも使用しない場合は、既定で既定のキー コンテナーが作成され、使用されます。 |
-skySubjectKeySpec | サブジェクトのキーの仕様。 SubjectKeySpec は、次の 3 つの値のいずれかである必要があります。
|
-spSubjectProviderName | サブジェクトの CryptoAPI プロバイダー。 既定値はユーザーのプロバイダーです。 CryptoAPI プロバイダーの詳細については、CryptoAPI 2.0 のドキュメントを参照してください。 |
-srSubjectCertStoreLocation | サブジェクトの証明書ストアのレジストリの場所。 SubjectCertStoreLocation は、 LocalMachine (レジストリ キー HKEY_LOCAL_MACHINE) または CurrentUser (レジストリ キー HKEY_CURRENT_USER) である必要があります。 CurrentUser が既定値です。 |
-ssSubjectCertStoreName | 生成された証明書が格納されるサブジェクトの証明書ストアの名前。 |
-svSubjectKeyFile | サブジェクトの .pvk ファイルの名前。 sk オプションも -sv オプションも使用しない場合は、既定で既定のキー コンテナーが作成され、使用されます。 |
-synSubjectProviderType | サブジェクトの CryptoAPI プロバイダーの種類。 既定値は PROV_RSA_FULL です。 CryptoAPI プロバイダーの種類については、CryptoAPI 2.0 のドキュメントを参照してください。 |
-#SerialNumber | 証明書のシリアル番号。 最大値は 2^31 です。 既定値は、一意であることが保証されるツールによって生成される値です。 |
-$CertificateAuthority | 証明機関の種類。 CertificateAuthority は 、商用 (商用 ソフトウェア発行元が使用する証明書の場合) または 個人 (個々 のソフトウェア発行元が使用する証明書) に設定する必要があります。 |
-? | 基本オプションを表示します。 |
-! | 拡張オプションを表示します。 |
Note
Internet Explorer バージョン 4.0 以降で -sky キー仕様オプションを使用する場合、この仕様は 秘密キー ファイルまたは秘密 キー コンテナーによって示されるキー仕様と一致する必要があります。 キー指定オプションを使用しない場合は、秘密キー ファイルまたは秘密キー コンテナーによって示されるキー指定が使用されます。 キー コンテナーに複数のキー仕様がある場合、MakeCert は最初に AT_SIGNATURE キー仕様の使用を試みます。 失敗した場合、MakeCert はAT_KEYEXCHANGEの使用を試みます。 ほとんどのユーザーは、AT_SIGNATURE キーまたはAT_KEYEXCHANGE キーを持っているので、ほとんどの場合、このオプションを使用する必要はありません。
次のオプションは、ソフトウェア Publisher証明書 (SPC) ファイルと秘密キー テクノロジに対してのみ使用できます。
SPC と秘密キーのオプション | 説明 |
---|---|
-icIssuerCertFile | 発行者の証明書の場所。 |
-ikIssuerKey | 発行者のキー コンテナーの場所。 既定値はテスト ルート キーです。 |
-ikyIssuerKeySpec | 発行者のキー仕様。これは、次の 3 つの値のいずれかである必要があります。
|
-ipIssuerProviderName | 発行者の CryptoAPI プロバイダー。 既定値はユーザーのプロバイダーです。 CryptoAPI プロバイダーの詳細については、CryptoAPI 2.0 のドキュメントを参照してください。 |
-ivIssuerKeyFile | 発行者の秘密キー ファイル。 既定値はテスト ルートです。 |
-iynIssuerProviderType | 発行者の CryptoAPI プロバイダーの種類。 既定値は PROV_RSA_FULL です。 CryptoAPI プロバイダーの種類の詳細については、CryptoAPI 2.0 のドキュメントを参照してください。 |
Note
Internet Explorer 4.0 以降で -iky キー仕様オプションを使用する場合、この仕様は 秘密キー ファイルまたは秘密キーコンテナーによって示されるキー仕様と一致する必要があります。 キー指定オプションを使用しない場合は、秘密キー ファイルまたは秘密キー コンテナーによって示されるキー指定が使用されます。 キー コンテナーに複数のキー仕様がある場合、MakeCert は最初に AT_SIGNATURE キー仕様の使用を試みます。 失敗した場合、MakeCert はAT_KEYEXCHANGEの使用を試みます。 ほとんどのユーザーは、AT_SIGNATURE キーまたはAT_KEYEXCHANGE キーを持っているので、ほとんどの場合、このオプションを使用する必要はありません。
次のオプションは、 証明書ストア テクノロジ専用です。
証明書ストア オプション | 説明 |
---|---|
-icIssuerCertFile | 発行者の証明書を含むファイル。 MakeCert は、証明書ストアで、完全に一致する証明書を検索します。 |
-inIssuerNameString | 発行者の証明書の共通名。 MakeCert は証明書ストアで、 IssuerNameString を含む共通名の証明書を検索します。 |
-irIssuerCertStoreLocation | 発行者の証明書ストアのレジストリの場所。 IssuerCertStoreLocation は、 LocalMachine (レジストリ キー HKEY_LOCAL_MACHINE) または CurrentUser (レジストリ キー HKEY_CURRENT_USER) である必要があります。 CurrentUser が既定値です。 |
-isIssuerCertStoreName | 発行者の証明書とその関連付けられている秘密キー情報を含む発行者の証明書ストア。 ストアに複数の証明書がある場合、ユーザーは -ic または -in オプションを使用して証明書を一意に識別する必要があります。 証明書ストア内の証明書が一意に識別されない場合、MakeCert は失敗します。 |