前端那些事系列之基础篇https(四)

HTTPS

	http是不加密的通信协议,所有信息明文传输,风险有信息会被第三方盗取、篡改,甚至冒充身份进行通信。https实现了加密通信,并具有校验机制、配备身份证书。HTTPS和TCP之间会有一个SSL层,以上所有过程都在SSL层中完成,比正常的http传输多了SSL握手过程和加密解密过程,会有一定的性能损耗。

信息加密

  • 对称加密
    只有一个密钥,运算速度很快,但是不够安全。
  • 非对称加密
    两个密钥。公钥和私钥,公钥可以任意分发,私钥保密。但是速度慢。

加密通信过程

服务端申请或注册ca证书,拿到证书也就是公钥、私钥对;再将公钥传输给客户端;客户端验证公钥没问题之后,会生成一个随机数用公钥加密之后传给服务端;服务端用私钥将公钥解密,就拿到了客户端的私钥也就是对称加密的密钥,双方传输的时候都用该私钥对内容进行加密。

中间人攻击

服务端向客户端发公钥;中间人截获公钥,并发送一个自己伪造的公钥发给客户端;客户端接收到后,用此公钥将自己的私钥加密发给服务器;中间人截获用自己的私钥将其解密并伪造假的密钥发给服务器;服务器用私钥获取到假密钥;双方开始用假密钥互相通信。
避免中间人攻击的方法就是服务器在发送给客户端的公钥中加ca证书。

认证CA证书

签名的过程,对证书明文信息进行hash,hash后的结果用私钥加密。校验的时候拿到证书内的hash算法对明文进行加密,再用公钥对签名解密对比两个相同就是可信的。

  • 证书颁发机构是否受客户端信任
  • 是否被吊销
  • 是否在有效期内
  • 校验对方是否存在证书的私钥
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值