最易懂的https原理

如需转载请评论或简信,并注明出处,未经允许不得转载

目录

前言

网上讲解https相关的文章非常多,很多文章讲的也非常详细,但是对于一些计算机网络相关的初学者来说看的有些云里雾里,然后过一段时间可能又忘了。本文将抛开很多细节概念性的东西,用最易懂的方式带你了解https的原理

信息传输的演进过程

最原始的信息传输

最原始的信息传输,非常简单,A发给B的”hello“数据包,就是像写信一样,都是通过明文进行传输的

那么问题来了,如果信息被中间人拦截到了,怎么办?

对信息进行加密

那么我们很容易想到,A和B可以约定一个规则,就像我们小时候玩游戏时候的暗号一样。如下所示,我们本想给B发送一个hello,但实际上我们对hello进行了一个逆序排列,使用olleh进行传输

这个其实就是对称密钥加密的概念,A和B使用同样的密钥S进行加密和解密。解密的过程其实就是一个逆运算的过程,比如加法和减法,乘法和除法

万维网(WWW)中的通信模型

上面我们说的是A和B两端之间进行传输,但是在万维网中,Web服务器可能要与每个客户端使用不同的密钥。既然每个密钥不一样,那么密钥是怎么确定的呢?

如何确定对称密钥

我们可以通过协商来确定密钥,即服务端下发一个密钥给客户端,客户端把这个密钥存下来,之后就可以通过这个密钥进行解密

但是,协商的过程是没有加密的,还是会被中间人拦截。那么如何加密协商的过程呢?

也就是说,如何对 对称密钥 进行加密呢

如何对 对称密钥 进行加密

通过RSA算法生成一对密钥,公钥N和私钥M。私钥自己保存,公钥可以告知任何人,用公钥加密后可以通过私钥解密,这其实就是非对称密钥加密的概念。看到这里有人肯定会有一些疑惑,这是怎么做到的呢?

有关RSA算法我后面会通过新的章节来讲解,但是这里可以简单介绍一下RSA算法的核心理论就是

对极大整数做因数分解的难度决定了RSA算法的可靠性。换言之,对一极大整数做因数分解愈困难,RSA算法愈可靠。假如有人找到一种快速因数分解的算法的话,那么用RSA加密的信息的可靠性就肯定会极度下降。但找到这样的算法的可能性是非常小的。今天只有短的RSA钥匙才可能被强力方式解破。世界上还没有任何可靠的攻击RSA算法的方式。只要其钥匙的长度足够长,用RSA加密的信息实际上是不能被解破的

看到这里有些人可能还有另一个疑惑,既然非对称密钥加密这里厉害,那为什么还需要对称密钥加密呢?原因是非对称加密算法比对称加密算法的加密与解密速度慢很多,我们只需要进行一次非对称密钥,协商好对称密钥后,之后每次通过这个对称密钥进行加解密就可以了

目前看来似乎这个请求响应的模型已经比较完美了,但是仔细想想其实依然有问题,如果服务器端发送公钥给客户端时,被中间人调包了,怎么办?

中间人攻击

如果被中间人攻击,客户端和服务端几乎是无感知的,依然可以进行通信,但中间人可以拿到明文的信息,且发送的信息可能已经被中间人篡改了

中间人攻击(MITM攻击)是指,黑客拦截并篡改网络中的通信数据。又分为被动MITM和主动MITM,被动MITM只窃取通信数据而不修改,而主动MITM不但能窃取数据,还会篡改通信数据。最常见的中间人攻击常常发生在公共wifi或者公共路由上

现在我们已经解决了数据加密的问题,但是如何避免中间人攻击,也就是如何解决 身份验证 问题呢?如何证明“你是你”呢?

如何进行身份认证

回到现实生活中,我们想象一下,一般我们入职的时候,会要求提供学历证书,这个学历证书显然不是我们自己就可以造出来的,我们需要第三方权威机构,也就是学校给我们提供,学历证书上写了持证人、颁发机构、颁发时间、机构盖章等等

那回到我们这里的问题上,我们也需要引入一个第三方权威机构 — CA认证机构,CA(Certificate Authority)被称为证书授权中心,是数字证书发放和管理的机构

数字证书的内容包括了加密后服务器的公钥权威机构的信息服务器域名还有经过CA私钥签名之后的证书内容(经过先通过Hash函数计算得到证书数字摘要,然后用权威机构私钥加密数字摘要得到数字签名),签名计算方法以及证书对应的域名

CA的公钥(根证书)是CA认证中心给自己颁发的证书,是信任链的起始点。下图展示了引入CA认证后的时序图,要保证整个过程生效,还有一点很重要,那就是根证书必须要安全地交给客户端,因此,根证书一般来说由浏览器开发商内置在浏览器或客户端的内部

https相比http优缺点

优点

  1. 使用 HTTPS 协议可认证用户和服务器,确保数据发送到正确的客户机和服务器
  2. HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,要比 HTTP 协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性
  3. HTTPS 是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本

缺点

  1. 相同网络环境下,HTTPS 协议会使页面的加载时间延长近 50%,增加 10%到 20%的耗电。此外,HTTPS 协议还会影响缓存,增加数据开销和功耗
  2. HTTPS 协议的安全是有范围的,在黑客攻击、拒绝服务攻击和服务器劫持等方面几乎起不到什么作用
  3. 最关键的是,SSL 证书的信用链体系并不安全。特别是在某些国家可以控制CA 根证书的情况下,中间人攻击一样可行
  4. 成本增加。部署 HTTPS 后,因为 HTTPS 协议的工作要增加额外的计算资源消耗,例如 SSL 协议加密算法和 SSL 交互次数将占用一定的计算资源和服务器成本。在大规模用户访问应用的场景下,服务器需要频繁地做加密和解密操作,几乎每一个字节都需要做加解密,这就产生了服务器成本。随着云计算技术的发展,数据中心部署的服务器使用成本在规模增加后逐步下降,相对于用户访问的安全提升,其投入成本已经下降到可接受程度

总结

https就是在http的基础上增加了 SecureSocket Layer(安全套接层),使用非对称加密算法进行对称加密算法的协商过程,使用对称加密算法加密数据,并引入了数字签名技术,来核实数据发送者的身份信息

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
禁止转载,如需转载请通过简信或评论联系作者。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 224,861评论 6 522
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 96,263评论 3 402
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 172,033评论 0 366
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 60,999评论 1 300
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 70,000评论 6 400
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 53,483评论 1 314
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 41,850评论 3 428
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 40,827评论 0 279
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 47,366评论 1 324
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 39,404评论 3 346
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 41,525评论 1 355
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 37,130评论 5 351
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 42,853评论 3 338
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 33,293评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 34,426评论 1 276
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 50,082评论 3 381
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 46,590评论 2 366