资讯专栏INFORMATION COLUMN

理解HTTPS

Yuqi / 2584人阅读

摘要:公开密钥加密处理起来比共享密钥加密更为复杂,因此若在通信时使用公开密钥加密的方式,效率就很低。在交换密钥环节使用公开密钥加密方式,之后建立的通信交换报文阶段则使用共享密钥加密方式。

HTTP+加密+认证+完整性保护=HTTPS

最近在看《图解HTTP》总结了一下HTTPS。

基础决定你可能达到的高度,而业务决定了你的最低瓶颈,两者不可偏颇。——技术最前沿

加密

通常, HTTP协议承载于TCP协议之上,HTTPS则在HTTP和TCP之间添加一个安全协议层SSL(Secure Socket Layer)、TSL(Transport Layer Security)。当使用SSL时,则变成先和SSL通信,再由SSL和TCP通信。

非对称加密

SSL使用两把密钥进行加密。公开密钥随意发布。发送密文的一方使用对方公开的密钥进行加密处理,对方收到被加密的信息后,再使用自己的私有密钥进行解密。利用这种方式,不需要发送用来解密的私有密钥,也不必担心密钥被攻击者窃听而盗走。

总结:这种加密比较复杂不容易被破解,但是需要复杂的通信方式。无法证明公开密钥本身就是货真价实的公开密钥(后面会介绍https解决方案)

对称加密

共享密钥:加密解密使用共同的一套秘钥。

总结:这种加密简单但是特别容易被破解。如果攻击者使用“中间人攻击”即在通信的时候监听你的拦截你的通信信息,就可以知道你发送的秘钥。

公开密钥加密处理起来比共享密钥加密更为复杂,因此若在通信时使用公开密钥加密的方式,效率就很低。
HTTPS采用混合加密。在交换密钥环节使用公开密钥加密方式,之后建立的通信交换报文阶段则使用共享密钥加密方式。

示例:https->(验证时期)采用公共秘钥加密->(通信时期)采用共享秘钥加密通信

认证

上面说道了公开加密的缺点:使用公开密钥存在一个问题:无法证明公开密钥本身就是货真价实的公开密钥。

为了解决此问题,可以使用由数字证书机构CA和其相关机构颁发的公开密钥证书。

在申请到数字证书之后,服务器在收到通过HTTPS的访问请求时,会将这份由认证机构颁发的公钥证书发送给客户端。

接到证书的客户端可以使用数字证书认证机构的公开密钥,对那张证书上的数字签名进行验证,一旦验证通过,客户端便可明确两件事:一,认证服务器的公开密钥是真实有效的数字证书认证机构。二,服务器公开密钥是值得信赖的。

为了保认证机构的公开密钥安全转交给客户端,多数浏览器选择在内部植入常用认证机关的公开密钥,问题得以解决。

完整性保护

HTTPS的通信步骤较HTTP复杂很多,在完整性保护方面,应用层发送数据时会附加MAC(Message Authentication Code)的报文摘要。MAC能够查知报文是否遭到篡改,从而保护报文的完整性。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/87995.html

相关文章

  • vue 248+个知识点(面试题)为你保驾护航

    摘要:要招一个会的开发者作为面试官的你,你还会每次都只是问这些老土的问题吗你对的理解是什么你知道什么是双向绑定吗你了解它的原理吗说说的生命周期有哪些组件通讯有哪些你用过吗作为面试者的你,在网上搜索下面试题及答案,看完后你是不是觉得自己掌握了武林秘 showImg(https://segmentfault.com/img/bVburrG?w=533&h=300); 要招一个会vue的开发者: ...

    snowell 评论0 收藏0
  • 网络与安全

    摘要:面试网络了解及网络基础对端传输详解与攻防实战本文从属于笔者的信息安全实战中渗透测试实战系列文章。建议先阅读下的网络安全基础。然而,该攻击方式并不为大家所熟知,很多网站都有的安全漏洞。 面试 -- 网络 HTTP 现在面试门槛越来越高,很多开发者对于网络知识这块了解的不是很多,遇到这些面试题会手足无措。本篇文章知识主要集中在 HTTP 这块。文中知识来自 《图解 HTTP》与维基百科,若...

    Integ 评论0 收藏0
  • 【转载】这是我看过最好的对HTTPS理解

    摘要:对于与这样的简单通信模型,我们很容易做出选择这时对称加密算法,其中图中的密钥同时扮演加密和解密的角色。好了,如何协商加密算法的问题,我们解决了使用非对称加密算法进行对称加密算法协商过程。这其实就是密码学中提到的身份验证问题。 【转载】这是我看过最好的对HTTPS的理解 首先申明,这篇文章并非原创。而是最近想去研究一下https的原理,所以上网查阅了一大堆资料和文档,其实看来看去都是差不...

    WelliJhon 评论0 收藏0
  • 深入理解Plasma(四)Plasma Cash

    摘要:稀疏梅克尔树在上文中我们已经了解到一个交易的成功的前提是需要发送方提供关于一个的完整交易历史。因此,中使用了一种称为稀疏梅克尔树,的数据结构存储交易数据,能够在的时间复杂度验证一个交易不存在。 本文首发于深入浅出区块链社区原文链接:深入理解Plasma(四)Plasma Cash原文已更新,请读者前往原文阅读 这一系列文章将围绕以太坊的二层扩容框架 Plasma,介绍其基本运行原理,具...

    godiscoder 评论0 收藏0
  • 深入理解Plasma(四)Plasma Cash

    摘要:稀疏梅克尔树在上文中我们已经了解到一个交易的成功的前提是需要发送方提供关于一个的完整交易历史。因此,中使用了一种称为稀疏梅克尔树,的数据结构存储交易数据,能够在的时间复杂度验证一个交易不存在。 本文首发于深入浅出区块链社区原文链接:深入理解Plasma(四)Plasma Cash原文已更新,请读者前往原文阅读 这一系列文章将围绕以太坊的二层扩容框架 Plasma,介绍其基本运行原理,具...

    sourcenode 评论0 收藏0

发表评论

0条评论

Yuqi

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<