certutil

警告

不建議在任何生產程式碼中使用 Certutil,也不提供即時網站支援或應用程式相容性的任何保證。 這是開發人員和 IT 系統管理員用來檢視裝置上憑證內容資訊的工具。

Certutil.exe 是安裝為憑證服務的一部分的命令列程式。 您可以使用 certutil.exe 來顯示憑證授權單位 (CA) 組態資訊、設定憑證服務,以及備份和還原 CA 元件。 此程式也會驗證憑證、金鑰組和憑證鏈。

如果在憑證授權單位上執行 certutil 時不含其他參數,則會顯示目前的憑證授權單位組態。 如果在非憑證授權單位上執行 certutil 時不含其他參數,則該命令預設會執行 certutil -dump 命令。 並非所有版本的 certutil 都提供本文件描述的所有參數和選項。 您可以執行 certutil -?certutil <parameter> -? 來查看 certutil 版本所提供的選項。

提示

若要查看所有 certutil 動詞命令和選項的完整說明,包括 -? 變數中隱藏的動詞命令和選項,請執行 certutil -v -uSAGEuSAGE 參數會區分大小寫。

參數

-dump

傾印組態資訊或檔案。

certutil [options] [-dump]
certutil [options] [-dump] File

選項:

[-f] [-user] [-Silent] [-split] [-p Password] [-t Timeout]

-dumpPFX

傾印 PFX 結構。

certutil [options] [-dumpPFX] File

選項:

[-f] [-Silent] [-split] [-p Password] [-csp Provider]

-asn

使用抽象語法標記法 (ASN.1) 語法剖析和顯示檔案的內容。 檔案類型包括 .CER、.DER 和 PKCS #7 格式的檔案。

certutil [options] -asn File [type]
  • [type]:數值 CRYPT_STRING_* 解碼類型

-decodehex

將十六進位編碼的檔案解碼。

certutil [options] -decodehex InFile OutFile [type]
  • [type]:數值 CRYPT_STRING_* 解碼類型

選項:

[-f]

-encodehex

以十六進位為檔案編碼。

certutil [options] -encodehex InFile OutFile [type]
  • [type]:數值 CRYPT_STRING_* 編碼類型

選項:

[-f] [-nocr] [-nocrlf] [-UnicodeText]

-decode

將 Base64 編碼的檔案解碼。

certutil [options] -decode InFile OutFile

選項:

[-f]

-encode

將檔案編碼為 Base64。

certutil [options] -encode InFile OutFile

選項:

[-f] [-unicodetext]

-deny

拒絕擱置的要求。

certutil [options] -deny RequestId

選項:

[-config Machine\CAName]

-resubmit

重新提交擱置的要求。

certutil [options] -resubmit RequestId

選項:

[-config Machine\CAName]

-setattributes

設定擱置憑證要求的屬性。

certutil [options] -setattributes RequestId AttributeString

其中:

  • RequestId 是擱置要求的數值要求識別碼。
  • AttributeString 是要求屬性名稱和值組。

選項:

[-config Machine\CAName]

備註

  • 名稱和值必須以冒號分隔,而多個名稱和值組必須以換行符號分隔。 例如:CertificateTemplate:User\nEMail:User@Domain.com,當中 \n 序列會轉換成換行符號的位置。

-setextension

為擱置憑證要求設定延期。

certutil [options] -setextension RequestId ExtensionName Flags {Long | Date | String | @InFile}

其中:

  • requestID 是擱置要求的數值要求識別碼。
  • ExtensionName 是延期的 ObjectId 字串。
  • Flags 會設定延期的優先順序。 建議使用 01 會將延期設定為重要,2 會停用延期,而 3 同時執行這兩項作業。

選項:

[-config Machine\CAName]

備註

  • 如果最後一個參數是數值,則會將其視為 Long
  • 如果最後一個參數可以剖析為日期,則會將其視為 Date
  • 如果最後一個參數以 \@ 開頭,則會將權杖的其餘部分與二進位資料或 ascii 文字十六進位傾印視為檔名。
  • 如果最後一個參數是任何其他內容,則會將其視為 String。

-revoke

撤銷憑證。

certutil [options] -revoke SerialNumber [Reason]

其中:

  • SerialNumber 是要撤銷之憑證序號的逗號分隔清單。
  • Reason 是撤銷原因的數值或符號表示,包括:
    • 0. CRL_REASON_UNSPECIFIED - 未指定 (預設值)
    • 1. CRL_REASON_KEY_COMPROMISE - 金鑰洩露
    • 2. CRL_REASON_CA_COMPROMISE - 憑證授權單位洩露
    • 3. CRL_REASON_AFFILIATION_CHANGED - 聯盟已變更
    • 4. CRL_REASON_SUPERSEDED - 已取代
    • 5. CRL_REASON_CESSATION_OF_OPERATION - 停止作業
    • 6. CRL_REASON_CERTIFICATE_HOLD - 憑證保留
    • 8. CRL_REASON_REMOVE_FROM_CRL - 從 CRL 移除
    • 9: CRL_REASON_PRIVILEGE_WITHDRAWN - 已撤回權限
    • 10:CRL_REASON_AA_COMPROMISE - AA 洩露
    • -1. 解除撤銷 - Unrevokes

選項:

[-config Machine\CAName]

-isvalid

顯示目前憑證的處置。

certutil [options] -isvalid SerialNumber | CertHash

選項:

[-config Machine\CAName]

-getconfig

取得預設組態字串。

certutil [options] -getconfig

選項:

[-idispatch] [-config Machine\CAName]

-getconfig2

透過 ICertGetConfig 取得預設組態字串。

certutil [options] -getconfig2

選項:

[-idispatch] 

-getconfig3

透過 ICertConfig 取得組態。

certutil [options] -getconfig3

選項:

[-idispatch] 

-ping

嘗試連絡 Active Directory 憑證服務要求介面。

certutil [options] -ping [MaxSecondsToWait | CAMachineList]

其中:

  • CAMachineList 是以逗號分隔的 CA 電腦名稱清單。 對於單一電腦,請使用終止逗號。 這個選項也會顯示每個 CA 電腦的站點成本。

選項:

[-config Machine\CAName] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName UserName] [-p Password]

-pingadmin

嘗試連絡 Active Directory 憑證服務管理介面。

certutil [options] -pingadmin

選項:

[-config Machine\CAName]

-CAInfo

顯示憑證授權單位的相關資訊。

certutil [options] -CAInfo [InfoName [Index | ErrorCode]]

其中:

  • InfoName 會根據下列 infoname 引數語法,指出要顯示的 CA 屬性:
    • * - 顯示所有屬性
    • ads - 進階伺服器
    • aia [Index] - AIA URL
    • cdp [Index] - CDP URL
    • cert [Index] - CA 憑證
    • certchain [Index] - CA 憑證鏈
    • certcount - CA 憑證計數
    • certcrlchain [Index] - 含 CRL 的 CA 憑證鏈
    • certstate [Index] - CA 憑證
    • certstatuscode [Index] - CA 憑證驗證狀態
    • certversion [Index] - CA 憑證版本
    • CRL [Index] - 基底 CRL
    • crlstate [Index] - CRL
    • crlstatus [Index] - CRL 發佈狀態
    • cross- [Index] - 反向交叉憑證
    • cross+ [Index] - 正向交叉憑證
    • crossstate- [Index] - 反向交叉憑證
    • crossstate+ [Index] - 正向交叉憑證
    • deltacrl [Index] - Delta CRL
    • deltacrlstatus [Index] - Delta CRL 發佈狀態
    • dns - DNS 名稱
    • dsname - 處理過的 CA 簡短名稱 (DS 名稱)
    • error1 ErrorCode - 錯誤訊息文字
    • error2 ErrorCode - 錯誤訊息文字和錯誤碼
    • exit [Index] - 結束模組描述
    • exitcount - 結束模組計數
    • file - 檔案版本
    • info - CA 資訊
    • kra [Index] - KRA 憑證
    • kracount - KRA 憑證計數
    • krastate [Index] - KRA 憑證
    • kraused - 已使用的 KRA 憑證計數
    • localename - CA 地區設定名稱
    • name - CA 名稱
    • ocsp [Index] - OCSP URL
    • parent - 父 CA
    • policy - 原則模組描述
    • product - 產品版本
    • propidmax - CA PropId 上限
    • role - 角色隔離
    • sanitizedname - 處理過的 CA 名稱
    • sharedfolder - 共用資料夾
    • subjecttemplateoids - 主體範本 OIDs
    • templates - 範本
    • type - CA 類型
    • xchg [Index] - CA 交換憑證
    • xchgchain [Index] - CA 交換憑證鏈
    • xchgcount - CA 交換憑證計數
    • xchgcrlchain [Index] - 含 CRL 的 CA 交換憑證鏈
  • index 是以零為基底的選擇性屬性索引。
  • errorcode 是數值錯誤碼。

選項:

[-f] [-split] [-config Machine\CAName]

-CAPropInfo

顯示 CA 屬性類型資訊。

certutil [options] -CAInfo [InfoName [Index | ErrorCode]]

選項:

[-idispatch] [-v1] [-admin] [-config Machine\CAName]

-ca.cert

擷取憑證授權單位的憑證。

certutil [options] -ca.cert OutCACertFile [Index]

其中:

  • OutCACertFile 是輸出檔。
  • Index 是 CA 憑證更新索引 (預設為最新的)。

選項:

[-f] [-split] [-config Machine\CAName]

-ca.chain

擷取憑證授權單位的憑證鏈。

certutil [options] -ca.chain OutCACertChainFile [Index]

其中:

  • OutCACertChainFile 是輸出檔案。
  • Index 是 CA 憑證更新索引 (預設為最新的)。

選項:

[-f] [-split] [-config Machine\CAName]

-GetCRL

取得憑證撤銷清單 (CRL)。

certutil [options] -GetCRL OutFile [Index] [delta]

其中:

  • Index 是 CRL 索引或金鑰索引 (預設為最新金鑰的 CRL)。
  • delta 是差異 CRL (預設值為基底 CRL)。

選項:

[-f] [-split] [-config Machine\CAName]

-CRL

發佈新的憑證撤銷清單 (CRL) 或差異 CRL。

certutil [options] -CRL [dd:hh | republish] [delta]

其中:

  • dd:hh 是以天數和小時數表示的新 CRL 有效期間。
  • republish 會重新發佈最新的 CRL。
  • delta 只會發佈差異 CRL (預設值為基底和差異 CRL)。

選項:

[-split] [-config Machine\CAName]

-shutdown

關閉 Active Directory 憑證服務。

certutil [options] -shutdown

選項:

[-config Machine\CAName]

-installCert

要安裝憑證授權單位憑證。

certutil [options] -installCert [CACertFile]

選項:

[-f] [-silent] [-config Machine\CAName]

-renewCert

更新憑證授權單位憑證。

certutil [options] -renewCert [ReuseKeys] [Machine\ParentCAName]

選項:

[-f] [-silent] [-config Machine\CAName]
  • 使用 -f 忽略未完成的更新要求,並產生新要求。

-schema

傾印憑證的結構描述。

certutil [options] -schema [Ext | Attrib | CRL]

其中:

  • 該命令預設為 [要求] 和 [憑證] 資料表。
  • Ext 是延伸模組資料表。
  • Attribute 是屬性資料表。
  • CRL 是 CRL 資料表。

選項:

[-split] [-config Machine\CAName]

-view

傾印憑證檢視。

certutil [options] -view [Queue | Log | LogFail | Revoked | Ext | Attrib | CRL] [csv]

其中:

  • Queue 會傾印特定要求佇列。
  • Log 會傾印已簽發或撤銷的憑證,以及任何失敗的要求。
  • LogFail 會傾印失敗的要求。
  • Revoked 會傾印撤銷的憑證。
  • Ext 會傾印延伸模組資料表。
  • Attrib 會傾印屬性資料表。
  • CRL 會傾印 CRL 資料表。
  • csv 會使用逗號分隔值來提供輸出。

選項:

[-silent] [-split] [-config Machine\CAName] [-restrict RestrictionList] [-out ColumnList]

備註

  • 若要顯示所有項目的 StatusCode 資料行,請輸入 -out StatusCode
  • 若要顯示最後一個項目的所有資料行,請輸入:-restrict RequestId==$
  • 若要顯示三個要求的 RequestIdDisposition,請輸入:-restrict requestID>=37,requestID<40 -out requestID,disposition
  • 若要顯示所有基底 CRL 的資料列識別碼CRL 數目,請輸入:-restrict crlminbase=0 -out crlrowID,crlnumber crl
  • 若要顯示基底 CRL 數字 3,請輸入:-v -restrict crlminbase=0,crlnumber=3 -out crlrawcrl crl
  • 若要顯示整個 CRL 資料表,請輸入:CRL
  • Date[+|-dd:hh] 用於日期限制。
  • now+dd:hh 用於相對於目前時間的日期。
  • 範本包含擴充金鑰使用方法 (EKU),這些是描述憑證使用方式的物件識別碼 (OID)。 憑證不一定會包含範本通用名稱或顯示名稱,但一律包含範本 EKU。 您可以從 Active Directory 擷取特定憑證範本的 EKU,然後根據該延伸模組限制檢視。

-db

傾印原始資料庫。

certutil [options] -db

選項:

[-config Machine\CAName] [-restrict RestrictionList] [-out ColumnList]

-deleterow

從伺服器資料庫刪除資料列。

certutil [options] -deleterow RowId | Date [Request | Cert | Ext | Attrib | CRL]

其中:

  • Request求 會根據提交日期刪除失敗和擱置的要求。
  • Cert 會根據到期日刪除過期和撤銷的憑證。
  • Ext 會刪除延伸模組資料表。
  • Attrib 會刪除屬性資料表。
  • CRL 會刪除 CRL 資料表。

選項:

[-f] [-config Machine\CAName]

範例

  • 若要刪除在 2001 年 1 月 22 日之前提交的失敗和擱置要求,請輸入:1/22/2001 request
  • 若要刪除 2001 年 1 月 22 日到期的所有憑證,請輸入:1/22/2001 cert
  • 若要刪除 RequestID 37 的憑證資料列、屬性和延伸模組,請輸入:37
  • 若要刪除 2001 年 1 月 22 日到期的 CRL,請輸入:1/22/2001 crl

注意

Date 預期 mm/dd/yyyy 的格式,而不是 dd/mm/yyyy,例如對於 2001 年 1 月 22 日,是 1/22/2001,而不是 22/1/2001。 如果您的伺服器未設定美國地區設定,則使用 Date 引數可能會產生非預期的結果。

-backup

備份 Active Directory 憑證服務。

certutil [options] -backup BackupDirectory [Incremental] [KeepLog]

其中:

  • BackupDirectory 是用來儲存和備份資料的目錄。
  • Incremental 只會執行增量備份 (預設值為完整備份)。
  • KeepLog 會保留資料庫記錄檔 (預設值為截斷記錄檔)。

選項:

[-f] [-config Machine\CAName] [-p Password] [-ProtectTo SAMNameAndSIDList]

-backupDB

備份 Active Directory 憑證服務資料庫。

certutil [options] -backupdb BackupDirectory [Incremental] [KeepLog]

其中:

  • BackupDirectory 是用來儲存和備份資料庫檔案的目錄。
  • Incremental 只會執行增量備份 (預設值為完整備份)。
  • KeepLog 會保留資料庫記錄檔 (預設值為截斷記錄檔)。

選項:

[-f] [-config Machine\CAName]

-backupkey

備份 Active Directory 憑證服務憑證和私密金鑰。

certutil [options] -backupkey BackupDirectory

其中:

  • BackupDirectory 是用來儲存和備份 PFX 檔案的目錄。

選項:

[-f] [-config Machine\CAName] [-p password] [-ProtectTo SAMNameAndSIDList] [-t Timeout]

-restore

還原 Active Directory 憑證服務。

certutil [options] -restore BackupDirectory

其中:

  • BackupDirectory 是包含要還原之資料的目錄。

選項:

[-f] [-config Machine\CAName] [-p password]

-restoredb

還原 Active Directory 憑證服務資料庫。

certutil [options] -restoredb BackupDirectory

其中:

  • BackupDirectory 是包含要還原之資料庫檔案的目錄。

選項:

[-f] [-config Machine\CAName]

-restorekey

還原 Active Directory 憑證服務憑證和私密金鑰。

certutil [options] -restorekey BackupDirectory | PFXFile

其中:

  • BackupDirectory 是包含要還原之 PFX 檔案的目錄。
  • PFXFile 是要還原的 PFX 檔案。

選項:

[-f] [-config Machine\CAName] [-p password]

-exportPFX

匯出憑證和私密金鑰。 如需詳細資訊,請參閱本文章中 -store 參數。

certutil [options] -exportPFX [CertificateStoreName] CertId PFXFile [Modifiers]

其中:

  • CertificateStoreName 是憑證存放區的名稱。
  • CertId 是憑證或 CRL 比對權杖。
  • PFXFile 是要匯出的 PFX 檔案。
  • Modifiers 是逗號分隔清單,可包含下列一項或多項:
    • CryptoAlgorithm= 指定要用於加密 PFX 檔案的密碼編譯演算法,例如 TripleDES-Sha1Aes256-Sha256
    • EncryptCert - 使用密碼加密與憑證相關聯的私密金鑰。
    • ExportParameters -除了憑證和私密金鑰之外,還會匯出私密金鑰參數。
    • ExtendedProperties - 包含與輸出檔案中憑證相關聯的所有擴充屬性。
    • NoEncryptCert - 匯出私密金鑰而不加密。
    • NoChain - 不匯入憑證鏈。
    • NoRoot - 不匯入根憑證。

-importPFX

匯入憑證和私密金鑰。 如需詳細資訊,請參閱本文章中 -store 參數。

certutil [options] -importPFX [CertificateStoreName] PFXFile [Modifiers]

其中:

  • CertificateStoreName 是憑證存放區的名稱。
  • PFXFile 是要匯入的 PFX 檔案。
  • Modifiers 是逗號分隔清單,可包含下列一項或多項:
    • AT_KEYEXCHANGE - 將 keyspec 變更為金鑰交換。
    • AT_SIGNATURE - 將 keyspec 變更為簽章。
    • ExportEncrypted - 以密碼加密匯出與憑證相關聯的私密金鑰。
    • FriendlyName= - 為已匯入的憑證指定易記名稱。
    • KeyDescription= - 為已匯入的憑證相關聯之私密金鑰指定描述。
    • KeyFriendlyName= - 為已匯入的憑證相關聯之私密金鑰指定易記名稱。
    • NoCert - 不匯入憑證。
    • NoChain - 不匯入憑證鏈。
    • NoExport - 使私密金鑰不可匯出。
    • NoProtect - 不透過使用密碼以密碼保護金鑰。
    • NoRoot - 不匯入根憑證。
    • Pkcs8 - 針對 PFX 檔案中的私密金鑰使用 PKCS8 格式。
    • Protect - 透過使用密碼來保護金鑰。
    • ProtectHigh - 指定高安全性密碼必須與私密金鑰相關聯。
    • VSM - 將與匯入憑證相關聯的私密金鑰儲存在虛擬智慧卡 (VSC) 容器中。

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-Silent] [-p Password] [-csp Provider]

備註

  • 預設為個人電腦存放區。

-dynamicfilelist

顯示動態檔案清單。

certutil [options] -dynamicfilelist

選項:

[-config Machine\CAName]

-databaselocations

顯示資料庫位置。

certutil [options] -databaselocations

選項:

[-config Machine\CAName]

-hashfile

在檔案上產生並顯示密碼編譯雜湊。

certutil [options] -hashfile InFile [HashAlgorithm]

-store

傾印憑證存放區。

certutil [options] -store [CertificateStoreName [CertId [OutputFile]]]

其中:

  • CertificateStoreName 是憑證存放區名稱。 例如:

    • My, CA (default), Root,
    • ldap:///CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?cACertificate?one?objectClass=certificationAuthority (View Root Certificates)
    • ldap:///CN=CAName,CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?cACertificate?base?objectClass=certificationAuthority (Modify Root Certificates)
    • ldap:///CN=CAName,CN=MachineName,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?certificateRevocationList?base?objectClass=cRLDistributionPoint (View CRLs)
    • ldap:///CN=NTAuthCertificates,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?cACertificate?base?objectClass=certificationAuthority (Enterprise CA Certificates)
    • ldap: (AD computer object certificates)
    • -user ldap: (AD user object certificates)
  • CertId 是憑證或 CRL 比對權杖。 此識別碼可以是:

    • 序號
    • SHA-1 憑證
    • CRL、CTL 或公開金鑰雜湊
    • 數值憑證索引 (0、1 等等)
    • 數值 CRL 索引 (.0、.1 等等)
    • 數值 CTL 索引 (..0、..1 等等)
    • 公開金鑰
    • Signature 或 extension ObjectId
    • 憑證主體一般名稱
    • 電子郵件地址
    • UPN 或 DNS 名稱
    • 金鑰容器名稱或 CSP 名稱
    • 範本名稱或 ObjectId
    • EKU 或應用程式原則 ObjectId
    • CRL 簽發者一般名稱。

其中許多識別碼可能導致多個相符項目。

  • OutputFile 是用來儲存相符憑證的檔案。

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-Silent] [-split] [-dc DCName]
  • -user 選項會存取使用者存放區,而不是電腦存放區。
  • -enterprise 選項會存取電腦企業存放區。
  • -service 選項會存取電腦服務存放區。
  • -grouppolicy 選項會存取電腦群組原則存放區。

例如:

  • -enterprise NTAuth
  • -enterprise Root 37
  • -user My 26e0aaaf000000000004
  • CA .11

注意

使用 -store 參數時觀察到的效能問題考慮到這兩個層面:

  1. 當存放區中的憑證數目超過 10 時。
  2. 當指定 CertId 時,它會用來比對每個憑證所有列出的類型。 例如,如果提供序號,它也會嘗試比對所有其他列出的類型。

如果您擔心效能問題,建議使用 PowerShell 命令,當中只會比對指定的憑證類型。

-enumstore

列舉憑證存放區

certutil [options] -enumstore [\\MachineName]

其中:

  • MachineName 是遠端電腦名稱。

選項:

[-enterprise] [-user] [-grouppolicy]

-addstore

將憑證新增至存放區。 如需詳細資訊,請參閱本文章中 -store 參數。

certutil [options] -addstore CertificateStoreName InFile

其中:

  • CertificateStoreName 是憑證存放區名稱。
  • InFile 是您想要新增至存放區的憑證或 CRL 檔案。

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-dc DCName]

-delstore

從存放區刪除憑證。 如需詳細資訊,請參閱本文章中 -store 參數。

certutil [options] -delstore CertificateStoreName certID

其中:

  • CertificateStoreName 是憑證存放區名稱。
  • CertId 是憑證或 CRL 比對權杖。

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-Silent] [-dc DCName]

-verifystore

驗證存放區中的憑證。 如需詳細資訊,請參閱本文章中 -store 參數。

certutil [options] -verifystore CertificateStoreName [CertId]

其中:

  • CertificateStoreName 是憑證存放區名稱。
  • CertId 是憑證或 CRL 比對權杖。

選項:

[-Enterprise] [-user] [-GroupPolicy] [-Silent] [-split] [-dc DCName] [-t Timeout]

-repairstore

修復金鑰關聯或更新憑證屬性或金鑰安全性描述元。 如需詳細資訊,請參閱本文章中 -store 參數。

certutil [options] -repairstore CertificateStoreName CertIdList [PropertyInfFile | SDDLSecurityDescriptor]

其中:

  • CertificateStoreName 是憑證存放區名稱。

  • CertIdList 是憑證或 CRL 比對權杖的逗號分隔清單。 如需詳細資訊,請參閱本文中的 -store CertId 描述。

  • PropertyInfFile 是包含外部屬性的 INF 檔案,包括:

    [Properties]
        19 = Empty ; Add archived property, OR:
        19 =       ; Remove archived property
    
        11 = {text}Friendly Name ; Add friendly name property
    
        127 = {hex} ; Add custom hexadecimal property
            _continue_ = 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
            _continue_ = 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f
    
        2 = {text} ; Add Key Provider Information property
          _continue_ = Container=Container Name&
          _continue_ = Provider=Microsoft Strong Cryptographic Provider&
          _continue_ = ProviderType=1&
          _continue_ = Flags=0&
          _continue_ = KeySpec=2
    
        9 = {text} ; Add Enhanced Key Usage property
          _continue_ = 1.3.6.1.5.5.7.3.2,
          _continue_ = 1.3.6.1.5.5.7.3.1,
    

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-Silent] [-split] [-csp Provider]

-viewstore

傾印憑證存放區。 如需詳細資訊,請參閱本文章中 -store 參數。

certutil [options] -viewstore [CertificateStoreName [CertId [OutputFile]]]

其中:

  • CertificateStoreName 是憑證存放區名稱。 例如:

    • My, CA (default), Root,
    • ldap:///CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?cACertificate?one?objectClass=certificationAuthority (View Root Certificates)
    • ldap:///CN=CAName,CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?cACertificate?base?objectClass=certificationAuthority (Modify Root Certificates)
    • ldap:///CN=CAName,CN=MachineName,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?certificateRevocationList?base?objectClass=cRLDistributionPoint (View CRLs)
    • ldap:///CN=NTAuthCertificates,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?cACertificate?base?objectClass=certificationAuthority (Enterprise CA Certificates)
    • ldap: (AD computer object certificates)
    • -user ldap: (AD user object certificates)
  • CertId 是憑證或 CRL 比對權杖。 這可以是:

    • 序號
    • SHA-1 憑證
    • CRL、CTL 或公開金鑰雜湊
    • 數值憑證索引 (0、1 等等)
    • 數值 CRL 索引 (.0、.1 等等)
    • 數值 CTL 索引 (..0、..1 等等)
    • 公開金鑰
    • Signature 或 extension ObjectId
    • 憑證主體一般名稱
    • 電子郵件地址
    • UPN 或 DNS 名稱
    • 金鑰容器名稱或 CSP 名稱
    • 範本名稱或 ObjectId
    • EKU 或應用程式原則 ObjectId
    • CRL 簽發者一般名稱。

其中許多都可能導致多個相符項目。

  • OutputFile 是用來儲存相符憑證的檔案。

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-dc DCName]
  • -user 選項會存取使用者存放區,而不是電腦存放區。
  • -enterprise 選項會存取電腦企業存放區。
  • -service 選項會存取電腦服務存放區。
  • -grouppolicy 選項會存取電腦群組原則存放區。

例如:

  • -enterprise NTAuth
  • -enterprise Root 37
  • -user My 26e0aaaf000000000004
  • CA .11

-viewdelstore

從存放區刪除憑證。

certutil [options] -viewdelstore [CertificateStoreName [CertId [OutputFile]]]

其中:

  • CertificateStoreName 是憑證存放區名稱。 例如:

    • My, CA (default), Root,
    • ldap:///CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?cACertificate?one?objectClass=certificationAuthority (View Root Certificates)
    • ldap:///CN=CAName,CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?cACertificate?base?objectClass=certificationAuthority (Modify Root Certificates)
    • ldap:///CN=CAName,CN=MachineName,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?certificateRevocationList?base?objectClass=cRLDistributionPoint (View CRLs)
    • ldap:///CN=NTAuthCertificates,CN=Public Key Services,CN=Services,CN=Configuration,DC=cpandl,DC=com?cACertificate?base?objectClass=certificationAuthority (Enterprise CA Certificates)
    • ldap: (AD computer object certificates)
    • -user ldap: (AD user object certificates)
  • CertId 是憑證或 CRL 比對權杖。 這可以是:

    • 序號
    • SHA-1 憑證
    • CRL、CTL 或公開金鑰雜湊
    • 數值憑證索引 (0、1 等等)
    • 數值 CRL 索引 (.0、.1 等等)
    • 數值 CTL 索引 (..0、..1 等等)
    • 公開金鑰
    • Signature 或 extension ObjectId
    • 憑證主體一般名稱
    • 電子郵件地址
    • UPN 或 DNS 名稱
    • 金鑰容器名稱或 CSP 名稱
    • 範本名稱或 ObjectId
    • EKU 或應用程式原則 ObjectId
    • CRL 簽發者一般名稱。 其中許多都可能導致多個相符項目。
  • OutputFile 是用來儲存相符憑證的檔案。

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-dc DCName]
  • -user 選項會存取使用者存放區,而不是電腦存放區。
  • -enterprise 選項會存取電腦企業存放區。
  • -service 選項會存取電腦服務存放區。
  • -grouppolicy 選項會存取電腦群組原則存放區。

例如:

  • -enterprise NTAuth
  • -enterprise Root 37
  • -user My 26e0aaaf000000000004
  • CA .11

-UI

叫用 certutil 介面。

certutil [options] -UI File [import]

-TPMInfo

顯示信賴平台模組資訊。

certutil [options] -TPMInfo

選項:

[-f] [-Silent] [-split]

-attest

指定應該證明憑證要求檔案。

certutil [options] -attest RequestFile

選項:

[-user] [-Silent] [-split]

-getcert

從選取 UI 選取憑證。

certutil [options] [ObjectId | ERA | KRA [CommonName]]

選項:

[-Silent] [-split]

-ds

顯示目錄服務 (DS) 辨別名稱 (DN)。

certutil [options] -ds [CommonName]

選項:

[-f] [-user] [-split] [-dc DCName]

-dsDel

刪除 DS DN。

certutil [options] -dsDel [CommonName]

選項:

[-user] [-split] [-dc DCName]

-dsPublish

將憑證或憑證撤銷清單 (CRL) 發佈至 Active Directory。

certutil [options] -dspublish CertFile [NTAuthCA | RootCA | SubCA | CrossCA | KRA | User | Machine]
certutil [options] -dspublish CRLfile [DSCDPContainer [DSCDPCN]]

其中:

  • CertFile 是要發佈的憑證檔案名稱。
  • NTAuthCA 會將憑證發佈至 DS 企業存放區。
  • RootCA 會將憑證發佈至 DS 受信任的根存放區。
  • SubCA 會將 CA 憑證發佈至 DS CA 物件。
  • CrossCA 會將跨憑證發佈至 DS CA 物件。
  • KRA 會將憑證發佈至 DS 金鑰修復代理物件。
  • User 會將憑證發佈至使用者 DS物件。
  • Machine 會將憑證發佈至電腦 DS 物件。
  • CRLfile 是要發佈的 CRL 檔案名稱。
  • DSCDPContainer 是 DS CDP 容器 CN,通常是 CA 電腦名稱。
  • DSCDPCN 是以處理過的 CA 簡短名稱和金鑰索引為基礎的 DS CDP 物件 CN。

選項:

[-f] [-user] [-dc DCName]
  • 使用 -f 建立新的 DS 物件。

-dsCert

顯示 DS 憑證。

certutil [options] -dsCert [FullDSDN] | [CertId [OutFile]]

選項:

[-Enterprise] [-user] [-config Machine\CAName] [-dc DCName]

-dsCRL

顯示 DS CRL。

certutil [options] -dsCRL [FullDSDN] | [CRLIndex [OutFile]]

選項:

[-idispatch] [-Enterprise] [-user] [-config Machine\CAName] [-dc DCName]

-dsDeltaCRL

顯示 DS 差異 CRL。

certutil [options] -dsDeltaCRL [FullDSDN] | [CRLIndex [OutFile]]

選項:

[-Enterprise] [-user] [-config Machine\CAName] [-dc DCName]

-dsTemplate

顯示 DS 範本屬性。

certutil [options] -dsTemplate [Template]

選項:

[Silent] [-dc DCName]

-dsAddTemplate

新增 DS 範本。

certutil [options] -dsAddTemplate TemplateInfFile

選項:

[-dc DCName]

-ADTemplate

顯示 Active Directory 範本。

certutil [options] -ADTemplate [Template]

選項:

[-f] [-user] [-ut] [-mt] [-dc DCName]

-Template

顯示憑證註冊原則範本。

選項:

certutil [options] -Template [Template]

選項:

[-f] [-user] [-Silent] [-PolicyServer URLOrId] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName UserName] [-p Password]

-TemplateCAs

顯示憑證範本的憑證授權單位 (CA)。

certutil [options] -TemplateCAs Template

選項:

[-f] [-user] [-dc DCName]

-CATemplates

顯示憑證授權單位的範本。

certutil [options] -CATemplates [Template]

選項:

[-f] [-user] [-ut] [-mt] [-config Machine\CAName] [-dc DCName]

-SetCATemplates

設定憑證授權單位可以發行的憑證範本。

certutil [options] -SetCATemplates [+ | -] TemplateList

其中:

  • + 符號會將憑證範本新增至 CA 的可用範本清單。
  • - 簽署會從 CA 的可用範本清單中移除憑證範本。

-SetCASites

管理網站名稱,包括設定、驗證和刪除憑證授權單位網站名稱。

certutil [options] -SetCASites [set] [SiteName]
certutil [options] -SetCASites verify [SiteName]
certutil [options] -SetCASites delete

其中:

  • 只有在以單一憑證授權單位為目標時,才允許 SiteName

選項:

[-f] [-config Machine\CAName] [-dc DCName]

備註

  • -config 選項以單一憑證授權單位為目標 (預設值為所有 CA)。
  • -f 選項可用來覆寫指定 SiteName 的驗證錯誤,或刪除所有 CA 網站名稱。

注意

如需設定 CA 以進行 Active Directory 網域服務 (AD DS) 網站感知的詳細資訊,請參閱 AD CS 和 PKI 用戶端的 AD DS 網站感知

-enrollmentServerURL

顯示、新增或刪除與 CA 相關聯的註冊伺服器 URL。

certutil [options] -enrollmentServerURL [URL AuthenticationType [Priority] [Modifiers]]
certutil [options] -enrollmentserverURL URL delete

其中:

  • AuthenticationType 會在新增 URL 時指定下列其中一個用戶端驗證方法:
    • Kerberos - 使用 Kerberos SSL 認證。
    • UserName - 針對 SSL 認證使用具名帳戶。
    • ClientCertificate - 使用 X.509 憑證 SSL 認證。
    • Anonymous - 使用匿名 SSL 認證。
  • delete 會刪除與 CA 相關聯的指定 URL。
  • 新增 URL 時若未指定,Priority 會預設為 1
  • Modifiers 是逗號分隔清單,其中包含下列一項或多項:
    • AllowRenewalsOnly 只有更新要求能透過此 URL 提交至此 CA。
    • AllowKeyBasedRenewal 允許使用 AD 中沒有相關聯帳戶的憑證。 這僅適用於 ClientCertificateAllowRenewalsOnly 模式。

選項:

[-config Machine\CAName] [-dc DCName]

-ADCA

顯示 Active Directory 憑證授權單位。

certutil [options] -ADCA [CAName]

選項:

[-f] [-split] [-dc DCName]

-CA

顯示註冊原則憑證授權單位。

certutil [options] -CA [CAName | TemplateName]

選項:

[-f] [-user] [-Silent] [-split] [-PolicyServer URLOrId] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName UserName] [-p Password]

-Policy

顯示註冊原則。

certutil [options] -Policy

選項:

[-f] [-user] [-Silent] [-split] [-PolicyServer URLOrId] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName UserName] [-p Password]

-PolicyCache

顯示或刪除註冊原則快取項目。

certutil [options] -PolicyCache [delete]

其中:

  • delete 會刪除原則伺服器快取項目。
  • -f 會刪除所有快取項目

選項:

[-f] [-user] [-policyserver URLorID]

-CredStore

顯示、新增或刪除認證存放區項目。

certutil [options] -CredStore [URL]
certutil [options] -CredStore URL add
certutil [options] -CredStore URL delete

其中:

  • URL 是目標 URL. 您也可以使用 * 來比對所有項目,或使用 https://machine* 比對 URL 前置詞。
  • add 會新增認證存放區項目。 使用此選項也需要使用 SSL 認證。
  • delete 會刪除認證存放區項目。
  • -f 會覆寫單一項目或刪除多個項目。

選項:

[-f] [-user] [-Silent] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName UserName] [-p Password]

-InstallDefaultTemplates

安裝預設憑證範本。

certutil [options] -InstallDefaultTemplates

選項:

[-dc DCName]

-URL

驗證憑證或 CRL URL。

certutil [options] -URL InFile | URL

選項:

[-f] [-split]

-URLCache

顯示或刪除 URL 快取項目。

certutil [options] -URLcache [URL | CRL | * [delete]]

其中:

  • URL 是快取的 URL。
  • CRL 只會在所有快取的 CRL URL 上執行。
  • * 會在所有快取的 URL 上運作。
  • delete 會從目前使用者的本機快取中刪除相關的 URL。
  • -f 會強制擷取特定 URL 並更新快取。

選項:

[-f] [-split]

-pulse

產生自動註冊事件或 NGC 作業的脈衝。

certutil [options] -pulse [TaskName [SRKThumbprint]]

其中:

  • TaskName 是要觸發的作業。
    • Pregen 是 NGC 金鑰預先產生作業
    • AIKEnroll 是 NGC AIK 憑證註冊作業。 (預設為自動註冊事件)。
  • SRKThumbprint 是儲存體根金鑰的指紋
  • Modifiers
    • Pregen
    • PregenDelay
    • AIKEnroll
    • CryptoPolicy
    • NgcPregenKey
    • DIMSRoam

選項:

[-user]

-MachineInfo

顯示 Active Directory 電腦物件的相關資訊。

certutil [options] -MachineInfo DomainName\MachineName$

-DCInfo

顯示網域控制站的相關資訊。 預設會在不驗證下顯示 DC 憑證。

certutil [options] -DCInfo [Domain] [Verify | DeleteBad | DeleteAll]
  • Modifiers

    • Verify
    • DeleteBad
    • DeleteAll

選項:

[-f] [-user] [-urlfetch] [-dc DCName] [-t Timeout]

提示

在 Windows Server 2012 中已新增指定 Active Directory 網域服務 (AD DS) 網域 [Domain] 和指定網域控制站 (dc) 的功能。 若要成功執行命令,您必須使用屬於網域管理員企業管理員之成員的帳戶。 此指令的行為修改如下:

  • 如果未指定網域,而且未指定特定網域控制站,此選項會傳回要從預設網域控制站處理的網域控制站清單。
  • 如果未指定網域,但已指定網域控制站,會產生指定網域控制器上的憑證報告。
  • 如果已指定網域,但未指定網域控制站,則會產生網域控制站清單,以及清單中每個網域控制站的憑證報告。
  • 如果指定了網域和網域控制站,則會從目標網域控制站產生網域控制站清單。 也會產生清單中每個網域控制站的憑證報告。

例如,假設有名為 CPANDL 的網域與名為 CPANDL-DC1 的網域控制站。 您可以執行下列命令,從 CPANDL-DC1 擷取網域控制站及其憑證清單:certutil -dc cpandl-dc1 -DCInfo cpandl

-EntInfo

顯示企業憑證授權單位的相關資訊。

certutil [options] -EntInfo DomainName\MachineName$

選項:

[-f] [-user]

-TCAInfo

顯示憑證授權單位的相關資訊。

certutil [options] -TCAInfo [DomainDN | -]

選項:

[-f] [-Enterprise] [-user] [-urlfetch] [-dc DCName] [-t Timeout]

-SCInfo

顯示智慧卡的相關資訊。

certutil [options] -scinfo [ReaderName [CRYPT_DELETEKEYSET]]

其中:

  • CRYPT_DELETEKEYSET 會刪除智慧卡上的所有金鑰。

選項:

[-Silent] [-split] [-urlfetch] [-t Timeout]

-SCRoots

管理智慧卡根憑證。

certutil [options] -SCRoots update [+][InputRootFile] [ReaderName]
certutil [options] -SCRoots save @OutputRootFile [ReaderName]
certutil [options] -SCRoots view [InputRootFile | ReaderName]
certutil [options] -SCRoots delete [ReaderName]

選項:

[-f] [-split] [-p Password]

-key

列出儲存在金鑰容器中的金鑰。

certutil [options] -key [KeyContainerName | -]

其中:

  • KeyContainerName 是要驗證之金鑰的金鑰容器名稱。 這個選項預設為電腦金鑰。 若要切換至使用者金鑰,請使用 -user
  • 使用 - 符號是指使用預設金鑰容器。

選項:

[-user] [-Silent] [-split] [-csp Provider] [-Location AlternateStorageLocation]

-delkey

刪除具名金鑰容器。

certutil [options] -delkey KeyContainerName

選項:

[-user] [-Silent] [-split] [-csp Provider] [-Location AlternateStorageLocation]

-DeleteHelloContainer

刪除 Windows Hello 容器,移除儲存在裝置上的所有相關聯認證,包括任何 WebAuthn 和 FIDO 認證。

使用者必須在使用此選項後登出,才能完成。

certutil [options] -DeleteHelloContainer

-verifykeys

驗證公開或私密金鑰集。

certutil [options] -verifykeys [KeyContainerName CACertFile]

其中:

  • KeyContainerName 是要驗證之金鑰的金鑰容器名稱。 這個選項預設為電腦金鑰。 若要切換至使用者金鑰,請使用 -user
  • CACertFile 會簽署或加密憑證檔案。

選項:

[-f] [-user] [-Silent] [-config Machine\CAName]

備註

  • 如果未指定任何引數,則會針對其私密金鑰驗證每個簽署 CA 憑證。
  • 這項作業只能針對本機 CA 或本機金鑰執行。

-verify

驗證憑證、憑證撤銷清單 (CRL) 或憑證鏈。

certutil [options] -verify CertFile [ApplicationPolicyList | - [IssuancePolicyList]] [Modifiers]
certutil [options] -verify CertFile [CACertFile [CrossedCACertFile]]
certutil [options] -verify CRLFile CACertFile [IssuedCertFile]
certutil [options] -verify CRLFile CACertFile [DeltaCRLFile]

其中:

  • CertFile 是要驗證的憑證名稱。
  • ApplicationPolicyList 是必要應用程式原則 ObjectIds 的選擇性逗號分隔清單。
  • IssuancePolicyList 是必要發行原則 ObjectIds 的選擇性逗號分隔清單。
  • CACertFile 是選擇性的發行 CA 憑證,可對其進行驗證。
  • CrossedCACertFileCertFile 交叉認證的選擇性憑證。
  • CRLFile 是用來驗證 CACertFile 的 CRL 檔案。
  • IssuedCertFile 是 CRLfile 所涵蓋的選擇性已發行憑證。
  • DeltaCRLFile 是選擇性的差異 CRL 檔案。
  • Modifiers
    • 強式 - 強式簽章驗證
    • MSRoot - 必須鏈結至 Microsoft 根目錄
    • MSTestRoot - 必須鏈結至 Microsoft 測試根目錄
    • AppRoot - 必須鏈結至 Microsoft 應用程式根目錄
    • EV - 強制執行擴充驗證原則

選項:

[-f] [-Enterprise] [-user] [-Silent] [-split] [-urlfetch] [-t Timeout] [-sslpolicy ServerName]

備註

  • 使用 ApplicationPolicyList 會將鏈結建置限制為僅對指定的應用程式原則有效的鏈結。
  • 使用 IssuancePolicyList 會將鏈結建置限制為僅對指定的發行原則有效的鏈結。
  • 使用 CACertFile 會針對 CertFileCRLfile 驗證檔案中的欄位。
  • 如果未指定 CACertFile,則會建置完整鏈結並針對 CertFile 進行驗證。
  • 如果同時指定 CACertFileCrossedCACertFile,則會針對 CertFile 驗證這兩個檔案中的欄位。
  • 使用 IssuedCertFile 會針對 CRLfile 驗證檔案中的欄位。
  • 使用 DeltaCRLFile 會針對 CertFile 驗證檔案中的欄位。

-verifyCTL

驗證 AuthRoot 或不允許的憑證 CTL。

certutil [options] -verifyCTL CTLobject [CertDir] [CertFile]

其中:

  • CTLObject 會識別要驗證的 CTL,包括:

    • AuthRootWU 會從 URL 快取讀取 AuthRoot CAB 和相符的憑證。 請改用 -f 從 Windows Update 下載。
    • DisallowedWU 會從 URL 快取讀取不允許的憑證 CAB 和不允許的憑證存放區檔案。 請改用 -f 從 Windows Update 下載。
      • PinRulesWU 會從 URL 快取讀取 PinRules CAB。 請改用 -f 從 Windows Update 下載。
    • AuthRoot 會讀取登錄快取的 AuthRoot CTL。 使用 -f 和不受信任的 CertFile 來強制登錄快取的 AuthRoot 和不允許的憑證 CTL 更新。
    • Disallowed 會讀取登錄快取的不允許憑證 CTL。 使用 -f 和不受信任的 CertFile 來強制登錄快取的 AuthRoot 和不允許的憑證 CTL 更新。
      • PinRules 會讀取登錄快取的 PinRules CTL。 使用 -f 的行為與 PinRulesWU 相同。
    • CTLFileName 會指定 CTL 或 CAB 檔案的檔案或 HTTP 路徑。
  • CertDir 指定包含符合 CTL 項目之憑證的資料夾。 預設為與 CTLobject 相同的資料夾或網站。 使用 HTTP 資料夾路徑在結尾需要路徑分隔符號。 如果您未指定 AuthRootDisallowed,則會搜尋多個位置來尋找相符的憑證,包括本機憑證存放區、crypt32.dll 資源和本機 URL 快取。 使用 -f 視需要從 Windows Update 下載。

  • CertFile 會指定要驗證的憑證。 憑證會比對 CTL 項目,並顯示結果。 這個選項會隱藏大部分的預設輸出。

選項:

[-f] [-user] [-split]

-syncWithWU

透過 Windows Update 同步處理憑證。

certutil [options] -syncWithWU DestinationDir

其中:

  • DestinationDir 是指定的目錄。
  • f 會強制覆寫。
  • Unicode 會以 Unicode 寫入重新導向的輸出。
  • gmt 會將時間顯示為 GMT。
  • seconds 會使用秒和毫秒顯示時間。
  • v 是詳細資訊作業。
  • PIN 是智慧卡 PIN。
  • WELL_KNOWN_SID_TYPE 是數值 SID:
    • 22 - 本機系統
    • 23 - 本機服務
    • 24 - 網路服務

備註

下列檔案是使用自動更新機制進行下載:

  • authrootstl.cab 包含非 Microsoft 根憑證的 CTL。
  • disallowedcertstl.cab 包含未受信任憑證的 CTL。
  • disallowedcert.sst 包含序列化憑證存放區,包括未受信任的憑證。
  • thumbprint.crt 包含非 Microsoft 的根憑證。

例如:certutil -syncWithWU \\server1\PKI\CTLs

  • 如果您使用不存在的本機路徑或資料夾做為目的地資料夾,會看到錯誤:The system can't find the file specified. 0x80070002 (WIN32: 2 ERROR_FILE_NOT_FOUND)

  • 如果您使用不存在或無法使用的網路位置做為目的地資料夾,會看到錯誤:The network name can't be found. 0x80070043 (WIN32: 67 ERROR_BAD_NET_NAME)

  • 如果您的伺服器透過 TCP 連接埠 80 連線到 Microsoft 自動更新伺服器,會收到錯誤:A connection with the server couldn't be established 0x80072efd (INet: 12029 ERROR_INTERNET_CANNOT_CONNECT)

  • 如果您的伺服器無法連接 DNS 名稱為 ctldl.windowsupdate.com 的 Microsoft 自動更新伺服器,會收到錯誤:The server name or address couldn't be resolved 0x80072ee7 (INet: 12007 ERROR_INTERNET_NAME_NOT_RESOLVED).

  • 如果您未使用 -f 參數,而且目錄中已經有 CTL 檔案,會收到檔案存在的錯誤:certutil: -syncWithWU command FAILED: 0x800700b7 (WIN32/HTTP: 183 ERROR_ALREADY_EXISTS) Certutil: Can't create a file when that file already exists.

  • 如果受信任的根憑證中有任何變更,會看到:Warning! Encountered the following no longer trusted roots: <folder path>\<thumbprint>.crt. Use "-f" option to force the delete of the above ".crt" files. Was "authrootstl.cab" updated? If yes, consider deferring the delete until all clients have been updated.

選項:

[-f] [-Unicode] [-gmt] [-seconds] [-v] [-privatekey] [-pin PIN] [-sid WELL_KNOWN_SID_TYPE]

-generateSSTFromWU

產生與 Windows Update 同步的存放區檔案。

certutil [options] -generateSSTFromWU SSTFile

其中:

  • SSTFile 是要產生的 .sst 檔案,其中包含從 Windows Update 下載的第三方根目錄。

選項:

[-f] [-split]

-generatePinRulesCTL

產生包含釘選規則清單的憑證信任清單 (CTL) 檔案。

certutil [options] -generatePinRulesCTL XMLFile CTLFile [SSTFile [QueryFilesPrefix]]

其中:

  • XMLFile 是要剖析的輸入 XML 檔案。
  • CTLFile 是要產生的輸出 CTL 檔案。
  • SSTFile 是要建立的選擇性 .sst 檔案,其中包含用於釘選的所有憑證。
  • QueryFilesPrefix 是要為資料庫查詢建立的選擇性 Domains.csv 和 Keys.csv 檔案。
    • 每個已建立的檔案前面會加上 QueryFilesPrefix 字串。
    • Domains.csv 檔案包含規則名稱、網域資料列。
    • Keys.csv 檔案包含規則名稱、金鑰 SHA256 指紋資料列。

選項:

[-f]

-downloadOcsp

下載 OCSP 回應並寫入目錄。

certutil [options] -downloadOcsp CertificateDir OcspDir [ThreadCount] [Modifiers]

其中:

  • CertificateDir 是憑證、存放區和 PFX 檔案的目錄。
  • OcspDir 是用來寫入 OCSP 回應的目錄。
  • ThreadCount 是並行下載的選擇性執行緒數目上限。 預設值為 10
  • Modifiers 是下列其中一或多個逗號分隔清單:
    • DownloadOnce - 下載一次並結束。
    • ReadOcsp - 從 OcspDir 讀取,而不是寫入。

-generateHpkpHeader

使用指定檔案或目錄中的憑證來產生 HPKP 標頭。

certutil [options] -generateHpkpHeader CertFileOrDir MaxAge [ReportUri] [Modifiers]

其中:

  • CertFileOrDir 是憑證的檔案或目錄,這是 pin-sha256 的來源。
  • MaxAge 是以秒為單位的 max-age 值。
  • ReportUri 是選擇性的 report-uri。
  • Modifiers 是下列其中一或多個逗號分隔清單:
    • includeSubDomains - 附加 includeSubDomains。

-flushCache

在選取的處理序中排清指定的快取,例如,lsass.exe。

certutil [options] -flushCache ProcessId CacheMask [Modifiers]

其中:

  • ProcessId 是要排清之處理序的數值識別碼。 設定為 0 以排清已啟用排清的所有處理序。

  • CacheMask 是要排清數值或下列位元之快取的位元遮罩:

    • 0:ShowOnly
    • 0x01:CERT_WNF_FLUSH_CACHE_REVOCATION
    • 0x02:CERT_WNF_FLUSH_CACHE_OFFLINE_URL
    • 0x04:CERT_WNF_FLUSH_CACHE_MACHINE_CHAIN_ENGINE
    • 0x08:CERT_WNF_FLUSH_CACHE_USER_CHAIN_ENGINES
    • 0x10:CERT_WNF_FLUSH_CACHE_SERIAL_CHAIN_CERTS
    • 0x20:CERT_WNF_FLUSH_CACHE_SSL_TIME_CERTS
    • 0x40:CERT_WNF_FLUSH_CACHE_OCSP_STAPLING
  • Modifiers 是下列其中一或多個逗號分隔清單:

    • Show - 顯示正在排清的快取。 Certutil 必須明確終止。

-addEccCurve

加入 ECC 曲線。

certutil [options] -addEccCurve [CurveClass:]CurveName CurveParameters [CurveOID] [CurveType]

其中:

  • CurveClass 是 ECC 曲線類別型別:

    • WEIERSTRASS (預設值)
    • MONTGOMERY
    • TWISTED_EDWARDS
  • CurveName 是 ECC 曲線名稱。

  • CurveParameters 是下列其中一項:

    • 包含 ASN 編碼參數的憑證檔名。
    • 包含 ASN 編碼參數的檔案。
  • CurveOID 是 ECC Curve OID,且為下列其中一項:

    • 包含 ASN 編碼 OID 的憑證檔名。
    • 明確的 ECC 曲線 OID。
  • CurveType 是 Schannel ECC NamedCurve 點 (數值)。

選項:

[-f]

-deleteEccCurve

刪除 ECC 曲線。

certutil [options] -deleteEccCurve CurveName | CurveOID

其中:

  • CurveName 是 ECC 曲線名稱。
  • CurveOID 是 ECC 曲線 OID。

選項:

[-f]

-displayEccCurve

顯示 ECC 曲線。

certutil [options] -displayEccCurve [CurveName | CurveOID]

其中:

  • CurveName 是 ECC 曲線名稱。
  • CurveOID 是 ECC 曲線 OID。

選項:

[-f]

-csplist

列出此電腦上安裝的密碼編譯服務提供者 (CSP),以進行密碼編譯作業。

certutil [options] -csplist [Algorithm]

選項:

[-user] [-Silent] [-csp Provider]

-csptest

測試此電腦上安裝的 CSP。

certutil [options] -csptest [Algorithm]

選項:

[-user] [-Silent] [-csp Provider]

-CNGConfig

在此電腦上顯示 CNG 密碼編譯組態。

certutil [options] -CNGConfig

選項:

[-Silent]

-sign

重新簽署憑證撤銷清單 (CRL) 或憑證。

certutil [options] -sign InFileList | SerialNumber | CRL OutFileList [StartDate [+ | -dd:hh] + | -dd:hh] [+SerialNumberList | -SerialNumberList | -ObjectIdList | @ExtensionFile]
certutil [options] -sign InFileList | SerialNumber | CRL OutFileList [#HashAlgorithm] [+AlternateSignatureAlgorithm | -AlternateSignatureAlgorithm]
certutil [options] -sign InFileList OutFileList [Subject:CN=...] [Issuer:hex data]

其中:

  • InFileList 是要修改和重新簽署之憑證或 CRL 檔案的逗號分隔清單。

  • SerialNumber 是要建立的憑證序號。 無效期間和其他選項不可存在。

  • CRL 會建立空白 CRL。 無效期間和其他選項不可存在。

  • OutFileList 是已修改之憑證或 CRL 輸出檔案的逗號分隔清單。 檔案數目必須符合 infilelist。

  • StartDate+dd:hh 是憑證或 CRL 檔案的新有效期間,包括:

    • 選擇性日期加上
    • 選擇性的天數和小時有效期間,如果使用多個欄位,請使用 (+) 或 (-) 分隔符號。 使用 now[+dd:hh] 從目前時間開始。 使用 now-dd:hh+dd:hh 從目前時間和固定有效期間的固定時差開始。 使用 never 沒有到期日 (僅適用於 CRL)。
  • SerialNumberList 是要新增或移除之檔案的逗號分隔序號清單。

  • ObjectIdList 是要移除之檔案的逗號分隔延伸模組 ObjectId 清單。

  • @ExtensionFile 是包含要更新或移除之延伸模組的 INF 檔案。 例如:

    [Extensions]
        2.5.29.31 = ; Remove CRL Distribution Points extension
        2.5.29.15 = {hex} ; Update Key Usage extension
        _continue_=03 02 01 86
    
  • HashAlgorithm 是雜湊演算法的名稱。 這必須是前面加上 # 符號的文字。

  • AlternateSignatureAlgorithm 是替代簽章演算法規範。

選項:

[-nullsign] [-f] [-user] [-Silent] [-Cert CertId] [-csp Provider]

備註

  • 使用減號 (-) 會移除序號和延伸模組。
  • 使用加號 (+) 會將序號新增至 CRL。
  • 您可以使用清單同時從 CRL 移除序號和 ObjectId
  • AlternateSignatureAlgorithm 之前使用減號可讓您使用舊版簽章格式。
  • 使用加號可讓您使用替代簽章格式。
  • 如果您未指定 AlternateSignatureAlgorithm,則會使用憑證或 CRL 中的簽章格式。

-vroot

建立或刪除 Web 虛擬根目錄和檔案共用。

certutil [options] -vroot [delete]

-vocsproot

建立或刪除 OCSP Web Proxy 的 Web 虛擬根目錄。

certutil [options] -vocsproot [delete]

-addEnrollmentServer

必要時為指定的憑證授權單位新增註冊伺服器應用程式和應用程式集區。 此命令不會安裝二進位檔或套件。

certutil [options] -addEnrollmentServer Kerberos | UserName | ClientCertificate [AllowRenewalsOnly] [AllowKeyBasedRenewal]

其中:

  • addEnrollmentServer 會要求您針對憑證註冊伺服器的用戶端連線使用驗證方法,包括:

    • Kerberos 會使用 Kerberos SSL 認證。
    • UserName 會針對 SSL 認證使用具名帳戶。
    • ClientCertificate 會使用 X.509 憑證 SSL 認證。
  • Modifiers

    • AllowRenewalsOnly 只允許透過 URL 向憑證授權單位提交更新要求。
    • AllowKeyBasedRenewal 允許使用 Active Directory 中沒有相關聯帳戶的憑證。 這適用於搭配 ClientCertificateAllowRenewalsOnly 模式使用時。

選項:

[-config Machine\CAName]

-deleteEnrollmentServer

必要時為指定的憑證授權單位刪除註冊伺服器應用程式和應用程式集區。 此命令不會安裝二進位檔或套件。

certutil [options] -deleteEnrollmentServer Kerberos | UserName | ClientCertificate

其中:

  • deleteEnrollmentServer 會要求您針對憑證註冊伺服器的用戶端連線使用驗證方法,包括:
    • Kerberos 會使用 Kerberos SSL 認證。
    • UserName 會針對 SSL 認證使用具名帳戶。
    • ClientCertificate 會使用 X.509 憑證 SSL 認證。

選項:

[-config Machine\CAName]

-addPolicyServer

必要時新增原則伺服器應用程式和應用程式集區。 此命令不會安裝二進位檔或套件。

certutil [options] -addPolicyServer Kerberos | UserName | ClientCertificate [KeyBasedRenewal]

其中:

  • addPolicyServer 會要求您對憑證原則伺服器的用戶端連線使用驗證方法,包括:
    • Kerberos 會使用 Kerberos SSL 認證。
    • UserName 會針對 SSL 認證使用具名帳戶。
    • ClientCertificate 會使用 X.509 憑證 SSL 認證。
  • KeyBasedRenewal 允許使用傳回至包含 keybasedrenewal 範本之用戶端的原則。 此選項僅適用於 UserNameClientCertificate 驗證。

-deletePolicyServer

必要時刪除原則伺服器應用程式和應用程式集區。 此命令不會移除二進位檔或套件。

certutil [options] -deletePolicyServer Kerberos | UserName | ClientCertificate [KeyBasedRenewal]

其中:

  • deletePolicyServer 會要求您對憑證原則伺服器的用戶端連線使用驗證方法,包括:
    • Kerberos 會使用 Kerberos SSL 認證。
    • UserName 會針對 SSL 認證使用具名帳戶。
    • ClientCertificate 會使用 X.509 憑證 SSL 認證。
  • KeyBasedRenewal 允許使用 KeyBasedRenewal 原則伺服器。

-Class

顯示 COM 登錄資訊。

certutil [options] -Class [ClassId | ProgId | DllName | *]

選項:

[-f]

-7f

檢查憑證是否有 0x7f 長度編碼。

certutil [options] -7f CertFile

-oid

顯示物件識別碼或設定顯示名稱。

certutil [options] -oid ObjectId [DisplayName | delete [LanguageId [type]]]
certutil [options] -oid GroupId
certutil [options] -oid AlgId | AlgorithmName [GroupId]

其中:

  • ObjectId 是要顯示或新增至顯示名稱的識別碼。
  • GroupId 是 ObjectIds 列舉的 GroupID 數字 (十進位)。
  • AlgId 是 objectID 查閱的十六進位識別碼。
  • AlgorithmName 是 objectID 查閱的演算法名稱。
  • DisplayName 會顯示要儲存在 DS 中的名稱。
  • Delete 會刪除顯示名稱。
  • LanguageId 是語言識別碼值 (預設值為目前:1033)。
  • Type 是要建立的 DS 物件類型,包括:
    • 1 - 範本 (預設值)
    • 2 - 發行原則
    • 3 - 應用程式原則
  • -f 會建立 DS 物件。

選項:

[-f]

-error

顯示與錯誤碼相關聯的訊息文字。

certutil [options] -error ErrorCode

-getsmtpinfo

獲取簡單郵件傳輸協定 (SMTP) 資訊。

certutil [options] -getsmtpinfo

-setsmtpinfo

設定 SMTP 資訊。

certutil [options] -setsmtpinfo LogonName

選項:

[-config Machine\CAName] [-p Password]

-getreg

顯示登錄值。

certutil [options] -getreg [{ca | restore | policy | exit | template | enroll | chain | PolicyServers}\[ProgId\]] [RegistryValueName]

其中:

  • ca 會使用憑證授權單位的登錄機碼。
  • restore 會使用憑證授權單位的還原登錄機碼。
  • policy 會使用原則模組的登錄機碼。
  • exit 會使用第一個結束模組的登錄機碼。
  • template 會使用範本登錄機碼 (針對使用者範本使用 -user)。
  • enrollment 會使用註冊登錄機碼 (針對使用者內容使用 -user)。
  • chain 會使用鏈結組態登錄機碼。
  • PolicyServers 會使用原則伺服器登錄機碼。
  • ProgId 會使用原則或結束模組的 ProgID (登錄子機碼名稱)。
  • RegistryValueName 會使用登錄值名稱 (使用 Name* 進行前置詞比對)。
  • value 會使用新的數值、字串或日期登錄值或檔名。 如果數值開頭為 +-,則會在現有的登錄值中設定或清除新值中指定的位元。

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-config Machine\CAName]

備註

  • 如果字串值開頭為 +-,而現有的值是 REG_MULTI_SZ 值,則會將字元串新增至現有登錄值或從現有的登錄值中移除。 若要強制建立 REG_MULTI_SZ 值,請將 \n 新增至字串值的結尾。
  • 如果值開頭為 \@,則值的其餘部分是包含二進位值的十六進位文字表示的檔名。
  • 如果它未參考有效的檔案,則會將其剖析為 [Date][+|-][dd:hh],此為選擇性日期加上或減去選擇性天數和小時。
  • 如果同時指定兩者,請使用加號 (+) 或減號 (-) 分隔符號。 將 now+dd:hh 用於相對於目前時間的日期。
  • 使用 i64 作為後置詞來建立 REG_QWORD 值。
  • 使用 chain\chaincacheresyncfiletime @now 有效地排清快取的 CRL。
  • 登錄別名:
    • Config
    • CA
    • Policy - PolicyModules
    • Exit - ExitModules
    • Restore - RestoreInProgress
    • Template - Software\Microsoft\Cryptography\CertificateTemplateCache
    • Enroll - Software\Microsoft\Cryptography\AutoEnrollment (Software\Policies\Microsoft\Cryptography\AutoEnrollment)
    • MSCEP - Software\Microsoft\Cryptography\MSCEP
    • Chain - Software\Microsoft\Cryptography\OID\EncodingType 0\CertDllCreateCertificateChainEngine\Config
    • PolicyServers - Software\Microsoft\Cryptography\PolicyServers (Software\Policies\Microsoft\Cryptography\PolicyServers)
    • Crypt32 - System\CurrentControlSet\Services\crypt32
    • NGC - System\CurrentControlSet\Control\Cryptography\Ngc
    • AutoUpdate - Software\Microsoft\SystemCertificates\AuthRoot\AutoUpdate
    • Passport - Software\Policies\Microsoft\PassportForWork
    • MDM - Software\Microsoft\Policies\PassportForWork

-setreg

設定登錄值。

certutil [options] -setreg [{ca | restore | policy | exit | template | enroll | chain | PolicyServers}\[ProgId\]] RegistryValueName Value

其中:

  • ca 會使用憑證授權單位的登錄機碼。
  • restore 會使用憑證授權單位的還原登錄機碼。
  • policy 會使用原則模組的登錄機碼。
  • exit 會使用第一個結束模組的登錄機碼。
  • template 會使用範本登錄機碼 (針對使用者範本使用 -user)。
  • enrollment 會使用註冊登錄機碼 (針對使用者內容使用 -user)。
  • chain 會使用鏈結組態登錄機碼。
  • PolicyServers 會使用原則伺服器登錄機碼。
  • ProgId 會使用原則或結束模組的 ProgID (登錄子機碼名稱)。
  • RegistryValueName 會使用登錄值名稱 (使用 Name* 進行前置詞比對)。
  • Value 會使用新的數值、字串或日期登錄值或檔名。 如果數值開頭為 +-,則會在現有的登錄值中設定或清除新值中指定的位元。

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-config Machine\CAName]

備註

  • 如果字串值開頭為 +-,而現有的值是 REG_MULTI_SZ 值,則會將字元串新增至現有登錄值或從現有的登錄值中移除。 若要強制建立 REG_MULTI_SZ 值,請將 \n 新增至字串值的結尾。
  • 如果值開頭為 \@,則值的其餘部分是包含二進位值的十六進位文字表示的檔名。
  • 如果它未參考有效的檔案,則會將其剖析為 [Date][+|-][dd:hh],此為選擇性日期加上或減去選擇性天數和小時。
  • 如果同時指定兩者,請使用加號 (+) 或減號 (-) 分隔符號。 將 now+dd:hh 用於相對於目前時間的日期。
  • 使用 i64 作為後置詞來建立 REG_QWORD 值。
  • 使用 chain\chaincacheresyncfiletime @now 有效地排清快取的 CRL。

-delreg

刪除登錄值。

certutil [options] -delreg [{ca | restore | policy | exit | template | enroll |chain | PolicyServers}\[ProgId\]][RegistryValueName]

其中:

  • ca 會使用憑證授權單位的登錄機碼。
  • restore 會使用憑證授權單位的還原登錄機碼。
  • policy 會使用原則模組的登錄機碼。
  • exit 會使用第一個結束模組的登錄機碼。
  • template 會使用範本登錄機碼 (針對使用者範本使用 -user)。
  • enrollment 會使用註冊登錄機碼 (針對使用者內容使用 -user)。
  • chain 會使用鏈結組態登錄機碼。
  • PolicyServers 會使用原則伺服器登錄機碼。
  • ProgId 會使用原則或結束模組的 ProgID (登錄子機碼名稱)。
  • RegistryValueName 會使用登錄值名稱 (使用 Name* 進行前置詞比對)。
  • Value 會使用新的數值、字串或日期登錄值或檔名。 如果數值開頭為 +-,則會在現有的登錄值中設定或清除新值中指定的位元。

選項:

[-f] [-Enterprise] [-user] [-GroupPolicy] [-config Machine\CAName]

備註

  • 如果字串值開頭為 +-,而現有的值是 REG_MULTI_SZ 值,則會將字元串新增至現有登錄值或從現有的登錄值中移除。 若要強制建立 REG_MULTI_SZ 值,請將 \n 新增至字串值的結尾。
  • 如果值開頭為 \@,則值的其餘部分是包含二進位值的十六進位文字表示的檔名。
  • 如果它未參考有效的檔案,則會將其剖析為 [Date][+|-][dd:hh],此為選擇性日期加上或減去選擇性天數和小時。
  • 如果同時指定兩者,請使用加號 (+) 或減號 (-) 分隔符號。 將 now+dd:hh 用於相對於目前時間的日期。
  • 使用 i64 作為後置詞來建立 REG_QWORD 值。
  • 使用 chain\chaincacheresyncfiletime @now 有效地排清快取的 CRL。
  • 登錄別名:
    • Config
    • CA
    • Policy - PolicyModules
    • Exit - ExitModules
    • Restore - RestoreInProgress
    • Template - Software\Microsoft\Cryptography\CertificateTemplateCache
    • Enroll - Software\Microsoft\Cryptography\AutoEnrollment (Software\Policies\Microsoft\Cryptography\AutoEnrollment)
    • MSCEP - Software\Microsoft\Cryptography\MSCEP
    • Chain - Software\Microsoft\Cryptography\OID\EncodingType 0\CertDllCreateCertificateChainEngine\Config
    • PolicyServers - Software\Microsoft\Cryptography\PolicyServers (Software\Policies\Microsoft\Cryptography\PolicyServers)
    • Crypt32 - System\CurrentControlSet\Services\crypt32
    • NGC - System\CurrentControlSet\Control\Cryptography\Ngc
    • AutoUpdate - Software\Microsoft\SystemCertificates\AuthRoot\AutoUpdate
    • Passport - Software\Policies\Microsoft\PassportForWork
    • MDM - Software\Microsoft\Policies\PassportForWork

-importKMS

將使用者金鑰和憑證匯入伺服器資料庫中以進行金鑰封存。

certutil [options] -importKMS UserKeyAndCertFile [CertId]

其中:

  • UserKeyAndCertFile 是一個資料檔,其中包含要封存的使用者私密金鑰和憑證。 此檔案可以是:
    • Exchange 金鑰管理伺服器 (KMS) 匯出檔案。
    • PFX 檔案。
  • CertId 是 KMS 匯出檔案解密憑證比對權杖。 如需詳細資訊,請參閱本文章中 -store 參數。
  • -f 會匯入憑證授權單位未發行的憑證。

選項:

[-f] [-Silent] [-split] [-config Machine\CAName] [-p Password] [-symkeyalg SymmetricKeyAlgorithm[,KeyLength]]

-ImportCert

將憑證檔案匯入資料庫。

certutil [options] -ImportCert Certfile [ExistingRow]

其中:

  • ExistingRow 會匯入憑證,以取代相同金鑰的擱置要求。
  • -f 會匯入憑證授權單位未發行的憑證。

選項:

[-f] [-config Machine\CAName]

備註

可能還需要執行 certutil -setreg ca\KRAFlags +KRAF_ENABLEFOREIGN 來設定憑證授權單位為以支援外部憑證。

-GetKey

擷取封存的私密金鑰復原 Blob、產生復原指令碼,或復原封存的金鑰。

certutil [options] -GetKey SearchToken [RecoveryBlobOutFile]
certutil [options] -GetKey SearchToken script OutputScriptFile
certutil [options] -GetKey SearchToken retrieve | recover OutputFileBaseName

其中:

  • script 會產生可擷取和復原金鑰的指令碼 (如果找到多個相符的復原候選項目,或未指定輸出檔案時的預設行為)。
  • retrieve 會擷取一或多個金鑰復原 Blob (如果找到完全相同的復原候選項目,以及指定輸出檔案時的預設行為)。 使用此選項會截斷任何副檔名,並附加每個金鑰復原 Blob 的憑證特定字串和 .rec 副檔名。 每個檔案都包含憑證鏈和相關聯的私密金鑰,仍會加密至一或多個金鑰復原代理憑證。
  • recover 會在一個步驟中擷取和復原私密金鑰 (需要金鑰復原代理憑證和私密金鑰)。 使用此選項會截斷任何副檔名,並附加 .p12 副檔名。 每個檔案都包含已復原的憑證鏈和相關聯的私密金鑰,儲存為 PFX 檔案。
  • SearchToken 會選取要復原的金鑰和憑證,包括:
    • 憑證通用名稱
    • 憑證序號
    • 憑證 SHA-1 雜湊 (指紋)
    • 憑證 KeyId SHA-1 雜湊 (主體金鑰識別碼)
    • 要求者名稱 (domain\user)
    • UPN (user@domain)
  • RecoveryBlobOutFile 會輸出具有憑證鏈和相關聯私密金鑰的檔案,仍會加密至一或多個金鑰復原代理憑證。
  • OutputScriptFile 會輸出含批次指令碼的檔案,以擷取和復原私密金鑰。
  • OutputFileBaseName 會輸出檔案基底名稱。

選項:

[-f] [-UnicodeText] [-Silent] [-config Machine\CAName] [-p Password] [-ProtectTo SAMNameAndSIDList] [-csp Provider]

備註

  • 對於 retrieve,會截斷任何副檔名,並針對每個金鑰復原 Blob 附加憑證特定的字串和 .rec 副檔名。 每個檔案都包含憑證鏈和相關聯的私密金鑰,仍會加密至一或多個金鑰復原代理憑證。
  • 對於 recover,會截斷任何副檔名,並附加 .p12 副檔名。 包含已復原的憑證鏈和相關聯的私密金鑰,儲存為 PFX 檔案。

-RecoverKey

復原封存的私密金鑰。

certutil [options] -RecoverKey RecoveryBlobInFile [PFXOutFile [RecipientIndex]]

選項:

[-f] [-user] [-Silent] [-split] [-p Password] [-ProtectTo SAMNameAndSIDList] [-csp Provider] [-t Timeout]

-mergePFX

合併 PFX 檔案。

certutil [options] -MergePFX PFXInFileList PFXOutFile [Modifiers]

其中:

  • PFXInFileList 是以逗號分隔的 PFX 輸入檔清單。
  • PFXOutFile 是 PFX 輸出檔的名稱。
  • Modifiers 是下列其中一項或多項的逗號分隔清單:
    • ExtendedProperties 包含任何擴充屬性。
    • NoEncryptCert 指定不要加密憑證。
    • EncryptCert 會指定加密憑證。

選項:

[-f] [-user] [-split] [-p password] [-ProtectTo SAMNameAndSIDList] [-csp Provider]

備註

  • 命令列上指定的密碼必須是逗號分隔的密碼清單。
  • 如果指定了一個以上的密碼,則最後一個密碼會用於輸出檔案。 如果只提供一個密碼,或最後一個密碼為 *,則會提示使用者輸入輸出檔案密碼。

-convertEPF

將 PFX 檔案轉換成 EPF 檔案。

certutil [options] -ConvertEPF PFXInFileList EPFOutFile [cast | cast-] [V3CACertId][,Salt]

其中:

  • PFXInFileList 是以逗號分隔的 PFX 輸入檔清單。
  • EPFOutFile 是 PFX 輸出檔的名稱。
  • EPF 是 EPF 輸出檔的名稱。
  • cast 會使用 CAST 64 加密。
  • cast- 會使用 CAST 64 加密 (匯出)。
  • V3CACertId 是 V3 CA 憑證比對權杖。 如需詳細資訊,請參閱本文章中 -store 參數。
  • Salt 是 EPF 輸出檔 salt 字串。

選項:

[-f] [-Silent] [-split] [-dc DCName] [-p Password] [-csp Provider]

備註

  • 命令列上指定的密碼必須是逗號分隔的密碼清單。
  • 如果指定了一個以上的密碼,則最後一個密碼會用於輸出檔案。 如果只提供一個密碼,或最後一個密碼為 *,則會提示使用者輸入輸出檔案密碼。

-add-chain

新增憑證鏈。

certutil [options] -add-chain LogId certificate OutFile

選項:

[-f]

-add-pre-chain

新增前置憑證鏈。

certutil [options] -add-pre-chain LogId pre-certificate OutFile

選項:

[-f]

-get-sth

取得已簽署的樹狀目錄標頭。

certutil [options] -get-sth [LogId]

選項:

[-f]

-get-sth-consistency

取得已簽署的樹狀目錄標頭變更。

certutil [options] -get-sth-consistency LogId TreeSize1 TreeSize2

選項:

[-f]

-get-proof-by-hash

從時間戳記伺服器取得雜湊的證明。

certutil [options] -get-proof-by-hash LogId Hash [TreeSize]

選項:

[-f]

-get-entries

從事件記錄檔擷取項目。

certutil [options] -get-entries LogId FirstIndex LastIndex

選項:

[-f]

-get-roots

從憑證存放區擷取根憑證。

certutil [options] -get-roots LogId

選項:

[-f]

-get-entry-and-proof

擷取事件記錄檔項目及其密碼編譯證明。

certutil [options] -get-entry-and-proof LogId Index [TreeSize]

選項:

[-f]

-VerifyCT

根據憑證透明度記錄來驗證憑證。

certutil [options] -VerifyCT Certificate SCT [precert]

選項:

[-f]

-?

顯示參數清單。

certutil -?
certutil <name_of_parameter> -?
certutil -? -v

其中:

  • -? 顯示參數清單
  • -<name_of_parameter> -? 顯示指定參數的說明內容。
  • -? -v 顯示參數和選項的詳細資訊清單。

選項。

本節會根據命令來定義所有您能夠指定的選項。 每個參數都包含哪些選項可有效使用的相關資訊。

選項 描述
-admin 針對 CA 屬性使用 ICertAdmin2。
-anonymous 使用匿名 SSL 認證。
-cert CertId 簽署憑證。
-clientcertificate clientCertId 使用 X.509 憑證 SSL 認證。 對於選取 UI,請使用 -clientcertificate
-config Machine\CAName 憑證授權單位和電腦名稱字串。
-csp provider 提供者:
KSP - Microsoft 軟體金鑰儲存提供者
TPM - Microsoft 平台密碼編譯提供者
NGC - Microsoft Passport 金鑰儲存提供者
SC - Microsoft 智慧卡金鑰儲存提供者
-dc DCName 以特定網域控制站為目標。
-enterprise 使用本機電腦企業登錄憑證存放區。
-f 強制覆寫。
-generateSSTFromWU SSTFile 使用自動更新機制產生 SST。
-gmt 使用 GMT 顯示時間。
-GroupPolicy 使用群組原則憑證存放區。
-idispatch 使用 IDispatch,而不是 COM 原生方法。
-kerberos 使用 Kerberos SSL 認證。
-location alternatestoragelocation (-loc) AlternateStorageLocation.
-mt 顯示電腦範本。
-nocr 為文字編碼且不包含 CR 字元。
-nocrlf 為文字編碼且不包含 CR-LF 字元。
-nullsign 使用資料的雜湊做為簽章。
-oldpfx 使用舊的 PFX 加密。
-out columnlist 以逗號分隔的資料列清單。
-p password 密碼
-pin PIN 智慧卡 PIN。
-policyserver URLorID 原則伺服器 URL 或識別碼。 對於選取 U/I,請使用 -policyserver。 對於所有原則伺服器,請使用 -policyserver *
-privatekey 顯示密碼和私密金鑰資料。
-protect 使用密碼保護金鑰。
-protectto SAMnameandSIDlist 以逗號分隔的 SAM 名稱/SID 清單。
-restrict restrictionlist 以逗號分隔的限制清單。 每個限制都包含資料行名稱、關係運算子和常數整數、字串或日期。 一個資料行名稱前面可能會加上加號或減號,以指出排序順序。 例如,requestID = 47+requestername >= a, requestername-requestername > DOMAIN, Disposition = 21
-reverse 反向記錄和佇列資料行。
-seconds 使用秒和毫秒顯示時間。
-service 使用服務憑證存放區。
-sid 數值 SID:
22 - 本機系統
23 - 本機服務
24 - 網路服務
-silent 使用 silent 旗標來取得 crypt 內容。
-split 分割內嵌的 ASN.1 元素,並儲存至檔案。
-sslpolicy servername 符合 ServerName 的 SSL 原則。
-symkeyalg symmetrickeyalgorithm[,keylength] 選擇性金鑰長度的對稱金鑰演算法名稱。 例如:AES,1283DES
-syncWithWU DestinationDir 與 Windows Update 同步。
-t timeout 以毫秒為單位的 URL 擷取逾時。
-Unicode 以 Unicode 寫入重新導向的輸出。
-UnicodeText 以 Unicode 寫入輸出檔案。
-urlfetch 擷取並驗證 AIA 憑證和 CDP CRL。
-user 使用 HKEY_CURRENT_USER 金鑰或憑證存放區。
-username username 針對 SSL 認證使用具名帳戶。 對於選取 UI,請使用 -username
-ut 顯示使用者範本。
-v 提供更詳細的 (詳細資訊) 資訊。
-v1 使用 V1 介面。

雜湊演算法:MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512。

如需如何使用此命令的更多範例,請參閱下列文章: