https与http的简要区别
博客专区 > sting_bo 的博客 > 博客详情
https与http的简要区别
sting_bo 发表于2年前
https与http的简要区别
  • 发表于 2年前
  • 阅读 100
  • 收藏 1
  • 点赞 1
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: https与http类似,只是在传递信息过程中采用了非对称和对称两种加密方式,使用前提是你申请了免费的或是购买了受浏览器信任的证书,其实就是一对密钥(公钥和私钥,不知我这么理解有没有错误),配置完成之后(这也可以写个小博文),打开网页就可以看到浏览器左上角显示https且是绿色的;
    背景:我不是专业运维,且毕业从事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简要原理图

标签: http https osi
共有 人打赏支持
粉丝 4
博文 2
码字总数 1714
×
sting_bo
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: