OCSP装订
OCSP装订(英语:OCSP Stapling),正式名称为TLS证书状态查询扩展,可代替在线证书状态协议(OCSP)来查询X.509证书的状态。[1]服务器在TLS握手时发送事先缓存的OCSP响应,用户只需验证该响应的有效性而不用再向数字证书认证机构(CA)发送请求。[2][3]
动机
OCSP装订解决了在线证书协议中的大多数问题。[3]CA给网站颁发证书之后,网站的每个访问者都会进行OCSP查询。因此使用在线证书协议时,高并发的请求会给CA的服务器带来很大的压力。[4]同时由于必须和CA建立连接,OCSP查询还会影响浏览器打开页面的速度并泄漏用户隐私。[4]此外,当OCSP查询无法得到响应时,浏览器必须选择是否在无法确认证书状态的情况下继续连接,造成安全性和可用性二选一的困局。[5]
标准
RFC 6066 第8章中规定了TLS证书状态查询扩展的标准。
RFC 6961 定义了多证书状态查询扩展,允许TLS握手中发送多个证书的OCSP响应。
发展
对OCSP装订的支持正在逐步落实。OpenSSL在Mozilla基金会的协助下发布了支持OCSP装订的0.9.8g版本。
服务器端的支持情况:
软件名 | 版本 |
---|---|
Httpd | 2.3.3[6] |
Nginx | 1.3.7[7] |
IIS | Windows Server 2008[8] |
HAProxy | 1.5.0[9] |
LiteSpeed Web Server | 4.2.4[10] |
F5 Networks BIG-IP | 11.6.0[11] |
浏览器的支持情况:
软件名 | 版本 |
---|---|
Firefox | 26[12] |
IE | Vista及以上的Windows。[13] |
Chrome | Linux、Chrome OS、Vista及以上的Windows[14] |
局限性
OCSP装订可以降低OCSP验证的成本,特别针对有很多用户的大型网站。但是OCSP装订在同一时间只能发送一个OCSP响应,对有中级证书的证书链来说并不足够。[17][18]RFC 6961中提出的多证书状态查询扩展解决了这个问题,允许同时发送多个OCSP响应。[19]
参考资料
- ^ Eastlake, D. Transport Layer Security (TLS) Extensions: Extension Definitions: Certificate Status Request. Internet Engineering Task Force (IETF). January 2011 [March 2, 2015]. (原始内容存档于2016-10-18).
- ^ Prince, Matthew. OCSP Stapling: How CloudFlare Just Made SSL 30% Faster. CloudFlare, Inc. October 29, 2012 [March 2, 2015]. (原始内容存档于2016-07-12).
- ^ 3.0 3.1 Gibson, Steve. Security Certificate Revocation Awareness: The case for “OCSP Must-Staple”. Gibson Research Corporation. [March 2, 2015]. (原始内容存档于2016-04-15). 引用错误:带有name属性“Gibson-OCSP-Must-Staple”的
<ref>
标签用不同内容定义了多次 - ^ 4.0 4.1 A., Jesin. How To Configure OCSP Stapling on Apache and Nginx. Community Tutorials. Digital Ocean, Inc. June 12, 2014 [March 2, 2015]. (原始内容存档于2016-08-10). 引用错误:带有name属性“Digital-Ocean-Tutorial-OCSP-Stapling”的
<ref>
标签用不同内容定义了多次 - ^ Keeler, David. OCSP Stapling in Firefox. Mozilla Security Blog. Mozilla Foundation. July 29, 2013 [March 2, 2015]. (原始内容存档于2016-09-11).
- ^ Apache HTTP Server mod_ssl documentation - SSLUseStapling directive. [2016-08-27]. (原始内容存档于2016-08-27).
- ^ nginx-announce mailing list - nginx-1.3.7. [2016-08-27]. (原始内容存档于2015-05-31).
- ^ Duncan, Robert. Microsoft Achieves World Domination (in OCSP Stapling). Netcraft Ltd. [28 April 2014]. (原始内容存档于2016-06-09).
- ^ HAProxy website. [2016-08-27]. (原始内容存档于2016-08-26).
- ^ Release Log - Litespeed Tech (页面存档备份,存于互联网档案馆).
- ^ Release Note: BIG-IP LTM and TMOS 11.6.0. [2016-08-27]. (原始内容存档于2016-09-23).
- ^ Improving Revocation - MozillaWiki, retrieved 2014-04-28
- ^ How Certificate Revocation Works. TechNet. Microsoft. 16 March 2012 [28 April 2014]. (原始内容存档于2016-03-07).
- ^ Issue 361820: Check For Server Certificate Revocation checkbox is confusing. Google Code. Google. 10 April 2014 [2016-08-27]. (原始内容存档于2015-09-09).
- ^ The smtp transport (页面存档备份,存于互联网档案馆), retrieved 2015-01-24
- ^ Main configuration (页面存档备份,存于互联网档案馆), retrieved 2015-01-24
- ^ Mozilla NSS Bug 360420 (页面存档备份,存于互联网档案馆), Comment by Adam Langley
- ^ Mozilla NSS Bug 611836 - Implement multiple OCSP stapling extension. [2016-08-27]. (原始内容存档于2016-09-23).
- ^ Pettersen, Yngve N. The Transport Layer Security (TLS) Multiple Certificate Status Request Extension. Internet Engineering Task Force. June 2013 [31 October 2014]. (原始内容存档于2016-12-23).