言简意骇讲解什么是HTTPS

本文详细介绍了HTTPS中的公钥和私钥原理,以及TLS握手如何通过非对称加密协商对称密钥。重点讲解了公钥用于加密、私钥用于解密的过程,并揭示了CA机构在确保证书真实性和防止伪造攻击中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

估计很多人都知道HTTPS就是一种通过SSL/TLS加密后的HTTP协议,但是如何理解其中原理:

1.公钥和私钥

在HTTPS加密中使用了所谓的非对称加密技术,简单来说就是公钥和私钥,公钥只用来加密,但是公钥加密后的内容只能用私钥解密,具体为啥,这是密码学的内容,这里不多追溯,只需要记住下面两点:

  • 公钥:可以安全地公开,并用于加密数据。任何拥有公钥的人都可以使用它来加密信息,但只有拥有对应私钥的人才能解密。
  • 私钥:保密不公开,用于解密通过公钥加密的数据。

有了这两个我们就可以相对安全的通讯了,比如A生成了一对密钥(公钥和私钥),并将公钥发送给了B,那么B就可以利用这个公钥进行加密,然后A和B就可以快乐安全的通讯了,对吗?你肯定发现了,按照我这么说B只有公钥没有私钥,那么B怎么解密A的加密内容呢

2.密钥交换

  • 针对前面的问题,这里就的提提TLS握手内容了,不用怕,我简单说,
  • TLS握手,注意了不是TCP握手,
  • B开始与A进行TLS握手,B会告诉A,我能够使用那些对称加密协议,并生成一个随机数,发给A了
  • A收到后,选择了一个加密算法,并且也生成了一个随机数,同时还有自己的公钥一起发给B,是的这里说的公钥是上面提到非对称加密中的公钥

现在关键的来了

B在收到A的回复后,又一次生成了一个新的随机数,同时用A发过来的公钥对这个随机数进行加密发回给A,A当然能用私钥进行解密,没错,只有第3个随机数才用到了公钥加密私钥解密,这时候双方有了3个随机数,双方用这3个随机数通过前面约定的加密算法,生成了一个新的密钥,而这个密钥是对称的。

讲到这里,我们终于知道,B怎么解密A的加密内容,实际上B根本不需要A的私钥,这个公私钥只在双方协商新的对称密钥时用到了一次,其目的是防止,第三个随机数被黑客截获,因为黑客截获没有私钥是没办法获取第三个随机数,原来如此,经过上述复杂步骤,A和B终于可以快乐安全的通讯了,想多了,还有坑

3.CA机构

上面通讯步骤看似很安全了吧,错了,我举个例子,A在向B发送公钥被截获了怎么办,你可能会说截获就截获呗,他又没有私钥,没啥影响,OK,此时C截获了A和B之家通讯的公钥,然后自己悄悄生成个公钥和私钥,把这个公钥发给B,B傻乎乎的以为A发的公钥呢,傻乎乎对第三个随机数进行加密,发给了C,而C又利用截获的公钥加密后转发A,AB同时被骗,给这下好了,C可以完整无误的获得3个随机数,C也有了AB之间生成的对称加密,前功尽弃

如此你发现了把,这个公钥发过来也不能全信,那咋办,CA登场了,A生成了自己的公钥和私钥,其中的公钥必须去CA报备,当A发送公钥给B时,B就可以通过CA去验证该证书是否真实,有了CA这个保障,B就可以放心的对第三个随机数加密了,这时候你可能会说那C如果去申请了合法的证书,是不是仍然可以进行伪造攻击,是的有这个可能性,不过CA用了很多举措来防止这种情况发生,具体就不阐述了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值