windows - 代码签名证书的问题

标签 windows visual-studio firefox x509certificate code-signing

我的老板最近从 Comodo 购买了代码签名证书。我现在的任务是使用强名称 key 签名使其在 VS2013 中工作,也许也作为构建后事件。他在同一台计算机(Windows 8.1 64 位笔记本电脑)上并使用相同的浏览器(Firefox 59.0.1 64 位)完成了整个购买过程。我已转到 Firefox 中的“菜单”>“选项”>“隐私和安全”>“查看证书”>“您的证书”屏幕,并选择了刚刚购买的证书。然后,我单击“备份”按钮,将其命名为通用名称,例如 companyCert.p12(除了 .p12,我没有任何其他选择或设置),单击“保存”按钮,然后输入 16 个字符的字母数字(大写)和小写)密码,然后单击“确定”按钮。我收到弹出窗口说导出成功。

当我尝试通过 mmc 将 .p12 或扩展名重命名的 .pfx 文件导入本地用户的个人或受信任的发布者证书存储时(甚至尝试了 certmgr.msc 只是为了好玩),我得到:

The password you entered is incorrect.

当我尝试使用 .p12 文件在 VS 中构建程序集以对它们进行强名称 key 签名时,我得到:

The key file 'absolute\path\to\cert\companyCert.p12' does not contain a public/private key pair.

当我尝试执行相同的操作但将扩展名重命名为 .pfx 时,系统会提示我输入密码,因此我输入密码,然后得到:

An error occurred during encode or decode operation.

因此,我尝试使用命令提示符(以管理员身份运行)导入 .p12/.pfx,并使用以下行导入 CertUtil:

certutil -importPFX -user "absolute\path\to\cert\companyCert.p12" AT_SIGNATURE

系统提示我输入密码,我输入了密码,并得到:

CertUtil: -importPFX command FAILED: 0x80092002 (-2146885630 CRYPT_E_BAD_ENCODE)

CertUtil: An error occurred during encode or decode operation.

适用于 .p12 和 .pfx。

我已经尝试了所有这些好几次,以防万一我的密码或其他错误。我尝试返回 Firefox 证书,而不是单击“备份”

“您的证书”屏幕中的按钮,单击代码签名证书,然后单击“查看...”,这会将我带到“证书查看器”窗口,在其中单击“详细信息”选项卡,然后单击

“导出”按钮。在那里,我可以选择 X.509 证书:

PEM (.crt/.pem, both with or without chain)

DER (.der without chain)

and PKCS#7 (.p7c with or without chain)

在尝试进行代码签名时,我做了除 .der 以外的所有操作,但无济于事。我能够将其中一些导入到本地用户的个人和受信任的发布商商店中,但我无法获取任何

他们在 VS 中进行强名称 key 签名。

据我了解,我需要能够在操作系统级别的本地存储中获取私钥/公钥证书,而不仅仅是 Firefox 的浏览器级别,然后我应该能够按照我需要的方式导出。那是对的吗?如果不是,请有人告诉我该怎么做才能让它发挥作用。

最佳答案

就我而言,我可以在运行 Windows 10 的桌面中成功导入 .pfx 文件,但当我尝试在运行 Windows Server 2016 的服务器中导入证书时,我收到错误“您输入的密码不正确” “

解决问题:

  1. 从我的 Windows 中删除证书(使用管理控制台/证书)
  2. 将原始 .pfx 证书导入到我的台式计算机
  3. 导出证书(使用管理控制台/证书)

诀窍是:

导出证书时,选择加密方式“TripleDES-SHA1”。

关于windows - 代码签名证书的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49393702/

相关文章:

java - 在 Java (Windows) 中杀死目录中的所有进程

visual-studio - 在 Visual Studio 中创建 WiX Bootstrapper 时是否需要 2 个 WIX 项目?

jQuery fadeTo 在 Firefox/Chrome 中不起作用

visual-studio - 如何在 Visual Studio TFS 中自动化构建和部署?

google-chrome - Firefox 中的 CSS 三 Angular 形问题

forms - Firefox 操作保存的表单数据

ruby-on-rails - 我正在 Linux 上使用 Ruby on Rails、mongoDB、JSON 开发一个网站。 Windows/Mac 用户是否会遇到任何基于平台的问题?

windows - Cygwin:Git stash -> 无法保存当前索引状态

c++ - 调用 IWebBrowser2->get_Document 时出现错误 800706B5

你能用visual studio强制替换C中的一些功能吗?