| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> HTTP和HTTPS区别 -> 正文阅读 |
|
[网络协议]HTTP和HTTPS区别 |
简介????????超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明 文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的 传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用 卡号、密码等支付信息。 ????????为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议 HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服 务器的身份,并为浏览器和服务器之间的通信加密。 ??????? 也就是说http协议在使用明文传送信息的过程中,是没有数据加密的,而为了解决这个问题, 就用到了另一个具有ssl加密安全传输协议https, http和https的基本概念????????HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标 准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高 效,使网络传输减少。 HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层, HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的 安全;另一种就是确认网站的真实性。 http和https的优缺点http的优点??????? 1.连接简单,是无状态的 ??????? 2.页面响应的速度较快 ?????? 3. http比https使用的更加普遍 http的缺点??????? 1.通信使用明文,内容可能被窃听?? ,如图 可以看到我们因为使用的是明文传输,在这个过程中,很容易被其他人窃听到重要的信息 ???????? 2.不验证通信方身份,因此有可能遭遇伪装?? ,如图 这一点也是http最致命的一点,很容易就会被其他人入侵,盗走重要信息 ???????? 3.无法验证报文的完整性,所有有可能已篡改? ,如图 在接受信息的过程中,无法分辨信息的真实性,中间很可能已经被篡改 ?https的优点????????HTTP + 加密 + 认证 + 完整性保护 = HTTPS ??????? 1.HTTPS采用对称加密和非对称加密所混合的加密机制,它很好的解决了对称加密密钥被截 取的问题。 如图 ????????当我们发送了一个文件,使用公开密钥进行加密,这个时候就算我们的这个文件被其他人给 盗取,他也没有办法破解,只有拥有私有密钥的才能进行匹配 ???????? 2.使用数字证书认证机构和其颁布的公开密钥证书进行认证。即让第三方独立机构进行验 证。 ???????? 3.使用https协议可认证用户和服务器,确保数据发送到正确的客户机和服务器 ????? ?? 4.https协议是由SSL+http协议构建的可进行加密传输、身份认证的网络协议,要比http协议 安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性 https的缺点??????? 1.https连接缓存不如http高效,大流量网站如非必要也不会采用,流量成本太高。 ??????? 2.https的连接过程是繁琐的,不是特别简单 ??????? 3.SSL证书需要去,功能越强大的证书费用越高,个人网站、小网站没有必要一般不会用。 ??????? 4.加密通信与纯文本通信相比,消耗更多的CPU和内存资源 这也就是为什么https的加密性强还是没有http使用的多 http和https有什么区别?(重点)HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常 不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer) 协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。简单来说,HTTPS协议是由 SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。 HTTPS和HTTP的区别主要如下: 1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。 2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。 3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。 4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传 输、身份认证的网络协议,比http协议安全 ?????? 5.HTTP 页面响应速度比 HTTPS 快,主要是因为 HTTP 使用 TCP 三次握手建立连接,客户 端和服务器需要交换 3 个包,而 HTTPS除了 TCP 的三个包,还要加上 ssl 握手需要的 9 个包, 所以一共是 12 个包。 ?????? 6.HTTPS 其实就是建构在 SSL/TLS 之上的 HTTP 协议,所以,要比较 HTTPS 比 HTTP 要 更耗费服务器资源。 http如何切换到HTTPS?????????如果需要将网站从http切换到https到底该如何实现呢? ????????这里需要将页面中所有的链接,例如js,css,图片等等链接都由http改为https。例如 http://www.baidu.com改为https://www.baidu.com BTW,这里虽然将http切换为了https,还是建议保留http。所以我们在切换的时候可以做http 和https的兼容,具体实现方式是,去掉页面链接中的http头部,这样可以自动匹配http头和https 头。例如:将http://www.baidu.com改为//www.baidu.com。然后当用户从http的入口进入访问页面 时,页面就是http,如果用户是从https的入口进入访问页面,页面即使https的。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 8:36:15- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |