首先,您需要遵守CA浏览器EV指南:
这些其他事项很容易遵守,因为它们要么已经需要DV证书,要么您可以更新openssl配置以添加那些DV证书不需要或禁止的内容。
在这些额外的信息中,有一些是可选的,但以下3个与DN有关的信息不是可选的,因此您必须将这些信息添加到主题的DN中。创建CSR时,您可以使用openssl添加它们。例如:
openssl req -config openssl-EV.cnf -new -days 365 -pubkey -key key.pem -subj "/businessCategory=Private/serialNumber=5157550/jurisdictionC=US/CN=fenyo.net/O=FenyoNet/C=FR" -nodes > csr.pem
重要的部分是对于EV证书,以下内容必须包含:
/businessCategory=Private/serialNumber=5157550/jurisdictionC=US
。必须包含这3个必需属性(businessCategory、serialNumber和jurisdictionC)在DN中。但是openssl可能不知道businessCategory和jurisdictionC的OID。因此,像这样填写openssl配置文件的new_oids部分以进行补充:
[ new_oids ]
businessCategory = 2.5.4.15
jurisdictionC = 1.3.6.1.4.1.311.60.2.1.3
在CSR中具有这些属性是不够的,因为您拥有自己的CA,而CA根据CA策略过滤和删除CN的某些属性。您可能正在运行类似于此的内容来签署证书:
openssl ca -verbose -in csr.pem -extensions v3_ca -out newcert.pem -config openssl-EV.cnf
这一步将会过滤掉在你的CSR主题DN中添加的额外属性,如果你的openssl配置文件没有专门为EV证书设计。因此,你必须更改openssl配置文件以使这些属性保留在签名证书中。为了达到这个目的,在openssl配置文件的CA部分中找到策略字段,例如policy_match,并转到相应的部分(在本例中为[policy_match]),并在该部分中添加以下条目(不要删除该部分中已有的内容):
[ policy_match ]
businessCategory = optional
serialNumber = optional
jurisdictionC = optional
这将使“openssl ca”输出这些属性,如果在CSR中找到它们。
现在,请注意遵守这些CA浏览器EV指南是
不够的。许多浏览器添加其他需求。例如,CA浏览器EV指南验证使用CRL而不是OCSP的EV证书(CA Brower说:
如果证书未在authorityInformationAccess扩展中指定OCSP响应器位置,则订阅证书中必须存在cRLDistribution Point扩展。)。但相反,Firefox添加了许多其他规则,包括OCSP响应器的可用性。
Firefox执行多个测试以确定服务器证书是否为有效的EV证书。如果证书通过这些测试,Firefox将显示新的EV UI元素。具体来说,证书必须通过以下所有测试。
这些规则来自
https://wiki.mozilla.org/CA:EV_Revocation_Checking。
除了EV特定的测试,服务器证书必须通过所有DV证书所需的测试。Firefox 3中使用的证书验证引擎(NSS加密库)必须能够找到一个有效的证书链,该链从服务器证书延伸到Firefox附带的EV批准根证书之一。服务器证书必须包含正好一个EV策略扩展(OID)。服务器证书可以包含一个或多个策略扩展,但不能包含多个EV策略扩展。中间证书必须隐式或显式地允许在服务器证书中列出的EV策略OID。Firefox 3将使用OCSP协议测试服务器证书的吊销状态。服务器证书必须包含一个包含使用HTTP协议的OCSP URI的权威信息访问(AIA)扩展。Firefox必须能够与给定的OCSP服务器完成OCSP请求和响应事务。当OCSP服务器连接失败时,Firefox将服务器证书视为无效以进行EV处理。这对于Firefox会话中每个服务器证书的第一次检查都是正确的。Firefox使用易失性缓存来减少执行的OCSP事务数量。Firefox必须能够验证接收到的OCSP响应。响应必须确认服务器证书未被吊销。OCSP必须在应用程序中启用,这是Firefox使用的默认配置。此时Firefox不会按需下载CRL。OCSP还必须适用于中间证书。
未通过的OCSP响应将导致不给予EV处理。
因此,要获得绿色栏,您必须像之前所说的那样更新openssl配置,并修改您的CA组织以添加OCSP响应者和其他浏览器需要识别您的服务器作为EV站点的内容。对于您这种拥有CA和PKI的人,Mozilla创建了一个在线站点来检查所有这些EV要求:
https://tls-observatory.services.mozilla.com/static/ev-checker.html 在此网站上: 您输入您的服务器名称 您输入您选择的EV扩展名(通常为2.23.140.1.1) 您以PEM格式输入签署您的EV证书的根证书 然后该网站将进行测试并告诉您哪些是正确的,哪些是错误的。请注意,截至今天(2018年8月2日),该网站速度非常慢。希望它很快就能恢复正常。