(计算机系统结构专业论文)多媒体信息的安全传输与管理.pdf_第1页
(计算机系统结构专业论文)多媒体信息的安全传输与管理.pdf_第2页
(计算机系统结构专业论文)多媒体信息的安全传输与管理.pdf_第3页
(计算机系统结构专业论文)多媒体信息的安全传输与管理.pdf_第4页
(计算机系统结构专业论文)多媒体信息的安全传输与管理.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

(计算机系统结构专业论文)多媒体信息的安全传输与管理.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

i 多媒体信息的安全传输与管理 摘 要 随着多媒体编码、压缩以及传输技术的发展,多媒体技术已经深入到 了军事,商业以及日常生活等方方面面。其安全性问题也日益引起了人 们的注意,特别在一些敏感的场合下,往往对多媒体信息的安全有着更 高的要求。在本文中,多媒体信息的安全被分为了两个部分,一个部分 是多媒体信息的安全传输,另外一个部分是多媒体信息的安全管理。多 媒体信息的安全传输主要负责多媒体信息在传输过程中的安全性。多媒 体信息的安全管理主要负责为安全传输部分以及多媒体服务提供必需的 安全服务,例如证书服务,加密方式的判决服务,流媒体服务器的访问 控制服务等。 本文在考虑了多媒体信息的采集、传输以及观看的基础上,设计了多 媒体信息安全体系,该体系用于保证多媒体信息的在管理与传输上的安 全。在本文的安全体系中,多媒体信息安全管理主要包括证书服务系统 以及流媒体服务器的访问控制模型。流媒体服务器通过 web 的方式提供 各种服务,包括多媒体数据的观看、添加、删除操作,流媒体用户的添 加、修改等操作。因此需要引入 web 访问控制判决模型来保证用户有权 进行相关操作。此外,还引入了流媒体点播访问控制模型,该模型用于 对流媒体点播用户进行身份验证、 权限判定以及多媒体加密方法的决策。 在多媒体信息安全体系中,为了保证多媒体数据的安全传输,提出了 ii 多媒体信息安全传输方案,该方案主要用于流媒体点播,经过适当的调 整后也能够用于多媒体信息采集中。多媒体信息安全传输方案主要由握 手协议以及密钥同步方案构成。多媒体信息有着多种加密方式,这些方 式有着不同的安全等级以及加密性能,在不同的应用环境之下可能需要 不同的加密方式,因此本文提出的握手协议不仅能完成传统的密钥协商 结合多媒体点播判决系统还能够完成多媒体加密方式的选择。此外,由 于多媒体信息本身具有的特点,它常常在 udp 协议上进行传输,而数据 包丢失的情况会导致加密的多媒体数据无法正确解密。本文给出了基于 rtp 的密钥同步方案,使得网络存在丢包、乱序的情况仍然能够正确解 密多媒体数据。 关键词:关键词:多媒体信息安全,安全传输,密钥同步,安全管理,访问控制。 iii the secure transmission and management of multimedia information abstract with the development of multimedia coding, compression and transmission technology, the multimedia technology has been used in many fields such as military affairs, business and so on. therefore, the security of multimedia is increasingly attracted attention, particularly in some sensitive places. in this paper, the multimedia information security has been divided into two parts: one part is the secure transmission of multimedia information, and another is the secure management of multimedia information. the secure transmission is responsible for the security of multimedia information in the course of transmission, while the main task of secure management is to supply the security service to the secure transmission part, which includes certificate service system, the decision of multimedia encryption method, the access control of media server and so on. in this paper, the multimedia information security system is proposed with the consideration of multimedia collection, transmission, as well as playing, which is used to ensure the security of multimedia transmission and management. in the secure system, the secure management includes the certificate service system and access control model of mutimedia server. the multimedia server uses web to provide a variety of services which include iv the play, add, delete of the media data as well as the add, modification of media user. therefore, the web access control decision model should be introduced to judge whether the user has the right to do the corresponding operation. in addition, the multimedia requesting access control decision model is also introduced, which is used to realize the authentication, right decision and the selection of the encryption method during multimedia requesting. in the security system, the secure multimedia transmission scheme is proposed to protect the multimedia information during transmission. this scheme is mainly used in multimedia requesting, however, with some adjustment, it also can be used in multimedia collection situation. the secure transmission includes handshake protocol and key synchronization scheme. the handshake protocol can implement the traditional key exchange, and with the multimedia requesting decision system, the protocol also allow the users to select the suitable multimedia encryption method according to the working environment. the key synchronization scheme can ensure the users to decrypt the multimedia data correctly in the situation of package losing and disordering in the internet. keywords: multimedia security, secure transmission, key synchronization, secure management, access control. 上海交通大学学位论文原创性声明 上海交通大学硕士学位论文版权使用授权书 第一章 绪论 1 第一章 第一章 绪论 1.1 研究背景 随着多媒体图像技术以及网络通信技术的发展,多媒体通信已经深入到了安全, 军事,医疗等各方面。因此其安全性问题也日益引起了人们的重视,特别是在敏感、 重要的应用场景下。 多媒体安全应该包括多媒体传输安全,这种技术主要用于保证多媒体信息在传 输信道上的安全性。当前较为常见的多媒体传输技术有:基于 mpeg-2 ts 的传输方 式以及基于 rtp/rtcp12的传输方式。实时传输协议(real-time transport protocol, rtp)是由 ietf(internet 工程任务组)提出的针对互联网上多媒体数据流的一个传 输协议,它可以工作在一对一以及一对多的传输模式下。由于多媒体信息具有数据 量大,实时性要求高等特点,所以 rtp 协议一般运行在 udp 层上。然而 rtp 协议 并没有可靠的安全性措施的保护,所以需要额外的协议来为 rtp 提供安全性方面的 保证。由于 udp/tcp 协议建立在 ip 协议之上,而 rtp 协议建立在 udp/tcp 协议 之上,所以可以通过 ipsec 协议来保证 rtp 协议的安全性问题;也可以通过 srtp 协议 (安全的实时传输协议)和多媒体互联网密钥管理协议 mikey 来保证其数据的 安全性。然而在设备资源受限的情况下,为了保证实时性以及系统性能,传输的多 媒体信息往往并非完全加密而是选择性的加密,在这种情况下 ipsec 和 srtp3并不 适用;而 mikey 的实现需要用到时间戳,为了实现同步将会耗费相当的资源。因此 有必要对多媒体安全传输技术进行研究,提出一种适用于多种使用环境的安全传输 解决方案。 此外,除了多媒体安全还应该包括安全管理。现在,流媒体点播服务非常常见, 第一章 绪论 2 用户可以通过流体服务器提供的 web 服务来点播多媒体信息。因此需要有多媒体安 全管理技术来管理流媒体服务器上的各种敏感资源。多媒体信息安全管理的内容除 了包括多媒体信息的访问控制,还包括对多媒体安全传输的支持功能。本文通过研 究现有的访问控制技术,设计出了用于流媒体的 web 访问控制方案以及流媒体点播 访问判决方案,并且结合多媒体安全传输方案给出了一种综合性的多媒体信息安全 解决方案。 1.2 研究目标与创新点 论文的研究目标是:针对多媒体的编码、传输以及应用的各个环节设计一种完 整的多媒体安全体系。其中多媒体信息的安全传输方案以及多媒体信息的安全管理 方案是本文的研究重点。多媒体信息的安全传输方案主要被用于多媒体信息点播的 场合,它能够为通信双方根据具体环境协商必要的安全参数,并且完成多媒体信息 加密、密钥更新、同步等功能。多媒体信息的安全管理方案主要用于权限管理,证 书服务等方面。总的看来,文章有如下几个创新点。 (1) 应用于流媒体服务器的访问控制判决模型 在多媒体信息安全体系中,前端多媒体数据采集设备将得到的多媒体信息以安 全的方式传送给了通信服务器,这些多媒体信息经过整理、规范之后将会存储到流 媒体服务器上。 流媒体服务器通过 web 的方式向用户提供各类服务, 这些服务包括: 流媒体的观看;流媒体用户的添加、删除、修改等用户相关操作;流媒体信息的添 加、删除以及属性修改等媒体相关操作。然而这些功能不可能向所有用户开放,而 且不同的用户能够观看的流媒体信息也是不同的,因此本文在研究了多种种访问控 制模型以及授权方案的基础上,设计了两个流媒体服务器相关的访问控制判决模型: web 访问控制判决模型以及流媒体点播的访问控制判决模型。其中流媒体点播的访 问控制判决模型将会与多媒体信息安全传输方案紧密结合,为安全传输方案提供身 份认证、权限判定以及多媒体加密方式决策等服务。 第一章 绪论 3 (2) 多媒体信息安全传输握手协议 多媒体信息安全传输方案主要用于保护多媒体数据在传输信道上的安全。它需 要握手协议来为通信双方提供身份认证,安全参数协商等安全服务。然而多媒体信 息数据量非常大,这就需要我们在安全性以及系统性能上做出权衡。根据多媒体信 息的不同安全需求,以及设备的实际计算资源的状况采取不同的多媒体加密方案, 例如:在军用国防等方面的多媒体信息则需要非常高的安全级别,而普通的付费多 媒体信息的观看可能对性能有着更高的要求。本文所提出的握手协议不仅可以完成 会话密钥共享,结合多媒体加密分级以及流媒体点播访问控制判决模型,还可以完 成用户的身份认证,用户的访问权限的判定,以及多媒体信息加密方案的选择。 (3) 密钥同步方案 在本文中所提出的用于流媒体点播的多媒体安全传输方案中,使用 rtp 协议对 多媒体数据进行封装。由于普通多媒体数据通信量大,并且在丢失一些报文的情况 下不影响多媒体信息整体观看的特点,rtp 协议一般工作在 udp 协议之上,这就意 味着在传输过程中可能出现丢包、乱序的情况。然而在多媒体信息安全体系中,多 媒体数据需要根据握手协议商定的加密方式进行加密的。那么在这种情况下,数据 报的丢失会带来灾难性的后果,因为密钥流和数据流无法正确匹配,从而无法对多 媒体数据进行正确解密。本文针对 rtp 协议,提出了一种密钥同步的解决方案,使 得在丢失一些加密数据的情况下,仍然能够正确解密多媒体数据。 1.3 论文结构 本文总共分为六个章节,在第一章中主要介绍论文的研究背景、研究目标、创 新点以及论文的总体结构。 在第二章中, 主要介绍一些现有的安全传输解决方案其中包括: ssl 协议、 ipsec 协议以及 mikey 协议,并且在最后对它应用于多媒体安全传输的可行性进行了分 析。 第一章 绪论 4 在第三章中,首先介绍了多媒体安全体系的整体方案,然后介绍了访问控制相 关的概念,提出了流媒体服务器的访问控制判决模型,最后介绍了安全体系中的证 书服务系统。 在第四章中,首先介绍了多媒体信息的编码以及加密技术,随后给出了用于媒 体点播的多媒体安全传输方案,其中包括握手协议、密钥同步等方案。 在第五章中,介绍了多媒体安全传输的实现和扩展,包括流媒体点播访问控制 判决模型与握手协议的集成,握手协议的实现,多媒体数据加密传输的实现以及将 安全传输方案扩展到前端通信中。 在第六章中,对全文进行了总结,并且提出了进一步研究的展望。 第二章 相关安全协议的研究 5 第二章 第二章 相关安全协议的研究 本章主要介绍 ssl(wtls) ,ipsec 以及 mikey 这些安全协议,并且对它们的 特点以及安全性进行了分析。 2.1 ssl 协议的研究 ssl4协议(security socket layer,安全套接层)最早由 netscape 公司于 1994 年 11 月提出并率先实现的,第一个成熟的版本为 ssl2.0。随后经过多次修改,该协 议被 ietf 所采纳,并制定为传输层安全(transport layer security,tls)标准,现 在最新的版本为 tls1.0。由于 ssl 协议较高的安全性和实用性,它被广泛的应用于 各个安全领域,例如:加密的 web 页浏览,电子商务,vpn 等等。 随着无线网络的普及以及相对应的安全需求的增加,wap forum 根据 tls 协议 制定了用于保证无线网络信息安全的无线传输层安全协议(wtls) 。wtls5在 tls 协议的基础上作了一些改动,从而使得 wtls 可以运行在不可靠的网络环境下。 2.1.1 ssl 协议概述 如图 2-1 所示,ssl 协议位于传输层之上,应用层之下,它要求传输层提供可靠 的数据流传输服务(例如 tcp) 。ssl 协议目标是为通信双方建立安全可靠的连接, 它主要可以分为两个层次:ssl 记录协议(ssl record protocol)以及 ssl 握手协议 (ssl handshake protocol) 。此外,ssl 协议还包括 ssl 警告协议以及 ssl 密码规 格变更协议,这两个协议运行于 ssl 记录协议之上。 在 ssl 协议中,ssl 握手协议主要用于:1.使得通信双方能够验证对方的身份。 2.协商出共享密钥以便保护后面的数据信息。3.保证握手协议的协商过程是安全可靠 第二章 相关安全协议的研究 6 的。ssl 记录协议主要用于封装各种上层协议的数据,在握手协议协商出了共享密 钥后,利用该密钥为随后的应用层数据,如:http 数据,ftp 数据等,进行压缩以及 完整性校验,并且加密。 ip tcp ssl 记录协议 ssl 握手协议ssl 警告协议 ssl 密码规格变 更协议 应用层协议(http,ftp, .) 图 2-1 ssl 协议栈 figure 2-1 ssl protocol stack 2.1.2 ssl 握手协议 在建立一个 ssl 连接的时候,首先需要运行 ssl 握手协议。ssl 握手协议主要 完成以下任务: 1.通信双方通过交换握手协议协商确定一组加密套件用于保护所要传 输的秘密信息。2.通过交换证书和一些必要的信息,认证双方的身份。3.协商出公共 密钥。4.验证整个握手过程没有受到攻击。图 2-2 是整个握手协议的流程图。 在整个 ssl 协议中握手协议对安全性起着举足轻重的作用,所以接下来我们详 细介绍一下 ssl 握手协议的整个流程。 当 tcp 连接建立以后,客户端首先向服务器端 client hello 消息,client hello 中包括:1. 客户端生成的一个随机数,该随机数将会参与后来的主密钥,会话密钥 等安全参数的生成,并且该随机数还将用于防止重放攻击。2. 会话 id,如果客户端 想要用到已有的会话,那么需要将会话 id 设为相应的值;如果重新建立 ssl 连接的 话那么置 0。3. 压缩算法列表,也就是希望 ssl 记录协议使用的压缩算法的列表。 4. 密码套件(cipher suite) ,它列出客户端支持的所有加密算法包括了客户端支持的 所有加密算法,这些算法包括对称加密算法(des,aes,rc4 等等) ,密钥交换算 第二章 相关安全协议的研究 7 法(rsa,diffie-hellman) ,散列算法(md5,sha-1) 。 当服务器端接收到 client hello 消息之后,需要发送一下几个消息: (1) 服务器端发送 server hello 消息, server hello 中包括: 1. 由服务器端所生成 的随机数。2. 会话 id,这是本次连接的惟一标示。3. 决定采用的压缩算法,这是从 客户端所提供的压缩算法列表中选取的。4. 决定采用的密码套件,这也是从客户端 所提供的密码套件列表中所选取的。压缩算法与密码套件的选择方式是相同的,服 务器根据自己所支持的方法从客户端提供的列表中选取最靠前的那个方法。 (2) 如果进行的不是一次匿名连接,则需要发送服务器端的数字证书 (certificate) ,该证书可以让客户端验证服务器端的身份。 (3) server key exchange 消息是紧跟着 server hello 消息(匿名连接的情况下) , 或者 certificate 消息(非匿名)之后发送的。在前者的情况下,该消息提供用于密钥 交换所必需的公钥信息,例如:dh 参数,rsa 参数等信息。如果不是匿名连接, 但是服务器端的数字证书无法提供全部的密钥交换信息,那么也需要传送这条消息。 (4) 如果服务器端想要确认客户端的身份,那么就需要发送 certificate request 消息,这条消息中规定了客户端所需要提交的证书的类型,并且列出可接受的 ca 列表。 (5) 服务器端发送 server hello done 消息,该消息表示服务端 server hello 阶段 的数据发送完毕,接着等待客户端的响应了。 客户端接到 server hello done 消息之后, 首先检查服务器端的所提供的证书 (非 匿名)是否可信,如果未通过则中止会话,如果通过的话需要发送一下消息: (1) 如果服务器端需要客户端提供证书的话, 那么客户端需要根据服务器端的要 求发送相应的证书。如果客户端没有合适的证书,那么就发送表示没有证书的警告 消息。 (2) 客户端发送 client key exchange 消息,该消息是被已确定的密钥交换算法 所保护的一段公共信息,该公共信息就是预主密钥(pre_master_key) 。所谓的预主 密钥指的是客户端生成的一个随机数,用于产生主密钥,它通过服务器的公钥加密 第二章 相关安全协议的研究 8 后发送给服务器端。 (3) 客户端如果发送了自己的证书并且该证书具有签名能力的话, 那么还需要发 送 certificate verify 消息,该消息是由以前的消息通过客户端的私钥加密后得到的。 (4) 客户端发送 change cipher spec 消息,该消息告诉服务器端接下来使用商定 的新的密码套件及压缩算法传送信息。 (5) 客户端发送 finished 消息,该消息表示握手阶段,客户端的所有信息发送完 毕。同时该消息是利用刚才商定的算法和参数进行加密的,用以验证密钥交换以及 身份验证过程是否成功。 当服务器端受到 finished 消息之后,验证客户端的证书,如果证书符合要求, 那么服务器端发送 change cipher spec 消息和 finished 消息。至此,整个握手协议完 成。 clientserver clienthello serverhello, certificate*, serverkeyexchange*, certificaterequest*, serverhellodone certificate*, clientkeyexchange*, certificateverify *, changecipherspec, finished changecipherspec, finished 图 2-2 握手协议流程图 figure 2-2 flow chart of handshake protocol 握手协议主要有三种认证模式:1. 匿名认证。2. 单向认证。 3.双向认证。在匿 名认证的情况下,服务器与客户端都不需要提交各自的证书,这样双方都不验证对 方的身份。在单向认证的模式下,服务器向客户端提交自己的证书,客户端会对服 第二章 相关安全协议的研究 9 务器的证书进行验证。单向认证被称为简单握手。在双向认证的模式下,服务器和 客户端都需要向对方提交自己的证书,以便对方验证自己的身份。双向认证又被称 为完全握手。证书验证的主要内容包括:1. 证书是否过期。2. 签发证书的 ca 是否 是可信的 ca,如果可靠,则提取 ca 的公钥去检测所需验证的证书的签名。3. 对客 户端来说,还需要提取证书中的公钥,验证服务器端发送的 certificate verify 消息以 检测证书是否遭到了替换。 通过握手协议可以使通信双方共享预主密钥(pre_master_key) ,通过预主密钥, 通信双方在 hello 消息中的随机数,利用 hash 算法可以生成主密钥(master key) , 从主密钥结合双方的随机数通过 hash 算法又可以生成会话密钥(session key).会话 密钥主要包括 mac 密钥, 对称加密密钥以及初始向量等。记录协议通过这些密钥对 通信数据进行相应的加解密处理。 2.1.3 ssl 记录协议以及其它子协议 ssl 记录协议工作于可靠的传输协议之上,例如 tcp,它负责对上层协议的数 据进行封装。ssl 记录协议利用 ssl 握手协议所商定的加密算法以及会话密钥对数 据进行加密,从而提供机密性服务;ssl 记录协议通过利用握手协议商定的 mac 算 法计算数据的 mac 值从而达到完整性保护的目的。整个 ssl 记录协议的操作流程 如图 2-3 所示。 当 ssl 记录层从上层协议中获得了数据之后,需要将数据分成合适大小的数据 块,例如在 tls 记录协议中规定数据块大小不应该超过 214 字节,随后对每个数据 块需要进行如下操作,这里我们将所需要操作的数据块记为 d: (1) 对数据块 d 进行压缩处理,从而得到经过压缩的数据快 c。 (2) 计算数据块 c 的 mac 值,并且添加到 c 的后面从而得到数据块 m, m=c+mac(c),”+”表示连接。 (3) 对数据块 m 进行加密操作,从而得到数据块 e。 (4) 为 e 添加记录层头部信息从而得到完整的记录层的报文并且将该报文交给 第二章 相关安全协议的研究 10 传输层。ssl 记录层头部信息包括数据块长度,内容类型(content type) ,主版本号 以及次版本号。 当接收方的传输层收到 ssl 记录层报文的时候,将该报文提交给记录层,记录 层首先进行解密操作,然后计算 mac 值进行数据校验,接着对数据进行解压缩的操 作,最后合并数据块并且将数据提交给上层协议。 分块 fragment 压缩 compress 加mac add mac 加密 encrypt 将封装好的协议交给传 输层 传输层将ssl记录层报 文提交给记录层 解密 decrypt 校验 check mac 解压 decompress 合并 coalesce 图 2-3 ssl 记录协议工作流程 figure2-3 the working process of ssl record protocol ssl 警告协议以及 ssl 密码规格变更协议运行于 ssl 记录协议之上。其中 ssl 警告协议用来告知对方警告的严重程度以及对警告的描述。严重程度分为两个级别: 致命(fatal)和警报(warning) 。在致命的情况下,连接会被立即中止,此时,同一 会话的其他连接可能继续存在,但是会话 id 必须失效,这是为了防止失败的会话被 用于建立新的连接。记录协议会将警告消息进行压缩和加密,然后进行传输。 ssl 密码规格变更协议是一个比较简单的协议,它是由一个字节(值为 1)的消 息所构成的,它的作用是通知密码策略的变化。通信双方通过发密码规格变更消息 通知对方接下来的数据将会被新商定的密码套件所保护。在握手阶段,密码规格变 更消息在商定了所有安全参数之后,验证 finish 消息之前被发送。 第二章 相关安全协议的研究 11 2.1.4 针对 ssl协议的攻击简介 ssl 协议被广泛的应用各个安全领域,特别是 web 浏览方面。目前,ssl 的版 本主要有 ssl2.0,ssl3.0,tls1.0。其中 ssl2.0 被认为是不安全的,其最大的漏洞 是:通过中间人攻击修改 client hello 报文中的密码套件列表可以控制通信双方协商 出攻击方所需要的密码套件。如果通信双方使用的是“带出口限制的 rc4 算法”的 话,那么密钥长度只有 40 位,通过暴力搜索可以在可接受的时间内获得主密钥。预 防该攻击的方法是,在浏览器的选项中禁止使用 ssl2.0。 另一种方法被称为“版本回转攻击”6,这种方法主要是利用 ssl3.0 在实现上 的漏洞来攻击的(对应于一些 opennssl 版本) 。通过版本回转攻击可以使通信双方 使用 ssl2.0 来协商算法,密钥等安全参数,在通过前文所述的针对于 ssl2.0 攻击 得到主密钥,从而攻破这个安全体系。预防的方法是:及时地更新 openssl 的版本。 还有一种具有攻击方法,它被称为“ssl 证书替换攻击” ,该方法是基于 arp 中间人攻击的。该方法具有非常大的危胁性以及危害性(几乎可以实时的得到通信 双方的私密数据) 。该攻击方法的成功与否不取决于 ssl 协议本身,取决于 arp 攻 击是否成功,有些情况下还取决于用户是否认真检查了服务器端提供的证书。预防 该攻击的关键在于预防 arp 攻击,设立 arp 服务器等方法可以预防 arp 攻击。如 果为攻击者签发证书的 ca 与为服务器签发证书的 ca 不是相互信任的, 那么用户可 以通过检查服务器端发来的证书从而避免攻击。 2.2 ipsec的研究 ipsec7是 ietf 公布的一组安全 ip 协议簇,它为基于 ip 的网络数据通信提供机 密性、认证性等安全服务。由于 ipsec 具有非常高的安全性以及实用性,它被广泛地 运用于各种安全领域,特别是在 vpn 中,ipsec 占有相当重要的地位。 本章将会介 绍 ipsec 的一些基本概念。 2.2.1 ipsec 的体系结构 第二章 相关安全协议的研究 12 psec 是一个比较完整的安全体系, 它为基于 ip 的服务与应用提供认证, 机密性, 完整性, 抗重放攻击等安全服务, 并且对于上层的应用与服务来说 ipsec 是完全透明 的。ipsec 可以工作在 ipv4 与 ipv6 上,在 ipv4 上,ipsec 是一个可选服务,而对于 ipv6,ipsec 是一个必须支持的功能。ipsec 能工作在主机和网关上,因此它可以提 供主机与主机之间,网关与网关之间,主机与网关之间的通信安全服务。ipsec 从技 术来看有着两个主要部分。第一个部分是安全协议部分,在该部分中,ipsec 通过认 证头8(authentication header, ah)和封装的安全载荷9(encapsulating security payload, esp)提供完整性,防重放攻击,机密性服务。第二部分为密钥管理部分, 在该部分 ipsec 默认通过 internet 密钥交换10(internet key exchange, ike)协议来 实现各种用于 ipsec 的安全参数的协商, 例如: 共享密钥, 加密算法, 密钥生存期等。 整个 ipsec 的安全体系结构如图 2-4 所示,一些组件的解释如下: (1) ah,认证头。它对 ip 包进行封装,主要用于提供完整性保护以及抗重放攻 击的保护,并不提供机密性保护,所以 ah 只牵涉到认证算法。 (2) esp,封装安全载荷。通过对 ip 包的封装从而提供机密性与完整性等保护。 与 ah 相比,esp 能够提供机密性服务(数据加密) ,因此 esp 同时涉及加密算法以 及认证算法。 (3) ike,是 ipsec 默认的密钥交换协议,它被用于协商 ipsec 所需的各种安全参 数。ike 是一种混合型协议,它建立在 isakmp 定义的框架上,使用 oakley 的密 钥交换模式以及 skeme 的共享和密钥更新技术,同时自定义了两种密钥交换技术。 ike 可以分为两个阶段,第一个阶段是通信双方协商建立一个安全的且经过认证的 信道,即 ikesa。在该阶段有两种数据交换模式:主模式和野蛮模式。前者提供身 份保护,后者是由 isakmp 指定的一种模式。第二阶段是:利用已建立的 ikesa 建 立 ipsec sa。此阶段使用快速模式。 (4) ipsec 策略。ipsec 策略用于决定通讯双方能否进行通信以及通信的方式。它 是由 sa,sad 以及 spd 组成的。 (5) doi11,解释域。ipsec 是一个安全体系,它由多个规范构成,每个规范都有 第二章 相关安全协议的研究 13 自己定义的参数或者标示符。doi 的作用就是对这些参数以及标示符进行解释,协 调 ipsec 体系中的各个部分, 以达到不同规范所对应的组件能够协同工作。 因此这是 一个非常重要的部分。 ipsec 体系结构 封装安全载荷(esp)认证头(ah) 加密算法认证算法 解释域(doi) 密钥管理(ike)策略 图 2-4 ipsec 体系结构 figure2-4 system architecture of ipsec 2.2.2 安全关联(sa) 安全关联(security association, sa)是 ipsec 的基础。在 ipsec 中,sa 就是两 个通信端点(主机,路由器)之间的单向“连接” 。如果在两个方向上都需要进行安 全通信的话,那么就需要两个 sa,每个方向上各一个。sa 是 ipsec 安全策略的体 现,它通过 ah 以及 esp 提供各种安全服务,同时 ike 的一个主要功能就是建立以 及维护 sa。因此 sa 包括 ipsec 通信模式,数据保护方式(esp 或者 ah) ,所使用 的认证方法与加密算法,在认证算法与加密算法中使用的密钥及其生存周期等安全 参数信息。一个 sa 可以用一个三元组进行标识:安全参数索引(security parameter 第二章 相关安全协议的研究 14 index, spi) ,目的 ip 地址,以及安全协议标识。目的 ip 地址指的是 ipv4 或者 ipv6 目的地址。安全协议标识代表使用何种安全协议,esp 或者 ah。安全参数索引被用 于区分具有相同目的 ip 以及相同安全协议标识的不同 sa。 为了有效地支持 sa,ipsec 定义了两种数据库模型:安全策略数据库(security policy database)以及安全相关数据库(security association database) 。 spd 规定了对进入以及外出的数据报提供何种安全服务以及以何种方式提供。 进入与外出的数据报可以有不同的 spd,这样就可以提供非对称的策略。spd 对于 ip 数据报有三种处理方法:(1) 丢弃(discard) 。(2) 绕过 ipsec。 (3) 应用 ipsec。 spd 包含有一张有序的策略列表。在处理外出的数据报的时候需要搜索该列表 以找到该数据报所对应的策略。每条策略是以一个或者多个选择符(selector)来作 为关键字索引的。选择符包含:(1) 目的 ip 地址(ipv4, ipv6) 。(2) 源 ip 地址(ipv4, ipv6) 。(3) 名字,包括一个 dns 名,x.500 区分名或者在 ipsec doi 中定义的其他 名字类型。(4) 数据敏感等级。(5) 传输层协议。(6) 源和目的端口。通过选择符, 我们可以从 spd 中找出相应的策略条目,该策略条目是我们能够从安全关联数据库 (sad) 中找到相应的 sa 或者 sa 集。 sa 或者 sa 集能够根据策略的要求处理外出 的数据报。 对于进入数据报而言, 首先需要进行安全处理, 然后通过选择符检索 spd 以察看对报文的策略是否得当。 安全关联数据库(sad)可以看作是一个 sa 的集合,每个 sa 都对应于 sad 中 的一个条目。在 sad 中 sa 通过(spi,ip 地址,安全协议标识)这样一个三元组进 行索引。sad 还包括以下主要内容:1. 序列号计数器,它可以为 ah 以及 esp 生成 序列号。2. 序列号溢出标志,它用以表示当序列号计数器溢出的时候是否要产生一 个对应的事件,并且 sa 传送数据包。3. 反重放窗口,它被用以检查一个 esp 或者 ah 报文是否一个重放报文。4. ah 的验证算法与密钥等信息。5. esp 的加密算法, 密钥,iv 模式,iv 值等信息。5. esp 验证算法与密钥等信息。6. sa 的生存周期。 7. ipsec 传输模式。 8. 路径最大传输单元(path mtu) 。 第二章 相关安全协议的研究 15 2.2.3 ipsec 安全协议(ah,esp) ipsec 定义了两个基本的安全协议,认证头(ah)以及封装安全载荷(esp) 。 安全协议结合安全协议的工作模式总共有 4 种组合:ah 传输模式,ah 隧道模式, esp 传输模式,esp 隧道模式。 ah 是为 ip 数据报提供强认证的一种安全机制,能为 ip 数据报提供访问控制、 无连接完整性、数据源认证和抗重放攻击服务。ah 并不提供数据加密服务,它使用 基于 md5,sha-1 散列算法的带密钥的 hmac 算法作为认证算法。ah 可以认证整 个 ip 数据报(包括内部报头以及 ip 载荷) ,也能够认证部分选中的 ip 报头和 ipv6 扩展头。 ah 的协议值是 51,它由 5 个固定长度字段以及 1 个可变长度字段组成。认证 头的格式如图 2-5 所示: 图 2-5 ah 的格式 figure2-5 the format of ah (1) 下一个报头:该字段长度为 8 位,它用于标识下一个有效载荷的类型。 载荷长度:该字段长度为 8 位,它表示整个 ah 载荷的长度,它的值是整个 ah 长度减去 2。 (2) 保留:该字段长度为 16 位,暂时不使用,所以其值为 0。 (3) spi:安全参数索引,该字段是一个长度为 32 位的任意值,它与目的 ip 地址 以及安全协议标识一起可以唯一确定相应的 sa。spi 的值为 0 时,表示没有 spi 存 在,值 1255 留待后用。 (4) 序列号:该字段长度为 32 位。此字段的值是一个单调递增的计数值,因此 第二章 相关安全协议的研究 16 它可以唯一表示一个数据报,能够为数据报提供抗重放服务。 (5) 认证数据:该字段长度是可变的,但是它总是 32 位字的整数倍。该字段存 放数据报的完整性检验值(icv)或者 mac 值。当完整性检验值的长度不满足条件 的时候,需要进行填充。 ah 具有两种工作模式:ah 传输模式与 ah 隧道模式。两种模式下的封装方式 如图 2-6,在 ipv4 的传输模式中 ah 被插在 ip 头与要保护的上层协议数据之间,而 在 ipv6 传输模式中 ah 被插在 ipv6 扩展头中。 两种模式的主要区别出了报文的封装 格式,还在于以下几点:1. 数据保护的范围不同。在传输模式中 ah 可以保护整个 上层协议数据以及 ip 头部的不变字段。在隧道模式中,ah 可以保护整个原 ip 数据 报以及新 ip 头中的不变部分。 2. 两种模式的适用范围不同。 传输模式只能用于主机, 而隧道模式还可以用于安全网关。 ip头ah头tcp头载荷 新ip头ah头tcp头载荷原ip头 认证部分 认证部分 隧道模式 传输模式 图 2-6 ah 的工作模式 figure2-6 the working mode of ah 封装安全载荷(esp)是 ipsec 中另一个重要的安全协议,它为 ipv4 以及 ipv6 上的数据提供各种安全服务。它不仅能够提供数据源认证、无连接的数据完整性、 抗重放攻击等 ah 能够提供的安全服务,还能够提数据保密以及有限数据流保密服 务。整个 esp 的格式如图 2-7 所示: 第二章 相关安全协议的研究 17 图 2-7 esp 的格式 figure2-7 the format of esp 其中各个字段的意义如下: (1) 安全参数索引(spi) ,spi 是一个任意的 32 位值,它的作用和 ah 中的 spi 一样,用于为数据报索引 sa。 (2) 序列号(sn) ,此字段的值是一个单调递增的计数值,用于防止重放攻击。 这个字段是强制的,无论有没有选择抗重放服务都会被起用,报文接收者会根据实 际情况选择处理此字段的方式。 (3) 有效载荷数据,这是一个可变长的字段,但是必须是整数个字节。原 ip 数 据报上层协议的数据将会被存放在此处。如果采用的加密方法需要 iv 初始向量,例 如 cbc 模式,那么它们也应该被存放在这个字段中。一旦需要传输 iv 数据,那么 有效载荷字段的前 32 位数据就会被用于存放 iv 信息。 (4) 填充。数据填充将会在以下情况下被用到:1. 如果加密算法要求明文的长 度是某一字节数的整数倍,那么此时就需要对数据进行填充使它满足要求。2. 需要 确保加密后的数据是 4 字节对齐的。3. 如果需要掩盖实际载荷数据的长度,也可以 对数据进行填充,这就是数据流加密服务。需要注意的是,此时必须在安全与带宽 之间做出权衡。 (5) 填充长度。该字段表示填充了多少字节的数据,由于最多填充 255 个字节, 因此填充长度的取值范围为 0255,该字段不是可选的,当没有填充的时候,该字段 的值为 0。 第二章 相关安全协议的研究 18 (6) 下一个载荷头,该字段的长度为 8 位,它用于表示 esp 封装模式,这也是 一个必选的字段。 (7) 认证数据。这是一个长度可变的字段,其长度取决于所采用的认证函数。该 字段的值是通过带密钥的散列函数计算除本身之外的所有的 esp 字段而得到的。这 个字段是可选的,只有当 sa 选择了认证服务时才会使用。 esp 同样有两种工作模式:esp 传输模式以及 esp 隧道模式。esp 的工作模式 如图 2-8 所示: ip头esp头tcp头载荷+填充认证 新ip头esp头tcp头载荷+填充认证原ip头 认证部分 加密部分 认证部分 加密部分 隧道模式 传输模式 图 2-8 esp 的工作模式 figure2-8 the working mode of esp esp 的传输模式只适合主机实现,它保护的是整个上层协议的数据,不包括 ip 头,从图中可以看到,加密部分不包括 esp 头,但是认证部分包括。esp 的隧道模 式可以用于主机也可以用于安全网关。该模式下能够保护整个 ip 数据报,包括 ip 头 部。同样的认证部分包括 esp 头,而加密部分不包括。需要注意的是无论哪一种模 式认证数据被加在整个报文的最后,它不属于加密部分,这主要是出于实现上的考 虑,当前面的部分在被传输的时候可以同时计算后面的认证值,当前面的部分传送 完毕,也就得到了认证值,此时再将认证值传出即可。 。 2.3 mikey

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论