certutil.exe的语法?

在Windows上,您可以使用certutil.exe来pipe理证书。 但它确实有很多select,而命令的帮助(和谷歌一样)并不能帮助你清楚地理解它。

这些命令的确切含义是什么,所有这些命令都应该能够将证书导入到本地机器存储中?

certutil -addstore my <filename> certutil -installcert <filename> certutil -importcert <filename> certutil -importpfx <filename> 

我可以猜到最后一个是从.pfx文件导入证书; 但其他人不应该也能做同样的事情吗? 而且,前三者之间有什么区别呢?

尝试使用 – ?. 你可以得到关于命令的详细信息:

例如:

 C:\>certutil -addstore -? Usage: CertUtil [Options] -addstore CertificateStoreName InFile Add certificate to store CertificateStoreName -- Certificate store name. See -store. InFile -- Certificate or CRL file to add to store. Options: -f -- Force overwrite -enterprise -- Use local machine Enterprise registry certificate store -user -- Use HKEY_CURRENT_USER keys or certificate store -GroupPolicy -- Use Group Policy certificate store -gmt -- Display times as GMT -seconds -- Display times with seconds and milliseconds -v -- Verbose operation -privatekey -- Display password and private key data -dc DCName -- Target a specific Domain Controller CertUtil -? -- Display a verb list (command list) CertUtil -addstore -? -- Display help text for the "addstore" verb CertUtil -v -? -- Display all help text for all verbs 

首先要区分的是证书存储和证书数据库之间的区别。

从MSDN – 公钥基础设施

证书数据库

在CA或RA上保存证书请求和已颁发和吊销的证书和证书请求。

证书商店

保存本地计算机上颁发的证书和挂起或拒绝的证书请求。

这意味着-addstore在您想要将证书添加到本地存储时使用。

接下来是-installcert-importcert 。 关键是区分安装和导入的区别。

用于-importcert的文件必须是单个证书。

用于-installcert的文件可以是证书链(PKCS#7或X.509 v3)或单个证书。

最后,这意味着-installpfx将安装一个PFX(PKCS#12)证书或一个证书链。