分类 ssl证书知识 下的文章

证书吊销列表(CRL)和在线证书状态协议(OCSP)是两种用于验证数字证书有效性的重要机制。

证书吊销列表(CRL)

  • CRL是PKI系统中的一个结构化数据文件,包含了证书颁发机构(CA)已经吊销的证书的序列号及其吊销日期。
  • CRL文件中还包含证书颁发机构信息、吊销列表失效时间和下一次更新时间、以及采用的签名算法等。
  • CRL的更新频率通常较低,这可能导致其信息可能不是最即时的。更新的频率取决于CA的政策,可能是每天一次或每月一次。
  • 由于CRL需要定期更新,这可能导致文件较大,下载和处理需要时间,特别是在处理许多证书时。

在线证书状态协议(OCSP)

  • OCSP提供了一种动态的证书状态检查方法。通过实时向CA发送请求,OCSP能够即时返回证书的状态,包括“正常”、“吊销”或“未知”。
  • 与CRL相比,OCSP请求和响应数据量较小,能够快速响应证书状态查询,且减少了带宽消耗。
  • OCSP服务由独立的OCSP服务器来提供服务,它为电子商务网站提供了一种实时检验数字证书有效性的途径,比下载和处理CRL的传统方式更快、更方便和更具独立性。
  • OCSP响应用ASN.1格式表示,包含响应状态和可选的响应结果。

总结来说,CRL是一种静态的、周期性更新的证书吊销列表,而OCSP提供了一种更为动态和实时的证书状态查询方式。OCSP在效率和实时性方面相较于CRL有明显优势,但也需要依赖于CA的在线服务。

  1. 证书颁发机构(CA)的信任
    SSL证书需要由浏览器信任的证书颁发机构颁发。这些CA的根证书被预设为信任,确保了证书的可信度。
  2. 证书链的完整性
    SSL证书需要证书链完整才可以得到浏览器的信任。如果证书链不完整,浏览器可能会显示安全警告。确保部署SSL证书时同时附上中级根证书,这样浏览器在同服务器握手时就能快速验证证书链。
  3. 域名匹配
    SSL证书绑定的域名必须与用户请求连接的网址一致。如果域名不匹配,浏览器会提示“不安全”并可能终止连接。
  4. 证书透明性
    浏览器会验证证书透明信息。如果证书中没有SCT列表字段,或者SCT列表字段中的日志签名信息不可信,则浏览器可能会显示“不安全”。
  5. 证书未被吊销
    浏览器在验证了SSL证书是可信根签发后,还会查验SSL证书是否被吊销,这是通过访问证书中的“CRL分发点”字段来获取证书吊销列表信息后验证证书序列号是否在证书吊销列表中。
  6. 证书未过期
    SSL证书有固定的有效期,一旦过期就需要续订。如果证书过期,浏览器会将其标记为可能受到安全威胁。
  7. 正确的配置
    SSL证书需要正确安装和配置在服务器上。配置错误可能导致浏览器显示安全警告。
  8. 系统时间同步
    客户端和服务器的系统时间需要保持一致,否则可能会导致SSL连接失败。
  9. 支持国密算法(如果适用):
    对于需要支持国密算法的环境,浏览器和服务器都需要支持国密SSL证书,以确保符合当地的法规和安全要求。

收到SSL证书错误消息“不受信任”可能有以下几个原因:

  1. 证书颁发机构不正规:如果SSL证书不是由浏览器信任的证书颁发机构(CA)颁发的,浏览器会将其视为不受信任的证书。解决这个问题的方法是购买并安装来自公认的证书颁发机构的SSL证书。
  2. 证书已过期:SSL证书有一定的有效期,如果证书过期,浏览器就会提示证书不被信任。这时需要检查SSL证书是否已过期或接近到期日期,并及时与证书服务提供商联系进行续费。
  3. 证书信息不准确:SSL证书中包含关键的网站信息,如域名、组织名称、组织地址等。如果这些信息与实际情况不符,浏览器就会提示证书不被信任。因此在申请SSL证书时,需要确保证书信息填写正确。
  4. 安全连接存在漏洞:有时网站虽然使用了SSL证书,但仍然存在其他安全漏洞,例如弱密码、不安全的加密算法或配置错误等。这些漏洞可能导致浏览器判定网站不安全,进而提示证书不受信任。
  5. 证书部署错误:如果网站的SSL证书没有正确部署,在访问时也会有一些风险提示,比如HTTPS页面中存在HTTP资源的调用,部分版本的浏览器就会提示该页面存在不安全因素。
  6. 证书被篡改:当SSL证书被黑客篡改后,浏览器也会提示证书不被信任。对此,网站运营者需要定期更新证书,并加强对私钥的保护和监控。
  7. 证书链不完整:如果只安装了最终的域名证书,而没有安装中间证书导致证书链不完整,系统就无法回溯根证书的颁发机构,就会被系统判定为不可信任。
  8. 域名不匹配:如果SSL证书上的域名与正在访问的域名不匹配,浏览器会显示一个错误消息。
  9. 操作系统时间不正确:如果操作系统时间不正确,则可能会导致SSL证书错误。

  1. 加密算法不同

    • 国密SSL证书采用的是我国自主研发的SM2公钥密码算法,这种算法基于椭圆曲线密码理论改进而来,其加密强度比RSA算法更高。
    • RSA算法是目前国际上应用最为普遍的加密算法,通常使用2048位密钥长度,而国密SSL证书的SM2算法普遍采用256位密钥长度,但其单位安全强度比RSA算法更高。
  2. 安全性能不同

    • 随着计算机能力的提升以及对因子分解技术的改进,对低位数RSA密钥的攻击破解已成为可能。而SM2算法单位安全强度比传统RSA算法更高,可以使用更短的密钥长度提供比RSA算法更高的安全强度。根据研究,160位的SM2加密安全性相当于1024位RSA加密,224位SM2加密安全性相当于2048位RSA加密。
  3. 传输速度不同

    • 在通信过程中,更长的密钥意味着必须收发更多的数据来验证连接。SM2算法采用更短的密钥长度,只需要使用更少的网络负载和计算能力就能完成数据收发验证,大大减少SSL握手时间,缩短网站响应时间。经测试,在Web服务器中采用SM2算法,服务器新建并发处理响应速度比RSA算法快十几倍。
  4. 拥有自主可控权

    • 传统SSL证书主要依赖于国外CA机构,而国密SSL证书由国内机构签发,采用自主可控的加密算法,无需担心被国外断供的风险。

不同国家对于SSL证书的信息收集要求存在差异,主要体现在以下几个方面:

  1. 法律和监管框架

    • 在美国,数字签名在联邦和州层面享有完全的法律效力和可执行性,依据《全球和国家商业电子签名法》(ESIGN Act)。
    • 欧盟通过eIDAS法规定义了电子识别方法、信托服务和电子交易标准,保证了安全数字签名的跨境法律有效性。
    • 在中国,根据国家电子签名法,使用具有SM2算法的证书颁发机构证书申请的数字签名具有法律效力和可执行性。
  2. 技术标准和算法

    • 中国推动国密算法标准,包括SM2、SM3和SM4,这些算法在SSL证书中有应用,以提高信息安全水平。
    • 其他国家可能更广泛使用国际通用的加密算法,如RSA,这在国密算法尚未被所有主流浏览器广泛兼容的情况下尤为重要。
  3. 数据保护和隐私法规

    • 不同国家对于数据跨境流动有着不同的法律要求,这影响了SSL证书的数据传输和处理方式。
  4. 证书颁发机构(CA)

    • 国密SSL证书的颁发机构是由中国国家密码管理局认证的,如CFCA,而国际上主流的SSL证书由全球性的CA如Symantec、DigiCert等颁发。
  5. 证书的兼容性和公网支持度

    • 国密SSL证书主要在中国国内使用,尤其是在政府和金融领域,而国际上主流的SSL证书适用于全球范围。
  6. 证书的适用范围和特殊要求

    • 国密SSL证书适用于对安全系数要求极高的政府机构和金融领域,而国际上的SSL证书适用于更广泛的全球网站和应用程序。