四、HTTP和HTTPS的区别
1:简介
超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息,比如信用卡号、密码等。
为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS。为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。
HTTPS和HTTP的区别主要为以下四点:
(1)https协议需要到ca申请证书,一般免费证书很少,需要交费。
(2)http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。
(3)http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
(4)http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
2:HTTPS优势
在目前的技术背景下,HTTPS是现行架构下最安全的解决方案:
(1)使用HTTPS协议可认证用户和服务器,确保数据发送到正确的客户机和服务器(防止抓包工具对请求进行抓包分析和篡改);
(2)HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性。
(3)HTTPS是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本。
3:HTTPS数据传输流程
> 浏览器将支持的加密算法信息发送给服务器
> 服务器选择一套浏览器支持的加密算法,以证书的形式回发浏览器
> 浏览器验证证书合法性,并结合证书公钥加密信息发送给服务器
> 服务器使用私钥解密信息,验证哈希,加密响应消息回发浏览器
> 浏览器解密响应消息,并对消息进行验真,之后进行加密交互数据
4:HTTPS加密的方式
> 对称加密: 加密和解密都使用同一个密钥(安全行较非对称加密低,性能较高)
> 非对称加密: 加密使用的密钥和解密使用的密钥是不相同的(安全行较对称加密高,性能较低)
> 哈希算法: 将任意长度的信息转换为固定长度的值,算法不可逆
> 数字签名: 证明某个消息或者文件是某人发出/认同的
四、HTTP和HTTPS的区别的更多相关文章
- 大前端学习笔记整理【七】HTTP协议以及http与https的区别
前言 还是老样子,新博客开始前总是想先啰嗦几句...HTTP协议其实在当初学习java时老师就有提过...但是...反正就那么过去了... 这段时间公司的项目正好要求做https的转换和迁移,然后自己 ...
- 浅谈HTTP和HTTPS的区别
这篇随笔我们从六个步骤来学习: 1.了解HTTP和HTTPS的基本概念 2.HTTPS诞生的目的 3.HTTP与HTTPS的区别 4.HTTP和HTTPS的工作原理 5.HTTPS的优缺点 6.如何将 ...
- 连表查询都用Left Join吧 以Windows服务方式运行.NET Core程序 HTTP和HTTPS的区别 ASP.NET SignalR介绍 asp.net—WebApi跨域 asp.net—自定义轻量级ORM C#之23中设计模式
连表查询都用Left Join吧 最近看同事的代码,SQL连表查询的时候很多时候用的是Inner Join,而我觉得对我们的业务而言,99.9%都应该使用Left Join(还有0.1%我不知道在 ...
- 详细解析 HTTP 与 HTTPS 的区别
详细解析 HTTP 与 HTTPS 的区别 超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览 ...
- 面试基础试题 一 http和HTTPS的区别
作为老生常谈的问题,我主要给出我自己的理解和结合大牛的叙述的综合看法,来检验自己学习 超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何 ...
- 2019-09-16 http 和 https的区别
一.Http和Https的基本概念 Http:超文本传输协议(Http,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.设计Http最初的目的是为了提供一 ...
- python爬虫---详解爬虫分类,HTTP和HTTPS的区别,证书加密,反爬机制和反反爬策略,requests模块的使用,常见的问题
python爬虫---详解爬虫分类,HTTP和HTTPS的区别,证书加密,反爬机制和反反爬策略,requests模块的使用,常见的问题 一丶爬虫概述 通过编写程序'模拟浏览器'上网,然后通 ...
- 转 关于HTTP和HTTPS的区别
关于HTTP和HTTPS的区别 运维猿 2018-12-01 07:30:00 一 HTTP和HTTPS的基本概念 1.HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答 ...
- http和https到底区别在哪
一.Http和Https的基本概念 Http:超文本传输协议(Http,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.设计Http最初的目的是为了提供一 ...
- 理解HTTP和HTTPS的区别
原问转载于https://www.mysubmail.com/chs/blog/view/47 这两天闲来无事,在网上看了一下,发现 HTTP 和 HTTPS 的区别很受关注,多位大牛做了很详细的阐述 ...
随机推荐
- ExtJs6解决添加和修改Form共用一个form的隐藏域的id的取消传值
问题重现:修改不会有问题,id会绑定之前的grid,有具体数字 添加有问题,因为id是空,传的是绑定值的话会显示“类名-1”,从int类型变成了string类型,后台会出错 这是EduQuestion ...
- HDU 5690——All X——————【快速幂 | 循环节】
All X Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submi ...
- 进入与退出anconda虚拟环境
# 进入虚拟环境,使用 # # $ conda activate spider-venv # # 退出虚拟环境,使用 # # $ conda deactivate
- access 2010,数学
access 2010(窗体控制和创建窗体) 窗体向导:选择表格---创建---窗体---窗体向导---选择表/查询---全选可用字段---选择布局---设置标题---完成. 其他窗体:选择表格--- ...
- ecs CentOS 7 安装 mariadb
检查之前是否已经安装 rpm -qa | grep mariadb 如果已安装,卸载 yum remove mysql mysql-server mysql-libs compat-mysql51 开 ...
- js如何判断字符串里面是否含有某个字符串
方法一: indexOf() (推荐) var str = "123"; console.log(str.indexOf("3") != -1 ); // tr ...
- css美化checkbox
- 001服务注册与发现Eureka
1.POM配置 和普通Spring Boot工程相比,仅仅添加了Eureka Server依赖和Spring Cloud依赖管理 <dependencies> <!--添加Eurek ...
- Keras 时序模型
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Thinking_boy1992/article/details/53207177 本文翻译自 时序模 ...
- Android recyclerview删除item刷新列表
删除item坑 mModels.remove(i); notifyItemRemoved(i); //必须调用这行代码 notifyItemRangeChanged(i, mModels.size() ...