fbpx
维基百科

在线证书状态协议

在线证书状态协议(英語:Online Certificate Status Protocol,缩写:OCSP)是一个用于获取X.509数字证书撤销状态的网际协议[1]RFC 6960中定义,作为证书吊销列表(CRL)的替代品解决了在公开密钥基础建设(PKI)中使用证书吊销列表而带来的多个问题。[2]协议数据传输过程中使用ASN.1编码,并通常建立在HTTP协议上,此消息类型分为“请求消息”和“响应消息”,因此致OCSP服务器被称为“OCSP响应端”。

与证书吊销列表(CRL)的比较

  • 由于OCSP响应包含的信息少于典型的证书吊销列表(CRL),因此减轻了网络和客户端资源的负担;[3]
  • 由于OCSP响应端需要解析的信息更少,客户端提供的用于解析消息的库函数更简单;[4]
  • OCSP中,服务器可以记录主机在何时验证过特定的证书,由于请求不强制加密,相关信息可能被第三方获取。[1]

基本PKI应用场景

  1. Alice与Bob使用Carol颁发的数字证书。该场景中Carol是证书颁发机构(CA);
  2. Alice向Bob发送其由Carol颁发的数字证书,并发出请求建立连接的申请;
  3. Bob担心Alice的私钥已经泄露,因此向Carol发送“OCSP请求”消息并包含Alice的数字证书序列号;
  4. Carol的OCSP响应端从Bob发送的消息中获取数字证书的序列号,并在CA数据库中查找该数字证书的状态;
  5. Carol向Bob发送由其私钥签名的消息“OCSP响应”,并包含证书状态正常的信息;
  6. 由于Bob事先已经安装了Carol的数字证书,因此Bob使用Carol的公钥验证消息签名并获取到Alice的数字证书状态信息;
  7. Bob决定与Alice进行通信。

协议信息

由数字证书认证机构运行的OCSP服务器会对请求返回经过其签名的证书状态信息,分别为:正常(Good)、已廢除(Revoked)、未知(Unknown)。如果有无法处理的请求,则会返回一个错误码。

OCSP支持附加扩展以便对PKI解决方案进行定制,如在响应中包含SCT信息来验证相关证书是否通过了公开审计。[5]

OCSP在极端情况下可能遭受重放攻击。中间人可以捕获一个已签名的“正常”响应,并在之后的一段时间重放这个响应来通过客户端的验证,即使在这段时间里证书可能已经被撤销。[6]为避免这个问题,OCSP允许客户端在请求中加入一个随机数并要求服务器在响应中包含这个随机数。但是由于大多数客户端和服务器还没有支持这个扩展,OCSP响应的较长有效期可能给重放攻击留下机会并借此威胁整个验证系统。

OCSP可以支持多于一级的CA结构。请求被转发到对应的服务器节点并查询状态,从而无须使用根CA的OCSP请求。

用于签名响应的私钥不需要和签发证书的私钥相同。证书的签发者可能委托其他机构响应OCSP请求。在这种情况下,服务器的证书必须由签发者进行验证,并在扩展内容中包括相关信息标识该证书可用于OCSP响应的签名。

隐私问题

OCSP对于部分用户来讲会造成隐私问题,因为OCSP必须和一个第三方建立连接(即使这个第三方是被软件提供商信任的)以验证证书状态。对此,OCSP装订是一个无须和CA发生连接的替选方案。

批评

OCSP不是缓解HTTPS服务器私钥泄露的可靠方法,因为攻击者窃取私钥后,再滥用私钥进行中间人攻击(MITM)时,往往也会干扰客户的OCSP查询,因为如果查询超时,大多数客户端将忽略OCSP,导致OCSP机制失效无法及时查询到证书吊销信息。[7]

浏览器支持情况

对于OCSP在主流浏览器中的支持:

需要注意的是,Google Chrome在2012年由于延迟和隐私问题禁用了OCSP的默认启用,[13]改用自己的更新机制来同步证书撤销情况。[14]

开源实现

目前的开源实现有:

  • XiPKI,基于OSGi,使用Java语言编写。[15]

参见

参考链接

  1. ^ 1.0 1.1 A., Jesin. . Community Tutorials. Digital Ocean, Inc. 2014-06-12 [2015-03-02]. (原始内容存档于2016-08-10). 
  2. ^ . GlobalSign Support. GMO GlobalSign Inc. 2014-08-01 [2015-03-02]. (原始内容存档于2019-06-08). 
  3. ^ Gibson, Steve. Security Certificate Revocation Awareness: The case for "OCSP Must-Staple". Gibson Research Corporation. [2015-03-02]. (原始内容于2016-04-15). 
  4. ^ Keeler, David. OCSP Stapling in Firefox. Mozilla Security Blog. Mozilla Foundation. 2013-07-29 [2015-03-02]. (原始内容于2016-09-11). 
  5. ^ Certificate Transparency. How Certificate Transparency Works. Certificate Transparency. [2016-06-09]. (原始内容于2016-06-10) (英语). 
  6. ^ RFC 6960, section 5, Security Considerations
  7. ^ No, Don't Enable Revocation Checking. 2014-04-19 [2014-04-24]. (原始内容于2016-08-12). 
  8. ^ . Microsoft. [2016-05-09]. (原始内容存档于2017-12-19). 
  9. ^ . Mozilla. 2007-10-01 [2010-07-18]. (原始内容存档于2016-03-15). 
  10. ^ Wisniewski, Chester. . Sophos英语Sophos. 2011-03-26 [2011-03-26]. (原始内容存档于2020-10-31). 
  11. ^ Pettersen, Yngve Nysæter. . Opera Software. 2006-11-09 [2010-01-08]. (原始内容存档于2010-02-10). 
  12. ^ Pettersen, Yngve Nysæter. . Opera Software. 2008-07-03 [2010-01-08]. (原始内容存档于2008-11-18). 
  13. ^ Langley, Adam. Revocation checking and Chrome's CRL. 2012-02-05 [2015-01-30]. (原始内容于2012-02-12). 
  14. ^ "Chrome does certificate revocation better" (页面存档备份,存于互联网档案馆), April 21, 2014, Larry Seltzer, ZDNet
  15. ^ . Github.com. [2016-01-24]. (原始内容存档于2017-08-31). 

外部链接

  • 开放式目录计划中和Public Key Infrastructure: Operational Protocols相关的内容
  • [rfc:2560 RFC 2560, X.509 Internet Public Key Infrastructure Online Certificate Status Protocol - OCSP]
  • [rfc:4806 RFC 4806, Online Certificate Status Protocol (OCSP) Extensions to IKEv2]
  • [rfc:6960 RFC 6960, X.509 Internet Public Key Infrastructure Online Certificate Status Protocol - OCSP]
  • Online Certificate Status Checking(页面存档备份,存于互联网档案馆
  • CertificateRevocationCheck, Check the OCSP status for a certificate(页面存档备份,存于互联网档案馆

在线证书状态协议, 英語, online, certificate, status, protocol, 缩写, ocsp, 是一个用于获取x, 509数字证书撤销状态的网际协议, 在rfc, 6960中定义, 作为证书吊销列表, 的替代品解决了在公开密钥基础建设, 中使用证书吊销列表而带来的多个问题, 协议数据传输过程中使用asn, 1编码, 并通常建立在http协议上, 此消息类型分为, 请求消息, 响应消息, 因此致ocsp服务器被称为, ocsp响应端, 目录, 与证书吊销列表, 的比较, 基本pki应用场. 在线证书状态协议 英語 Online Certificate Status Protocol 缩写 OCSP 是一个用于获取X 509数字证书撤销状态的网际协议 1 在RFC 6960中定义 作为证书吊销列表 CRL 的替代品解决了在公开密钥基础建设 PKI 中使用证书吊销列表而带来的多个问题 2 协议数据传输过程中使用ASN 1编码 并通常建立在HTTP协议上 此消息类型分为 请求消息 和 响应消息 因此致OCSP服务器被称为 OCSP响应端 目录 1 与证书吊销列表 CRL 的比较 2 基本PKI应用场景 3 协议信息 4 隐私问题 5 批评 6 浏览器支持情况 7 开源实现 8 参见 9 参考链接 10 外部链接与证书吊销列表 CRL 的比较 编辑由于OCSP响应包含的信息少于典型的证书吊销列表 CRL 因此减轻了网络和客户端资源的负担 3 由于OCSP响应端需要解析的信息更少 客户端提供的用于解析消息的库函数更简单 4 OCSP中 服务器可以记录主机在何时验证过特定的证书 由于请求不强制加密 相关信息可能被第三方获取 1 基本PKI应用场景 编辑Alice与Bob使用Carol颁发的数字证书 该场景中Carol是证书颁发机构 CA Alice向Bob发送其由Carol颁发的数字证书 并发出请求建立连接的申请 Bob担心Alice的私钥已经泄露 因此向Carol发送 OCSP请求 消息并包含Alice的数字证书序列号 Carol的OCSP响应端从Bob发送的消息中获取数字证书的序列号 并在CA数据库中查找该数字证书的状态 Carol向Bob发送由其私钥签名的消息 OCSP响应 并包含证书状态正常的信息 由于Bob事先已经安装了Carol的数字证书 因此Bob使用Carol的公钥验证消息签名并获取到Alice的数字证书状态信息 Bob决定与Alice进行通信 协议信息 编辑由数字证书认证机构运行的OCSP服务器会对请求返回经过其签名的证书状态信息 分别为 正常 Good 已廢除 Revoked 未知 Unknown 如果有无法处理的请求 则会返回一个错误码 OCSP支持附加扩展以便对PKI解决方案进行定制 如在响应中包含SCT信息来验证相关证书是否通过了公开审计 5 OCSP在极端情况下可能遭受重放攻击 中间人可以捕获一个已签名的 正常 响应 并在之后的一段时间重放这个响应来通过客户端的验证 即使在这段时间里证书可能已经被撤销 6 为避免这个问题 OCSP允许客户端在请求中加入一个随机数并要求服务器在响应中包含这个随机数 但是由于大多数客户端和服务器还没有支持这个扩展 OCSP响应的较长有效期可能给重放攻击留下机会并借此威胁整个验证系统 OCSP可以支持多于一级的CA结构 请求被转发到对应的服务器节点并查询状态 从而无须使用根CA的OCSP请求 用于签名响应的私钥不需要和签发证书的私钥相同 证书的签发者可能委托其他机构响应OCSP请求 在这种情况下 服务器的证书必须由签发者进行验证 并在扩展内容中包括相关信息标识该证书可用于OCSP响应的签名 隐私问题 编辑OCSP对于部分用户来讲会造成隐私问题 因为OCSP必须和一个第三方建立连接 即使这个第三方是被软件提供商信任的 以验证证书状态 对此 OCSP装订是一个无须和CA发生连接的替选方案 批评 编辑OCSP不是缓解HTTPS服务器私钥泄露的可靠方法 因为攻击者窃取私钥后 再滥用私钥进行中间人攻击 MITM 时 往往也会干扰客户的OCSP查询 因为如果查询超时 大多数客户端将忽略OCSP 导致OCSP机制失效无法及时查询到证书吊销信息 7 浏览器支持情况 编辑对于OCSP在主流浏览器中的支持 Internet Explorer Windows Vista的IE7上正式加入OCSP支持 由系统的CryptoAPI实现 8 Firefox 从Firefox 3开始默认开启 9 Safari 从Mac OS X 10 7开始默认开启 在此之前则必须手动配置 10 Opera 从8 0 11 12 开始默认开启 需要注意的是 Google Chrome在2012年由于延迟和隐私问题禁用了OCSP的默认启用 13 改用自己的更新机制来同步证书撤销情况 14 开源实现 编辑目前的开源实现有 XiPKI 基于OSGi 使用Java语言编写 15 参见 编辑证书吊销列表 数字证书认证机构 OCSP装订 证书透明度参考链接 编辑 1 0 1 1 A Jesin How To Configure OCSP Stapling on Apache and Nginx Community Tutorials Digital Ocean Inc 2014 06 12 2015 03 02 原始内容存档于2016 08 10 OCSP Stapling GlobalSign Support GMO GlobalSign Inc 2014 08 01 2015 03 02 原始内容存档于2019 06 08 Gibson Steve Security Certificate Revocation Awareness The case for OCSP Must Staple Gibson Research Corporation 2015 03 02 原始内容存档于2016 04 15 Keeler David OCSP Stapling in Firefox Mozilla Security Blog Mozilla Foundation 2013 07 29 2015 03 02 原始内容存档于2016 09 11 Certificate Transparency How Certificate Transparency Works Certificate Transparency 2016 06 09 原始内容存档于2016 06 10 英语 RFC 6960 section 5 Security Considerations No Don t Enable Revocation Checking 2014 04 19 2014 04 24 原始内容存档于2016 08 12 What s New in Certificate Revocation in Windows Vista and Windows Server 2008 Microsoft 2016 05 09 原始内容存档于2017 12 19 Mozilla Bug 110161 Enable OCSP by Default Mozilla 2007 10 01 2010 07 18 原始内容存档于2016 03 15 Wisniewski Chester Apple users left to defend themselves against certificate attacks Sophos 英语 Sophos 2011 03 26 2011 03 26 原始内容存档于2020 10 31 Pettersen Yngve Nysaeter Introducing Extended Validation Certificates Opera Software 2006 11 09 2010 01 08 原始内容存档于2010 02 10 Pettersen Yngve Nysaeter Rootstore newsletter Opera Software 2008 07 03 2010 01 08 原始内容存档于2008 11 18 Langley Adam Revocation checking and Chrome s CRL 2012 02 05 2015 01 30 原始内容存档于2012 02 12 Chrome does certificate revocation better 页面存档备份 存于互联网档案馆 April 21 2014 Larry Seltzer ZDNet xipki xipki GitHub Github com 2016 01 24 原始内容存档于2017 08 31 外部链接 编辑开放式目录计划中和Public Key Infrastructure Operational Protocols相关的内容 rfc 2560 RFC 2560 X 509 Internet Public Key Infrastructure Online Certificate Status Protocol OCSP rfc 4806 RFC 4806 Online Certificate Status Protocol OCSP Extensions to IKEv2 rfc 6960 RFC 6960 X 509 Internet Public Key Infrastructure Online Certificate Status Protocol OCSP Processor com April 2009 article about Online Certificate Status Protocol Online Certificate Status Checking 页面存档备份 存于互联网档案馆 CertificateRevocationCheck Check the OCSP status for a certificate 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title 在线证书状态协议 amp oldid 72153453, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。