博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【思维导图】深入理解HTTPS原理、过程
阅读量:6415 次
发布时间:2019-06-23

本文共 1112 字,大约阅读时间需要 3 分钟。

我们经常会遇到页面被运营商插入小广告这种事情(数据被篡改),可想而知,HTTP是有多么不安全。

如何做到的?

答:

只需要设定相应的DNS,做一个中间人攻击,再将修改后的数据返回。

那么:解决上面问题需要考虑哪些因素:

HTTPS的设计的时候就主要考虑了以上的主要因素:

  • 数据加密 --传输内容进行混淆

    • 非对称加密(也叫公钥加密)

    • 对称加密(也叫密钥加密)

  • 身份验证 --通信双方验证对方的身份真实性

  • 数据完整性保护 --检测传输的内容是否被篡改或伪造

因此切换使用HTTPS,就可以防止页面被运营商篡改问题。

HTTPS概念如下:

简单用图表示:

安全HTTP的实现

数据完整性

数字签名是只有信息发送者才能产生的别人无法伪造的一段文本
这段文本是对信息发送者发送信息真实性的一个有效
证明,具有不可抵赖性

报文的发送方从报文文本生成一个128位的散列值(或称为报文摘要活哈希值),发送方使用自己的私钥对这个摘要值进行加密来形成发送方的数字签名。

然后这个数字签名将作为报文的附件一起发送给报文的接收方。

报文的接收方首先从接收到的原始报文中计算出128位的散列值,再用发送方的公钥来对报文附加的数字签名进行解密。

如果两次得到的结果是一致的那么接收方可以确认该数字签名是发送方的,同时确认信息是真实的

HTTPS数据交互过程:

HTTP中没有加密机制,可以通过SSL(Secure Socket Layer 安全套接层)或TLS(Transport Layer Security 安全层传输协议)的组合使用,加密HTTP的通信内容。

SSL工作在OSI七层模型中的表示层,TCP/IP 四层模型的应用层。

SSL记录协议操作:

  • 分段 将每个上层消息分解成不大于2^14(16384)位,然后有选择的进行压缩

  • 添加MAC 在压缩数据的基础上计算MAC

  • 加密 消息加上MAC用对称加密方法加密

  • 添加SSL记录头 内容类型(8位),主版本(8位),副版本(8位),压缩长度(16位)

SSL握手过程:

SSL协议两个重要概念,SSL会话,SSL连接;

SSL连接是点到点的连接,而且每个连接都是瞬态的,每一个链接都与一个会话关联。

SSL会话是一个客户端和一个服务器之间的一种关联,会话由握手协议(Handshake Protocol)创建,所有会话都定义了一组密码安全参数,这些安全参数可以在多个连接之间共享,会话可以用来避免每一个链接需要进行的代价高昂的新的安全参数协商过程。

好的,今天的介绍先到这里了哈。

转载于:https://juejin.im/post/5ab8b6d16fb9a028bd4c4dfe

你可能感兴趣的文章
讨论:今日头条适配方案使用中出现的问题
查看>>
CSS3 3D翻转动画
查看>>
送给即将踏入软考征途的你
查看>>
要命啦!Word中快速录入大全,内含快捷键小技巧,快来一起学习!
查看>>
javascript实现音频mp3播放
查看>>
html5-离线缓存
查看>>
linux系统安装完后的常见工作
查看>>
在Linux服务器、客户端中构建密钥对验证进行远程连接
查看>>
揪出MySQL磁盘消耗迅猛的真凶
查看>>
和“C”的再遇
查看>>
一键安装kubernetes 1.13.0 集群
查看>>
RabbitMq的集群搭建
查看>>
spring boot + mybatis 同时访问多数据源
查看>>
URL中汉字转码
查看>>
[转]go正则实例
查看>>
Selector中关于顺序的注意事项
查看>>
font-size: 62.5% 的含义
查看>>
小黑小波比.清空<div>标签内容
查看>>
Java中的ExceptionInInitializerError异常及解决方法
查看>>
Spring 注入bean时的初始化和销毁操作
查看>>