permike 原文 HTTP协议与HTTPS的区别


HTTP协议
HTTP协议主要应用是在服务器和客户端之间,客户端接受超文本。

HTTP是在七层网络模型中的应用层的协议,由发送请求和接受响应构成,是一个标准的客户端服务器模型。与此同时,HTTP是一个无状态的协议。也就是说,不能通过一个状态判断连接的状态,因此有时候,计算机之间通信需要通过其他协议来协同工作,一起提供支持。

(1)基于B/S模式,即客户/服务器模式。同时可以提供登陆认证和网间安全传输,例如HTTP下加入SSL层,可以提供安全的HTTPS服务。

每一种请求方法都有自己的适用范围,在请求报文的内部,通过一些规则,说明了用户与Web服务器之间沟通的类型。同时,HTTP协议规则较为简单,因此使用HTTP服务器的系统,代码和程序规模都会比较轻量级,但是通信的速度却效率较高。

数据结构的数据对象。而且,通过一个简单的头信息,例如将正在传输的类型由Content-Type加以标记,于是可以区分开。

同时,高版本HTTP协议,HTTP1.1支持持续连接:多个对象可以通过一个连接可传送,不需要每次传输一个web对象就去创建一个新的连接。

架构》·李智慧)”。

HTTP协议的报文格式
HTTP协议的请求报文
当浏览器向服务器发送一个请求到Web服务器,它发送一个数据块,或请求信息,

请求方法URI协议/版本;

请求正文;

GET/test.jsp HTTP/1.1
Accept:image/test.image/jpeg,*/*
Accept-Language:zh-cn
Connection:Keep-Alive
Host:222.35.232.103
User-Agent:Mozila/5.0(compatible;MSIE5.01;Window NT5.0)
Accept-Encoding:gzip,deflate
username=idc&password=linuxidc
(1)请求方法URI协议/版本

GET/test.jsp HTTP/1.1

根据HTTP标准,HTTP请求可以使用多种不同的请求方法。例如:HTTP1.1允许支持七种请求方法(也叫“动作”):GET、POST、HEAD、OPTIONS、PUT、DELETE和TARCE。日常开发中,GET和POST是最常用的方法,主要在相关的Web开发中。

需要注意,方法名称很重要的一点是严格区分大小写。有些时候,某个请求所针对的资源可能不支持对应的请求方法,会通过不同的状态码给出响应。例如,服务器将返回一个状态码405(方法不允许),当请求服务器或方法不理解不支持相应的时间,返回一个状态码501(没有实现)。

请求头包含了一些客户环境和请求的内容信息。例如,请求头可以声明浏览器内核和语言使用,请求的长度等。

windows

请求正文和请求头要有空行。这个空行必须存在,说明结束请求头传输,开始传输正文请求。请求正文中一般包含很多信息,例如用户提交的用户名和密码之类的登陆信息:userlogin=linuxidc&currentpwd=linuxidc

求中一样,请求正文只有简单的一行数据。

(1)协议状态版本代码描述

(3)响应正文

HTTP/1.1 200 OK
Server:Apache Tomcat/7.0.1
Date:Mon,6Oct2014 13:23:42 GMT
Content-Length:102
<html>
<head>
<title>HTTP响应文件<title>
</head>
<body>
这是HTTP响应文件!
</body>
</html>
客户端向服务器发送请求,和请求报文类似,服务器会以状态行响应。

HTTP响应报文的首先是以状态行开始,这些可以参考示例的代码。

与HTTPS协议的区别
Https是一种基于SSL/TLS的Http协议,所有的http数据都是在SSL/TLS协议封装之上传输的。

——>HTTP协议运行在TCP之上,所有传输的内容都是明文,客户端和服务器端都无法验证对方的身份。

——>HTTPS是运行在SSL/TLS之上的HTTP协议,SSL/TLS运行在TCP之上。所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥用服务器方的证书进行了非对称加密。

算法。

1.浏览器将自己支持的一套加密规则发送给网站。

3.获得网站证书之后浏览器要做以下工作:

b) 如果证书受信任,或者是用户接受了不受信的证书,浏览器会生成一串随机数的密码,并用证书中提供的公钥加密。

4.网站接收浏览器发来的数据之后要做以下的操作:

b) 使用密码加密一段握手消息,发送给浏览器。

此时握手过程结束,之后所有的通信数据将由之前浏览器生成的随机密码并利用对称加密算法进行加密。

测试。

非对称加密算法:RSA,DSA/DSS

HASH算法:MD5,SHA1,SHA256

由于浏览器生成的密码是整个数据加密的关键,因此在传输的时候使用了非对称加密算法对其加密。

TLS握手过程中如果有任何错误,都会使加密连接断开,从而阻止了隐私信息的传输。

HTTP协议与HTTPS的区别相关推荐

  1. http和https的区别 与 SSL/TLS协议运行机制的概述

    http和https的区别 与 SSL/TLS协议运行机制的概述 参考1 1 http 是不使用的SSL/TSL的通信通道 窃听风险:第三方获取通信内容 篡改风险:修改通信内容 冒充风险:冒充他人身份 ...

  2. HTTP协议工作原理(与HTTPS的区别)

    HTTP是超文本传输协议,由请求和响应构成,HTTP协议永远都是客户端发起请求,服务端回送响应 HTTP协议工作原理 首先,DNS会解析域名获取IP地址 而后TCP通过三次握手建立链接 建立链接后客户 ...

  3. 网站开发(一)http和https的区别 http是什么?http协议的特性 http与https网站通信协议两者的有什么不同呢?

    目录 一.前言 二.HTTP是什么? 1.HTTP发展阶段 2.HTTP工作原理 3.HTTP的工作特性 三.HTTP和HTTPS区别 1.http与https端口不同 2.http和https应用 ...

  4. 说说 Http协议与https协议区别

    Http协议与https协议区别: 1:https协议需要到ca申请证书,一般免费的证书比较少,一般都需要交费 2:http是超文本传输,信息是文明 传输,https则具备有安全性的ssl加密传输协议 ...

  5. http与https的区别,http 1.0与1.1的区别

    Http与Https的区别: HTTP 的URL 以http:// 开头,而HTTPS 的URL 以https:// 开头 HTTP 是不安全的,而 HTTPS 是安全的 HTTP 标准端口是80 , ...

  6. 前端面试http和https的区别

    作为一名前端"代码猿"在面试的时候竞猜或问道: 面试官:"tcp/ip协议分为几层?" 面试官:"tcp握手三次建立建立过程?" 面试官:& ...

  7. JavaSE(二十五)——String与StringBuffer、StringBuilder的区别、创建对象的几种方法、Http和Https的区别

    文章目录 1. String与StringBuffer.StringBuilder的区别 2. Java创建对象的几种方法 3. Http和Https的区别 1. String与StringBuffe ...

  8. 请说明一下http和https的区别

    请说明一下http和https的区别 https协议需要申请证书到CA,需要一定经济成本 http是明文传输,https是加密的安全传输 连接的端口不一样,http是80,https是443 http ...

  9. 【建议收藏】HTTP与HTTPS的区别

    HTTP与HTTPS的区别 1.HTTP协议的缺陷 超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了W ...

最新文章

  1. jquery 选择时间(小时)区间(四)
  2. c中调用python解释器
  3. 一直觉得饿是什么问题
  4. IDLE 策略算法 放置奇兵 小破船翻船记录(悬空岛——冒险(航海))
  5. 微信小程序 基础3【组件化开发、自定义组件、全栈开发、使用Express】
  6. nginx源码分析—数组结构ngx_array_t
  7. 线程导入大数据入库_大数据处理及分析该怎么做?用这款数据分析软件轻松搞定...
  8. php mysql 数据库操作_php操作MySQL数据库
  9. 诊所系统php,诊所管理系统
  10. HTTPS科普扫盲帖【转】
  11. SQL已知现在的某一天求去年的同一天或去年同月份的第一天
  12. js统计页面访问次数
  13. 17、Java——汽车租赁系统(对象+数组)
  14. python在财务中的应用实训报告-衡南2020年_商务办公软件应用与实践_高校邦_期末答案...
  15. Oracle-12c新功能基于时间点recover table
  16. php算法----队列
  17. 堪称神器的Chrome插件
  18. 30个非常流行的提示信息插件(jQuery Tooltip Plugin)
  19. 我国非按劳分配收入初探
  20. IFIX组态----语音报警实例

热门文章

  1. Eclipse导入Android项目的方法(转)
  2. SonicWall:速度修复这些严重的 SMA 100 漏洞
  3. 用幼儿园所学拆解美国总统网络安全行政令(含软件供应链安全)
  4. Npm 恶意包试图窃取 Discord 敏感信息和浏览器文件
  5. 已遭利用的微软0day CVE-2020-1464,原来是两年前的老相识
  6. 针对巴基斯坦的某APT活动事件分析
  7. C#DataTable2Json(附时间格式化)
  8. Tabio – 轻松,高效的管理 Chrome 标签页
  9. Python 代码覆盖率统计工具 coverage.py
  10. eclipse在线安装ivy和ivyde