【网络安全】HTTPS为什么比较安全

目录

  • HTTP和HTTPS简介
  • SSL协议
    • SSL协议的主要功能
    • SSL协议加密数据的原理
    • 用户和服务器的认证流程
  • TLS
  • 参考

HTTP和HTTPS简介

1. HTTP协议为什么是不安全的

http协议属于明文传输协议,交互过程以及数据传输都没有进行加密,通信双方也没有进行任何认证,通信过程非常容易遭遇劫持、监听、篡改,严重情况下,会造成恶意的流量劫持等问题,甚至造成个人隐私泄露(比如银行卡卡号和密码泄露)等严重的安全问题。

可以把http通信比喻成寄送信件一样,A给B寄信,信件在寄送过程中,会经过很多的邮递员之手,他们可以拆开信读取里面的内容(因为http是明文传输的)。A的信件里面的任何内容(包括各类账号和密码)都会被轻易窃取。除此之外,邮递员们还可以伪造或者修改信件的内容,导致B接收到的信件内容是假的。

比如常见的,在http通信过程中,“中间人”将广告链接嵌入到服务器发给用户的http报文里,导致用户界面出现很多不良链接; 或者是修改用户的请求头URL,导致用户的请求被劫持到另外一个网站,用户的请求永远到不了真正的服务器。这些都会导致用户得不到正确的服务,甚至是损失惨重。

2. HTTPS如何保证安全

我们都知道HTTPS是安全的HTTP,那么HTTPS是如何保证通信过程的安全的呢?

如果服务器给客户端的消息是密文的,只有服务器和客户端才能读懂,就可以保证数据的保密性。同时,在交换数据之前,验证一下对方的合法身份,就可以保证通信双方的安全。(和我们平时开发中RSA加签验签,加密解密的过程比较像)。HTTPS就是利用了类似的原理来保证通信的安全性。下面我们来看下具体的实现流程。

SSL协议

HTTPS实现安全通信的基础是SSL协议。

SSL:(Secure Socket Layer,安全套接字层),为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上之传输过程中不会被截取。当前版本为3.0。它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。

SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

SSL协议的主要功能

  • 认证用户和服务器,确保数据发送到正确的客户机和服务器;
  • 加密数据以防止数据中途被窃取;
  • 维护数据的完整性,确保数据在传输过程中不被改变。

下面我们就具体来看看SSL协议是怎么来实现上面三个功能的。

SSL协议加密数据的原理

上面提到SSL协议会把通信的报文进行加密,那么服务器把数据加密后,客户端如何读懂这些数据呢?服务器必须要把加密的密钥(SSL中报文加密使用了对称加密技术,比如DES,3DES,AES等)告诉客户端,客户端才能利用对称密钥解开密文的内容。但是,服务器如果将这个对称密钥以明文的方式给客户端,还是会被中间人截获,中间人也会知道对称密钥,依然无法保证通信的保密性。但是,如果服务器以密文的方式将对称密钥发给客户端,客户端又如何解开这个密文,得到其中的对称密钥呢?下面请看SSL的骚操作。

用户和服务器的认证流程

  1. 中间人劫持

上面的加密流程似乎很完美,也的确能将报文加密传输,但是这种方式还是不能抵御"中间人接触"。三次握手或者客户端发起HTTP请求过程中,客户端的请求被中间人劫持,那么中间人就可以伪装成“假冒客户端”和服务器通信:

中间人在收到服务器发送给客户端的公钥(这里是“正确的公钥”)后,并没有发给客户端,而是中间人将自己的公钥(这里中间人也会有一对公钥和私钥,这里称呼为“伪造公钥”)发给客户端。之后,客户端把对称密钥用这个“伪造公钥”加密后,发送过程中经过了中间人,中间人就可以用自己的私钥解密数据并拿到对称密钥,此时中间人再把对称密钥用“正确的公钥”加密发回给服务器。此时,客户端、中间人、服务器都拥有了一样的对称密钥,后续客户端和服务器的所有加密数据,中间人都可以通过对称密钥解密出来。

为了解决此问题,我们引入了数字证书的概念。服务器首先生成公私钥,将公钥提供给相关机构(CA),CA将公钥放入数字证书并将数字证书颁布给服务器,此时服务器就不是简单的把公钥给客户端,而是给客户端一个数字证书,数字证书中加入了一些数字签名的机制,保证了数字证书一定是服务器给客户端的。中间人发送的伪造证书,不能够获得CA的认证,此时,客户端和服务器就知道通信被劫持了

  1. CA证书简介

数字证书就是通过数字签名实现的数字化的证书,证书颁发时会包括证书的内容和证书的签名。我们验证证书是否被篡改的方法是:通过对证书的内容加签名,然后将获得的签名和随证书一同发布的签名做对比,如果两者一致那么证书没有被篡改。

数字证书也有很多的签发机构,不同的签发机构签发的证书,用途也是不一样的,比如iOS开发中,使用到的ipa文件签名证书,需要到苹果申请。而在Web访问中为了防止Web内容在网络中安全传输,需要用到的SSL证书则需要向几家公认的机构签发。这些签发机构统称为CA(Certificate Authority)。

数字证书的一般功能如下:

  • 身份授权:确保浏览器访问的网站是经过CA验证的可信任的网站。
  • 分发公钥:每个数字证书都包含了注册者生成的公钥(验证确保是合法的,非伪造的公钥)。在SSL握手时会通过certificate消息传输给客户端。
  • 验证证书合法性:客户端接收到数字证书后,会对证书合法性进行验证。只有验证通过后的证书,才能够进行后续通信过程。

TLS

TLS:(Transport Layer Security,传输层安全协议),用于两个应用程序之间提供保密性和数据完整性。
TLS 1.0是IETF(Internet Engineering Task Force,Internet工程任务组)制定的一种新的协议,它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本,可以理解为SSL 3.1,它是写入了 RFC 的。该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。较低的层为 TLS 记录协议,位于某个可靠的传输协议(例如 TCP)上面。

我们可以简单地将TLS理解为SSL的加强版本。

参考

原文地址:https://www.cnblogs.com/54chensongxia/p/11772752.html

时间: 2024-11-10 15:06:12

【网络安全】HTTPS为什么比较安全的相关文章

屏谖畔涨善ab63gro0l16rstpb58

中新社首尔4月13日电 (记者 吴旭)韩国第20届国会议员选举于当地时间13日18时结束投票.据韩国中央选举管理委员会公布的初步统计数据显示,本届国会议员选举投票率为58%,较上一届高出3.8个百分点.最终确定投票结果将于14日上午予以公布.从选区来看,全罗南道.全罗北道投票率领先,均突破60%,而大邱.釜山.京畿道及仁川地区投票率则低于平均值.在选举"主战场"首都圈地区,首尔以59.8%的投票率超出均值.根据目前初步统计结果,本届选举的投票率虽然没有超过事前预测的60%,但较第18届

噬鸵叟客切q08c365s

新华社瓦莱塔4月10日电(记者李拯宇 李佳)全国政协主席俞正声10日在前往非洲三国进行正式友好访问途中过境马耳他,在瓦莱塔会见马耳他议长法鲁贾. 俞正声说,中马保持长期友好关系,政治上相互信任,经济上密切合作,人文交流不断深化.中方感谢马方在中国撤侨行动中给予的支持和帮助.中方愿同马方一道,落实两国领导人达成的共识,弘扬中马传统友好,拓展在科技.渔业.旅游等领域互利合作,打造合作新亮点.中国全国政协愿与马耳他议会和社会各界保持密切交往,加强治国理政经验交流,为两国扩大务实合作营造良好环境,共同促

蚜戮苛裂退q47uc785b3

新华社瓦莱塔4月10日电(记者李拯宇 李佳)全国政协主席俞正声10日在前往非洲三国进行正式友好访问途中过境马耳他,在瓦莱塔会见马耳他议长法鲁贾. 俞正声说,中马保持长期友好关系,政治上相互信任,经济上密切合作,人文交流不断深化.中方感谢马方在中国撤侨行动中给予的支持和帮助.中方愿同马方一道,落实两国领导人达成的共识,弘扬中马传统友好,拓展在科技.渔业.旅游等领域互利合作,打造合作新亮点.中国全国政协愿与马耳他议会和社会各界保持密切交往,加强治国理政经验交流,为两国扩大务实合作营造良好环境,共同促

中三他身东取必信史规不

对啊我恍然大悟凌月果然心细如尘啊 但是凌月的雪却隐藏着绝强的杀伤力下一刻突然一大片冰雪在血饮的人群中爆开顿时傲世狂人和傲世嗜血均是大惊失色忍不住道居然那么高的防御 但是级别却只有级而已不过这已经足以傲视群雄了因为我的等级已经一下子窜到了中国排名的第位只要再努力一把完全可以在等级榜上崭露头角了顿时傲世狂风和傲世狂剑两个大惊失色注已经全部被吸引了过去不客气就不客气谁怕谁啊但是这一切也只是为了杀最后的而清理路障而已那个食人魔首领才是我们真正此行的目的嗯出去吃夜宵吧秦韵亲手做的 嗯那好吧凌雪又叮嘱了我一

Ios应用网络安全之https

戴维营教育原创文章,转载请注明出处.我们的梦想是做最好的iOS开发培训! iOS应用网络安全之HTTPS 1. HTTPS/SSL的基本原理 安全套接字层 (Secure Socket Layer, SSL) 是用来实现互联网安全通信的最普遍的标准.Web 应用程序使用 HTTPS(基于 SSL 的 HTTP),HTTPS 使用数字证书来确保在服务器和客户端之间进行安全.加密的通信.在 SSL 连接中,客户机和服务器在发送数据之前都要对数据进行加密,然后由接受方对其进行解密. 当浏览器(客户端)

Linux Nginx之HTTPS网络安全访问服务

第1章 HTTPS网络安全访问服务 1.1 网络安全涉及的问题 ①. 网络安全问题-数据机密性问题 传输的数据可能会被第三方随时都能看到 ②. 网络安全问题-数据完整性问题 传输的数据不能随意让任何人进行修改 ③. 网络安全问题-身份验证问题 第一次通讯时,需要确认通讯双方的身份正确 1.1.1 数据机密性问题解决 a) 利用普通加密算法解决机密性 利用相应算法,对传输数据(明文数据)进行加密(密文数据):再利用对应算法,将加密数据解密变为真实数据 优点:实现了数据机密传输,避免了明文传输数据的

部署HTTPS不代表网络安全万无一失

<网络安全法>将在今年6月会全面实施,网络安全已经成为上升到国家发展层面上的战略方向.在网络安全事件频发的时代,广泛的部署HTTPS成为一大趋势,你有时会发现地址栏出现一把“绿色小锁”,网址链接中的“HTTP”也被绿色的“HTTPS”所取代.那么,HTTP变成HTTPS就安全了?部署HTTPS就代表网站安全万无一失了?听听业界专家如何分析. 为什么要用HTTPS 美国民主与技术中心 CDT 首席技术专家 Joseph Hall 表示,HTTPS最大的两个优势就是保密性和完整性.技术专家认为,部

HTTPS加密传输数据,加强P2P平台网络安全和信任

12月28日,银监会会同工信部.公安部.网信办等部门研究起草了<网络借贷信息中介机构业务活动管理暂行办法(征求意见稿)>(以下简称<办法>),并向社会公开征求意见.该<办法>对P2P相关的生态服务机构(如:CA机构.公证机构)提出了政策支持,其中有专门篇幅强调了P2P机构加强网络与信息安全及使用电子认证的重要性. <办法>明确指出:"网络借贷信息中介机构应按照国家网络安全相关规定和国家信息安全等级保护制度的要求,开展信息系统定级备案和等级测试,具有

HTTPS原理

(美团2016研发工程师模拟笔试题 )8.浏览器和服务器在基于https进行请求链接到数据传输过程中,用到了如下哪些技术:(ABCD) A.非对称加密技术 B.对称加密技术 C.散列(哈希)算法 D.数字证书 解析:HTTPS原理(原文链接:http://www.guokr.com/post/114121/) 谣言粉碎机前些日子发布的<用公共WiFi上网会危害银行账户安全吗?>,文中介绍了在使用HTTPS进行网络加密传输的一些情况,从回复来看,争议还是有的.随着网络越来越普及,应用越来越广泛,