那么 https 应该比 http 更安全(加密),那么为什么 https 不是到处都使用呢?它难道不会让网络变得更安全吗?既然它确实提高了安全性,为什么没有实施 https?
答案1
这次我忍不住要复制粘贴答案。请阅读这个详细的解释(我不是原作者,这里是链接至来源)。
有几个原因,首先让我解释一下区别:http 将您所做的一切都以计划文本的形式发送,以供任何人阅读。
https 对您执行的所有操作进行加密,这样除了收件人之外,没有人可以读取您输入的内容。
加密数据的问题在于,您不能只加密数据然后说只有雅虎才能读取。您和雅虎都必须拥有一个密钥,这样雅虎才能解密您发送的内容并加密私人内容供您阅读。
这是通过一种称为公钥的加密方案实现的。雅虎发布了一个公钥,这样每个人都可以加密只有雅虎才能读取的内容,就像一个单向密钥:你可以将内容打包并发送给雅虎,这样他们就可以使用私钥读取,但拥有公钥的人看不到你加密的内容。
因此,您打包了一个密钥,以便雅虎可以用来与您交谈,一切就绪了。
为什么所有的互联网通信都不是这样进行的,是因为所谓的中间人攻击及其解决方案。
如果您知道自己在做什么,那么假装自己是 yahoo.com 就很简单了。所以我假装是雅虎,所有您认为流向雅虎的流量都会流向我。您向我索要我的公钥,我会用我制作的假的公钥和私钥对回复,然后我向雅虎索要他们的公钥,而您所做的每一件事,我只是观察任何有趣的事情,例如信用卡等,而您对此一无所知。
我们通过使用所谓的证书颁发机构解决了这个问题。CA 是您付费的机构,可为您担保;Verisign 和 GoDaddy 是最大的机构。因此,每次您与亚马逊建立 https 连接时,您都会转到 CA,然后他们会返回亚马逊的公钥。一切都很顺利。除了这会大大减慢您的速度外,yahoo.com 必须每月向 CA 支付账单,而 joesmoh.com 必须经过大量繁琐步骤才能完成所有这些设置。
最后,我将回答你的问题:原因是如果仅使用 https,一切就会变得更加缓慢、昂贵和复杂。
另外,一旦互联网流量超出您的本地网络范围,试图从中获取信息就好比试图在高速公路上以每小时 500 英里的速度劫持某人的汽车。对于您典型的炸鸡食谱来说,安全性已经足够了。
答案很复杂,但你问了一个复杂的问题。