https详解

概述

网络请求方式通常分为两种,分别是HTTP请求和HTTPS请求,其中HTTP的传输属于明文传输,在传输的过程中容易被人截取并且偷窥其中的内容,而HTTPS是一种在HTTP的基础上加了SSL/TLS层(安全套接层)的安全的超文本传输协议,其传输的内容是通过加密得到的,所以说是一种安全的传输

https?
HTTP 通信接口部分采用了了 SSL + TLS 协议

概念解析
密钥: 对称加密设置的密码
公钥: 公钥用于加密信息和解密数字签名
私钥: 私钥用于解密信息和加密消息摘要
消息摘要/数字指纹 : 对消息使用HASH算法获取的固定长度的字符串
数字签名: 使用私钥加密的消息摘要
数字证书:CA用自己的私钥,对需要认证的公钥及相关的信息进行加密

一、加密方式

1、对称加密:

私钥加密,信息的发送方和接收方使用同一个密钥加密和解密数据。


2、非对称加密:

生成两把密钥公钥和私钥。私钥自己保存,公钥用于公开。可以用公钥和私钥中任何一个进行加密,另一个解密。

具体有两种情形:

(1)对方用你的公钥加密信息,你收到后用私钥解开。

只有你有私钥,所以只有你能解开,换句话说,有私钥才能看到信息,很安全。

(2)你拿私钥加密信息,对方收到后用你的公钥解开。

公钥是公开的,所以其他人也可以看到你的信息,不保密。

私钥加密,只有对应公钥能解开。既然用你的公钥能解开,说明加密一定是你的私钥。私钥只有你有,所以一定是你发送的,你不可抵赖。


这里的私钥加密指的是私钥签名,公钥验签

但是这样存在一个问题,窃听者也可以冒充Bob给Alice送信,因为Alice的公钥是公开的,这样就无法分辨哪个是真Bob的送信。

3、数字签名:

为了表明信息没有收到伪造,确实是信息拥有者发出。可以使用数字签名。

Bob用自己的私钥对消息加密作为签名,再与消息一起发送,接收者用Bob的公钥验签。

窃听者窃取冒充Bob的签名篡改内容也没用,因为内容发生改变时,对应的签名也要重新计算,签名的生成必须使用私钥,只要私钥不泄露,签名就不会被冒充。


但是数字签名只是能验证发送方身份,未对报文进行加密。窃听者截取到密文并指定发送者的身份时,可通过查阅手册即可获得发送者的公钥PKA,就可以窃听报文的内容。

4、数字证书(公钥的数字签名):

发送方可以去证书中心CA为公钥做认证,证书中心用自己的私钥,对需要加密的公钥和一些相关信息一起加密,生成"数字证书"。

这样接收方就可以防止收到假的公钥,接收方收到带有数字证书的消息后,用CA的公钥先解开数字证书,就可以拿到发送方真实的公钥了。

5、非对称算法的数字签名:

即实现数字签名又加密传输,就可以使用A私钥签名B公钥加密的方法。

发送者使用私钥对消息加密作为签名,再使用接收方的公钥对消息进行加密,接收方使用自己的私钥进行解密后,再对签名进行验签。

6、hash算法的数字签名(摘要+数字签名):

一般而言,不会直接对数据本身计算数字签名,因为数字签名属于非对称加密,非对称加密依赖于复杂的数学运算,耗时久。所以使用摘要,并且摘要最好是不可逆转的,一般使用开头MD5作为Hash函数,MD5输出的结果固定位128位。

并且要对数据的「摘要」进行签名,这样,窃听者就算解开签名,拿到的也是「摘要」,如果摘要是不可逆转的,也就是无法从摘要反推出原文,也就达到了保密的作用。

首先将原数据进行Hash计算,得到摘要,再对摘要私钥加密生成数字签名。再与原文件一起发送。接收方收到后先用A的公钥对数字签名解密得到摘要1,证明确实是A发送,再对原文进行相同的hash计算得到摘要2,再进行比较,一致则证明消息未被篡改过。

但是若是窃听者将自己的公钥换走了发送方的公钥,再冒充发送方给B发送消息,用自己的私钥做成假的签名,此时接收方无法判断哪个是真正的消息。

总结:

对称加密:同一个密码加密解密。

非对称加密:私钥加密,公钥解密或者私钥加密,公钥解密。

摘要:对消息hash计算生成摘要。

数字签名:私钥加密消息作为签名,再与源文件一起发送。

数字证书:证书中心对验签的公钥进行加密,生成数字证书。用CA的公钥解密得到加密的公钥。

hash算法的数字签名:对消息hash计算后再私钥加密生成数字签名。数字签名+原文件一起发送。接收方再进行比较。

非对称加密的数字签名:发送用私钥加密得到数字签名,再使用接收方的公钥加密原文,一起发送,接收方使用发送方的公钥验签,证明是本人发送,再使用私钥解密原文,进行比较。一致则未被篡改。

二、HTTPS

HTTP协议:超文本传输协议,明文传输,客户端与Web服务器间的应用层通信协议。

HTTPS协议:HTTP+SSL/TLS,即HTTP下加入SSL层,使用SSL加密,用于安全的HTTP传输,https默认使用端口443。

SSL:安全套接字层,位于可靠的面向连接的网络层协议。SSL通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。具有数据加密和身份验证的功能。

TLS:安全传输层协议、对SSL扩展和优化,提供数据安全的同时,确保数据的完整性。

https流程:

https作为一种安全的应用层协议,使用了以下三种加密手段:

数据正文数据量较大,适用于对称加密,因为对称加密速度快,适用于大量数据加密,但是安全级别低,密钥在网络中传输的过程中容易被窃取,所以对这个密钥进行非对称加密。

最后由于非对称加密的公钥在网络中传输,保证接收方接收到正确的公钥,使用证书验证:

1、客户端发送HTTPS请求。

2、服务器收到请求后,返回数字证书(数字签名+公钥)。

3、客户端验证证书是否合法(用服务端的公钥验签),不合法则提示警告。

4、验证合法后,本地生成密钥(对称加密密钥)并用服务端的提供的公钥加密后发送给服务端。

5、服务端用自己的私钥对数据解密,得到客户端密钥(对称加密密钥),再用客户端密钥对要发送的数据进行加密后发给客户端。

总结:

发送https请求后,先验证CA证书是否和好,再生成本地密钥(对称密钥),使用服务端公钥加密对称密钥再发送服务端。服务端用自己的私钥解密后,取得对称密钥,此时就可以数据传输了,服务端用对称密钥对请求数据加密,发送给客户端,客户端收到后用对称密钥解密拿到明文。

用基于数字证书的非对称加密 加密 对称加密的密钥后 加密传输数据。

问题小结:

为什么数据传输是用对称加密?

答:HTTP的应用场景中通常端与端之间存在大量的交互,非对称加密的加解密效率非常低。
另外,在 HTTPS的场景中只有服务端保存了私钥,一对公私钥只能实现单向的加解密,所以 HTTPS 中内容传输加密采取的是对称加密

为什么需要证书?
答:防止“中间人”攻击,同时可以为网站提供身份证明。

使用 HTTPS 会被抓包吗?
答:会被抓包,HTTPS 只防止用户在不知情的情况下通信被监听,如果用户主动授信,是可以构建“中间人”网络,代理软件可以对传输内容进行解密。

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

推荐阅读更多精彩内容