Https的含义

  • Https属于Http加上TLS/SSL协议构建的可进行加密传输、身份认证的网络协议,主要通过数字证书、加密算法、非对称密钥等技术完成互联网数据加密传输,实现互联网传输安全保护。
  • SSL证书是数字证书的一种,因为配置在服务器上也称为服务器SSL证书,由受信任的数字证书颁发机构CA在验证服务器身份后颁发的数字证书。

通过http协议访问网站时,浏览器和服务器之间是明文传输。服务器安装SSL证书后,使用https加密协议访问网站,可激活客户端浏览器到网站服务器之间的“SSL加密通道”
HTTPS的优点

尽管HTTPS并非绝对安全,掌握根证书的机构、掌握加密算法的组织同样可以进行中间人形式的攻击,但HTTPS仍是现行架构下最安全的解决方案,主要有以下几个好处:
HTTPS的优点
  (1)使用HTTPS协议可认证用户和服务器,确保数据发送到正确的客户机和服务器;

(2)HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性。

(3)HTTPS是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本。

(4)谷歌曾在2014年8月份调整搜索引擎算法,并称“比起同等HTTP网站,采用HTTPS加密的网站在搜索结果中的排名将会更高”。

HTTPS的缺点

虽然说HTTPS有很大的优势,但其相对来说,还是存在不足之处的:

(1)HTTPS协议握手阶段比较费时,会使页面的加载时间延长近50%,增加10%到20%的耗电;

(2)HTTPS连接缓存不如HTTP高效,会增加数据开销和功耗,甚至已有的安全措施也会因此而受到影响;

(3)SSL证书需要钱,功能越强大的证书费用越高,个人网站、小网站没有必要一般不会用。

(4)SSL证书通常需要绑定IP,不能在同一IP上绑定多个域名,IPv4资源不可能支撑这个消耗。

(5)HTTPS协议的加密范围也比较有限,在黑客攻击、拒绝服务攻击、服务器劫持等方面几乎起不到什么作用。最关键的,SSL证书的信用链体系并不安全,特别是在某些国家可以控制CA根证书的情况下,中间人攻击一样可行。

TCP协议

  • 它的可靠就是数据包不丢失、不错误、不乱序。

TCP协议结构

它是由两个部分组成的:一部分是TCP首部(头部)+TCP数据部分(我们需要传输的东西)

TCP首部也是有两个部分组成:一个部分是20个字节的固定首部,一个是选项部分

  • 端口号分为:熟知端口(公认端口)、注册端口、动态端口(临时端口或者短暂端口,范围:49152-65535)
    两个端口的作用:用于区别应用程序的。

  • 序号:在TCP协议当中,它传送的数据流中,每一个字节都会遍上一个序号。

URG:紧急比特(紧急数据),它可以是0也可以是1.表示紧急指针字段有效。

ACK:确认。当这个字段值是1时,回复才算有效,如果为0时,确认号就是无效的。

RST:复位比特,拒绝连接请求时会出现(对应不上端口或对端没有这个端口) RST=1.
异常终止的情况或者终止空闲的情况。

SYN:初始或者同步。第一访问远端设备的时候,经过三次握手,第一次请求就是SYN=1;

FIN:结束(终止比特) FIN=1。

表示的是标志位

  • 窗口:用来控制对方发送数据的量(大小)
  • 检验和:主要是保障数据从源端到目的端 发送数据的过程中,不要出现 差错、不要被修改、不要被丢弃。

三次握手(建立联系)

  • 客户端发报文:SYN=1,seq=x;
  • 服务器回应报文:SYN=1,ACK=1,seq=y,ack=x+1;
  • 客户端回应报文:ACK=1,,seq=x+1,ack=y+1;

易受攻击点
SYN:泛洪,或拒绝式服务攻击。(用错误的ip进行去占用端口号)

客户端和服务器都是要有 IP 端口号

  • RWND:是服务器告诉客户端,我现在可以接收多少个字节。窗口–提高数据传输的效率设置。反之客户端也可以给服务器发送

四次挥手(关闭链接)

  • 客户端发送报文:FIN=1,seq=a;
  • 服务器响应报文:ACK=1,seq=b,ack=a+1;
  • 服务器发送报文:FIN=1,ACK=1,seq=c,ack=a+1;
  • 客户端响应报文:ACK=1,seq=a+1,ack=c+1

Https与TCP协议的三次握手、四次挥手相关推荐

  1. go tcp客户端自动重连_阿里面试: HTTP、HTTPS、TCP/IP、三次握手四次挥手过程?(附全网最具深度讲解)

    前言 这段时间面试官都挺忙的,频频出现在博客文章标题,虽然我不是特别想蹭热度,但是实在想不到好的标题了-.-,蹭蹭就蹭蹭 :) 事实上我在阿里面试的时候确实被问到了这个问题,HTTP.HTTPS.TC ...

  2. 什么是TCP协议的三次握手四次挥手

    IP协议.HTTP协议.TCP协议.TCP/IP 协议我们经常遇到,而且初学的时候容易弄混.那么他们之间有什么关系呢?重点内容 ####1.什么是TCP/IP 协议 TCP/IP不是一个协议,而是一个 ...

  3. 【网安】初学者,第一天day1 (什么是域名,常见的端口和协议,三次握手四次挥手)

    网安小白第一天 了解什么是域名,常见的端口和协议,三次握手四次挥手 第一次接触网安,从0到1. 一.域名 1.定义 域名是用于在识别和定位Internet上计算机的层次结构式的字符标识,它对应于计算机 ...

  4. TCP为什么需要三次握手四次挥手

    TCP为什么需要三次握手四次挥手 三次握手 TCP是通过程序实现的,可靠的,面向连接的协议.而程序是严谨的,每一次建立连接都会进行"三次握手"这样的步骤. 建立连接的目的是为了可靠 ...

  5. Linux网络编程(网络七层协议,TCP/IP,三次握手四次挥手,TCP/UDP的区别)

    1.OSI 7层网络模型 1.网络七层协议 (1)OSI定义了网络互连的七层框架(物理层.数据链路层.网络层.传输层.会话层.表示层.应用层),即ISO开放互连系统参考模型. (2)各层功能定义 这里 ...

  6. ssh协议是osi_TCP/IP协议和三次握手四次挥手

    计算机网络体系结构 在计算机网络的基本概念中,分层次的体系结构是最基本的.计算机网络体系结构的抽象概念较多,在学习时要多思考.这些概念对后面的学习很有帮助. 网络协议是什么? 在计算机网络要做到有条不 ...

  7. HTTP协议,三次握手四次挥手

    Http协议与Https协议 HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高 ...

  8. 网络架构,七层协议,三次握手四次挥手,socket套接字简单编程

    一.单机架构 应用领域: 植物大战僵尸 office 二.CS架构 应用领域: QQ 大型网络游戏 计算机发展初期用户去取数据,直接就去主机拿,从这里开始就分出了客户端和服务端. 客户端:用户安装的软 ...

  9. tcp状态转换--三次握手/四次挥手

    1 三次握手 "3次握手"的作用就是双方都能明确自己和对方的收.发能力是正常的. 2 四次挥手 主动关闭连接的一方,调用close():协议层发送FIN包 被动关闭的一方收到FIN ...

最新文章

  1. Xonsh库——Python和Shell语法互通
  2. 开发者们的迷茫期,该怎么看破?
  3. OpenJudge/Poj 2001 Shortest Prefixes
  4. 【BZOJ 3160】 3160: 万径人踪灭 (FFT)
  5. Bitbucket Pipelines在Atlassian的Bitbucket云上提供持续交付功能
  6. 学习JavaScript你必须掌握的8大知识点
  7. 蓝桥练习题题解——作物杂交——Java
  8. spark-2.1.0 集群安装
  9. 基于JAVA+SpringMVC+Mybatis+MYSQL的村民信息管理系统
  10. 关闭报错_Cydia Impactor工具各种报错提示的解决方法!
  11. COCOS2D-X编译成android的项目
  12. 人生苦短,我用VIM!
  13. java怎么定义scanner_Java Scanner类的常用方法及用法(很详细)
  14. 140个电脑小知识、小技巧(1)
  15. 特征选择之互信息(mutual information)算法思想及其python代码实现
  16. jstack 命令的使用和问题排查分析思路
  17. Android大话设计模式 第三章----开放封闭原则---孙悟空任弼马温一职
  18. MPC多旋翼控制 - mav_control_rw项目
  19. 电容笔买什么牌子好?2022电容笔品牌排行榜
  20. HeadFirst 设计模式 橡皮鸭子例子心得体会

热门文章

  1. 空调冰箱制冷系统,空调冰箱控制电路,组装调试维修考核
  2. 探索Google App Engine背后的奥秘(3)- Google App Engine的简介
  3. MFC窗体滑动、缩放、渐变动态效果的实现
  4. 2022-2028年全球与中国固定电阻器行业市场需求预测分析
  5. 【包会教程】“批打”神器教程
  6. Xposed Installer框架 安卓版
  7. 如何使用python抢优惠券-Python写一个京东抢券脚本
  8. VS watch(监视)的技巧
  9. HTML学生个人网站作业设计:动漫网站设计——火影忍者(1页) HTML+CSS+JavaScript 简单DIV布局个人介绍网页模板代码 DW学生个人网站制作成品下载
  10. Notepad Next 无法输入中文