Https通讯原理

网络 网络管理
Https是基于安全目的的Http通道,其安全基础由SSL层来保证。最初由netscape公司研发,主要提供了通讯双方的身份认证和加密通信方法。现在广泛应用于互联网上安全敏感通讯。

 

 

 Https是什么?

Https是基于安全目的的Http通道,其安全基础由SSL层来保证。最初由netscape公司研发,主要提供了通讯双方的身份认证和加密通信方法。现在广泛应用于互联网上安全敏感通讯。

Https与Http主要区别

协议基础不同:Https在Http下加入了SSL层,

通讯方式不同:Https在数据通信之前需要客户端、服务器进行握手(身份认证),建立连接后,传输数据经过加密,通信端口443。

Http传输数据不加密,明文,通信端口80。

SSL协议基础

SSL协议位于TCP/IP协议与各种应用层协议之间,本身又分为两层:

SSL记录协议(SSL Record Protocol):建立在可靠传输层协议(TCP)之上,为上层协议提供数据封装、压缩、加密等基本功能。

SSL握手协议(SSL Handshake Procotol):在SSL记录协议之上,用于实际数据传输前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

SSL协议通信过程

(1) 浏览器发送一个连接请求给服务器;服务器将自己的证书(包含服务器公钥S_PuKey)、对称加密算法种类及其他相关信息返回客户端;

(2) 客户端浏览器检查服务器传送到CA证书是否由自己信赖的CA中心签发。若是,执行4步;否则,给客户一个警告信息:询问是否继续访问。

(3) 客户端浏览器比较证书里的信息,如证书有效期、服务器域名和公钥S_PK,与服务器传回的信息是否一致,如果一致,则浏览器完成对服务器的身份认证。

(4) 服务器要求客户端发送客户端证书(包含客户端公钥C_PuKey)、支持的对称加密方案及其他相关信息。收到后,服务器进行相同的身份认证,若没有通过验证,则拒绝连接;

(5) 服务器根据客户端浏览器发送到密码种类,选择一种加密程度***的方案,用客户端公钥C_PuKey加密后通知到浏览器;

(6) 客户端通过私钥C_PrKey解密后,得知服务器选择的加密方案,并选择一个通话密钥key,接着用服务器公钥S_PuKey加密后发送给服务器;

(7) 服务器接收到的浏览器传送到消息,用私钥S_PrKey解密,获得通话密钥key。

(8) 接下来的数据传输都使用该对称密钥key进行加密。

上面所述的是双向认证 SSL 协议的具体通讯过程,服务器和用户双方必须都有证书。由此可见,SSL协议是通过非对称密钥机制保证双方身份认证,并完成建立连接,在实际数据通信时通过对称密钥机制保障数据安全性

责任编辑:林琳 来源: 中国黑客联盟
相关推荐

2022-03-22 09:16:24

HTTPS数据安全网络协议

2019-08-20 14:01:22

HTTPSSSL协议

2023-05-29 08:12:38

2020-01-16 17:00:06

HTTPS计算机网络前端

2009-02-19 13:28:08

远程通讯技术及原理Java

2019-12-11 11:04:22

HTTPS HTTP网络协议

2019-12-03 10:58:58

HTTPS证书网站

2021-10-25 09:41:04

架构运维技术

2021-12-16 14:45:09

https架构服务端

2021-05-19 15:40:54

HTTPS前端加密

2017-05-04 16:35:45

2020-12-04 06:37:19

HTTPS原理安全

2022-10-13 13:21:58

系统httpsCharles

2018-12-25 08:00:00

2024-03-15 09:06:48

HTTPSCA私钥

2009-08-13 14:21:04

.NET内存映射文件

2018-11-30 09:03:55

HTTP缓存Web

2019-12-04 09:18:40

HTTPS协议HTTP

2017-05-24 09:43:42

2020-05-13 08:10:32

HTTPS安全网站
点赞
收藏

51CTO技术栈公众号