HTTPS TLS 握手

整体原理:

通讯双方在身份验证的基础上,协商出一次性的、随机的秘钥

身份验证: PKI公钥基础设施

协商、随机: TLS中间件生成一次性的、随机的秘钥,DH系列协议基于非对称加密技术协商出密钥

 

使用分组对称加密算法,基于有限长度的秘钥将任意长度的明文加密传输

AES算法, 密钥位数:16字节,24字节,32字节

分组工作模式

 

PKI身份验证

证书签发过程

  1. 服务方S向第三方机构CA提供其自己生成的公钥,用户信息给认证机构
  2. CA机构对用户信息取hash值, 然后用自己的私钥对hash值加密, 把机密后的信息和过期时间,CA机构的公钥,服务方S的公钥,CA机构信息等打包给服务方S

证书验签过程

  1. 客户端C向服务器S发送请求,S返回证书文件
  2. 客户端C把证书文件分为服务方S信息和CA机构密文

  对于服务方S的信息,取hash值

  对于CA机构密文,使用CA机构公钥进行解密,解密后也是一串数字

  1. 客户端C比较两串数字是否相等, 以及证书是否过期等
  2. 客户端会内置信任 CA 的证书信息(包含公钥),如果CA不被信任,则找不到对应 CA 的证书,证书也会被判定非法。

 

HTTPS通信过程(简单版)

  1. 客户端C向服务端发送一个请求,服务端S反馈证书和公钥给客户端C
  2. 客户端对证书进行校验,确认服务端身份是否合法
  3. 校验成功后,客户端C生成一个随机串,然后使用服务端S的公钥进行加密,然后发送给服务器S
  4. 服务器S使用私钥进行解密,然后把解密后的数据作为密钥进行对称加密,与客户端进行通信
  5. 客户端也使用此随机生成的密钥进行对称加密与服务端通信。

 

RSA非对称加密

先生成公钥,再生成私钥

问题

为什么不一直使用非对称进行加密,而是在类似握手之后开始使用对称加密算法进行https通信:

非对称加密的消耗和所需的计算以及时间远比对称加密消耗要大,所以在握手和认证之后,服务器和客户端就开始按照约定的随机串,对后续的数据传输进行加密。

 

特点:

非对称加密相比对称加密更加安全

非对称加密算法对加密内容的长度有限制

CA数字证书作用之一是公钥分发

数字签名的签发过程是私钥加密,公钥解密

 

公钥加密,私钥解密, 私钥签名,公钥验签?

RSA 加密方案和 RSA 签名方案是不同的。既然是加密,那肯定是不希望别人知道我的消息,所以只有我才能解密,所以可得出公钥负责加密,私钥负责解密;同理,既然是签名,那肯定是不希望有人冒充我发消息,只有我才能发布这个签名,所以可得出私钥负责签名,公钥负责验证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值