HTTPS

基于TLS的HTTP

基于SSL/TLS的HTTP(Hyper Text Transfer Protocol over Secure Socket Layer,HTTPS),在TCP基础上建立TLS安全连接,经过TLS 安全连接实现对Web服务器的身份鉴别,浏览器和Web服务器之间传输的HTTP消息的保密性、完整性和源端鉴别.

HTTPS操作过程

浏览器鉴别Web服务器身份,但Web服务器无须鉴别浏览器身份。Web服务器为了证明自己的身份,需要向浏览器提供用于证明证书有效性的证书链。

 

   首先在浏览器与 Web 服务器之间建立 TCP 连接,该 TCP 连接 Web 服务器端的端口号是443,表明用于传输TLS记录协议消息。

   TLS经过4个阶段完成TLS安全连接建立过程,TLS安全连接建立过程中,浏览器完成对Web服务器的身份鉴别过程,浏览器和Web服务器之间完成压缩算法、加密算法、MAC算法、加密密钥、MAC密钥等安全参数的协商过程。成功建立TLS安全连接后,浏览器与 Web 服务器之间可以通过TLS安全连接实现 HTTP消息的安全传输过程。

HTTPS安全传输HTTP消息过程

建立TLS连接后,浏览器和Web服务器之间约定下述安全参数。

(1)加密算法:3DES。

(2)MAC算法:HMAC-SHA-1-160。

(3)浏览器 MAC密钥:K1(20B)。

(4)浏览器加密密钥:K11、K12、K13(3×8B,其中最高位不用)。

(5)Web服务器MAC密钥:K2(20B)。

(6)Web服务器加密密钥:K21、K22、K23(3×8B,其中最高位不用)。

(7)浏览器初始向量:IV1。

(8)Web服务器初始向量:IV2。

(9)发送序号:0。

(10)接收序号:0。

如果采用压缩算法的话,还需约定压缩算法类型、版本等。

    首先分段 HTTP消息,分段的目的是使其长度适合TLS记录协议的净荷长度。如果采用压缩算法,用压缩算法压缩分段后的数据,压缩后的数据段和数据的协议类型、压缩后的数据段长度、发送序号串接在一起,进行HMAC-SHA-1-160运算,得到160位的 MAC,MAC添加在压缩后的数据段的尾部,构成需要传输的明文,再对明文进行3DES加密运算,产生密文,密文作为TLS记录协议报文的净荷,加上TLS记录协议首部,构成TLS记录协议报文,经过TLS安全连接传输给Web服务器。

浏览器和Web服务器的初始发送、接收序号为0,每发送一个TLS记录协议报文,发送序号增1,每接收一个TLS记录协议报文,接收序号增1。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值