HTTPS

HTPP缺点:
  • 明文通讯,容易被窃听
  • 不验证通信方身份,中间通信的过程可以伪装
  • 无法保证报文的完整性,中途可能发生篡改

HTTPS

超文本传输安全协议(个人理解),HTTPS=HTTP+SSL/TLS,TLS是SSL的升级版,HTTPS就是通过他们来保证传输的安全,那既然安全,是不是就是传输的信息不被拦截呢?不是,是在传输的时候经过加密算法加密,即使让你截获了,你也看不懂!!!


HTTP和HTTPS区别
  • http开头—https开头
  • 端口80—端口443
  • 明文传输—加密传输

TLS处于TCP/IP模型的那一层呢?

TCP/IP模型分四层(盗图╮(╯▽╰)╭阮一峰大神的):

英文捉急,我来翻译一下,从上到下:应用层、传输层、网络层、网络接入层(字面翻译

TLS处于应用层和传输层之间,看图:
这里写图片描述


握手过程

这里写图片描述

这里需要解释一波,因为每个人画的图都不太一样,所以这里我讲下我的理解,当然是在各位大神的基础上:(~2333

  • 客户端这边发起请求,其中有协议版本(如:TLS.x)、生成一个随机数、支持的加密算法、压缩方法。
  • 服务器,确认加密协议是否支持、生成随机数、确认加密方法(如:RAS)、RSA公钥放入CA证书,私钥自己保留
  • 客户端校验证书,如果有问题,页面发出警告;若通过,生成随机数用公钥加密,这个随机数就是以后传输数据要用的加密秘钥,我们通过非对称加密公钥(如:RSA)进行加密,传给服务端
  • 服务端,用自己保留的私钥,解密公钥加密过得随机数,解密后就是以后通讯用的对称加密密钥

客户端怎么校验证书的

纳尼!不知道什么是CA证书?你看下你网页左上角地址栏是不是有把锁,点开看下:

这里写图片描述

我说一个待会要用的:CA公钥,当然也有CA私钥,但不在客户端。校验证书其实就是校验数字签名的过程。

数字签名的过程:待签名内容->hash->数字摘要->CA私钥加密->数字签名
待签名内容:就是你看到的一部分证书信息。

校验:
1、数字签名->CA公钥解密->数字摘要A
2、待签名内容->hash->数字摘要B
3、对比A和B是否相等

你会发现其实步骤1就是数字签名的逆操作~(~手动滑稽

参考资料:

coodoing
阮一峰
Zane

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值