Windows .pfx 文件中的证书具有 EKU 问题



我在phonegap中开发了一个应用程序,现在我想为Windows Phone发布它。但众所周知,自Windows 10推出以来,我们必须制作一个.pfx文件来对应用程序进行签名。

我已经使用 OpenSSL 创建了一个证书,当我尝试使用该密钥构建我的应用程序时,我收到此错误:

错误 - 您的 Windows 签名密钥必须具有 EKU(增强型密钥用法( "代码签名"的属性

我不知道到底是什么意思。谁能帮我解决这个问题?

EKU(增强型密钥用法(是证书扩展,用于确定证书的用途。对于其他应用程序进行签名,Windows 希望证书包含代码签名 EKU 扩展。

我想您使用的是自签名证书。可以使用以下命令生成 pfx 文件,该文件将包含供你使用的证书。虽然我不确定自签名证书是否可用于在 Windows 应用商店中推送应用程序

首先,将以下内容保存在文件名"code_signing"中。此文件是证书的配置文件。更改"我的 dn"下的字段

[ req ]
prompt             = no
distinguished_name = my dn
[ my dn ]
commonName = secure.example.com
countryName = XX
localityName = XXX
organizationName = Org Name
organizationalUnitName = BU Name
stateOrProvinceName = YY
emailAddress = mail@example.com
name = name
surname = surName
givenName = name
[code_signing]
extendedKeyUsage = 1.3.6.1.5.5.7.3.3

最后一行扩展的密钥用法 = 1.3.6.1.5.5.7.3.3 指定代码签名的 EKU。现在使用以下命令使用上面的配置文件生成私钥和证书

openssl req -x509 -config code_signing -extensions 'code_signing' -nodes -days 365 -newkey rsa:2048 -keyout private.key -out certificate.crt

现在使用生成的 private.key 和 certificate.crt 生成 pfx 文件

openssl pkcs12 -export -out codeSigning.pfx -inkey private.key -in certificate.crt

相关内容

  • 没有找到相关文章

最新更新