当前位置: 首页 > news >正文

移动安全-certutil

1 需求

需求1:获取应用文件的MD5

  • CertUtil -hashfile 文件路径 MD5

2 语法

C:\>certutil -?动词:-dump             -- 转储配置信息或文件-dumpPFX          -- 转储 PFX 结构-asn              -- 分析 ASN.1 文件-decodehex        -- 解码十六进制编码的文件-decode           -- 解码 Base64 编码的文件-encode           -- 将文件编码为 Base64-deny             -- 拒绝挂起的申请-resubmit         -- 重新提交挂起的申请-setattributes    -- 为挂起申请设置属性-setextension     -- 为挂起申请设置扩展-revoke           -- 吊销证书-isvalid          -- 显示当前证书部署-getconfig        -- 获取默认配置字符串-ping             -- Ping Active Directory 证书服务申请接口-pingadmin        -- Ping Active Directory 证书服务管理接口-CAInfo           -- 显示 CA 信息-ca.cert          -- 检索 CA 的证书-ca.chain         -- 检索 CA 的证书链-GetCRL           -- 获取 CRL-CRL              -- 发布新的 CRL [或仅增量 CRL]-shutdown         -- 关闭 Active Directory 证书服务-installCert      -- 安装证书颁发机构证书-renewCert        -- 续订证书颁发机构证书-schema           -- 转储证书架构-view             -- 转储证书视图-db               -- 转储原始数据库-deleterow        -- 删除服务器数据库行-backup           -- 备份 Active Directory 证书服务-backupDB         -- 备份 Active Directory 证书服务数据库-backupKey        -- 备份 Active Directory 证书服务证书和私钥-restore          -- 还原 Active Directory 证书服务-restoreDB        -- 还原 Active Directory 证书服务数据库-restoreKey       -- 还原 Active Directory 证书服务证书和私钥-importPFX        -- 导入证书和私钥-dynamicfilelist  -- 显示动态文件列表-databaselocations -- 显示数据库位置-hashfile         -- 通过文件生成并显示加密哈希-store            -- 转储证书存储-enumstore        -- 枚举证书存储-addstore         -- 将证书添加到存储-delstore         -- 从存储删除证书-verifystore      -- 验证存储中的证书-repairstore      -- 修复密钥关联,或者更新证书属性或密钥安全描述符-viewstore        -- 转储证书存储-viewdelstore     -- 从存储删除证书-UI               -- 调用 CryptUI-attest           -- 验证密钥证明请求-dsPublish        -- 将证书或 CRL 发布到 Active Directory-ADTemplate       -- 显示 AD 模板-Template         -- 显示注册策略模板-TemplateCAs      -- 显示模板的 CA-CATemplates      -- 显示 CA 的模板-SetCASites       -- 管理 CA 的站点名称-enrollmentServerURL -- 显示、添加或删除与 CA 关联的注册服务器 URL-ADCA             -- 显示 AD CA-CA               -- 显示注册策略 CA-Policy           -- 显示注册策略-PolicyCache      -- 显示或删除注册策略缓存项目-CredStore        -- 显示、添加或删除凭据存储项目-InstallDefaultTemplates -- 安装默认的证书模板-URLCache         -- 显示或删除 URL 缓存项目-pulse            -- 以脉冲方式执行自动注册事件或 NGC 任务-MachineInfo      -- 显示 Active Directory 计算机对象信息-DCInfo           -- 显示域控制器信息-EntInfo          -- 显示企业信息-TCAInfo          -- 显示 CA 信息-SCInfo           -- 显示智能卡信息-SCRoots          -- 管理智能卡根证书-DeleteHelloContainer -- 删除 Hello 登录容器。** 在使用此选项后, 用户需要注销才能完成。**-verifykeys       -- 验证公/私钥集-verify           -- 验证证书,CRL 或链-verifyCTL        -- 验证 AuthRoot 或不允许的证书 CTL-syncWithWU       -- 与 Windows 更新同步-generateSSTFromWU -- 通过 Windows 更新生成 SST-generatePinRulesCTL -- 生成捆绑规则 CTL-downloadOcsp     -- 下载 OCSP 响应并写入目录-generateHpkpHeader -- 使用指定文件或目录中的证书生成 HPKP 头-flushCache       -- 刷新选定进程(例如 lsass.exe)中的指定缓存-addEccCurve      -- 添加 ECC 曲线-deleteEccCurve   -- 删除 ECC 曲线-displayEccCurve  -- 显示 ECC 曲线-sign             -- 重新签名 CRL 或证书-vroot            -- 创建/删除 Web 虚拟根和文件共享-vocsproot        -- 创建/删除 OCSP Web Proxy 的 Web 虚拟根-addEnrollmentServer -- 添加注册服务器应用程序-deleteEnrollmentServer -- 删除注册服务器应用程序-addPolicyServer  -- 添加策略服务器应用程序-deletePolicyServer -- 删除策略服务器应用程序-oid              -- 显示 ObjectId 或设置显示名称-error            -- 显示错误代码消息文本-getreg           -- 显示注册表值-setreg           -- 设置注册表值-delreg           -- 删除注册表值-ImportKMS        -- 为密钥存档导入用户密钥和证书到服务器数据库-ImportCert       -- 将证书文件导入数据库-GetKey           -- 检索存档的私钥恢复 Blob,生成恢复脚本 或恢复存档的密钥-RecoverKey       -- 恢复存档的私钥-MergePFX         -- 合并 PFX 文件-ConvertEPF       -- 将 PFX 文件转换为 EPF 文件-add-chain        -- (-AddChain) 添加证书链-add-pre-chain    -- (-AddPrechain) 添加预植证书链-get-sth          -- (-GetSTH) 获取签名树头-get-sth-consistency -- (-GetSTHConsistency) 获取签名树头更改-get-proof-by-hash -- (-GetProofByHash) 获取哈希证明-get-entries      -- (-GetEntries) 获取项-get-roots        -- (-GetRoots) 获取根-get-entry-and-proof -- (-GetEntryAndProof) 获取项和证明-VerifyCT         -- 验证证书 SCT-?                -- 显示该用法消息CertUtil -?              -- 显示动词列表(命名列表)
CertUtil -dump -?        -- 显示 "dump" 动词的帮助文本
CertUtil -v -?           -- 显示所有动词的所有帮助文本CertUtil: -? 命令成功完成。

C:\>certutil -v -?动词:-dump             -- 转储配置信息或文件-dumpPFX          -- 转储 PFX 结构-asn              -- 分析 ASN.1 文件-decodehex        -- 解码十六进制编码的文件-decode           -- 解码 Base64 编码的文件-encode           -- 将文件编码为 Base64-deny             -- 拒绝挂起的申请-resubmit         -- 重新提交挂起的申请-setattributes    -- 为挂起申请设置属性-setextension     -- 为挂起申请设置扩展-revoke           -- 吊销证书-isvalid          -- 显示当前证书部署-getconfig        -- 获取默认配置字符串-ping             -- Ping Active Directory 证书服务申请接口-pingadmin        -- Ping Active Directory 证书服务管理接口-CAInfo           -- 显示 CA 信息-ca.cert          -- 检索 CA 的证书-ca.chain         -- 检索 CA 的证书链-GetCRL           -- 获取 CRL-CRL              -- 发布新的 CRL [或仅增量 CRL]-shutdown         -- 关闭 Active Directory 证书服务-installCert      -- 安装证书颁发机构证书-renewCert        -- 续订证书颁发机构证书-schema           -- 转储证书架构-view             -- 转储证书视图-db               -- 转储原始数据库-deleterow        -- 删除服务器数据库行-backup           -- 备份 Active Directory 证书服务-backupDB         -- 备份 Active Directory 证书服务数据库-backupKey        -- 备份 Active Directory 证书服务证书和私钥-restore          -- 还原 Active Directory 证书服务-restoreDB        -- 还原 Active Directory 证书服务数据库-restoreKey       -- 还原 Active Directory 证书服务证书和私钥-importPFX        -- 导入证书和私钥-dynamicfilelist  -- 显示动态文件列表-databaselocations -- 显示数据库位置-hashfile         -- 通过文件生成并显示加密哈希-store            -- 转储证书存储-enumstore        -- 枚举证书存储-addstore         -- 将证书添加到存储-delstore         -- 从存储删除证书-verifystore      -- 验证存储中的证书-repairstore      -- 修复密钥关联,或者更新证书属性或密钥安全描述符-viewstore        -- 转储证书存储-viewdelstore     -- 从存储删除证书-UI               -- 调用 CryptUI-attest           -- 验证密钥证明请求-dsPublish        -- 将证书或 CRL 发布到 Active Directory-ADTemplate       -- 显示 AD 模板-Template         -- 显示注册策略模板-TemplateCAs      -- 显示模板的 CA-CATemplates      -- 显示 CA 的模板-SetCASites       -- 管理 CA 的站点名称-enrollmentServerURL -- 显示、添加或删除与 CA 关联的注册服务器 URL-ADCA             -- 显示 AD CA-CA               -- 显示注册策略 CA-Policy           -- 显示注册策略-PolicyCache      -- 显示或删除注册策略缓存项目-CredStore        -- 显示、添加或删除凭据存储项目-InstallDefaultTemplates -- 安装默认的证书模板-URLCache         -- 显示或删除 URL 缓存项目-pulse            -- 以脉冲方式执行自动注册事件或 NGC 任务-MachineInfo      -- 显示 Active Directory 计算机对象信息-DCInfo           -- 显示域控制器信息-EntInfo          -- 显示企业信息-TCAInfo          -- 显示 CA 信息-SCInfo           -- 显示智能卡信息-SCRoots          -- 管理智能卡根证书-DeleteHelloContainer -- 删除 Hello 登录容器。** 在使用此选项后, 用户需要注销才能完成。**-verifykeys       -- 验证公/私钥集-verify           -- 验证证书,CRL 或链-verifyCTL        -- 验证 AuthRoot 或不允许的证书 CTL-syncWithWU       -- 与 Windows 更新同步-generateSSTFromWU -- 通过 Windows 更新生成 SST-generatePinRulesCTL -- 生成捆绑规则 CTL-downloadOcsp     -- 下载 OCSP 响应并写入目录-generateHpkpHeader -- 使用指定文件或目录中的证书生成 HPKP 头-flushCache       -- 刷新选定进程(例如 lsass.exe)中的指定缓存-addEccCurve      -- 添加 ECC 曲线-deleteEccCurve   -- 删除 ECC 曲线-displayEccCurve  -- 显示 ECC 曲线-sign             -- 重新签名 CRL 或证书-vroot            -- 创建/删除 Web 虚拟根和文件共享-vocsproot        -- 创建/删除 OCSP Web Proxy 的 Web 虚拟根-addEnrollmentServer -- 添加注册服务器应用程序-deleteEnrollmentServer -- 删除注册服务器应用程序-addPolicyServer  -- 添加策略服务器应用程序-deletePolicyServer -- 删除策略服务器应用程序-oid              -- 显示 ObjectId 或设置显示名称-error            -- 显示错误代码消息文本-getreg           -- 显示注册表值-setreg           -- 设置注册表值-delreg           -- 删除注册表值-ImportKMS        -- 为密钥存档导入用户密钥和证书到服务器数据库-ImportCert       -- 将证书文件导入数据库-GetKey           -- 检索存档的私钥恢复 Blob,生成恢复脚本 或恢复存档的密钥-RecoverKey       -- 恢复存档的私钥-MergePFX         -- 合并 PFX 文件-ConvertEPF       -- 将 PFX 文件转换为 EPF 文件-add-chain        -- (-AddChain) 添加证书链-add-pre-chain    -- (-AddPrechain) 添加预植证书链-get-sth          -- (-GetSTH) 获取签名树头-get-sth-consistency -- (-GetSTHConsistency) 获取签名树头更改-get-proof-by-hash -- (-GetProofByHash) 获取哈希证明-get-entries      -- (-GetEntries) 获取项-get-roots        -- (-GetRoots) 获取根-get-entry-and-proof -- (-GetEntryAndProof) 获取项和证明-VerifyCT         -- 验证证书 SCT-?                -- 显示该用法消息用法:CertUtil [选项] [-dump]CertUtil [选项] [-dump] [文件]转储配置信息或文件[-f] [-user] [-Silent] [-split] [-p 密码] [-t 超时]CertUtil [选项] -dumpPFX 文件转储 PFX 结构[-f] [-Silent] [-split] [-p 密码] [-csp 提供程序]CertUtil [选项] -asn 文件[类型]分析 ASN.1 文件类型 -- 数值 CRYPT_STRING_* 解码类型CertUtil [选项] -decodehex InFile OutFile [type]解码十六进制编码的文件类型 -- 数值 CRYPT_STRING_* 编码类型[-f]CertUtil [选项] -decode InFile OutFile解码 Base64 编码的文件[-f]CertUtil [选项] -encode InFile OutFile将文件编码为 Base64[-f] [-UnicodeText]CertUtil [选项] -deny RequestId拒绝挂起的申请[-config Machine\CAName]CertUtil [选项] -resubmit RequestId重新提交挂起的申请[-config Machine\CAName]CertUtil [选项] -setattributes RequestId AttributeString为挂起申请设置属性RequestId -- 挂起申请的数字申请 IdAttributeString -- 申请属性名和值对名称和值用冒号分隔。多名称、值对在不同的行。示例: "CertificateTemplate:User\nEMail:User@Domain.com"每个 "\n" 序列被转换为新行分隔符。[-config Machine\CAName]CertUtil [选项] -setextension RequestId ExtensionName Flags {Long | Date | String | @InFile}为挂起申请设置扩展RequestId -- 挂起申请的数字申请 IdExtensionName -- 扩展的 ObjectId 字符串Flags -- 0 为推荐的。1 标识扩展是关键的,2 禁用它,3 两者都执行。如果最后一个参数为数字,它将作为 Long 被接受。如果它可以被分析为日期,它将被作为日期接受。如果它以 '@' 开头,则此标识的其余部分为包含二进制数据或 ASCII 文本十六进制转储的文件名。其他情况都将作为 String 接受。[-config Machine\CAName]CertUtil [选项] -revoke SerialNumber [Reason]吊销证书SerialNumber -- 要吊销的证书序列号列表(以逗号分隔)Reason -- 吊销原因(数字或符号):0: CRL_REASON_UNSPECIFIED -- 未指定(默认)1: CRL_REASON_KEY_COMPROMISE -- 密钥泄漏2: CRL_REASON_CA_COMPROMISE -- CA 泄漏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: Unrevoke -- 取消吊销[-config Machine\CAName]CertUtil [选项] -isvalid SerialNumber | CertHash显示当前证书部署[-config Machine\CAName]CertUtil [选项] -getconfig获取默认配置字符串[-config Machine\CAName]CertUtil [选项] -ping [MaxSecondsToWait | CAMachineList]Ping Active Directory 证书服务申请接口CAMachineList -- 以逗号分隔的 CA 计算机名称列表对于单个计算机,请使用结束逗号显示每个 CA 计算机的站点开销[-config Machine\CAName] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName 用户名] [-p 密码]修饰符:SCEPCESCEPCertUtil [选项] -pingadminPing Active Directory 证书服务管理接口[-config Machine\CAName]CertUtil [选项] -CAInfo [InfoName [Index | ErrorCode]]显示 CA 信息InfoName -- 表示要显示的 CA 属性(参见下面)为所有属性使用 "*"Index -- 从零开始的属性索引(可选)ErrorCode -- 错误代码(数字)[-f] [-split] [-config Machine\CAName]InfoName 参数语法:file -- 文件版本product -- 产品版本exitcount -- 退出模块计数exit [Index] -- 退出模块描述policy -- 策略模块描述name -- CA 名称sanitizedname -- 整理过的 CA 名称dsname -- 净化的 CA 短名称(DS 名称)sharedfolder -- 共享文件夹error1 错误代码 -- 错误消息文本error2 错误代码 -- 错误消息文本和错误代码type -- CA 类型info -- CA 信息parent -- 父 CAcertcount -- CA 证书计数xchgcount -- CA 交换证书计数kracount -- KRA 证书计数kraused -- KRA 证书使用计数propidmax -- 最大 CA PropIdcertstate [Index] -- CA 证书certversion [Index] -- CA 证书版本certstatuscode [Index] -- CA 证书验证状态crlstate [Index] -- CRLkrastate [Index] -- KRA 证书crossstate+ [Index] -- 前向交叉证书crossstate- [Index] -- 后向交叉证书cert [Index] -- CA 证书certchain [Index] -- CA 证书链certcrlchain [Index] -- 有 CRL 的 CA 证书链xchg [Index] -- CA 交换证书xchgchain [Index] -- CA 交换证书链xchgcrlchain [Index] -- 有 CRL 的 CA 交换证书链kra [Index] -- KRA 证书cross+ [Index] -- 前向交叉证书cross- [Index] -- 后向交叉证书CRL [Index] -- 基 CRLdeltacrl [Index] -- 增量 CRLcrlstatus [Index] -- CRL 发布状态deltacrlstatus [Index] -- 增量 CRL 发布状态dns -- DNS 名称role -- 角色分离ads -- Advanced Servertemplates -- 模板ocsp [Index] -- OCSP URLaia [Index] -- AIA URLcdp [Index] -- CDP URLlocalename -- CA 区域名称subjecttemplateoids -- 使用者模板 OIDCertUtil [选项] -ca.cert OutCACertFile [Index]检索 CA 的证书OutCACertFile -- 输出文件Index -- CA 证书续订索引(默认为最新的)[-f] [-split] [-config Machine\CAName]CertUtil [选项] -ca.chain OutCACertChainFile [Index]检索 CA 的证书链OutCACertChainFile -- 输出文件Index -- CA 证书续订索引(默认为最新的)[-f] [-split] [-config Machine\CAName]CertUtil [选项] -GetCRL OutFile [Index] [delta]获取 CRLIndex -- CRL 索引或密钥索引(对最新的密钥默认到 CRL)delta -- 增量 CRL(默认为基 CRL)[-f] [-split] [-config Machine\CAName]CertUtil [选项] -CRL [dd:hh | republish] [delta]发布新的 CRL [或仅增量 CRL]dd:hh -- 新 CRL 的有效期(以天和小时计)republish -- 重新发布最新的 CRLdelta -- 仅增量 CRL(默认为基和增量 CRL)[-split] [-config Machine\CAName]CertUtil [选项] -shutdown关闭 Active Directory 证书服务[-config Machine\CAName]CertUtil [选项] -installCert [CACertFile]安装证书颁发机构证书[-f] [-Silent] [-config Machine\CAName]CertUtil [选项] -renewCert [ReuseKeys] [Machine\ParentCAName]续订证书颁发机构证书使用 -f 来忽略未完成的续订申请,并且生成新的申请。[-f] [-Silent] [-config Machine\CAName]CertUtil [选项] -schema [Ext | Attrib | CRL]转储证书架构默认到申请和证书表Ext -- 扩展表Attrib -- 属性表CRL -- CRL 表[-split] [-config Machine\CAName]CertUtil [选项] -view [Queue | Log | LogFail | Revoked | Ext | Attrib | CRL] [csv]转储证书视图Queue -- 请求队列Log -- 已颁发或吊销的证书,以及失败的请求LogFail -- 失败的请求Revoked -- 已吊销的证书Ext -- 扩展表Attrib -- 属性表CRL -- CRL 表csv -- 以逗号分隔值输出显示所有项目的 StatusCode 栏:-out StatusCode显示最后项目的所有栏:-restrict "RequestId==$"显示三个请求的 RequestId 和部署:-restrict "RequestId>=37,RequestId<40" -out "RequestId,Disposition"显示所有基 CRL 的行 Id 和 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" 用于相对于当前时间的日期[-Silent] [-split] [-config Machine\CAName] [-restrict 限制列表] [-out 栏列表]CertUtil [选项] -db转储原始数据库[-config Machine\CAName] [-restrict 限制列表] [-out 栏列表]CertUtil [选项] -deleterow RowId | Date [Request | Cert | Ext | Attrib | CRL]删除服务器数据库行Request -- 失败并被挂起的申请(提交日期)Cert -- 过期并被吊销的证书(过期日期)Ext -- 扩展表Attrib -- 属性表CRL -- CRL 表(过期日期)删除提交时间为 1/22/2001 的失败并被挂起的申请:1/22/2001 Request删除在 1/22/2001 过期的所有证书:1/22/2001 Cert删除 RequestId 37 的证书行,属性和扩展:37删除在 1/22/2001 过期的 CRL:1/22/2001 CRL[-f] [-config Machine\CAName]CertUtil [选项] -backup BackupDirectory [Incremental] [KeepLog]备份 Active Directory 证书服务BackupDirectory -- 存储备份数据的目录Incremental -- 仅执行增量备份(默认为完整备份)KeepLog -- 保留数据库日志文件(默认为截断日志文件)[-f] [-config Machine\CAName] [-p 密码] [-ProtectTo SAMNameAndSIDList]CertUtil [选项] -backupDB BackupDirectory [Incremental] [KeepLog]备份 Active Directory 证书服务数据库BackupDirectory -- 存储备份数据库文件的目录Incremental -- 仅执行增量备份(默认为完整备份)KeepLog -- 保留数据库日志文件(默认为截断日志文件)[-f] [-config Machine\CAName]CertUtil [选项] -backupKey BackupDirectory备份 Active Directory 证书服务证书和私钥BackupDirectory -- 存储备份 PFX 文件的目录[-f] [-config Machine\CAName] [-p 密码] [-ProtectTo SAMNameAndSIDList] [-t 超时]CertUtil [选项] -restore BackupDirectory还原 Active Directory 证书服务BackupDirectory -- 包含要还原的数据的目录[-f] [-config Machine\CAName] [-p 密码]CertUtil [选项] -restoreDB BackupDirectory还原 Active Directory 证书服务数据库BackupDirectory -- 包含要还原的数据库文件的目录[-f] [-config Machine\CAName]CertUtil [选项] -restoreKey BackupDirectory | PFXFile还原 Active Directory 证书服务证书和私钥BackupDirectory -- 包含要还原的 PFX 文件的目录PFXFile -- 要还原的 PFX 文件[-f] [-config Machine\CAName] [-p 密码]CertUtil [选项] -importPFX [CertificateStoreName] PFXFile [Modifiers]导入证书和私钥CertificateStoreName -- 证书存储名称。请参见 -store。PFXFile -- 要导入的 PFX 文件Modifiers -- 包含下面的一项或多项内容的列表(以逗号分隔):AT_SIGNATURE -- 将 KeySpec 更改为签名AT_KEYEXCHANGE -- 将 KeySpec 更改为密钥交换NoExport -- 将私钥设置为无法导出NoCert -- 不导入证书NoChain -- 不导入证书链NoRoot -- 不导入根证书Protect -- 使用密码保护密钥NoProtect -- 不使用密码保护密钥默认为个人计算机存储。[-f] [-Enterprise] [-user] [-GroupPolicy] [-Silent] [-p 密码] [-csp 提供程序]修饰符:NoExportExportEncryptedNoCertNoChain -- 仅限最终实体证书NoRoot -- 排除根证书NoProtectProtectProtectHighPkcs8AT_SIGNATUREAT_KEYEXCHANGEFriendlyName=KeyFriendlyName=KeyDescription=VSMCertUtil [选项] -dynamicfilelist显示动态文件列表[-config Machine\CAName]CertUtil [选项] -databaselocations显示数据库位置[-config Machine\CAName]CertUtil [选项] -hashfile InFile [HashAlgorithm]通过文件生成并显示加密哈希CertUtil [选项] -store [CertificateStoreName [CertId [OutputFile]]]转储证书存储CertificateStoreName -- 证书存储名称。示例:“My”、“CA”(默认)、“Root”,“ldap:///CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?cACertificate?one?objectClass=certificationAuthority”(查看根证书)“ldap:///CN=CAName,CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?cACertificate?base?objectClass=certificationAuthority”(修改根证书)“ldap:///CN=CAName,CN=MachineName,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?certificateRevocationList?base?objectClass=cRLDistributionPoint”(查看 CRL)“ldap:///CN=NTAuthCertificates,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?cACertificate?base?objectClass=certificationAuthority”(企业 CA 证书)ldap: (AD 计算机对象证书)-user ldap: (AD 用户对象证书)CertId -- 证书或 CRL 匹配令牌。这可以是一个序列号,一个 SHA-1 证书、CRL、CTL 或公钥哈希,一个数字证书索引(0, 1, 等等),一个数字 CRL 索引(.0, .1, 等等),一个数字 CTL 索引(..0, ..1, 等等),一个公钥,签名或扩展 ObjectId,一个证书使用者公用名一个电子邮件地址、UPN 或 DNS 名称,一个密钥容器名称或 CSP 名称,一个模板名称或 ObjectId,一个 EKU 或应用程序策略 ObjectId,或者一个 CRL 颁发者公用名。上面这些可能会产生多重匹配。OutputFile -- 保存匹配证书的文件使用 -user 来访问用户存储而不是计算机存储。使用 -enterprise 访问计算机企业存储。使用 -service 访问计算机服务存储。使用 -grouppolicy 访问计算机组策略存储。示例:-enterprise NTAuth-enterprise Root 37-user My 26e0aaaf000000000004CA .11[-f] [-Enterprise] [-user] [-GroupPolicy] [-Silent] [-split] [-dc DCName]CertUtil [选项] -enumstore [\\MachineName]枚举证书存储MachineName -- 远程计算机名称。[-Enterprise] [-user] [-GroupPolicy]CertUtil [选项] -addstore CertificateStoreName InFile将证书添加到存储CertificateStoreName -- 证书存储名称。参见 -store。InFile -- 要添加到存储的证书或 CRL 文件。[-f] [-Enterprise] [-user] [-GroupPolicy] [-dc DCName]修饰符:CertsCRLsCTLsRootNoRootCertUtil [选项] -delstore CertificateStoreName CertId从存储删除证书CertificateStoreName -- 证书存储名称。参见 -store。CertId -- 证书或 CRL 匹配令牌。参见 -store。[-f] [-Enterprise] [-user] [-GroupPolicy] [-Silent] [-dc DCName]CertUtil [选项] -verifystore CertificateStoreName [CertId]验证存储中的证书CertificateStoreName -- 证书存储名称。参见 -store。CertId -- 证书或 CRL 匹配令牌。参见 -store。[-Enterprise] [-user] [-GroupPolicy] [-Silent] [-split] [-dc DCName] [-t 超时]CertUtil [选项] -repairstore CertificateStoreName CertIdList [PropertyInfFile | SDDLSecurityDescriptor]修复密钥关联,或者更新证书属性或密钥安全描述符CertificateStoreName -- 证书存储名称。请参见 -store。CertIdList -- 以逗号分隔的证书或 CRL 匹配令牌列表。请参见 -store 的 CertId 说明。PropertyInfFile -- 包含外部属性的 INF 文件:[Properties]19 = Empty ; 添加存档的属性,或者:19 =       ; 删除存档的属性11 = "{text}Friendly Name" ; 添加友好名称属性127 = "{hex}" ; 添加自定义十六进制属性_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}" ; 添加密钥提供程序信息属性_continue_ = "Container=Container Name&"_continue_ = "Provider=Microsoft Strong Cryptographic Provider&"_continue_ = "ProviderType=1&"_continue_ = "Flags=0&"_continue_ = "KeySpec=2"9 = "{text}" ; 添加增强密钥使用属性_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 提供程序]CertUtil [选项] -viewstore [CertificateStoreName [CertId [OutputFile]]]转储证书存储CertificateStoreName -- 证书存储名称。示例:“My”、“CA”(默认)、“Root”,“ldap:///CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?cACertificate?one?objectClass=certificationAuthority”(查看根证书)“ldap:///CN=CAName,CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?cACertificate?base?objectClass=certificationAuthority”(修改根证书)“ldap:///CN=CAName,CN=MachineName,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?certificateRevocationList?base?objectClass=cRLDistributionPoint”(查看 CRL)“ldap:///CN=NTAuthCertificates,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?cACertificate?base?objectClass=certificationAuthority”(企业 CA 证书)ldap: (AD 计算机对象证书)-user ldap: (AD 用户对象证书)CertId -- 证书或 CRL 匹配令牌。这可以是一个序列号,一个 SHA-1 证书、CRL、CTL 或公钥哈希,一个数字证书索引(0, 1, 等等),一个数字 CRL 索引(.0, .1, 等等),一个数字 CTL 索引(..0, ..1, 等等),一个公钥,签名或扩展 ObjectId,一个证书使用者公用名一个电子邮件地址、UPN 或 DNS 名称,一个密钥容器名称或 CSP 名称,一个模板名称或 ObjectId,一个 EKU 或应用程序策略 ObjectId,或者一个 CRL 颁发者公用名。上面这些可能会产生多重匹配。OutputFile -- 保存匹配证书的文件使用 -user 来访问用户存储而不是计算机存储。使用 -enterprise 访问计算机企业存储。使用 -service 访问计算机服务存储。使用 -grouppolicy 访问计算机组策略存储。示例:-enterprise NTAuth-enterprise Root 37-user My 26e0aaaf000000000004CA .11[-f] [-Enterprise] [-user] [-GroupPolicy] [-dc DCName]CertUtil [选项] -viewdelstore [CertificateStoreName [CertId [OutputFile]]]从存储删除证书CertificateStoreName -- 证书存储名称。示例:“My”、“CA”(默认)、“Root”,“ldap:///CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?cACertificate?one?objectClass=certificationAuthority”(查看根证书)“ldap:///CN=CAName,CN=Certification Authorities,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?cACertificate?base?objectClass=certificationAuthority”(修改根证书)“ldap:///CN=CAName,CN=MachineName,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?certificateRevocationList?base?objectClass=cRLDistributionPoint”(查看 CRL)“ldap:///CN=NTAuthCertificates,CN=Public Key Services,CN=Services,CN=Configuration,DC=zte,DC=intra?cACertificate?base?objectClass=certificationAuthority”(企业 CA 证书)ldap: (AD 计算机对象证书)-user ldap: (AD 用户对象证书)CertId -- 证书或 CRL 匹配令牌。这可以是一个序列号,一个 SHA-1 证书、CRL、CTL 或公钥哈希,一个数字证书索引(0, 1, 等等),一个数字 CRL 索引(.0, .1, 等等),一个数字 CTL 索引(..0, ..1, 等等),一个公钥,签名或扩展 ObjectId,一个证书使用者公用名一个电子邮件地址、UPN 或 DNS 名称,一个密钥容器名称或 CSP 名称,一个模板名称或 ObjectId,一个 EKU 或应用程序策略 ObjectId,或者一个 CRL 颁发者公用名。上面这些可能会产生多重匹配。OutputFile -- 保存匹配证书的文件使用 -user 来访问用户存储而不是计算机存储。使用 -enterprise 访问计算机企业存储。使用 -service 访问计算机服务存储。使用 -grouppolicy 访问计算机组策略存储。示例:-enterprise NTAuth-enterprise Root 37-user My 26e0aaaf000000000004CA .11[-f] [-Enterprise] [-user] [-GroupPolicy] [-dc DCName]CertUtil [选项] -UI 文件 [import]调用 CryptUICertUtil [选项] -attest RequestFile验证密钥证明请求[-user] [-Silent] [-split]CertUtil [选项] -dsPublish CertFile [NTAuthCA | RootCA | SubCA | CrossCA | KRA | User | Machine]CertUtil [选项] -dsPublish CRLFile [DSCDPContainer [DSCDPCN]]将证书或 CRL 发布到 Active DirectoryCertFile -- 要发布的证书文件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 -- DS CDP 对象 CN,通常基于净化后的 CA 短名称和密钥索引使用 -f 来创建 DS 对象。[-f] [-user] [-dc DCName]CertUtil [选项] -ADTemplate [Template]显示 AD 模板[-f] [-user] [-ut] [-mt] [-dc DCName]CertUtil [选项] -Template [Template]显示注册策略模板[-f] [-user] [-Silent] [-PolicyServer URLOrId] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName 用户名] [-p 密码]CertUtil [选项] -TemplateCAs 模板显示模板的 CA[-f] [-user] [-dc DCName]CertUtil [选项] -CATemplates [Template]显示 CA 的模板[-f] [-user] [-ut] [-mt] [-config Machine\CAName] [-dc DCName]CertUtil [选项] -SetCASites [set] [SiteName]CertUtil [选项] -SetCASites verify [SiteName]CertUtil [选项] -SetCASites delete管理 CA 的站点名称设置、验证或删除 CA 站点名称使用 -config 选项以将单个 CA 作为目标(默认为所有 CA)只有在将单个 CA 作为目标时,才允许使用 SiteName使用 -f 以覆盖指定 SiteName 的验证错误使用 -f 以删除所有 CA 站点名称[-f] [-config Machine\CAName] [-dc DCName]CertUtil [选项] -enrollmentServerURL [URL AuthenticationType [Priority] [Modifiers]]CertUtil [选项] -enrollmentServerURL URL delete显示、添加或删除与 CA 关联的注册服务器 URLAuthenticationType -- 在添加 URL 时,指定以下客户端身份验证方法之一Kerberos -- 使用 Kerberos SSL 凭据UserName -- 使用指定帐户作为 SSL 凭据ClientCertificate -- 使用 X.509 证书 SSL 凭据Anonymous -- 使用匿名 SSL 凭据。delete -- 删除与 CA 关联的指定 URL。Priority -- 如果在添加 URL 时未指定,则默认为“1”。Modifiers -- 包含下面的一项或多项内容的逗号分隔列表:AllowRenewalsOnly -- 只能通过此 URL 将续订请求提交到此 CAAllowKeyBasedRenewal -- 允许使用在AD 中没有关联帐户的证书。这仅适用于ClientCertificate 和 AllowRenewalsOnly 模式。[-config Machine\CAName] [-dc DCName]CertUtil [选项] -ADCA [CAName]显示 AD CA[-f] [-split] [-dc DCName]CertUtil [选项] -CA [CAName | TemplateName]显示注册策略 CA[-f] [-user] [-Silent] [-split] [-PolicyServer URLOrId] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName 用户名] [-p 密码]CertUtil [选项] -Policy显示注册策略[-f] [-user] [-Silent] [-split] [-PolicyServer URLOrId] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName 用户名] [-p 密码]CertUtil [选项] -PolicyCache [delete]显示或删除注册策略缓存项目delete -- 删除策略服务器缓存项目-f -- 使用 -f 删除所有缓存项目。[-f] [-user] [-PolicyServer URLOrId]CertUtil [选项] -CredStore [URL]CertUtil [选项] -CredStore URL addCertUtil [选项] -CredStore URL delete显示、添加或删除凭据存储项目URL -- 目标 URL。使用 * 匹配所有项目使用 https://machine* 匹配 URL 前缀add -- 添加凭据存储项目还必须指定 SSL 凭据delete -- 删除凭据存储项目-f -- 使用 -f 覆盖一个项目或删除多个项目。[-f] [-user] [-Silent] [-Anonymous] [-Kerberos] [-ClientCertificate ClientCertId] [-UserName 用户名] [-p 密码]CertUtil [选项] -InstallDefaultTemplates安装默认的证书模板[-dc DCName]CertUtil [选项] -URLCache [URL | CRL | * [delete]]显示或删除 URL 缓存项目URL -- 缓存的 URLCRL -- 只在所有缓存的 CRL URL 上操作* -- 在所有的 URL 上操作delete -- 从当前用户的本地缓存中删除有关的 URL使用 -f 来强制提取特定的 URL 并更新缓存。[-f] [-split]CertUtil [选项] -pulse [TaskName [SRKThumbprint]]以脉冲方式执行自动注册事件或 NGC 任务TaskName -- 要触发的任务Pregen -- NGC 密钥 Pregen 任务AIKEnroll -- NGC AIK 证书注册任务。默认为自动注册事件。SRKThumbprint -- 存储根密钥的指纹[-user]修饰符:PregenPregenDelayAIKEnrollCryptoPolicyNgcPregenKeyDIMSRoamCertUtil [选项] -MachineInfo DomainName\MachineName$显示 Active Directory 计算机对象信息CertUtil [选项] -DCInfo [Domain] [Verify | DeleteBad | DeleteAll]显示域控制器信息默认为显示 DC 证书而不进行验证[-f] [-user] [-urlfetch] [-dc DCName] [-t 超时]修饰符:VerifyDeleteBadDeleteAllCertUtil [选项] -EntInfo DomainName\MachineName$显示企业信息[-f] [-user]CertUtil [选项] -TCAInfo [DomainDN | -]显示 CA 信息[-f] [-Enterprise] [-user] [-urlfetch] [-dc DCName] [-t 超时]CertUtil [选项] -SCInfo [ReaderName [CRYPT_DELETEKEYSET]]显示智能卡信息CRYPT_DELETEKEYSET -- 删除智能卡上的所有密钥[-Silent] [-split] [-urlfetch] [-t 超时]CertUtil [选项] -SCRoots update [+][InputRootFile] [ReaderName]CertUtil [选项] -SCRoots save @OutputRootFile [ReaderName]CertUtil [选项] -SCRoots view [InputRootFile | ReaderName]CertUtil [选项] -SCRoots delete [ReaderName]管理智能卡根证书[-f] [-split] [-p 密码]CertUtil [选项] -DeleteHelloContainer删除 Hello 登录容器。** 在使用此选项后, 用户需要注销才能完成。**CertUtil [选项] -verifykeys [KeyContainerName CACertFile]验证公/私钥集KeyContainerName -- 要验证的密钥容器名称默认为计算机密钥。对用户密钥请使用 -userCACertFile -- 签名或加密证书文件如果没有指定参数,每一个签名 CA 证书将对照它的私钥进行验证。此操作只能对本地 CA 或本地密钥执行。[-f] [-user] [-Silent] [-config Machine\CAName]CertUtil [选项] -verify CertFile [ApplicationPolicyList | - [IssuancePolicyList]] [Modifiers]CertUtil [选项] -verify CertFile [CACertFile [CrossedCACertFile]]CertUtil [选项] -verify CRLFile CACertFile [IssuedCertFile]CertUtil [选项] -verify CRLFile CACertFile [DeltaCRLFile]验证证书,CRL 或链CertFile -- 要验证的证书ApplicationPolicyList -- 逗号分隔的要求的应用程序策略 ObjectId 列表(可选)IssuancePolicyList -- 逗号分隔的要求的发行策略 ObjectId 列表(可选)CACertFile -- 要对照验证的发证 CA (可选)CrossedCACertFile -- 由 CertFile 交叉验证的证书(可选)CRLFile -- 要验证的 CRLIssuedCertFile -- 由 CRLFile 包括的发行的证书(可选)DeltaCRLFile -- 增量 CRL(可选)如果指定了 ApplicationPolicyList,构建链被限制为对指定的应用程序策略有效的链。如果指定了 IssuancePolicyList,生成链被限制为对指定的发行策略有效的链。如果指定了 CACertFile,在 CACertFile 中的域将对照 CertFile 或 CRLFile验证。如果没有指定 CACertFile,将使用 CertFile 来生成并验证完整链。如果同时指定了 CACertFile 和 CrossedCACertFile,在 CACertFile 和CrossedCACertFile 中的域将对照 CertFile 验证。如果指定了 IssuedCertFile,在 IssuedCertFile 中的域将对照 CRLFile 验证。如果指定了 DeltaCRLFile,在 DeltaCRLFile 中的域将对照 CRLFile 验证。[-f] [-Enterprise] [-user] [-Silent] [-split] [-urlfetch] [-t 超时] [-sslpolicy ServerName]修饰符:Strong -- 强签名验证MSRoot -- 必须链接到 Microsoft 根目录MSTestRoot -- 必须链接到 Microsoft 测试根目录AppRoot -- 必须链接到 Microsoft 应用程序根目录EV -- 强制执行扩展验证策略CertUtil [选项] -verifyCTL CTLObject [CertDir] [CertFile]验证 AuthRoot 或不允许的证书 CTLCTLObject -- 指定要验证的 CTL:AuthRootWU -- 从 URL 缓存中读取 AuthRoot CAB 和匹配的证书。使用 -f 可从 Windows 更新中下载。DisallowedWU -- 从 URL 缓存中读取不允许的证书 CAB 和不允许的证书存储文件。使用 -f 可从 Windows 更新中下载。PinRulesWU -- 从 URL 缓存中读取 PinRules CAB。使用 -f 可从 Windows 更新中下载。AuthRoot -- 读取注册表缓存的 AuthRoot CTL。与 -f 和尚未信任的 CertFile 一起使用以强制更新注册表缓存的 AuthRoot 和不允许的证书 CTL。Disallowed -- 读取注册表缓存的不允许证书 CTL。-f 具有与 AuthRoot 相同的行为。PinRules -- 读取注册表缓存的 PinRules CTL。-f 具有与 PinRulesWU 相同的行为。CTLFileName -- CTL 或 CAB 的文件或 http: 路径CertDir -- 包含与 CTL 条目匹配的证书的文件夹http: 文件夹路径必须以路径分隔符结尾。如果未使用 AuthRoot 或 Disallowed 指定文件夹,则会在以下多个位置中搜索匹配的证书: 本地证书存储、crypt32.dll 资源和本地 URL 缓存。如有必要,请使用 -f 从 Windows 更新中下载。否则,默认使用与 CTLObject 相同的文件夹或网站。CertFile -- 包含要验证的证书的文件。将证书与 CTL 条目进行匹配,并显示匹配结果。隐藏大多数默认输出。[-f] [-user] [-split]CertUtil [选项] -syncWithWU DestinationDir与 Windows 更新同步DestinationDir -- 要复制到的文件夹。已从 Windows Update 下载以下文件:authrootstl.cab - 包含第三方根的 CTL。disallowedcertstl.cab - 包含不允许的证书的 CTL。disallowedcert.sst - 不允许的证书。pinrulesstl.cab - 包含 SSL 捆绑规则的 CTL。pinrules.sst - 捆绑规则证书。<thumbprint>.crt - 第三方根。[-f]CertUtil [选项] -generateSSTFromWU SSTFile通过 Windows 更新生成 SSTSSTFile -- 要创建的 .sst 文件。生成的 .sst 文件包含从 Windows 更新下载的第三方根。[-f] [-split]CertUtil [选项] -generatePinRulesCTL XMLFile CTLFile [SSTFile [QueryFilesPrefix]]生成捆绑规则 CTLXMLFile -- 要解析的输入 XML 文件。CTLFile -- 要生成的输出 CTL 文件。SSTFile -- 要创建的可选 .sst 文件。.sst 文件包含所有用于捆绑的证书。QueryFilesPrefix -- 要为数据库查询创建的可选 Domains.csv 文件和 Keys.csv 文件。QueryFilesPrefix 字符串附加到每个已创建文件的前面。Domains.csv 文件包含规则名称、域行。Keys.csv 文件包含规则名称、密钥 SHA256 指纹行。[-f]CertUtil [选项] -downloadOcsp CertificateDir OcspDir [ThreadCount] [修饰符]下载 OCSP 响应并写入目录CertificateDir -- 证书、存储和 PFX 文件的目录。OcspDir        -- 写入 OCSP 响应的目录。ThreadCount    -- 可选的并行下载的最大线程数。默认值为 10。修饰符 -- 以下一项或多项的逗号分隔的列表:DownloadOnce -- 下载一次,然后退出ReadOcsp -- 从 OcspDir 读取而不是写入默认情况 下,certutil 不会退出,必须显式终止。修饰符:DownloadOnceReadOcspCertUtil [选项] -generateHpkpHeader CertFileOrDir MaxAge [ReportUri] [Modifiers]使用指定文件或目录中的证书生成 HPKP 头CertFileOrDir  -- 证书的文件或目录。pin-sha256 的源。MaxAge         -- 最大有效期值(以秒为单位)。ReportUri      -- 可选报告 uri。Modifiers -- 逗号分隔的以下一项或多项的列表:includeSubDomains -- 追加 includeSubDomains。修饰符:includeSubDomainsCertUtil [选项] -flushCache ProcessId CacheMask [修饰符]刷新选定进程(例如 lsass.exe)中的指定缓存ProcessId -- 要刷新的进程的数字 ID。设置为 0 以刷新所有已启用刷新的进程。CacheMask -- 要刷新的缓存的位掩码。以下位的数字 OR:0x01: CERT_WNF_FLUSH_CACHE_REVOCATION0x02: CERT_WNF_FLUSH_CACHE_OFFLINE_URL0x04: CERT_WNF_FLUSH_CACHE_MACHINE_CHAIN_ENGINE0x08: CERT_WNF_FLUSH_CACHE_USER_CHAIN_ENGINES0x10: CERT_WNF_FLUSH_CACHE_SERIAL_CHAIN_CERTS0x20: CERT_WNF_FLUSH_CACHE_SSL_TIME_CERTS0x40: CERT_WNF_FLUSH_CACHE_OCSP_STAPLING0: ShowOnly修饰符 -- 用逗号分隔的以下一个或多个内容的列表:Show - 显示正在刷新的缓存。Certutil 必须显式终止。修饰符:ShowCertUtil [选项] -addEccCurve [CurveClass:]CurveName CurveParameters [CurveOID] [CurveType]添加 ECC 曲线CurveClass:       -- ECC 曲线类类型:- WEIERSTRASS [默认值]- MONTGOMERY- TWISTED_EDWARDSCurveName         -- ECC 曲线名称CurveParameters   -- ECC 曲线参数。为下列其中一项- 包含 ASN 编码参数的证书文件名- 包含 ASN 编码参数的文件CurveOID          -- ECC 曲线 OID。为下列其中一项:- 包含 ASN 编码 OID 的证书文件名- 显式 ECC 曲线 OIDCurveType         -- Schannel ECC NamedCurve 点(数字)[-f]CertUtil [选项] -deleteEccCurve CurveName | CurveOID删除 ECC 曲线CurveName -- ECC 曲线名称CurveOID -- ECC 曲线 OID[-f]CertUtil [选项] -displayEccCurve [CurveName | CurveOID]显示 ECC 曲线CurveName -- ECC 曲线名称CurveOID -- ECC 曲线 OID[-f]CertUtil [选项] -sign InFileList|SerialNumber|CRL OutFileList [StartDate[+|-dd:hh]+|-dd:hh] [+SerialNumberList | -SerialNumberList | -ObjectIdList | @ExtensionFile]CertUtil [选项] -sign InFileList|SerialNumber|CRL OutFileList [#HashAlgorithm] [+AlternateSignatureAlgorithm | -AlternateSignatureAlgorithm]CertUtil [选项] -sign InFileList OutFileList [Subject:CN=...] [Issuer:hex data]重新签名 CRL 或证书InFileList -- 要修改并重新签名的证书或 CRL 文件列表(以逗号分隔)SerialNumber -- 要创建的证书的序列号有效期和其他选项必须不存在CRL -- 创建空 CRL有效期和其他选项必须不存在OutFileList -- 已修改的证书或 CRL 输出文件列表(以逗号分隔)。文件数目必须同 InFileList 匹配。StartDate[+|-dd:hh]+|-dd:hh -- 新的有效期: 可选日期加上可选天数和小时数的开始日期偏移和可选天数和小时数的有效期如果使用多个字段,请使用(+)或(-)分隔符使用“now[+dd:hh]”在当前时间启动使用“now-dd:hh+dd:hh”在当前时间的固定偏移和固定的有效期开始使用“never”将无到期日期(仅用于 CRL)SerialNumberList -- 要添加或删除的序列号列表(以逗号分隔)ObjectIdList -- 要删除的扩展 ObjectId 列表(以逗号分隔)@ExtensionFile -- 包含要更新或删除的扩展的 INF 文件:[Extensions]2.5.29.31 = ; 删除 CRL 分发点扩展2.5.29.15 = "{hex}" ; 更新密钥使用扩展_continue_="03 02 01 86"HashAlgorithm -- 前面标有 # 号的哈希算法名称AlternateSignatureAlgorithm -- 替换签名算法说明符减号将删除序列号和扩展。加号将添加序列号到 CRL。从 CRL 中删除项目时,列表可能同时包含序列号和 ObjectId。AlternateSignatureAlgorithm 之前的减号将使用旧签名格式。AlternateSignatureAlgorithm 之前的加号将使用替换签名格式。如果未指定 AlternateSignatureAlgorithm,则使用证书或 CRL 中的签名格式。[-nullsign] [-f] [-user] [-Silent] [-Cert CertId] [-csp 提供程序]CertUtil [选项] -vroot [delete]创建/删除 Web 虚拟根和文件共享CertUtil [选项] -vocsproot [delete]创建/删除 OCSP Web Proxy 的 Web 虚拟根CertUtil [选项] -addEnrollmentServer Kerberos | UserName | ClientCertificate [AllowRenewalsOnly] [AllowKeyBasedRenewal]添加注册服务器应用程序如有必要,请为指定的 CA 添加注册服务器应用程序和应用程序池。此命令不安装二进制文件或程序包客户端可通过以下身份验证方法之一连接到证书注册服务器Kerberos -- 使用 Kerberos SSL 凭据UserName -- 使用指定帐户作为 SSL 凭据ClientCertificate -- 使用 X.509 证书 SSL 凭据AllowRenewalsOnly -- 只能通过此 URL 将续订请求提交到此 CAAllowKeyBasedRenewal -- 允许使用在AD 中没有关联帐户的证书。这仅适用于ClientCertificate 和 AllowRenewalsOnly 模式。[-config Machine\CAName]修饰符:AllowRenewalsOnlyAllowKeyBasedRenewalCertUtil [选项] -deleteEnrollmentServer Kerberos | UserName | ClientCertificate删除注册服务器应用程序如有必要,请为指定的 CA 删除注册服务器应用程序和应用程序池。此命令不删除二进制文件或程序包客户端可通过以下身份验证方法之一连接到证书注册服务器Kerberos -- 使用 Kerberos SSL 凭据UserName -- 使用指定帐户作为 SSL 凭据ClientCertificate -- 使用 X.509 证书 SSL 凭据。[-config Machine\CAName]CertUtil [选项] -addPolicyServer Kerberos | UserName | ClientCertificate [KeyBasedRenewal]添加策略服务器应用程序如有必要,请添加策略服务器应用程序和应用程序池。此命令不安装二进制文件或程序包客户端可通过以下身份验证方法之一连接到证书策略服务器Kerberos -- 使用 Kerberos SSL 凭据UserName -- 使用指定帐户作为 SSL 凭据ClientCertificate -- 使用 X.509 证书 SSL 凭据KeyBasedRenewal -- 仅向客户端返回包含 KeyBasedRenewal 模板的策略。此标记仅适用于 UserName 和 ClientCertificate身份验证。CertUtil [选项] -deletePolicyServer Kerberos | UserName | ClientCertificate [KeyBasedRenewal]删除策略服务器应用程序如有必要,请删除策略服务器应用程序和应用程序池。此命令不删除二进制文件或程序包客户端可通过以下身份验证方法之一连接到证书策略服务器Kerberos -- 使用 Kerberos SSL 凭据UserName -- 使用指定帐户作为 SSL 凭据ClientCertificate -- 使用 X.509 证书 SSL 凭据KeyBasedRenewal -- KeyBasedRenewal 策略服务器。CertUtil [选项] -oid ObjectId [DisplayName | delete [LanguageId [Type]]]CertUtil [选项] -oid GroupIdCertUtil [选项] -oid AlgId | AlgorithmName [GroupId]显示 ObjectId 或设置显示名称ObjectId -- 要显示或添加显示名称的 ObjectIdGroupId -- 要枚举的 ObjectId 的十进制 GroupId 编号AlgId -- 要查找的 ObjectId 的十六进制 AlgIdAlgorithmName -- 要查找的 ObjectId 的算法名称DisplayName -- 要在 DS 中存储的显示名称delete -- 删除显示名称LanguageId -- 语言 Id(默认为当前: 2052)Type -- 要创建的 DS 对象类型: 1 为模板(默认),2 为颁发策略,3 为应用程序策略用 -f 来创建 DS 对象。[-f]CertUtil [选项] -error ErrorCode显示错误代码消息文本CertUtil [选项] -getreg [{ca|restore|policy|exit|template|enroll|chain|PolicyServers}\[ProgId\]][RegistryValueName]显示注册表值ca --使用 CA 的注册表项restore --使用 CA 的还原注册表项policy --使用策略模块的注册表项exit --使用第一个退出模块的注册表项template --使用模板注册表项(对用户模板使用 -user)enroll --使用注册注册表项(对用户上下文使用 -user)chain --使用链配置注册表项PolicyServers --使用策略服务器注册表项ProgId --使用策略或退出模块的 ProgId (注册表子项名称)RegistryValueName --注册表值名称(使用 "Name*" 进行前缀匹配)Value --新的数字、字符串或日期注册表值或文件名。如果一个数字值以 "+" 或 "-" 开头,则新值中指定的位将在现有的注册表值中被设置或清除。如果字符串值以 "+" 或 "-" 开头,并且现有值为一个 REG_MULTI_SZ 值,则此字符串将添加到现有的注册表值中,或从中删除。若要强制创建一个 REG_MULTI_SZ 值,请在字符串值的末尾添加一个 "\n"。如果值以 "@" 开头,则值的其余部分为文件的名称,该文件包含一个二进制值的十六进制文本表示形式。如果它未引用一个有效文件,则会将其作为[Date][+|-][dd:hh] 进行分析 -- 可选日期加上或减去可选天数和小时数。如果同时指定两者,则使用加号(+)或减号(-)分隔符。将 "now+dd:hh" 用于相对于当前时间的日期。使用 "i64" 作为后缀以创建 REG_QWORD 值。使用 "chain\ChainCacheResyncFiletime @now" 有效地刷新缓存的 CRL。[-f] [-Enterprise] [-user] [-GroupPolicy] [-config Machine\CAName]注册表别名:ConfigCAPolicy         PolicyModulesExit           ExitModulesRestore        RestoreInProgressTemplate       Software\Microsoft\Cryptography\CertificateTemplateCacheEnroll         Software\Microsoft\Cryptography\AutoEnrollment (Software\Policies\Microsoft\Cryptography\AutoEnrollment)MSCEP          Software\Microsoft\Cryptography\MSCEPChain          Software\Microsoft\Cryptography\OID\EncodingType 0\CertDllCreateCertificateChainEngine\ConfigPolicyServers  Software\Microsoft\Cryptography\PolicyServers (Software\Policies\Microsoft\Cryptography\PolicyServers)Crypt32        System\CurrentControlSet\Services\crypt32NGC            System\CurrentControlSet\Control\Cryptography\NgcAutoUpdate     Software\Microsoft\SystemCertificates\AuthRoot\AutoUpdatePassport       Software\Policies\Microsoft\PassportForWorkMDM            Software\Microsoft\Policies\PassportForWorkCertUtil [选项] -setreg [{ca|restore|policy|exit|template|enroll|chain|PolicyServers}\[ProgId\]]RegistryValueName 值设置注册表值ca --使用 CA 的注册表项restore --使用 CA 的还原注册表项policy --使用策略模块的注册表项exit --使用第一个退出模块的注册表项template --使用模板注册表项(对用户模板使用 -user)enroll --使用注册注册表项(对用户上下文使用 -user)chain --使用链配置注册表项PolicyServers --使用策略服务器注册表项ProgId --使用策略或退出模块的 ProgId (注册表子项名称)RegistryValueName --注册表值名称(使用 "Name*" 进行前缀匹配)Value --新的数字、字符串或日期注册表值或文件名。如果一个数字值以 "+" 或 "-" 开头,则新值中指定的位将在现有的注册表值中被设置或清除。如果字符串值以 "+" 或 "-" 开头,并且现有值为一个 REG_MULTI_SZ 值,则此字符串将添加到现有的注册表值中,或从中删除。若要强制创建一个 REG_MULTI_SZ 值,请在字符串值的末尾添加一个 "\n"。如果值以 "@" 开头,则值的其余部分为文件的名称,该文件包含一个二进制值的十六进制文本表示形式。如果它未引用一个有效文件,则会将其作为[Date][+|-][dd:hh] 进行分析 -- 可选日期加上或减去可选天数和小时数。如果同时指定两者,则使用加号(+)或减号(-)分隔符。将 "now+dd:hh" 用于相对于当前时间的日期。使用 "i64" 作为后缀以创建 REG_QWORD 值。使用 "chain\ChainCacheResyncFiletime @now" 有效地刷新缓存的 CRL。[-f] [-Enterprise] [-user] [-GroupPolicy] [-config Machine\CAName]CertUtil [选项] -delreg [{ca|restore|policy|exit|template|enroll|chain|PolicyServers}\[ProgId\]][RegistryValueName]删除注册表值ca --使用 CA 的注册表项restore --使用 CA 的还原注册表项policy --使用策略模块的注册表项exit --使用第一个退出模块的注册表项template --使用模板注册表项(对用户模板使用 -user)enroll --使用注册注册表项(对用户上下文使用 -user)chain --使用链配置注册表项PolicyServers --使用策略服务器注册表项ProgId --使用策略或退出模块的 ProgId (注册表子项名称)RegistryValueName --注册表值名称(使用 "Name*" 进行前缀匹配)Value --新的数字、字符串或日期注册表值或文件名。如果一个数字值以 "+" 或 "-" 开头,则新值中指定的位将在现有的注册表值中被设置或清除。如果字符串值以 "+" 或 "-" 开头,并且现有值为一个 REG_MULTI_SZ 值,则此字符串将添加到现有的注册表值中,或从中删除。若要强制创建一个 REG_MULTI_SZ 值,请在字符串值的末尾添加一个 "\n"。如果值以 "@" 开头,则值的其余部分为文件的名称,该文件包含一个二进制值的十六进制文本表示形式。如果它未引用一个有效文件,则会将其作为[Date][+|-][dd:hh] 进行分析 -- 可选日期加上或减去可选天数和小时数。如果同时指定两者,则使用加号(+)或减号(-)分隔符。将 "now+dd:hh" 用于相对于当前时间的日期。使用 "i64" 作为后缀以创建 REG_QWORD 值。使用 "chain\ChainCacheResyncFiletime @now" 有效地刷新缓存的 CRL。[-f] [-Enterprise] [-user] [-GroupPolicy] [-config Machine\CAName]注册表别名:ConfigCAPolicy         PolicyModulesExit           ExitModulesRestore        RestoreInProgressTemplate       Software\Microsoft\Cryptography\CertificateTemplateCacheEnroll         Software\Microsoft\Cryptography\AutoEnrollment (Software\Policies\Microsoft\Cryptography\AutoEnrollment)MSCEP          Software\Microsoft\Cryptography\MSCEPChain          Software\Microsoft\Cryptography\OID\EncodingType 0\CertDllCreateCertificateChainEngine\ConfigPolicyServers  Software\Microsoft\Cryptography\PolicyServers (Software\Policies\Microsoft\Cryptography\PolicyServers)Crypt32        System\CurrentControlSet\Services\crypt32NGC            System\CurrentControlSet\Control\Cryptography\NgcAutoUpdate     Software\Microsoft\SystemCertificates\AuthRoot\AutoUpdatePassport       Software\Policies\Microsoft\PassportForWorkMDM            Software\Microsoft\Policies\PassportForWorkCertUtil [选项] -ImportKMS UserKeyAndCertFile [CertId]为密钥存档导入用户密钥和证书到服务器数据库UserKeyAndCertFile -- 包含要存档的用户私钥和证书的数据文件。这可以是任何以下内容:交换密钥管理服务器(KMS)导出文件PFX 文件CertId -- KMS 导出文件解密证书匹配令牌。请参见 -store。使用 -f 导入不是由 CA 颁发的证书。[-f] [-Silent] [-split] [-config Machine\CAName] [-p 密码] [-symkeyalg SymmetricKeyAlgorithm[,KeyLength]]CertUtil [选项] -ImportCert Certfile [ExistingRow]将证书文件导入数据库使用 ExistingRow 导入证书以代替相同密钥的挂起的请求。使用 -f 来导入非 CA 颁发的证书。还可能需要配置 CA 来支持外部证书导入:certutil -setreg ca\KRAFlags +KRAF_ENABLEFOREIGN[-f] [-config Machine\CAName]CertUtil [选项] -GetKey SearchToken [RecoveryBlobOutFile]CertUtil [选项] -GetKey SearchToken script OutputScriptFileCertUtil [选项] -GetKey SearchToken retrieve | recover OutputFileBaseName检索存档的私钥恢复 Blob,生成恢复脚本 或恢复存档的密钥script -- 生成脚本以检索和恢复密钥(找到多个匹配的恢复代理或未指定输出文件时的默认行为)。retrieve -- 检索一个或多个密钥恢复 Blob (恰好找到一个匹配的恢复代理并指定了输出文件时的默认行为)recover -- 在一个步骤中检索和恢复私钥(需要密钥恢复代理证书和私钥)SearchToken -- 用于选择要恢复的密钥和证书。可以是任何以下内容:证书公用名称证书序列号证书 SHA-1 哈希(指纹)证书 KeyId SHA-1 哈希(使用者密钥标识符)请求者名称(domain\user)UPN (user@domain)RecoveryBlobOutFile -- 包含一个证书链和关联的私钥的输出文件,仍加密到一个或多个密钥恢复代理证书。OutputScriptFile -- 包含批处理脚本以检索和恢复私钥的输出文件。OutputFileBaseName -- 输出文件基本名称。对于 retrieve,将截断任何扩展,并为每个密钥恢复 Blob附加证书特定的字符串和 .rec扩展。每个文件包含一个证书链和关联的私钥,仍加密到一个或多个密钥恢复代理证书。对于 recover,将截断任何扩展并附加 .p12扩展。包含恢复的证书链和关联的私钥(存储为 PFX 文件)。[-f] [-UnicodeText] [-Silent] [-config Machine\CAName] [-p 密码] [-ProtectTo SAMNameAndSIDList] [-csp 提供程序]CertUtil [选项] -RecoverKey RecoveryBlobInFile [PFXOutFile [RecipientIndex]]恢复存档的私钥[-f] [-user] [-Silent] [-split] [-p 密码] [-ProtectTo SAMNameAndSIDList] [-csp 提供程序] [-t 超时]CertUtil [选项] -MergePFX PFXInFileList PFXOutFile [Modifiers]合并 PFX 文件PFXInFileList -- 以逗号分隔的 PFX 输入文件列表PFXOutFile -- PFX 输出文件Modifiers -- 包含下列一项或多项的逗号分隔列表:ExtendedProperties -- 包含扩展属性NoEncryptCert -- 不加密证书EncryptCert -- 加密证书在命令行中指定的密码是以逗号分隔的密码列表。如果指定多个密码,则最后一个密码将用于输出文件。如果仅提供一个密码或最后一个密码为 "*",则系统将提示用户提供输出文件的密码。[-f] [-user] [-split] [-p 密码] [-ProtectTo SAMNameAndSIDList] [-csp 提供程序]CertUtil [选项] -ConvertEPF PFXInFileList EPFOutFile [cast | cast-] [V3CACertId][,Salt]将 PFX 文件转换为 EPF 文件PFXInFileList -- 逗号分隔的 PFX 输入文件列表EPF -- EPF 输出文件cast -- 使用 CAST 64 加密cast- -- 使用 CAST 64 加密(导出)V3CACertId -- V3 CA 证书匹配令牌。参阅 -store CertId 描述。Salt -- EPF 输出文件加密盐字符串在命令行指定的密码是逗号分隔的密码列表。如果指定了一个以上的密码,将对输出文件使用最后一个密码。如果只提供了一个密码或最后一个密码为 "*",将提示用户输出文件的密码。[-f] [-Silent] [-split] [-dc DCName] [-p 密码] [-csp 提供程序]CertUtil [选项] -add-chain LogId 证书 OutFile添加证书链[-f]CertUtil [选项] -add-pre-chain LogId 预植证书 OutFile添加预植证书链[-f]CertUtil [选项] -get-sth [LogId]获取签名树头[-f]CertUtil [选项] -get-sth-consistency LogId TreeSize1 TreeSize2获取签名树头更改[-f]CertUtil [选项] -get-proof-by-hash LogId 哈希[TreeSize]获取哈希证明[-f]CertUtil [选项] -get-entries LogId FirstIndex LastIndex获取项[-f]CertUtil [选项] -get-roots LogId获取根[-f]CertUtil [选项] -get-entry-and-proof LogId 索引 [TreeSize]获取项和证明[-f]CertUtil [选项] -VerifyCT 证书 SCT [precert]验证证书 SCT[-f]CertUtil [选项] -?显示该用法消息选项:-nullsign         -- 将数据的哈希用作签名-f                -- 强制覆盖-Enterprise       -- (-ent) 使用本地计算机 Enterprise 注册表证书存储-user             -- 使用 HKEY_CURRENT_USER 项或证书存储-GroupPolicy      -- (-gp) 使用组策略证书存储-ut               -- 显示用户模板-mt               -- 显示计算机模板-Unicode          -- 以 Unicode 编写重定向输出-UnicodeText      -- 以 Unicode 编写输出文件-gmt              -- 将时间显示为 GMT-seconds          -- 用秒和毫秒显示时间-Silent           -- (-q) 用无声标志获得 crypt 上下文-split            -- 分离嵌入的 ASN.1 元素,并保存到文件-v                -- 详细操作-privatekey       -- 显示密码和私钥数据-pin PIN                  -- 智能卡 PIN-urlfetch         -- 检索并验证 AIA 证书和 CDP CRL-config Machine\CAName    -- CA 和计算机名称字符串-PolicyServer URLOrId     -- 策略服务器 URL 或 ID对于选择 U/I,使用 -PolicyServer -对于所有策略服务器,使用 -PolicyServer *-Anonymous        -- 使用匿名 SSL 凭据-Kerberos         -- 使用 Kerberos SSL 凭据-ClientCertificate ClientCertId -- 使用 X.509 证书 SSL 凭据对于选择 U/I,使用 -ClientCertificate --UserName 用户名          -- 使用指定帐户作为 SSL 凭据对于选择 U/I,使用 -UserName --Cert CertId              -- 签名证书-dc DCName                -- 目标为一个特定的域控制器-restrict 限制列表        -- 以逗号分隔的限制列表每个限制都由一个列名称、一个关系操作符和一个整数常量、字符串或日期组成。列名称前面可以带有加号或减号,以表示排列顺序。例如:"RequestId = 47""+RequesterName >= a, RequesterName < b""-RequesterName > DOMAIN, Disposition = 21"-out 栏列表               -- 以逗号分隔的栏列表-p 密码                   -- 密码-ProtectTo SAMNameAndSIDList -- 以逗号分隔的 SAM 名称/SID 列表-csp 提供程序             -- 提供程序KSP -- "Microsoft Software Key Storage Provider"TPM -- "Microsoft Platform Crypto Provider"NGC -- "Microsoft Passport Key Storage Provider"SC -- "Microsoft Smart Card Key Storage Provider"-Location AlternateStorageLocation -- (-loc) AlternateStorageLocationAIK -- "C:\ProgramData\Microsoft\Crypto\PCPKSP\WindowsAIK"-t 超时                   -- URL 取指令超时(毫秒)-symkeyalg SymmetricKeyAlgorithm[,KeyLength] -- 对称密钥算法的名称和可选密钥长度,例如: AES、128 或 3DES-sid WELL_KNOWN_SID_TYPE  -- 数字 SID22 -- 本地系统23 -- 本地服务24 -- 网络服务-sslpolicy ServerName     -- 与 ServerName 匹配的 SSL 策略哈希算法: MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512CertUtil -?              -- 显示动词列表(命名列表)
CertUtil -dump -?        -- 显示 "dump" 动词的帮助文本
CertUtil -v -?           -- 显示所有动词的所有帮助文本CertUtil: -? 命令成功完成。

 

 


3 示例

C:\>certutil -hashfile C:\Bluetooth.apk MD5
MD5 的 C:\Bluetooth.apk 哈希:
086239cbe1e45656904043422ae50b58
CertUtil: -hashfile 命令成功完成。


4 参考资料

相关文章:

  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • 封装日期时间组件
  • 边缘计算的挑战和机遇(结合RDH-EI)
  • 12GoF之代理模式
  • Hutool sqlserver 数据库简单操作-Db
  • Linux 【C编程】IO进阶— 阻塞IO、非阻塞IO、 多路复用IO、 异步IO
  • 阶段七第二章 性能测试工具
  • word写标书的疑难杂症总结
  • leetcode82. 删除排序链表中的重复元素 II
  • 网络安全产品之认识WEB应用防火墙
  • 常用Java代码-Java中的Lambda表达式和函数式接口
  • 通过myBatis将sql语句返回的值自动包装成一个java对象(3)
  • [链路层] 点对点协议 PPP
  • 图解拒付平台:如何应对用户的拒付
  • Linux IDEA 安装及环境配置
  • [笔记] php常见简单功能及函数
  • HTTP那些事
  • js操作时间(持续更新)
  • Python_网络编程
  • ReactNative开发常用的三方模块
  • 不上全站https的网站你们就等着被恶心死吧
  • 关于使用markdown的方法(引自CSDN教程)
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 记录一下第一次使用npm
  • 前端设计模式
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 如何在 Tornado 中实现 Middleware
  • 通过获取异步加载JS文件进度实现一个canvas环形loading图
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 运行时添加log4j2的appender
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • 昨天1024程序员节,我故意写了个死循环~
  • ​你们这样子,耽误我的工作进度怎么办?
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • #1015 : KMP算法
  • #HarmonyOS:Web组件的使用
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (备忘)Java Map 遍历
  • (二)Eureka服务搭建,服务注册,服务发现
  • (转)德国人的记事本
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • .net core 控制台应用程序读取配置文件app.config
  • .NET Core跨平台微服务学习资源
  • .NET Framework 4.6.2改进了WPF和安全性
  • .NET Framework 服务实现监控可观测性最佳实践
  • .net 生成二级域名
  • .NET 依赖注入和配置系统
  • .NET项目中存在多个web.config文件时的加载顺序
  • @Documented注解的作用
  • @RequestParam,@RequestBody和@PathVariable 区别
  • [ vulhub漏洞复现篇 ] struts2远程代码执行漏洞 S2-005 (CVE-2010-1870)
  • [asp.net core]project.json(2)
  • [C#]使用DlibDotNet人脸检测人脸68特征点识别人脸5特征点识别人脸对齐人脸比对FaceMesh
  • [CC2642r1] ble5 stacks 蓝牙协议栈 介绍和理解
  • [Django 0-1] Core.Checks 模块