https协议与优化

https协议

https:安全的超文本协议,是一个安全的通信通道,基于http开发,它在http上有有加了一层处理加密信息的模块,服务端和客户端的信息传输都会通过TLS进行加密,以保证通信安全。
在这里插入图片描述

SSL/TLS协议

1、版本演替过程。
TLS协议,最原始版本是ssl1.0、ssl2.0、ssl3.0、因为完整性效验,秘钥协商过程有重大问题,发展到了TLS协议1.0、1.2、1.3(还在草案中)。

2、ssl/TLS协议为网络提供了以下两种功能。
建立一个安全的连接:对其中传输的数据提供加密保护,防止被中间人嗅探到可见明文;对数据提供完整性校验,防止传输的数据被中间人修改。
建立一个可信的连接:对连接双方的实体提供身份认证。

3、SSL/TLS基本思路
采用公钥加密法(Public-key cryptography),也可以叫非对称加密(asymmetric cryptography),(1)客户端先向服务器端索要公钥,然后用公钥加密信息,服务器收到密文后,用自己的私钥解密。
(2)双方协商成“对话秘钥”
(3)双方采用“对话秘钥”进行加密通信。
(1)(2)为握手过程

4、握手过程
客户端先向服务端发出请求,向服务端提供支持的TLS版本,随机数,支持的加密方法列表,支持的压缩方法。
服务端向客户端发起响应,确认使用的加密信息协议版本,随机数,确认使用的加密算法,确认压缩方法。
服务端开始发送带有公钥的证书给客户端
客户端验证,是否可信,没问题继续通信。
双方就采用这些随机数协商出对话秘钥,
握手完成之后就采用对话秘钥进行加密通信。

5、TLS1.2和1.3握手区别
TLS1.3的握手流程于TLS1.2最大的区别,就在于TLS1.3提前走了加密,TLS1.2需要在双方明文交换了key exchange信息之后才会走加密通道(握手过程是不进行加密),而TLS1.3在sever端发送玩ServerHello信息之后就会走加密通道,就连证书信息也是加了密的。
TLS 1.3 改进增加了“不额外增加网络延时”模式(0-RTT)。对于近期访问过的站点,可以直接发送有用的数据,而不需要经过握手。
TLS 1.2 中通过 1 个 RTT 即可完成会话恢复,TLS 1.3在回复会话时只需要0-RTT

6、开启TLS1.3
OpenSSL支持
近期OpenSSL也发布了一篇新文章Using TLS1.3 With OpenSSL。
该文章介绍了新版本的开发进展及一些需要注意事项。
OpenSSL 1.1.1 版本发布,该版本将支持 TLSv1.3,将完全兼容于原有1.1.0,理论上,只要应用支持 1.1.0,那么可以直接升级到 1.1.1。将自动支持 TLSv1.3,而不需要做任何其他操作。
编译的时候,需增加选项enable-tls1_3
./config --prefix=/usr/local/openssl1.1.1 --openssldir=/usr/local/openssl1.1.1 --libdir=lib shared -Wl,-R,’$(LIBRPATH)’ -Wl,–enable-new-dtags enable-ec_nistp_64_gcc_128 enable-tls1_3

nginx配置
ssl_protocols TLSv1.2 TLSv1.3 ;

7、系统版本对TLS的支持
在这里插入图片描述
8、握手时间
在这里插入图片描述
从上表可以看出来,TLS1.2协议的性能要明显优于1.1和1.0。Cipher suite 方面,ECDHE-RSA-AES128-GCM-SHA256和ECDHE-RSA-AES128-SHA256性能最好。ECDHE-RSA-CHACHA20-POLY1305理论上讲对性能提升有较大帮助,但是由于iOS平台暂时不支持该类算法,因此从数据样本上无法体现优势
https://cloud.tencent.com/developer/article/1005610 算法参考。

7、优化访问速度的方案
1、配置TLS1.2
2、算法采用ECDHE-RSA-AES128-GCM-SHA256
3、提升TCP连接的复用率
4、提升ssl session的复用率
5、减少页面中请求域名的数量
优化方案参考链接:https://cloud.tencent.com/developer/article/1042733

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值