fbpx
维基百科

IPsec

網際網路安全協定(英語:Internet Protocol Security,縮寫:IPsec)是一個协议套件,透过对IP协议分组进行加密认证来保护IP协议的网络传输协议族(一些相互关联的协议的集合)。

IPsec主要由以下协议组成[1][2]

  1. 认证头(AH),为IP数据报提供无连接数据完整性消息认证英语Message_authentication以及防重放攻击保护[3][4]
  2. 封装安全载荷(ESP),提供机密性、数据源认证、无连接完整性、防重放和有限的传输流(traffic-flow)机密性[5]
  3. 網際網路金鑰交換(英語: Internet Key Exchange ,簡稱IKE或IKEv2),为 AH、ESP 操作所需的 安全關聯(SA) 提供算法、数据包和金鑰参数[6]

标准现状

IPsec 的源始编码是在 IPv4 的环境中于1994年开发, 第一版IPsec协议在RFCs 2401-2409中定义。在2005年第二版标准文档发布,新的文档定义在 RFC 4301RFC 4309[7][8]。在 IPv4 中 IPsec 的使用是一个可选项,在 IPv6 RFC 6434 中为必选的内容 [9],这样做的目的,是为了随着 IPv6 的进一步流行,IPsec 可以得到更为广泛的使用。

历史概要

从1920-70年代初开始,美国高级研究项目局赞助了一系列实验性的ARPANET加密设备,起初用于本地ARPANET数据包加密,随后又用于TCP/IP数据包加密。

从1986年到1991年,美国国家安全局在其安全数据网络系统(SDN)计划下赞助了互联网安全协议的开发,包括摩托罗拉在内的各种供应商聚集在一起,于1988年生产了一种网络加密设备,这项工作于1988年由NIST公开发表,其中第3层的安全协议(SP3)演变为ISO标准的网络层安全协议(NLSP)。[10]

从1992年到1995年,有三个研究小组对IP层加密分别进行了独立研究:

  • 1. 1992年,美国海军研究实验室(NRL)开始了Simple Internet Protocol Plus(SIPP)项目来进行IP加密协议的研究。
  • 2. 1993年,哥伦比亚大学SunOSAT&T贝尔实验室,开始由 JohnIoanndis等人研发实验性软件IP加密协议 (swIPe)。
  • 3. 1993年,在白宫信息高速公路项目的支持下,Trusted Information Systems(TIS)科学家徐崇伟(Wei Xu)[11] 研究和开发了第一代软件 IPSEC 协议,它的编码是在BSD 4.1内核中完成的,支持x86和SUNOS CPU架构,同时开发了硬件安全3DES的加密技术,并为数据加密标准开发了设备驱动程序。到1994年12月,TIS发布了由DARPA赞助的开放源代码的“手铐防火墙”产品,其VPN速度超过T1,首次用 IPSec VPN 实现了美国东西海岸安全链接,也是历史上第一个 IPSec 商用产品。[12]
  • 4. 在美国国防部高级研究计划局(DARPA)资助的研究工作下,1996年,NRL为IPsec开发了IETF标准跟踪规范(rfc1825到rfc1827),它的编码是在BSD 4.4内核中,同时支持x86和SPARC CPU架构[13]

互联网工程任务组(IETF)于1992年成立了IP安全工作组,以规范对 IPsec 的公开协议,1995年工作组成员有 TIS、Cisco、FTP、Checkpoint 等五个企业组成,首次合作协商改进了 NRL 起草的 IPsec 协议标准,以及规范了 Cisco 和 TIS 提供的 IPsec 开放源代码,此后,发布了RFC-1825和RFC-1827,NRL在1996年 USENIX 会议论文集中进行了描述了,由麻省理工学院在线提供,并成为大多数初始商业实现的基础。[14]

设计意图

IPsec被设计用来提供(1)入口对入口通信安全,在此机制下,分组通信的安全性由单个节点提供给多台机器(甚至可以是整个局域网);(2)端到端分组通信安全,由作为端点的计算机完成安全操作。上述的任意一种模式都可以用来构建虚拟专用网(VPN),而这也是IPsec最主要的用途之一。应该注意的是,上述两种操作模式在安全的实现方面有着很大差别。

因特网范围内端到端通信安全的发展比预料的要缓慢[來源請求],其中部分原因,是因为其不够普遍或者说不被普遍信任。公钥基础设施能够得以形成(DNSSEC最初就是为此产生的),一部分是因为许多用户不能充分地认清他们的需求及可用的选项,导致其作为内含物强加到卖主的产品中(这也必将得到广泛采用);另一部分可能归因于网络响应的退化(或说预期退化),就像兜售信息的充斥而带来的带宽损失一样。

IPsec与其它互联网安全协议的对比

IPsec协议工作在OSI模型的第三层,使其在单独使用时适于保护基于TCPUDP的协议(如安全套接子层SSL)就不能保护UDP层的通信流)。这就意味着,与传输层或更高层的协议相比,IPsec协议必须处理可靠性和分片的问题,这同时也增加了它的复杂性和处理开销。相对而言,SSL/TLS依靠更高层的TCP(OSI的第四层)来管理可靠性和分片。

技术细节

认证头(AH)

认证头(Authentication Header,AH)被用来保证被传输分组的完整性和可靠性。此外,它还保护不受重放攻击。认证头试图保护IP数据报的所有字段,那些在传输IP分组的过程中要发生变化的字段就只能被排除在外。当认证头使用非对称数字签名算法(如RSA)时,可以提供不可否认性(RFC 1826[15]

认证头分组图示:

位偏移 字节 0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 下一个头 载荷长度 保留
32 安全参数索引(SPI)
64 序列号
96+ 认证数据(可变长度)

字段含义:

下一个头:标识被传送数据所属的协议。
载荷长度:认证头包的大小。
保留:为将来的应用保留(目前都置为0)。
安全参数索引:与IP地址一同用来标识安全参数。
序列号:单调递增的数值,用来防止重放攻击。
认证数据:包含了认证当前包所必须的数据。

封装安全载荷(ESP)

封装安全载荷(Encapsulating Security Payload,ESP)协议对分组提供了源可靠性、完整性和保密性的支持。与AH头不同的是,IP分组头部不被包括在内。

ESP分组图示:

位偏移 字节 0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 安全参数序列(SPI)
32 序列号
64+ 载荷*(可变长度)
  填充(0-255字节)
    填充长度 下一个头
认证数据(可变长度)

字段含义:

安全参数索引:与IP地址一同用来标识安全参数
序列号:单调递增的数值,用来防止重放攻击。
载荷数据:如果没使用ESP的加密功能,则载荷数据域的内容是“下一个头”所指示的数据;如果使用了ESP的加密功能,则使用加密载荷数据和ESP尾部数据所得的密文作为payload data.
填充:某些块加密算法用此将数据填充至块的长度。
填充长度:以位为单位的填充数据的长度。
下一个头:标识载荷中封装的数据所属的协议。
认证数据:又叫做完整性校验值(ICV)。包含了认证当前包所必须的数据。

安全關聯(SA)

实现

FreeS/WAN项目已经开发了一个开源GNU/Linux作業系統下的IPsec实现。Free S/WAN项目的开发在2004年时被中止。OpenswanstrongSwanlibreswan是Free S/WAN延续。

至今已有许多IPsec协议和ISAKMPIKE协议的实现。它们包括:

參見

参考文献

  1. ^ Thayer, R.; Doraswamy, N.; Glenn, R.. IP Security Document Roadmap. IETF. November 1998. doi:10.17487/RFC2411. RFC 2411. 
  2. ^ Hoffman, P.. Cryptographic Suites for IPsec. IETF. December 2005. doi:10.17487/RFC4308. RFC 4308. 
  3. ^ Kent, S.; Atkinson, R.. IP Authentication Header. IETF. November 1998. doi:10.17487/RFC2402. RFC 2402. 
  4. ^ Kent, S.. IP Authentication Header. IETF. December 2005. doi:10.17487/RFC4302. RFC 4302. 
  5. ^ Kent, S.; Atkinson, R.. IP Encapsulating Security Payload (ESP). IETF. November 1998. doi:10.17487/RFC2406. RFC 2406. 
  6. ^ The Internet Key Exchange (IKE), RFC 2409, §1 Abstract
  7. ^ RFC 4301
  8. ^ RFC 4309
  9. ^ "IPv6 Node Requirements", E. Jankiewicz, J. Loughney, T. Narten (December 2011)
  10. ^ Network Encryption - history and patents. [2022-01-18]. (原始内容于2014-09-03). 
  11. ^ Trusted Information Systems. (原始内容存档于2020-06-21). 
  12. ^ The history of VPN creation. (原始内容于2020-09-29). 
  13. ^ "https://www.usenix.org/legacy/publications/library/proceedings/sd96/atkinson.html (页面存档备份,存于互联网档案馆)"
  14. ^ IETF IP Security Protocol (ipsec) Working group History. (原始内容于2019-09-13). 
  15. ^ RFC 1826

外部链接

IPsec相关RFC文档

RFC 2401
IP协议的安全架构
RFC 2402
认证头
RFC 2406
封装安全载荷
RFC 2407
ISAKMP的IPsec解释域(IPsec DoI)
RFC 2408
網路安全關聯與金鑰管理協定(ISAKMP)
RFC 2409
因特网密钥交换(IKE)

ipsec, 網際網路安全協定, 英語, internet, protocol, security, 縮寫, 是一個协议套件, 透过对ip协议的分组进行加密和认证来保护ip协议的网络传输协议族, 一些相互关联的协议的集合, 主要由以下协议组成, 认证头, 为ip数据报提供无连接数据完整性, 消息认证, 英语, message, authentication, 以及防重放攻击保护, 封装安全载荷, 提供机密性, 数据源认证, 无连接完整性, 防重放和有限的传输流, traffic, flow, 机密性, 網際網路金鑰. 網際網路安全協定 英語 Internet Protocol Security 縮寫 IPsec 是一個协议套件 透过对IP协议的分组进行加密和认证来保护IP协议的网络传输协议族 一些相互关联的协议的集合 IPsec主要由以下协议组成 1 2 认证头 AH 为IP数据报提供无连接数据完整性 消息认证 英语 Message authentication 以及防重放攻击保护 3 4 封装安全载荷 ESP 提供机密性 数据源认证 无连接完整性 防重放和有限的传输流 traffic flow 机密性 5 網際網路金鑰交換 英語 Internet Key Exchange 簡稱IKE或IKEv2 为 AH ESP 操作所需的 安全關聯 SA 提供算法 数据包和金鑰参数 6 目录 1 标准现状 2 历史概要 3 设计意图 4 IPsec与其它互联网安全协议的对比 5 技术细节 5 1 认证头 AH 5 2 封装安全载荷 ESP 5 3 安全關聯 SA 6 实现 7 參見 8 参考文献 9 外部链接 9 1 IPsec相关RFC文档标准现状 编辑IPsec 的源始编码是在 IPv4 的环境中于1994年开发 第一版IPsec协议在RFCs 2401 2409中定义 在2005年第二版标准文档发布 新的文档定义在 RFC 4301 和 RFC 4309 中 7 8 在 IPv4 中 IPsec 的使用是一个可选项 在 IPv6 RFC 6434 中为必选的内容 9 这样做的目的 是为了随着 IPv6 的进一步流行 IPsec 可以得到更为广泛的使用 历史概要 编辑从1920 70年代初开始 美国高级研究项目局赞助了一系列实验性的ARPANET加密设备 起初用于本地ARPANET数据包加密 随后又用于TCP IP数据包加密 从1986年到1991年 美国国家安全局在其安全数据网络系统 SDN 计划下赞助了互联网安全协议的开发 包括摩托罗拉在内的各种供应商聚集在一起 于1988年生产了一种网络加密设备 这项工作于1988年由NIST公开发表 其中第3层的安全协议 SP3 演变为ISO标准的网络层安全协议 NLSP 10 从1992年到1995年 有三个研究小组对IP层加密分别进行了独立研究 1 1992年 美国海军研究实验室 NRL 开始了Simple Internet Protocol Plus SIPP 项目来进行IP加密协议的研究 2 1993年 哥伦比亚大学SunOS和AT amp T贝尔实验室 开始由 JohnIoanndis等人研发实验性软件IP加密协议 swIPe 3 1993年 在白宫信息高速公路项目的支持下 Trusted Information Systems TIS 科学家徐崇伟 Wei Xu 11 研究和开发了第一代软件 IPSEC 协议 它的编码是在BSD 4 1内核中完成的 支持x86和SUNOS CPU架构 同时开发了硬件安全3DES的加密技术 并为数据加密标准开发了设备驱动程序 到1994年12月 TIS发布了由DARPA赞助的开放源代码的 手铐防火墙 产品 其VPN速度超过T1 首次用 IPSec VPN 实现了美国东西海岸安全链接 也是历史上第一个 IPSec 商用产品 12 4 在美国国防部高级研究计划局 DARPA 资助的研究工作下 1996年 NRL为IPsec开发了IETF标准跟踪规范 rfc1825到rfc1827 它的编码是在BSD 4 4内核中 同时支持x86和SPARC CPU架构 13 互联网工程任务组 IETF 于1992年成立了IP安全工作组 以规范对 IPsec 的公开协议 1995年工作组成员有 TIS Cisco FTP Checkpoint 等五个企业组成 首次合作协商改进了 NRL 起草的 IPsec 协议标准 以及规范了 Cisco 和 TIS 提供的 IPsec 开放源代码 此后 发布了RFC 1825和RFC 1827 NRL在1996年 USENIX 会议论文集中进行了描述了 由麻省理工学院在线提供 并成为大多数初始商业实现的基础 14 设计意图 编辑IPsec被设计用来提供 1 入口对入口通信安全 在此机制下 分组通信的安全性由单个节点提供给多台机器 甚至可以是整个局域网 2 端到端分组通信安全 由作为端点的计算机完成安全操作 上述的任意一种模式都可以用来构建虚拟专用网 VPN 而这也是IPsec最主要的用途之一 应该注意的是 上述两种操作模式在安全的实现方面有着很大差别 因特网范围内端到端通信安全的发展比预料的要缓慢 來源請求 其中部分原因 是因为其不够普遍或者说不被普遍信任 公钥基础设施能够得以形成 DNSSEC最初就是为此产生的 一部分是因为许多用户不能充分地认清他们的需求及可用的选项 导致其作为内含物强加到卖主的产品中 这也必将得到广泛采用 另一部分可能归因于网络响应的退化 或说预期退化 就像兜售信息的充斥而带来的带宽损失一样 IPsec与其它互联网安全协议的对比 编辑IPsec协议工作在OSI模型的第三层 使其在单独使用时适于保护基于TCP或UDP的协议 如安全套接子层 SSL 就不能保护UDP层的通信流 这就意味着 与传输层或更高层的协议相比 IPsec协议必须处理可靠性和分片的问题 这同时也增加了它的复杂性和处理开销 相对而言 SSL TLS依靠更高层的TCP OSI的第四层 来管理可靠性和分片 技术细节 编辑此條目需要更新 2020年5月22日 請更新本文以反映近況和新增内容 完成修改後請移除本模板 认证头 AH 编辑 认证头 Authentication Header AH 被用来保证被传输分组的完整性和可靠性 此外 它还保护不受重放攻击 认证头试图保护IP数据报的所有字段 那些在传输IP分组的过程中要发生变化的字段就只能被排除在外 当认证头使用非对称数字签名算法 如RSA 时 可以提供不可否认性 RFC 1826 15 认证头分组图示 位偏移 字节 0 1 2 3位 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 70 下一个头 载荷长度 保留32 安全参数索引 SPI 64 序列号96 认证数据 可变长度 字段含义 下一个头 标识被传送数据所属的协议 载荷长度 认证头包的大小 保留 为将来的应用保留 目前都置为0 安全参数索引 与IP地址一同用来标识安全参数 序列号 单调递增的数值 用来防止重放攻击 认证数据 包含了认证当前包所必须的数据 封装安全载荷 ESP 编辑 封装安全载荷 Encapsulating Security Payload ESP 协议对分组提供了源可靠性 完整性和保密性的支持 与AH头不同的是 IP分组头部不被包括在内 ESP分组图示 位偏移 字节 0 1 2 3位 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 70 安全参数序列 SPI 32 序列号64 载荷 可变长度 填充 0 255字节 填充长度 下一个头认证数据 可变长度 字段含义 安全参数索引 与IP地址一同用来标识安全参数 序列号 单调递增的数值 用来防止重放攻击 载荷数据 如果没使用ESP的加密功能 则载荷数据域的内容是 下一个头 所指示的数据 如果使用了ESP的加密功能 则使用加密载荷数据和ESP尾部数据所得的密文作为payload data 填充 某些块加密算法用此将数据填充至块的长度 填充长度 以位为单位的填充数据的长度 下一个头 标识载荷中封装的数据所属的协议 认证数据 又叫做完整性校验值 ICV 包含了认证当前包所必须的数据 安全關聯 SA 编辑 主条目 安全關聯实现 编辑FreeS WAN项目已经开发了一个开源的GNU Linux作業系統下的IPsec实现 Free S WAN项目的开发在2004年时被中止 Openswan strongSwan和libreswan是Free S WAN延续 至今已有许多IPsec协议和ISAKMP IKE协议的实现 它们包括 NRL IPsec 属于原型的一种 OpenBSD 代码源于NRL IPsec Mac OS X 包含了Kame IPsec的代码 Cisco IOS Microsoft Windows SSH Sentinel 现作为SafeNet的一部分 提供了工具包 Solaris FreeBSD NetBSD Android iOS參見 编辑信息安全参考文献 编辑 Thayer R Doraswamy N Glenn R IP Security Document Roadmap IETF November 1998 doi 10 17487 RFC2411 RFC 2411 Hoffman P Cryptographic Suites for IPsec IETF December 2005 doi 10 17487 RFC4308 RFC 4308 Kent S Atkinson R IP Authentication Header IETF November 1998 doi 10 17487 RFC2402 RFC 2402 Kent S IP Authentication Header IETF December 2005 doi 10 17487 RFC4302 RFC 4302 Kent S Atkinson R IP Encapsulating Security Payload ESP IETF November 1998 doi 10 17487 RFC2406 RFC 2406 The Internet Key Exchange IKE RFC 2409 1 Abstract RFC 4301 RFC 4309 IPv6 Node Requirements E Jankiewicz J Loughney T Narten December 2011 Network Encryption history and patents 2022 01 18 原始内容存档于2014 09 03 Trusted Information Systems 原始内容存档于2020 06 21 The history of VPN creation 原始内容存档于2020 09 29 https www usenix org legacy publications library proceedings sd96 atkinson html 页面存档备份 存于互联网档案馆 IETF IP Security Protocol ipsec Working group History 原始内容存档于2019 09 13 RFC 1826外部链接 编辑计算机系统安全 IPsec簡介 永久失效連結 IETF的IPsec工作组 Free S WAN项目主页 页面存档备份 存于互联网档案馆 Openswan项目主页 页面存档备份 存于互联网档案馆 strongSwan项目主页 页面存档备份 存于互联网档案馆 VPN社团 页面存档备份 存于互联网档案馆 A long thread on the ipsec lists tislabs com关于是否要将字母S大写 RFC文档写的很清楚 应该是IPsec IPsec相关RFC文档 编辑 RFC 2401 IP协议的安全架构 RFC 2402 认证头 RFC 2406 封装安全载荷 RFC 2407 ISAKMP的IPsec解释域 IPsec DoI RFC 2408 網路安全關聯與金鑰管理協定 ISAKMP RFC 2409 因特网密钥交换 IKE 取自 https zh wikipedia org w index php title IPsec amp oldid 73269645, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。