网络层安全协议

  • IP 安全性很差:
  1. 没有为通信提供良好的数据源鉴别机制;
  2. 没有为数据提供强大的完整性保护机制;
  3. 没有为数据提供任何机密性保护;
  4. 在设计和实现上存在安全漏洞,使各种攻击有机可乘。例如:攻击者很容易构造一个包含虚假地址的 IP 数据报。
  • IP 几乎不具备任何安全性,不能保证
  1. 数据机密性
  2. 数据完整性
  3. 数据来源认证
  • 由于其在设计和实现上存在安全漏洞,使各种攻击有机可乘。例如:攻击者很容易构造一个包含虚假地址的 IP 数据报。
  • IPsec 提供了标准、健壮且包含广泛的机制保证 IP 层安全。

1. IPsec 协议

  • IPsec 就是“IP 安全 (security)”的缩写。
  • IPsec 并不是一个单个的协议,而是能够在 IP 层提供互联网通信安全的协议族
  • IPsec 是个框架,它允许通信双方选择合适的算法和参数(例如,密钥长度)。
  • 为保证互操作性,IPsec 还包含了所有 IPsec 的实现都必须有的一套加密算法。
IPsec 由三部分组成
  • IP 安全数据报格式的两个协议

    • 鉴别首部 AH (Authentication Header) 协议
    • 封装安全有效载荷 ESP (Encapsulation Security Payload) 协议
  • 有关加密算法的三个协议(在此不讨论)
  • 互联网密钥交换 IKE (Internet Key Exchange) 协议
  • AH 协议提供源点鉴别和数据完整性,但不能保密。
  • ESP 协议比 AH 协议复杂得多,它提供源点鉴别、数据完整性和保密。
  • 使用 ESP 或 AH 协议的 IP 数据报称为 IP 安全数据报(或 IPsec数据报)。
  • Ipsec 支持 IPv4 和 IPv6。
  • AH 协议的功能都已包含在 ESP 协议中。
IP 安全数据报有两种工作方式

运输方式 (transport mode)

  • 整个运输层报文段的前后分别添加若干控制信息,再加上 IP 首部,构成 IP 安全数据报。
  • 适合于主机到主机之间的安全传送。
  • 需要使用 IPsec 的主机都运行 IPsec 协议。


隧道方式 (tunnel mode)

  • 在原始的 IP 数据报的前后分别添加若干控制信息,再加上新的 IP 首部,构成一个 IP 安全数据报。
  • 需要在 IPsec 数据报所经过的所有路由器上都运行 IPsec 协议。
  • 隧道方式常用来实现虚拟专用网 VPN。

    无论使用哪种方式,最后得出的 IP 安全数据报的 IP 首部都是不加密的。
    所谓“安全数据报”是指数据报的数据部分是经过加密的,并能够被鉴别的。
    通常把数据报的数据部分称为数据报的有效载荷 (payload)。
安全关联 SA
  • 在发送 IP 安全数据报之前,在源实体和目的实体之间必须创建一条网络层的逻辑连接。此逻辑连接叫做安全关联 SA (Security Association) 。
  • IPsec 就把传统互联网无连接的网络层转换为具有逻辑连接的网络层。
安全关联的特点
  • 安全关联是从源点到终点的单向连接,它能够提供安全服务。
  • 在安全关联 SA 上传送的就是 IP 安全数据报。
  • 如要进行双向安全通信,则两个方向都需要建立安全关联
  • 若 n 个员工进行双向安全通信,一共需要创建 (2 + 2n ) 条安全关联 SA。
路由器 R1 到 R2 的安全关联 SA

假定公司总部的主机 H1 要和分公司的主机 H2 通过互联网进行安全通信。公司总部与分公司之间的安全关联 SA 就是在路由器 R1 和 R2 之间建立的。

主机 H1 到 H3 之间的通信

假定公司总部的主机 H1 要和内部的主机 H3 进行通信。由于都在公司内部,不需要加密,因此不需要建立安全关联。

路由器 R1 到主机 H2 的安全关联 SA

若公司总部的主机 H1 要和某外地业务员的主机 H2 进行安全通信,需要在公司总部的路由器 R1 和外地业务员的主机 H2 建立安全关联 SA。

安全关联 SA 状态信息
  1. 一个 32 位的连接标识符,称为安全参数索引 SPI (Security Parameter Index)。
  2. 安全关联 SA 的源点和终点的 IP 地址(例如路由器 R1 和 R2 的 IP 地址)。
  3. 所使用的加密类型(例如,DES 或 AES)。
  4. 加密的密钥。
  5. 完整性检查的类型(例如,使用报文摘要 MD5 或 SHA-1 的报文鉴别码 MAC)。
  6. 鉴别使用的密钥。

2. IP 安全数据报的格式

隧道方式下的 IP 安全数据报的格式

注意:

  • 在“原始的 IP 首部”中,用主机 H1 和 H2 的 IP 地址分别作为源地址和目的地址。
  • 而在 IP 安全数据报的“新的 IP 首部”中,用路由器 R1 和 R2 的 IP 地址分别作为源地址和目的地址。

3. IPsec 的其他构件

  • 安全关联数据库 SAD (Security Association Database)

    • 存放SA。
  • 安全策略数据库 SPD (Security Policy Database)
    • 指明什么样的数据报需要进行 IPsec 处理。
  • 互联网密钥交换 IKE (Internet Key Exchange)
    • 为 IP 安全数据报创建安全关联 SA。

互联网密钥交换 IKE

  • IKE 是个非常复杂的协议,在 2014 年 10 月已成为互联网的正式标准 [RFC 7296]。
  • 以另外三个协议为基础:
  1. Oakley —— 是密钥生成协议 [RFC 2412]。
  2. 安全密钥交换机制 SKEME (Secure Key Exchange Mechanism) —— 是用于密钥交换的协议。它利用公钥加密来实现密钥交换协议中的实体鉴别。
  3. 互联网安全关联和密钥管理协议 ISAKMP (Internet Secure Association and Key Management Mechanism) —— 用于实现IKE中定义的密钥交换,使IKE的交换能够以标准化、格式化的报文创建安全关联 SA。

运输层安全协议

现在广泛使用的有以下两个协议:

  • 安全套接字层 SSL (Secure Socket Layer)
  • 运输层安全 TLS (Transport Layer Security)

SSL 和 TLS

  • 安全套接层 SSL 由 Netscape 于 1994 年开发,广泛应用于基于万维网的各种网络应用(但不限于万维网应用)。
  • SSL 作用在端系统应用层的 HTTP 和运输层之间,在 TCP 之上建立起一个安全通道,为通过 TCP 传输的应用层数据提供安全保障。
  • 1996 年发布 SSL 3.0,成为 Web 安全的事实标准。
  • 1999 年,IETF 在 SSL 3.0 基础上推出了传输层安全标准 TLS,为所有基于 TCP 的网络应用提供安全数据传输服务。
SSL / TLS 的位置

在发送方,SSL 接收应用层的数据,对数据进行加密,然后把加了密的数据送往 TCP 套接字。在接收方,SSL 从 TCP 套接字读取数据,解密后把数据交给应用层。

运输层不使用安全协议和使用安全协议的对比

  • SSL / TLS 建立在可靠的 TCP 之上,与应用层协议独立无关。
  • SSL / TLS 已被所有常用的浏览器和万维网服务器所支持。
  • SSL / TLS 基本目标:实现两个应用实体之间的安全可靠通信。
  • 应用层使用 SSL 最多的就是 HTTP,但 SSL 并非仅用于 HTTP,而是可用于任何应用层的协议。
  • 应用程序 HTTP 调用 SSL 对整个网页进行加密时,网页上会提示用户,在网址栏原来显示 http 的地方,现在变成了 https。在 http 后面加上的 s 代表 security,表明现在使用的是提供安全服务的 HTTP 协议(TCP 的 HTTPS 端口号是 443,而不是平时使用的端口号 80)。

SSL 提供的安全服务

  • SSL 服务器鉴别,允许用户证实服务器的身份。支持 SSL 的客户端 通过验证来自服务器的证书,来鉴别服务器的真实身份并获得服务 器的公钥。
  • SSL 客户鉴别,SSL 的可选安全服务,允许服务器证实客户的身份。
  • 加密的 SSL 会话,对客户和服务器间发送的所有报文进行加密,并 检测报文是否被篡改。

SSL 安全会话建立过程

  1. 协商加密算法。 ① 浏览器 A 向服务器 B 发送浏览器的 SSL 版本号和一些可选的加密算法。 ② B 从中选定自己所支持的算法(如 RSA),并告知 A。
  2. 服务器鉴别。 ③ 服务器 B 向浏览器 A 发送包含其 RSA 公钥的数字证书。 ④ A 使用该证书的认证机构 CA 公开发布的RSA公钥对该证书进行验证。
  3. 会话密钥计算。由浏览器 A 随机产生一个秘密数。 ⑤ 用服务器 B 的 RSA 公钥进行加密后发送给 B。 ⑥ 双方根据协商的算法产生共享的对称会话密钥。
  4. 安全数据传输。 ⑦ 双方用会话密钥加密和解密它们之间传送的数据并验证其完整性。

计算机网络 互联网使用的安全协议相关推荐

  1. 计算机网络协议教案,计算机网络实验教案(6)网络协议分析-IP协议3.pdf

    计算机网络实验教案(6)网络协议分析-IP协议3.pdf (2页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 <计算机网络实验> ...

  2. 计算机网络中各层的协议图表(TCP/IP)

    计算机网络中各层的协议图表:

  3. 计算机网络传输层之SR协议

    系列文章目录 第二章计算机网络传输层之可靠数据传输之流水线机制与滑动窗口协议-Selective Repeat协议(SR协议) 计算机网络传输层之SR协议 系列文章目录 九.Selective Rep ...

  4. 【计算机网络】TCP / IP 四层协议

    TCP / IP 四层协议 一.概述 二.网际层 1. 概述 2. IP 地址 ① IPv4 ☯ NAT 技术 ② IPv6 三.运输层 1. TCP 协议 2. UDP 协议 四.应用层 1. 域名 ...

  5. 计算机网络五层体系结构各层协议

    计算机网络五层体系结构各层协议 应用层 协议名称 解释 DNS Domain name system Telnet 常用的远程控制Web服务器的方法 FTP File Transfer protoco ...

  6. 计算机网络基础知识--TCP/IP协议、IP分组、TCP传输

    转 计算机网络基础知识--TCP/IP协议.IP分组.TCP传输 2017年12月08日 08:35:09 孔维昊 阅读数 1820 查看全文 http://www.taodudu.cc/news/s ...

  7. 计算机网络【UDP与TCP协议(三次握手、四次挥手)】

    计算机网络[UDP与TCP协议(三次握手.四次挥手)]

  8. 计算机网络名词解释及常见协议端口号

    目录 常见协议 常见协议对应端口 OSI模型 名词解释 常见协议 PPP(Point-to-Point Protocol):点对点协议 GBN(go-Back-N):后退N帧ARQ协议 SR(Sele ...

  9. 计算机网络之UDP与TCP协议(三次握手, 四次挥手)

    ⭐️前面的话⭐️ 本文介绍计算机网络中有关传输层协议的知识--UDP与TCP协议,在TCP协议中,为了保证数据的可靠传输,引入了十大保证可靠性的机制,即确认应答,超时重传,连接管理(三次握手,四次挥手 ...

  10. 计算机网络 互联网的路由选择协议——OSPF

    内部网关协议OSPF协议的基本特点 开放最短路径优先 OSPF (Open Shortest Path First)是为克服 RIP 的缺点在 1989 年开发出来的. OSPF 的原理很简单,但实现 ...

最新文章

  1. sp MySQL 导入_mysql数据导入redis
  2. 缺陷分析与软件质量的关系
  3. SAP Netweaver和Cloud Foundry上的运行时进程
  4. Oracle入门(十四.22)之创建DDL和数据库事件触发器
  5. 在考生文件夹存有JAVA3_注意:下面出现的“考生文件夹”均为%USER%在考生文件夹下存有文件名为J_网考网(Netkao.com)...
  6. C语言-附加-给一个数求最大质数(完整代码)
  7. JavaScript 演练(8). 对象成员、类成员(原型、非原型)
  8. 数百万的 Android 手机预装了危险的恶意软件!
  9. liniux备忘录-磁盘配额与进阶文件系统管理
  10. struts1 mysql config_详解Struts1中的struts-config.xml配置文件【一】
  11. Ubuntu 安装Qt以及配置
  12. 有关电脑新手入门教程,电脑入门基础知识有哪些?
  13. vue 高德获取当前经纬度
  14. Oracle RAC 安装指北 10gR2+OEL5.11
  15. SAP中采购收货冲销和退货适用情形简析
  16. bzoj-1270 [BeijingWc2008]雷涛的小猫
  17. windows使用Certbot配置nginx的https证书
  18. 用计算机表白我不喜欢你了,“我喜欢你”用文言文怎么说?拿这3句去表白,男生不忍心拒绝你!...
  19. 编程帮助小明计算地铁票价(C++)
  20. Unity加载优化-将基于LZMA的ab压缩方案修改为LZ4压缩的过程

热门文章

  1. sublime html代码自动排版,sublime Text3 如何自动排版代码
  2. 互联网日报 | 3月27日 星期六 | 知乎正式登陆纽交所;美团2020年营收首破千亿元;小米将推出新款自研芯片...
  3. 或且非 java_Java的运算符号(逻辑与、或、非、移位运算)
  4. 规划--如何成为一名web安全工程师
  5. 半导体Led Driver IC失效分析
  6. 台达 PLC - 高速输入
  7. DDD基础_领域设计10大基础概念
  8. java突然无法加载主类_JAVA之中出现无法加载主类的情况解决方法
  9. 【建议收藏】六个免费的在线OCR识别网站,显著提高你的工作效率!
  10. PHP实现的RSA加密解密