2024年5月31日发(作者:)

HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安

全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的

安全基础是SSL,因此加密的详细内容请看SSL。

它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP

数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一

个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司进行,提供

了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付

方面。

它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返

回网络上传送回的结果。HTTPS实际上应用了Netscape的安全套接字层(SSL)作为HTTP

应用层的子层。(HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进

行通信。)SSL使用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。

HTTPS和SSL支持使用X.509数字认证,如果需要的话用户可以确认发送者是谁。

也就是说它的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传

输的安全;另一种就是确认网站的真实性。

限制

它的安全保护依赖浏览器的正确实现以及服务器软件、实际加密算法的支持.

一种常见的误解是“银行用户在线使用https:就能充分彻底保障他们的银行卡号不被

偷窃。”实际上,与服务器的加密连接中能保护银行卡号的部分,只有用户到服务器之间

的连接及服务器自身。并不能绝对确保服务器自己是安全的,这点甚至已被攻击者利用,

常见例子是模仿银行域名的钓鱼攻击。少数罕见攻击在网站传输客户数据时发生,攻击者

尝试窃听数据于传输中。

商业网站被人们期望迅速尽早引入新的特殊处理程序到金融网关,仅保留传输码

(transaction number)。不过他们常常存储银行卡号在同一个数据库里。那些数据库和服

务器少数情况有可能被未授权用户攻击和损害。

TLS 1.1之前

这段仅针对TLS 1.1之前的状况。因为SSL位于http的下一层,并不能理解更高层协

议,通常SSL服务器仅能颁证给特定的IP/端口组合。这是指它经常不能在虚拟主机(基于

域名)上与HTTP正常组合成HTTPS。

这一点已被更新在即将来临的TLS 1.1中—会完全支持基于域名的虚拟主机。

SSL介绍

SSL (Secure Socket Layer)

为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密

(Encryption)技术,可确保数据在网络

上之传输过程中不会被截取及窃听。目前一般通用之规格为40 bit之安全标准,美国

则已推出128 bit之更高安全