【问题标题】:A certificate's basic constraint extension has not been observed [duplicate]未观察到证书的基本约束扩展[重复]
【发布时间】:2017-09-21 15:47:58
【问题描述】:

我是证书新手,我有一个驱动程序,我必须进行数字签名才能测试,否则 Windows 会阻止它。我使用他们提供的教程创建了一个自签名测试证书,用于使用 OpenSSL 进行测试。

我已将证书安装到信任它所需的所有 Windows 商店,在签署驱动程序文件后一切正常,直到我重新启动我的电脑,之后它说我的证书由于此问题不再进行数字签名: 尚未观察到证书的基本约束扩展

我认为这可能是因为我的测试证书不再有效,所以我创建了一个新证书,即使在重新启动我的电脑之前也是同样的问题。我尝试了很多可以在教程中找到的选项,我遇到了同样的问题,我不愿意仅仅为了几个测试而购买证书。

我可以做些什么来解决这个问题?这些是我的证书中的基本约束:Subject Type=CA Path Length Constraint=None

如果您有解决方案,请向我发布说明,说明我必须逐步进行操作,我是 OpenSSL 和证书的新手。

补充资料:

这是我开始时尝试遵循的教程,所有其他教程都给了我相同的结果/问题:CLICK ME (LINK)

这是问题的图片CLICK ME (LINK)

我没有足够的声誉来使用嵌入式图像。

【问题讨论】:

  • 您的基本约束扩展未正确配置。 Subject Type 必须是 End Entity,而不是 CA
  • 我该怎么做?就像我已经指出的那样,我是新手,需要指导。

标签: openssl ssl-certificate x509certificate self-signed


【解决方案1】:

不在 Windows 上使用 OpenSSL,但我知道如何在 PowerShell 中执行此操作。打开 PowerShell 控制台并复制/粘贴以下命令:

$cert = New-SelfSignedCertificate -Type CodeSigningCert `
-Subject "CN=My Subject" `
-CertStoreLocation cert:\currentuser\my `
-KeyAlgorithm rsa `
-Provider "Microsoft Enhanced Cryptographic Provider v1.0"

Export-PfxCertificate -Cert $cert -FilePath "c:\temp\mycert.pfx" -Password (ConvertTo-SecureString -String "Password" -Force -AsPlainText)

此命令将生成适用于代码签名目的的自签名证书。

【讨论】:

  • 转到certmgr.msc,展开 Perdonal\Certificates,选择您的证书,右键单击所有任务 -> 导出。按照导出向导将证书导出到 PFX
  • 如何生成文件的私钥、证书和 pfx?我以前从未使用过 PowerShell
  • 谢谢,如果我成功了,我会将此标记为答案
  • 查看我的更新。添加了以编程方式将证书导出到 PFX 文件的行。出现提示时,输入密码以保护 PFX。
  • 我如何指定有效期和有效期?
猜你喜欢
  • 1970-01-01
  • 2013-02-28
  • 2023-01-19
  • 2011-09-30
  • 1970-01-01
  • 2019-10-16
  • 2011-08-13
  • 2017-03-29
相关资源
最近更新 更多