揭秘https的加密传输过程

对比HTTP的明文传输,HTTPS采用加密。那么,为什么要加密?

防止信息泄露,加密的数据被截取后,是无法直接阅读的。

对称加密算法

加密和解密都使用同一个密钥。网站向客户端传递秘钥,之后,二者之间通讯使用密钥加密、解密。

对称加密算法的漏洞

客户端向网站索要密钥时,这个密钥可能被别人获得,从而解密出交互的信息。

非对称加密算法

有一组钥匙,公钥和私钥。公钥可以解开私钥的加密,私钥可以解开公钥的加密,算法耗时很长。网站向客户端传递公钥,之后,网站向客户端发送的数据使用私钥加密;客户端使用公钥解密,客户端发送数据使用公钥解密,网站使用私钥解密。

非对称加密算法+对称加密算法

非对称加密很耗时,所以往往采用非对称加密+对称加密来传输数据。

网站向客户端传递自己的公钥,客户端随机生成一个密钥,并使用公钥加密,传给网站,网站使用私钥解密,得到密钥,之后双方使用密钥进行对称加密。

非对称加密算法的漏洞

浏览器向网站索要公钥时,可能被截取,换成第三方的公钥,即客户端并不确定提供公钥的网站是否是自己请求的网站。 

CA机构颁发证书

营业执照是企业的标志,想要核对信息,去工商局查一下就能得到结果。

CA机构可以为网站申请数字证书,可以比作营业执照,上面有证书持有者信息,公钥信息,hash算法等。

网站向CA机构申请证书时,CA机构会为其分配一组公钥和私钥。客户端首次请求网站时,网站传递证书,客户端可以根据证书判断是否是目标网站的证书。

当然光有证书还不行,我们需要证书的签名,来确定证书没有被串改。将证书内容hash后,使用网站的私钥进行加密,生成签名。

客户端使用证书中的公钥,解密签名,然后使用证书中的hash算法计算证书内容,如果和解密后的签名一致,证明数据没有被篡改。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值