Https学习

Http与Https的区别


简单的讲,Http协议的客户端和服务端通信采用的是明文(post请求也只是将数据放在header中,但依然是明文传输。而Hppts协议的客户端和服务端间通信采用的秘文传输(对称加密和非对称加密相结合)

HTTPS是如何保障安全的


HTTPS其实就是secure http的意思,也就是HTTP的安全升级版。稍微了解网络基础的同学都知道,HTTP是应用层协议,位于HTTP协议之下是传输协议TCP。TCP负责传输,HTTP则定义了数据如何进行包装。

传输加密的流程:原先是应用层将数据直接给到TCP进行传输,现在改成应用层将数据给到TLS/SSL,将数据加密后,再给到TCP进行传输。

tls-ssl-_tcp-ip_protocol.png

HTTPS是如何加密数据的


  1. 握手认证:
    客户端发起一次请求后,服务端返回数字证书,客户端接受到后,生成一个对称密钥,再用服务器下发证书中的公钥对其加密并发送,服务端接受到客户端发送的加密后的对称密钥后用自己的私钥解密,获得对称密钥。到此服务端和客户端都拥有了可以用来加密数据的对称密钥,并且可以保证该密钥没有泄漏。
  2. 传输阶段
    客户端和服务端用上面得到的对称密钥将数据加密后正常传输。

HTTPS如何做到安全的


关于对称加密和非对称加密就不在此赘述了,详见[http://blog.csdn.net/bluishglc/article/details/7585965]

由上面的Https握手过称可以知道,Https的安全性很大程度上取决于服务器下发的公钥,所以先了解下证书:
在正式介绍证书的格式前,必须先科普下数字签名和摘要,然后再对证书进行非深入的介绍。
为什么呢?因为数字签名、摘要是证书防伪非常关键的武器。

数字签名与摘要

简单的来说,“摘要”就是对传输的内容,通过hash算法计算出一段固定长度的串(是不是联想到了文章摘要)。然后,在通过CA的私钥对这段摘要进行加密,加密后得到的结果就是“数字签名”。(这里提到CA的私钥,后面再进行介绍)

明文 --> hash运算 --> 摘要 --> 私钥加密 --> 数字签名

结合上面内容,我们知道,这段数字签名只有CA的公钥才能够解密。
接下来,我们再来看看神秘的“证书”究竟包含了什么内容,然后就大致猜到是如何对非法证书进行预防的了。
数字签名、摘要进一步了解可参考 这篇文章

证书格式

先无耻的贴上一大段内容,证书格式来自这篇不错的文章《OpenSSL 与 SSL 数字证书概念贴
内容非常多,这里我们需要关注的有几个点:

  • 证书包含了颁发证书的机构的名字 -- CA

  • 证书内容本身的数字签名(用CA私钥加密)

  • 证书持有者的公钥

  • 证书签名用到的hash算法

此外,有一点需要补充下,就是:
CA本身有自己的证书,江湖人称“根证书”。这个“根证书”是用来证明CA的身份的,本质是一份普通的数字证书。
浏览器通常会内置大多数主流权威CA的根证书。
如何辨别非法证书
上面提到,XX证书包含了如下内容:

证书包含了颁发证书的机构的名字 -- CA
证书内容本身的数字签名(用CA私钥加密)
证书持有者的公钥
证书签名用到的hash算法
浏览器内置的CA的根证书包含了如下关键内容:

CA的公钥(非常重要!!!)

好了,接下来针对之前提到的两种非法证书的场景,讲解下怎么识别

  • 完全伪造的证书
    这种情况比较简单,对证书进行检查:
    证书颁发的机构是伪造的:浏览器不认识,直接认为是危险证书
    证书颁发的机构是确实存在的,于是根据CA名,找到对应内置的CA根证书、CA的公钥。
    用CA的公钥,对伪造的证书的摘要进行解密,发现解不了。认为是危险证书

  • 篡改过的证书
    假设代理通过某种途径,拿到XX的证书,然后将证书的公钥偷偷修改成自己的,然后喜滋滋的认为用户要上钩了。然而太单纯了:
    1.检查证书,根据CA名,找到对应的CA根证书,以及CA的公钥。
    2.用CA的公钥,对证书的数字签名进行解密,得到对应的证书摘要AA
    3.根据证书签名使用的hash算法,计算出当前证书的摘要BB
    4.对比AA跟BB,发现不一致--> 判定是危险证书

HTTPS的劣势


https的主要缺点就是性能问题。造成https性能低于http的原因有两个:

  1. 对数据进行加解密决定了它比http慢。
  2. 另外一个重要原因的是https禁用了缓存。相关测试数据表明使用HTTPS协议传输数据的工作效率只有使用HTTP协议传输的十分之一。因此对于一个网站来说,只有那对那些安全要求极高的的数据才会选择使用https进行传输。

本文主要来自https://segmentfault.com/a/1190000004523659, 自己做了些修改

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

推荐阅读更多精彩内容