RFC2818 TLS之上的HTTP

发表于 4年以前  | 总阅读数:518 次
组织:中国互动出版网(http://www.china-pub.com/)
RFC文档中文翻译计划(http://www.china-
pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
译者:陶志荣(dick_hw  jerrytaowx@263.net)
译文发布时间:2001-6-5
版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必
须保留本文档的翻译及版权信息。



Network Working Group                                       E. Rescorla
Request for Comments: 2818                                   RTFM, Inc.
Category: Informational                                        May 2000


TLS之上的HTTP
(RFC2818 HTTP Over TLS)

本备忘录的状态
本文档为Internet社区提供信息。它不指定一个Internet标准。本备忘录的发布不
受任何限制。
版权声明
Copyright (C) The Internet Society (2000).  All Rights Reserved.

摘要
本文档描述如何在Internet上使用TLS保护HTTP连接。当前的通行做法是HTTP
位于SSL(TLS的前辈)之上,通过使用一个不同的服务器端口来区别受保护的通信
量和不安全的通信。本文档描述了使用TLS的实践。一个伴侣文档描述一种在正常的
HTTP端口之上使用HTTP/TLS[RFC2817]的方法。

目录
1.  介绍	2
相关术语	2
2. TLS之上的HTTP	2
2.1.  初始化连接	2
2.2. 关闭连接	2
2.2.1 客户行为	3
2.2.2 服务器行为	3
2.3端口号	3
2.4 URI格式	4
3 端标识	4
3.1 服务器身份	4
3.2 客户身份	4
参考	5
安全考虑	5
作者地址:	5
版权说明	6
致谢	6


1.  介绍
HTTP[RFC2616]最初是在INTERNET上不用密码的应用。但随着HTTP的敏感性应
用日益增加,对安全性的要求也随之增加。SSL及其后继TLS[RFC2246]提供了面向通
道的安全性。本文介绍怎样在TLS之上应用HTTP。
相关术语
在本文中的关键字“必须”,“必须不”,“要求”,“应该”,“不应该”和“可
能”的解释见[RFC2119]。
2. TLS之上的HTTP
从概念上讲,HTTP/TLS非常简单。简单地在TLS上应用HTTP,如同在TCP上应
用HTTP一样。 
2.1.  初始化连接
作为HTTP客户的代理同时也应作为TLS的客户。它应该向服务器的适当端口发
起一个连接,然后发送TLS ClientHello来开始TLS握手。当TLS握手完成,客户可
以初始化第一个HTTP请求。所有的HTTP数据必须作为TLS的“应用数据”发送。正
常的HTTP行为,包括保持连接,应当被遵守。
2.2. 关闭连接
	TLS提供了安全关闭连接的机制。当收到一个有效的关闭警告时,实现上必须保证在
这个连接上不再接收任何数据。TLS的实现在关闭连接之前必须发起交换关闭请求。TLS
实现可能在发送关闭请求后,不等待对方发送关闭请求即关闭该连接,产生一个“不完全
的关闭”。注意:这样的实现可能选择重用该对话。这只应在应用了解(典型的是通过检
测HTTP的消息边界)它已收到所有它关心的数据的情况下进行。

如[RFC2246]中所定义的,任何未接收一个有效的关闭警告(一个“未成熟关闭”)
即接到一个连接关闭必须不重用该对话。注意:一个未成熟请求并不质疑数据已被安全地
接收,而仅意味着接下来数据可能被截掉。由于TLS并不知道HTTP的请求/响应边界,为
了解数据截断是发生在消息内还是在消息之间,有必要检查HTTP数据本身(即Content-
Length头)。

2.2.1 客户行为
由于HTTP使用连接关闭表示服务器数据的终止,客户端实现上对任何未成熟的关闭
要作为错误对待,对收到的数据认为有可能被截断。在某些情况下HTTP协议允许客户知
道截断是否发生,这样如果客户收到了完整的应答,则在遵循“严出松入[RFC1958]”的
原则下可容忍这类错误,经常数据截断不体现在HTTP协议数据中;有两种情况特别值得
注意:
一个无Content-Length头的HTTP响应。在这种情况下数据长度由连接关闭请求通
知,我们无法区分由服务器产生的未成熟关闭请求及由网络攻击者伪造的关闭请求。

一个带有有效Content-Length头的HTTP响应在所有数据被读取完之前关闭。由于
TLS并不提供面向文档的保护,所以无法知道是服务器对Content-Length计算错误还是攻
击者已截断连接。
以上规则有一个例外。当客户遇到一个未成熟关闭时,客户把所有已接收到的数据同
Content-Length头指定的一样多的请求视为已完成。

客户检测到一个未完成关闭时应予以有序恢复,它可能恢复一个以这种方式关闭的
TLS对话。
客户在关闭连接前必须发送关闭警告。未准备接收任何数据的客户可能选择不等待服
务器的关闭警告而直接关闭连接,这样在服务器端产生一个不完全的关闭。

2.2.2 服务器行为
RFC2616允许HTTP客户在任何时候关闭连接,并要求服务器有序地恢复它。特别是,
服务器应准备接收来自客户的不完全关闭,因为客户往往能够判断服务器数据的结束。服
务器应乐于恢复以这种方式关闭的TLS对话。

实现上注意:在不使用永久连接的HTTP实现中,服务器一般期望能通过关闭连接通
知数据的结束。但是,当Content-Length被使用时,客户可能早已发送了关闭警告并断
开了连接。

服务器必须在关闭连接前试图发起同客户交换关闭警告。服务器可能在发送关闭警告
后关闭连接,从而形成了客户端的不完全关闭。
2.3端口号
HTTP服务器期望最先从客户收到的数据是Request-Line production。TLS服务器期
望最先收到的数据是ClientHello。因此,一般做法是在一个单独的端口上运行
HTTP/TLS,以区分是在使用哪种协议。当在TCP/IP连接上运行HTTP/TLS时,缺省端口是
443。这并不排除HTTP/TLS运行在其它传输上。TLS只假设有可靠的、面向连接的数据
流。

2.4 URI格式
HTTP/TLS和HTTP的URI不同,使用协议描述符https而不是http。使用HTTP/TLS
的一个URI例子是:
https://www.example.com/~smith/home.html

3 端标识
3.1 服务器身份
通常,解析一个URI产生HTTP/TLS请求。结果客户得到服务器的主机名。若主机名
可用,为防止有人在中间攻击,客户必须把它同服务器证书信息中的服务器的身份号比较
检查。
若客户有相关服务器标志的外部信息,主机名检查可以忽略。(例如:客户可能连接
到一个主机名和IP地址都是动态的服务器上,但客户了解服务器的证书信息。)在这种
情况下,为防止有人攻击,尽可能缩小可接受证书的范围就很重要。在特殊情况下,客户
简单地忽略服务器的身份是可以的,但必须意识到连接对攻击是完全敞开的。
若dNSName类型的subjectAltName扩展存在,则必须被用作身份标识。否则,在证
书的Subject字段中必须使用Common Name字段。虽然使用Common Name是通常的做法,
但不受赞成,而Certification Authorities被鼓励使用dNSName。
使用[RFC2459]中的匹配规则进行匹配。若在证书中给定类型的身份标识超过一个
(也就是,超过一个dNSName和集合中的相匹配),名字可以包括通配符*表示和单个域
名或其中的一段相匹配。例如:*.a.com和foo.a.com匹配但和bar.foo.a.com不匹配。
f*.com和foo.com匹配但和bar.com不匹配。
在某些情况下,URI定义的不是主机名而是IP地址。在这种情况下,证书中必须有
iPAddress subjectAltName字段且必须精确匹配在URI中的IP地址。
若主机名和证书中的标识不相符,面向用户的客户端必须或者通知用户(客户端可以
给用户机会来继续连接)或终止连接并报证书错。自动客户端必须将错误记录在适当的审
计日志中(若有的话)并应该终止连接(带一证书错)。自动客户端可以提供选项禁止这种检
查,但必须提供选项使能它。
注意,在很多情况下URI本身是从不可信任的源得到的。以上描述的检查并未提供对
危害源的攻击的保护。例如,若URI是从一个未采用HTTP/TLS的HTML页面得到的,某个
人可能已在中间已替换了URI。为防止这种攻击,用户应仔细检查服务器提供的证书是否
是期望的。
3.2 客户标识
典型情况下,服务器并不知道客户的标识是什么也就无法检查(除非有合适的CA证
书)。若服务器知道的话(通常是在HTTP和TLS之外的源得到的),它应该象上面描述的那
样检查。
参考
   [RFC2459] Housley, R., Ford, W., Polk, W. and D. Solo, "Internet
             Public Key Infrastructure: Part I: X.509 Certificate and
             CRL Profile", RFC 2459, January 1999.

   [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., 
Masinter,
             L., Leach, P. and T. Berners-Lee, "Hypertext Transfer
             Protocol, HTTP/1.1", RFC 2616, June 1999.

   [RFC2119] Bradner, S., "Key Words for use in RFCs to indicate
             Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2246] Dierks, T. and C. Allen, "The TLS Protocol", RFC 2246,
             January 1999.

   [RFC2817] Khare, R. and S. Lawrence, "Upgrading to TLS Within
             HTTP/1.1", RFC 2817, May 2000.

安全考虑
整个文档是关于安全的。
作者地址:
   Eric Rescorla
   RTFM, Inc.
   30 Newell Road, #16
   East Palo Alto, CA 94303

   Phone: (650) 328-8631
   EMail: ekr@rtfm.com
  

版权说明
   Copyright (C) The Internet Society (2001).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain 
it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph 
are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on 
an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

致谢
Funding for the RFC Editor function is currently provided by the Internet 
Society.
RFC2818      HTTP Over TLS                                                                       TLS之上的HTTP


1
RFC文档中文翻译计划
 相关推荐

刘强东夫妇:“移民美国”传言被驳斥

京东创始人刘强东和其妻子章泽天最近成为了互联网舆论关注的焦点。有关他们“移民美国”和在美国购买豪宅的传言在互联网上广泛传播。然而,京东官方通过微博发言人发布的消息澄清了这些传言,称这些言论纯属虚假信息和蓄意捏造。

发布于:8月以前  |  808次阅读  |  详细内容 »

博主曝三大运营商,将集体采购百万台华为Mate60系列

日前,据博主“@超能数码君老周”爆料,国内三大运营商中国移动、中国电信和中国联通预计将集体采购百万台规模的华为Mate60系列手机。

发布于:8月以前  |  770次阅读  |  详细内容 »

ASML CEO警告:出口管制不是可行做法,不要“逼迫中国大陆创新”

据报道,荷兰半导体设备公司ASML正看到美国对华遏制政策的负面影响。阿斯麦(ASML)CEO彼得·温宁克在一档电视节目中分享了他对中国大陆问题以及该公司面临的出口管制和保护主义的看法。彼得曾在多个场合表达了他对出口管制以及中荷经济关系的担忧。

发布于:8月以前  |  756次阅读  |  详细内容 »

抖音中长视频App青桃更名抖音精选,字节再发力对抗B站

今年早些时候,抖音悄然上线了一款名为“青桃”的 App,Slogan 为“看见你的热爱”,根据应用介绍可知,“青桃”是一个属于年轻人的兴趣知识视频平台,由抖音官方出品的中长视频关联版本,整体风格有些类似B站。

发布于:8月以前  |  648次阅读  |  详细内容 »

威马CDO:中国每百户家庭仅17户有车

日前,威马汽车首席数据官梅松林转发了一份“世界各国地区拥车率排行榜”,同时,他发文表示:中国汽车普及率低于非洲国家尼日利亚,每百户家庭仅17户有车。意大利世界排名第一,每十户中九户有车。

发布于:8月以前  |  589次阅读  |  详细内容 »

研究发现维生素 C 等抗氧化剂会刺激癌症生长和转移

近日,一项新的研究发现,维生素 C 和 E 等抗氧化剂会激活一种机制,刺激癌症肿瘤中新血管的生长,帮助它们生长和扩散。

发布于:8月以前  |  449次阅读  |  详细内容 »

苹果据称正引入3D打印技术,用以生产智能手表的钢质底盘

据媒体援引消息人士报道,苹果公司正在测试使用3D打印技术来生产其智能手表的钢质底盘。消息传出后,3D系统一度大涨超10%,不过截至周三收盘,该股涨幅回落至2%以内。

发布于:8月以前  |  446次阅读  |  详细内容 »

千万级抖音网红秀才账号被封禁

9月2日,坐拥千万粉丝的网红主播“秀才”账号被封禁,在社交媒体平台上引发热议。平台相关负责人表示,“秀才”账号违反平台相关规定,已封禁。据知情人士透露,秀才近期被举报存在违法行为,这可能是他被封禁的部分原因。据悉,“秀才”年龄39岁,是安徽省亳州市蒙城县人,抖音网红,粉丝数量超1200万。他曾被称为“中老年...

发布于:8月以前  |  445次阅读  |  详细内容 »

亚马逊股东起诉公司和贝索斯,称其在购买卫星发射服务时忽视了 SpaceX

9月3日消息,亚马逊的一些股东,包括持有该公司股票的一家养老基金,日前对亚马逊、其创始人贝索斯和其董事会提起诉讼,指控他们在为 Project Kuiper 卫星星座项目购买发射服务时“违反了信义义务”。

发布于:8月以前  |  444次阅读  |  详细内容 »

苹果上线AppsbyApple网站,以推广自家应用程序

据消息,为推广自家应用,苹果现推出了一个名为“Apps by Apple”的网站,展示了苹果为旗下产品(如 iPhone、iPad、Apple Watch、Mac 和 Apple TV)开发的各种应用程序。

发布于:8月以前  |  442次阅读  |  详细内容 »

特斯拉美国降价引发投资者不满:“这是短期麻醉剂”

特斯拉本周在美国大幅下调Model S和X售价,引发了该公司一些最坚定支持者的不满。知名特斯拉多头、未来基金(Future Fund)管理合伙人加里·布莱克发帖称,降价是一种“短期麻醉剂”,会让潜在客户等待进一步降价。

发布于:8月以前  |  441次阅读  |  详细内容 »

光刻机巨头阿斯麦:拿到许可,继续对华出口

据外媒9月2日报道,荷兰半导体设备制造商阿斯麦称,尽管荷兰政府颁布的半导体设备出口管制新规9月正式生效,但该公司已获得在2023年底以前向中国运送受限制芯片制造机器的许可。

发布于:8月以前  |  437次阅读  |  详细内容 »

马斯克与库克首次隔空合作:为苹果提供卫星服务

近日,根据美国证券交易委员会的文件显示,苹果卫星服务提供商 Globalstar 近期向马斯克旗下的 SpaceX 支付 6400 万美元(约 4.65 亿元人民币)。用于在 2023-2025 年期间,发射卫星,进一步扩展苹果 iPhone 系列的 SOS 卫星服务。

发布于:8月以前  |  430次阅读  |  详细内容 »

𝕏(推特)调整隐私政策,可拿用户发布的信息训练 AI 模型

据报道,马斯克旗下社交平台𝕏(推特)日前调整了隐私政策,允许 𝕏 使用用户发布的信息来训练其人工智能(AI)模型。新的隐私政策将于 9 月 29 日生效。新政策规定,𝕏可能会使用所收集到的平台信息和公开可用的信息,来帮助训练 𝕏 的机器学习或人工智能模型。

发布于:8月以前  |  428次阅读  |  详细内容 »

荣耀CEO谈华为手机回归:替老同事们高兴,对行业也是好事

9月2日,荣耀CEO赵明在采访中谈及华为手机回归时表示,替老同事们高兴,觉得手机行业,由于华为的回归,让竞争充满了更多的可能性和更多的魅力,对行业来说也是件好事。

发布于:8月以前  |  423次阅读  |  详细内容 »

AI操控无人机能力超越人类冠军

《自然》30日发表的一篇论文报道了一个名为Swift的人工智能(AI)系统,该系统驾驶无人机的能力可在真实世界中一对一冠军赛里战胜人类对手。

发布于:8月以前  |  423次阅读  |  详细内容 »

AI生成的蘑菇科普书存在可致命错误

近日,非营利组织纽约真菌学会(NYMS)发出警告,表示亚马逊为代表的电商平台上,充斥着各种AI生成的蘑菇觅食科普书籍,其中存在诸多错误。

发布于:8月以前  |  420次阅读  |  详细内容 »

社交媒体平台𝕏计划收集用户生物识别数据与工作教育经历

社交媒体平台𝕏(原推特)新隐私政策提到:“在您同意的情况下,我们可能出于安全、安保和身份识别目的收集和使用您的生物识别信息。”

发布于:8月以前  |  411次阅读  |  详细内容 »

国产扫地机器人热销欧洲,国产割草机器人抢占欧洲草坪

2023年德国柏林消费电子展上,各大企业都带来了最新的理念和产品,而高端化、本土化的中国产品正在不断吸引欧洲等国际市场的目光。

发布于:8月以前  |  406次阅读  |  详细内容 »

罗永浩吐槽iPhone15和14不会有区别,除了序列号变了

罗永浩日前在直播中吐槽苹果即将推出的 iPhone 新品,具体内容为:“以我对我‘子公司’的了解,我认为 iPhone 15 跟 iPhone 14 不会有什么区别的,除了序(列)号变了,这个‘不要脸’的东西,这个‘臭厨子’。

发布于:8月以前  |  398次阅读  |  详细内容 »