当前位置:首页HTTPS究竟是啥?这篇文章带你快速了解HTTPS 举报文章

HTTPS究竟是啥?这篇文章带你快速了解HTTPS

作者:admin    来源:用户投稿    时间:2019.1.6   

今天接到个活儿,让我科普 HTTPS 。讲 HTTP 我都“方”,想要通俗易懂的说完 HTTPS, 我有点“圆”。在讲什么是 HTTPS 之前,我们先来看个漫画。

HTTPS究竟是啥?这篇文章带你快速了解HTTPS 域名 网站 数据分析 好文分享 第1张

HTTPS究竟是啥?这篇文章带你快速了解HTTPS 域名 网站 数据分析 好文分享 第2张

△ 图片来源于阮一峰的网络日志

漫画中其实就是 HTTPS 的握手过程,但是我相信大段的英文你看着也不怎么流畅,下面就由我简单讲解下吧。

HTTPS 是在 HTTP 的基础上增加了 SSL 或 TLS 安全协议,这些协议有众多的套件,这些套件则是由加密算法和哈希算法组成,而这些算法最后则涉及到了数学。

数学是我上学时期最头痛的学科,还记得上数学课时,我传纸条给坐在我后面的班花……咦,好像有点跑偏了,拉回来,坐好了,开始我们的 HTTPS 之旅。

HTTPS 是什么

HTTPS 是为了安全的使用 HTTP ,缩写展开:Hyper Text Transfer Protocol over Secure Socket Layer 。从英文释义可以看出,HTTPS 就是 HTTP + SSL 或者 HTTP + TLS 。

“我读书少,你可不要骗我,上面的英文缩写不是 HTTP over SSL 吗?”呃...是这样的,HTTPS 最初使用的加密协议的确是 SSL,SSL 最近的三个版本是:SSL 1.0 、SSL 2.0 、SSL 3.0 ,不过随着加密算法的发展和人们对传安全性要求的提高。

截止目前已经长江后浪推前浪依次推出了 TLS 的四个版本,分别是:TLS 1.0 、TLS 1.1 、TLS 1.2 以及前不久刚推出的 TLS 1.3 。实际上,业内也有人把 TLS 1.0 叫做 SSL 3.1 ,事实上,TLS 是在 SSL 的基础上发展起来的更安全的加密协议。

为什么要使用 HTTPS

这个问题要从为什么逐渐的抛弃 HTTP 说起。

HTTP 从 1991 年的 HTTP/0.9 一直发展到 1999 年的 HTTP/1.1 ,虽然功能不断增加,性能也不断提高,但是随着互联网技术和网络设备的迅速普及,导致信息大爆炸,众多的网民们对网络传的速度和安全性有了越来越高的要求。

2012 年,谷歌推出了 SPDY 方案,优化了 HTTP/1.x 的请求延迟和安全性问题,进一步普及了 HTTPS,截止到 2015 年,HTTP/2 已经成为标准,更是进一步推动了全网 HTTPS 的进程。

全网 HTTPS 是大势所趋,那么为什么抛弃 HTTP 呢?最重要的原因就是安全问题,因为 HTTP 是明文传的,这对于目前从娃娃就开始玩智能手机,学习 python 编程的新一代来说,抓个包估计是不在话下,更别提浸淫网络多年的“黑客”了。是时候跑步进入 HTTPS 加密时代的了。

HTTPS 为什么安全

上文已经有提到,HTTPS 就是 HTTP + SSL or TLS ,除了 HTTPS 传标准严格和规范外,主要是 SSL 或者 TLS 对传的信息有一整套的加解密和校验方案。这套方案主要从下面三个方面确保传的安全。

1. 身份认证

传之前首先通过数字证书来确认身份,各大 CA 厂商干的就是这个事情。这里涉及到一个名词:数字证书。数字证书分为公钥和私钥,CA 厂商会用自己的私钥来给证书申请者签发一套包含私钥和公钥的客户证书,客户的公钥证书谁都可以获取,里面包含了客户站点和证书的基本信息,用来确保访问者访问的就是他想要访问的站点。

这个证书不可以伪造吗?答案是真的不可以。

原因一:系统早已内置了各大 CA 厂商的公钥来校验证书是否是对应的站点的证书,如果不是,就会给出证书不匹配的提示,除非你给别人的设备强行植入假的 CA 公钥。

原因二:这个证书是 CA 厂商通过哈希并加密得到的,基本无法逆向破解并伪造一个新的,除非是你黑进 CA 获取了 CA 的私钥,那这家 CA 也基本可以倒闭了。

2. 数据保密

数据保密包括对话秘钥传时候的保密和数据的加密传送。

对话秘钥:以 TLS 1.2 使用的套件之一 DHE-RSA-AES256-SHA256 为例:该套件是以 DHE 、RSA 作为秘钥交换算法,这两种秘钥交换算法都是使用的非对称加密,数学原理分别依赖于计算离散对数的难度和大数分解的难度。

也就是在建立 HTTPS 链接的过程中,刚开始是有一些明文出现的,不过想要根据这些已知的明文推算出“对话秘钥”却非常困难。

对话加密:客户端和和服务端协商并成功获取到对话秘钥后就开始用对话秘钥进行对称加密会话,上面的套件我们可以看到使用的是 AES256 加密算法。

那么为什么“对话秘钥”的交换使用非对称加密,正式对话数据的传使用对称加密?因为非对称加密虽然安全性比较高,但是它的效率比较低,速度比较慢,所以我们一般只使用它们来交换一下对话秘钥,后面的对话加密则使用速度更快,效率更高的对称加密。

3. 数据完整

身份认证成功后,到了数据加密传的阶段,所有数据都以明文(HTTP)收发,只不过收发的是加密后的明文。这时候也遇到了一个问题,虽然中间人很难破解加密后的数据,但是如果他对数据进行了篡改,那该怎么办?

此时加密套件验证数据一致性的哈希算法就派上用场了,哈希算法有多种,比如 MD5 ,SHA1 或者 SHA2 等,上面举例的加密套件使用的是 SHA2 中的 SHA256 来对数据进行哈希计算。这样就使得任何的数据更改都会导致通信双方在校验时发现问题,进而发出警报并采取相应的措施。

以上主要从使用 HTTPS 的必要性及 HTTPS 能安全传的原理进行了简单的阐述,HTTPS 的实现不仅仅是网络技术的集中应用,底层还涉及到了大量的算法以及密码学的众多知识,小编也无法一下子概述完整(笑哭)。

另外,不论是 PFS,或是国际互联网组织正在推行的 HSTS 安全传协议,他们的主要目的就是避免中间人攻击,使信息在传过程中更安全,更快速

作者昵称:又拍云

好文打赏,给Ta鼓励
扫一扫用手机阅读本文
Tags:究竟  究竟是  竟是  是啥  这篇  这篇文章  文章  带你  快速  了解  
  • 相关搜索
图片推荐
    魅蓝Note 2电信版发布时间曝光! 售价调整到799元

    魅蓝Note 2电信版发布时间曝光! 售价调整到799元

    本月初,魅族正式发布了魅蓝Note 2,在配置基本上没有太大变化的前提下,售价从999元调整到了799元,非常良心。  但遗憾的是,魅族官方于6月10日宣布,由于专用配件供应量产推迟,魅蓝Note2电
    知乎的另一面:如何用数据管理内容

    知乎的另一面:如何用数据管理内容

    虎嗅注:知乎已经走过了4年年头,在互联网的世界里,知乎已经成为无可争议的高质量社区,但在经历了高速发展之后,如何管理,筛选,呈现这些大量的信息(数据)成为一个难题,事实上无论对于哪一个社区而言,数据的
    从创业到打工 我的5年SEO之路

    从创业到打工 我的5年SEO之路

    感谢说说SEO的投稿:  一次又一次的,静静的坐在电脑前,捧一个黑色的大瓷杯,轻蘸几口咖啡,看着桌上自己低调而创意的SEO主管名片,看着电脑屏幕上的说说SEO论坛, 心底却已是莫名的沉稳和平静。回想五
    网页质量白皮书给我们带来什么?

    网页质量白皮书给我们带来什么?

    百度最新的百度搜索引擎网页质量白皮书已经发布、相信很多朋友已经看了、对于刚刚入门的初学者来说肯定也懂了不多!对于已经从事seo几年的朋友来说想必看完了也就那么几点自己做的东西。  那么百度发布这样一份
    中国创业者“性生活”真实写照

    中国创业者“性生活”真实写照

    Founder/VC 栏目第 26 期,本文作者:两位刚刚拿到新一轮融资,并要求匿名的连环创业者。  独立、敏捷的中美科技观察,硅发布微信号Guifabucom  李克强总理说全民创业,万众创新,然后
    钟智鑫:网络营销之竞争对手的调查分析

    钟智鑫:网络营销之竞争对手的调查分析

    之前写了一篇《钟智鑫:网络营销之用户需求调查》,用户需求是不可忽视的一部分,除了对用户进行调查,我们还要对竞争对手做一个详细的调查分析。  一、搜索排名结果  调查竞争对手情况也可以从搜索引擎入手。搜
    微商生存面面观:非法传销还是电商颠覆者?

    微商生存面面观:非法传销还是电商颠覆者?

    柏可林摄  原标题:微商生存面面观  对于微商有着两个截然不同的观点,一种是魔鬼,说它是非法传销;另一种是天使,说它是电商的颠覆者。一方面,微商们五花八门的炫富,以证明这条道路的正确性,另一方面,关于
    如何SEO优化网站排名?网站SEO优化排名技术教程

    如何SEO优化网站排名?网站SEO优化排名技术教程

    如何SEO优化网站排名?你如果懂SEO,就可以把网站排名做上去。那么SEO是什么?SEO就是搜索引擎优化的简称。站长网下面来分享一下网站SEO优化排名技术教程。首先你要知道决定网站SEO排名的三大核心
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面