文档章节

https与http的简要区别

sting_bo
 sting_bo
发布于 2015/08/24 22:22
字数 867
阅读 101
收藏 1
点赞 1
评论 0
    背景:我不是专业运维,且毕业从事PHP才刚一年,对Linux服务器也是在摸索中,为了熟悉Linux,我在Windows和Linux之间切换了无数次,最后终于在日常使用中都适应Linux了,一如当初在sublime和vim,svn和git,拼音和五笔之间来回切换;
    之前公司做的产品是以ASP形式提供给客户使用,所以每签一个客户,都需要客户提供他们的服务器给我司,然后我再去客户的服务器上给布署环境,后来公司领导决定做SaaS,要求之一是要把http换为https,为了信息安全,然后我就开始各种搜索,最后如愿以偿,但实现不是重点,重点是某天有人问我,https和http有什么区别时,我回答:一个加密一个没有加密,https更安全。别人接着问为什么?我无言了。此后我甚至怀疑我配置的https到底有没有作用,后来我才去详细的学习,第一次写博文,而且是照着自己的理解,肯定有不对的地方,请大家斧正,非常感谢!

    http是一种无状态协议,在OSI七层模型(由底到高:物理层,数据链路层,传输层,网络层,会话层,表示层,应用层)的最上层:应用层,浏览器向服务器通过http协议发送请求(request),然后服务器响应(response),其中在网络层会有TCP协议,有大家熟悉的"三次握手",相关的还有UDP协议,大家可以了解一下(OSI七层模型以后会单写)。
    一次成功的http请求包含四步:
        1,建立连接;
        2,客户端发送http请求头;
        3,服务器响应生成结果返回;
        4,服务器端关闭连接,客户端解析,渲染页面;
    https与http类似,只是在传递信息过程中采用了非对称和对称两种加密方式,使用前提是你申请了免费的或是购买了受浏览器信任的证书,其实就是一对密钥(公钥和私钥,不知我这么理解有没有错误),配置完成之后(这也可以写个小博文),打开网页就可以看到浏览器左上角显示https且是绿色的;
    一次成功的https请求:
        1,浏览器请求服务器;
        2,服务器返回公钥(下面简称pub);
        3,浏览器检查pub是否有效,有效,生成一个随机密钥(下面简称key),用pub把key加密后传递给服务器(data1);
        4,服务器用私钥(下面简称pri)解密data1,获取key,把要返回的数据有key加密(data2)后返回给客户端;
        5,客户端用key解密data2,获取返回的数据;
可以用下面这张图来说明(图是找的):

https简要原理图

© 著作权归作者所有

共有 人打赏支持
sting_bo
粉丝 3
博文 2
码字总数 1714
作品 0
朝阳
高级程序员
HTTP与HTTPS区别/HTTPS知识点

关于2017年AppStore新提交应用必须打开ATS的要求只剩下一个多月了,相信大部分开发者都已经完成了从http到https的升级。当然了,现在谁也不知道如果依旧关闭ATS,审核的时候会发生什么。挑战...

秦无炎 ⋅ 2016/12/12 ⋅ 0

面试总结(php)

面试总结 博主(现在)是大三下学期,由于学校大四可以全nian实习,于是就开始了实习之路 在招聘网站上给盛大游戏(php实习生)投递了简历,因为当时盛大游戏在上海,而我本人是在山东,当时想多找...

eatnothing ⋅ 2016/04/24 ⋅ 4

Java面似宝典--Java Web(JSP、Servlet、各常用框架SSH、MyBatis等)

1、什么MVC模式?说说你对MVC的理解。 2、工作中经常用到的框架有哪些?它们各自的优缺点是什么? 3、说说Struts、Spring中的设计模式。 4、拦截器和过滤器两者的区别是什么? 5、简述一下,...

瓜子葫芦侠 ⋅ 2014/03/26 ⋅ 0

Tomcat配置https及访问http自动跳转至https

https介绍: HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密...

漠、 ⋅ 2012/06/18 ⋅ 0

Java程序员面试的5点小技巧

程序员面试的时候掌握更多的技巧,就能在面试时更加得心应手,更顺利的拿到理想的offer,本文为大家介绍一下java面试的小技巧,希望能对大家的面试有帮助: 1. 笔试 一般是笔试,笔试这个环节...

李序锴 ⋅ 2017/11/09 ⋅ 0

HTTPS 部署简要指南

许多Web开发者都知道SSL,但常见的情况是SSL没有完整地部署或者没有部署在它应该部署的地方。这篇关于何时及如何部署SSL的简要指南,将帮助你避免大多数常见错误。 要点 如果你有任何机密信息...

heroShane ⋅ 2014/02/08 ⋅ 0

Jsoup实战_2_WhiteList清理文档

在做网站的时候,经常会提供用户评论的功能。有些不怀好意的用户,会搞一些脚本到评论内容中,而这些脚本可能会破坏整个页面的行为,更严重的是获取一些机要信息,此时需要清理该HTML,以避免...

lkee6760 ⋅ 05/21 ⋅ 0

Git命令速查表

git的各种命令实在是太多了,我们常常记不住,现结合网上的一些文章总结如下: 1、常用的Git命令 命令 简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply 应用补丁 ...

麦壳原野 ⋅ 2014/05/04 ⋅ 0

北京武耀科技cocos2dx面试题

分别写出bool,int,float,指针a与“零值”比较的语句。 局部变量可否与全局变量重名? 引用和指针有什么区别? 将引用作为函数参数和返回值有哪些特点?有哪些注意事项? 结构和联合有何区别?...

秦无战 ⋅ 2014/06/12 ⋅ 0

Git 命令速查表

二、 Git 命令速查表 1、常用的Git命令 命令 简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply 应用补丁 git am 应用邮件格式补丁 git annotate 同义词,等同于 gi...

SibylY ⋅ 2015/06/24 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

聊聊spring cloud的RequestRateLimiterGatewayFilter

序 本文主要研究一下spring cloud的RequestRateLimiterGatewayFilter GatewayAutoConfiguration @Configuration@ConditionalOnProperty(name = "spring.cloud.gateway.enabled", matchIfMi......

go4it ⋅ 31分钟前 ⋅ 0

Spring JavaConfig 注解

JavaConfig注解允许开发者将Bean的定义和配置放在Java类中。它是除使用XML文件定义和配置Bean外的另一种方案。 配置: 如一个Bean如果在XML文件可以这样配置: <bean id="helloBean" class="...

霍淇滨 ⋅ 39分钟前 ⋅ 0

Spring clound 组件

Spring Cloud技术应用从场景上可以分为两大类:润物无声类和独挑大梁类。 润物无声,融合在每个微服务中、依赖其它组件并为其提供服务。 Ribbon,客户端负载均衡,特性有区域亲和、重试机制。...

英雄有梦没死就别停 ⋅ 40分钟前 ⋅ 0

Confluence 6 重新获得站点备份文件

Confluence 将会创建备份,同时压缩 XML 文件后存储熬你的 <home-directory>/backups> 目录中。你需要自己访问你安装的 Confluence 服务器,并且从服务器上获得这个文件。 运行从 Confluence...

honeymose ⋅ 45分钟前 ⋅ 0

informix的常用SQL语句

1、创建数据库 eg1. 创建不记录日志的库testdb,参考语句如下: CREATE DATABASE testdb; eg2. 创建带缓冲式的记录日志的数据库testdb(SQL语句不一定在事务之中,拥有者名字不被用于对象的解...

wangxuwei ⋅ 今天 ⋅ 0

matplotlib画图

最简单的入门是从类 MATLAB API 开始,它被设计成兼容 MATLAB 绘图函数。 from pylab import *from numpy import *x = linspace(0, 5, 10)y = x ** 2figure()plot(x, y, 'r')...

Dr_hu ⋅ 今天 ⋅ 0

RabbitMQ学习以及与Spring的集成(三)

本文介绍RabbitMQ与Spring的简单集成以及消息的发送和接收。 在RabbitMQ的Spring配置文件中,首先需要增加命名空间。 xmlns:rabbit="http://www.springframework.org/schema/rabbit" 其次是模...

onedotdot ⋅ 今天 ⋅ 0

JAVA实现仿微信红包分配规则

最近过年发红包拜年成为一种新的潮流,作为程序猿对算法的好奇远远要大于对红包的好奇,这里介绍一种自己想到的一种随机红包分配策略,还请大家多多指教。 算法介绍 一、红包金额限制 对于微...

小致dad ⋅ 今天 ⋅ 0

Python 数电表格格式化 xlutils xlwt xlrd的使用

需要安装 xlutils xlwt xlrd 格式化前 格式化后 代码 先copy读取的表格,然后按照一定的规则修改,将昵称中的学号提取出来替换昵称即可 from xlrd import open_workbookfrom xlutils.copy ...

阿豪boy ⋅ 今天 ⋅ 0

面试题:使用rand5()生成rand7()

前言 读研究生这3 年,思维与本科相比变化挺大的,这几年除了看论文、设计方案,更重要的是学会注重先思考、再实现,感觉更加成熟吧,不再像个小P孩,人年轻时总会心高气傲。有1 道面试题:给...

初雪之音 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部