OCSP装订

维基百科,自由的百科全书
跳转至: 导航搜索

OCSP装订英语:OCSP Stapling),也称OCSP封套,是一个TLS证书状态查询扩展,作为在线证书状态协议的代替方法对X.509证书状态进行查询。[1]服务器在TLS握手时发送事先缓存的OCSP响应,用户只需验证该响应的有效性而不用再向数字证书认证机构(CA)发送请求。[2][3]

动机[编辑]

OCSP装订解决了在线证书协议(OCSP)中的大多数问题。[3]

如果CA向一个高流量网站颁发了证书,该网站的每一个访问者都会进行OCSP查询。因此使用在线证书协议时,高并发的请求会给CA的服务器带来很大的压力。[4]

由于必须和第三方(CA)建立连接,OCSP查询还会影响浏览器打开页面的速度并泄漏用户的隐私。[4]

此外,当OCSP查询无法得到响应时,浏览器将不得不选择是否在无法获取证书状态的情况下继续连接,而无论是继续连接还是关闭连接都会在安全性或可用性上做出让步。[5]

解决方案[编辑]

标准[编辑]

RFC 6066第8章中规定了TLS证书状态查询扩展的标准。

RFC 6961定义了多证书状态查询扩展,用于在TLS握手中发送多个证书的OCSP响应。

2013年4月提交的一个关于X509v3扩展字段的草案规定了

发展[编辑]

对OCSP装订的支持正在逐步落实。OpenSSLMozilla基金会的帮助下发布了支持OCSP装订的0.9.8g版本。


服务器端的支持情况:

Httpd:2.3.3[10]

Nginx:1.3.7[11]

IISWindows Server 2008[12][13]

HAProxy:1.5.0[13]

LiteSpeed Web Server:4.2.4[14]

F5 Networks BIG-IP:11.6.0[15]


浏览器的支持情况: Firefox:Firefox 26及以上。[16]

IEVista及以上的Windows。[17]

Chrome:Linux、Chrome OS、Vista及以上的Windows[18]


SMTP方面,Exim在客户端[19]和服务器端[20]都支持OCSP装订。

局限性[编辑]

OCSP装订可以降低OCSP验证的成本,特别针对有很多用户的大型网站。但是OCSP装订在同一时间只能发送一个OCSP响应,对于使用中级证书的证书链来说并不足够。[21][22]

这个问题由RFC 6961中提出的多证书状态查询扩展解决,添加了同时发送多个OCSP响应的支持。[23]

参考资料[编辑]

  1. ^ 1.0 1.1 Eastlake, D. Transport Layer Security (TLS) Extensions: Extension Definitions: Certificate Status Request. Internet Engineering Task Force (IETF). January 2011 [March 2, 2015]. 
  2. ^ 2.0 2.1 Prince, Matthew. OCSP Stapling: How CloudFlare Just Made SSL 30% Faster. CloudFlare, Inc. October 29, 2012 [March 2, 2015]. 
  3. ^ 3.0 3.1 3.2 Gibson, Steve. Security Certificate Revocation Awareness: The case for “OCSP Must-Staple”. Gibson Research Corporation. [March 2, 2015]. 
  4. ^ 4.0 4.1 4.2 A., Jesin. How To Configure OCSP Stapling on Apache and Nginx. Community Tutorials. Digital Ocean, Inc. June 12, 2014 [March 2, 2015]. 
  5. ^ 5.0 5.1 Keeler, David. OCSP Stapling in Firefox. Mozilla Security Blog. Mozilla Foundation. July 29, 2013 [March 2, 2015]. 
  6. ^ OCSP Stapling. GlobalSign Support. GMO GlobalSign Inc. August 1, 2014 [March 2, 2015]. 
  7. ^ P. Hallam-Baker, X.509v3 Extension: OCSP Stapling Required
  8. ^ P. Hallam-Baker X.509v3 TLS Feature Extension draft-hallambaker-tlsfeature-05
  9. ^ A. Langley, No, don't enable revocation checking, April 19, 2014.
  10. ^ Apache HTTP Server mod_ssl documentation - SSLUseStapling directive
  11. ^ nginx-announce mailing list - nginx-1.3.7
  12. ^ Duncan, Robert. Microsoft Achieves World Domination (in OCSP Stapling). Netcraft Ltd. [28 April 2014]. 
  13. ^ HAProxy website
  14. ^ Release Log - Litespeed Tech.
  15. ^ Release Note: BIG-IP LTM and TMOS 11.6.0
  16. ^ Improving Revocation - MozillaWiki, retrieved 2014-04-28
  17. ^ How Certificate Revocation Works. TechNet. Microsoft. 16 March 2012 [28 April 2014]. 
  18. ^ Issue 361820: Check For Server Certificate Revocation checkbox is confusing. Google Code. Google. 10 April 2014. 
  19. ^ The smtp transport, retrieved 2015-01-24
  20. ^ Main configuration, retrieved 2015-01-24
  21. ^ Mozilla NSS Bug 360420, Comment by Adam Langley
  22. ^ Mozilla NSS Bug 611836 - Implement multiple OCSP stapling extension
  23. ^ Pettersen, Yngve N. The Transport Layer Security (TLS) Multiple Certificate Status Request Extension. Internet Engineering Task Force. June 2013 [31 October 2014].