(机械设计及理论专业论文)mpeg4流媒体数字版权保护系统的研究.pdf_第1页
(机械设计及理论专业论文)mpeg4流媒体数字版权保护系统的研究.pdf_第2页
(机械设计及理论专业论文)mpeg4流媒体数字版权保护系统的研究.pdf_第3页
(机械设计及理论专业论文)mpeg4流媒体数字版权保护系统的研究.pdf_第4页
(机械设计及理论专业论文)mpeg4流媒体数字版权保护系统的研究.pdf_第5页
已阅读5页,还剩58页未读 继续免费阅读

(机械设计及理论专业论文)mpeg4流媒体数字版权保护系统的研究.pdf.pdf 免费下载

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

文档简介

i 摘 要 随着网络流媒体技术的广泛应用,流媒体数字版权保护(drm, digital rights management)技术日益受到人们的关注,成为了一个研究的热点,尤其是在国内流 媒体保护技术刚刚起步的环境下,对流媒体 drm 技术的研究具有重要的意义。 掌握流媒体 drm核心技术, 一方面需要深入了解流媒体从制作到播放的深层技 术,另一方面,需要处理好对流媒体文件的加密。本文针对这两个方面提出了一个 基于三层密钥管理机制的 m p e g - 4 流媒体 d r m 系统框架,研究了 m p e g - 4 视频码流的 加密方法,详细设计并实现了系统的服务器端和客户端。本文所做的工作包括以下 几点: 首先,本文建立了 mpeg- 4 流媒体 drm 系统的服务器端和客户端功能模型。 服务器端的主要功能是用户信息管理、媒体授权和 mpeg- 4 文件内容加密,客户端 则是从网络接收的流媒体数据解密出可播放的 mpeg- 4 流媒体文件。文中提出了一 种新的三层密钥管理机制,此机制是一个包含内容密钥、业务密钥和用户密钥三种 密钥的混合密钥体系,可有效保障 drm 系统的安全。 其次,通过分析流媒体加密技术、mpeg 加密算法和 mpeg- 4 视频码流的数据 格式,本文提出了一种不破坏 mpeg- 4 视频码流格式的加密方案,并设计了四种使 用内容密钥加密 mpeg- 4 视频码流的方法。 最后,本文设计了 mpeg- 4 流媒体 drm 系统的流媒体服务器、内容打包服务 器和媒体授权服务器,基于微软公司的 directshow技术,实现了支持 drm 功能的 客户端流媒体播放器。 关键词:数字版权管理 流媒体 mpeg- 4 ii abstract with the wide application of streaming media in network, streaming media drm (digital rights management) has attracted more and more attention so as to become a research hot spot. in particular, drm technology has just been started in domestic circumstance, so the study of drm for streaming media is of great significance. grasping the core technology of streaming media drm not only needs to understand the process of from making media to playing media deeply but also deal well with the problem of encrypting streaming media files. in the thesis, a frame of drm for streamed mpeg- 4 media is proposed based on triple level encryption mechanism, several methods of encrypting mpeg- 4 are studied, and the server and client of drm system for streamed mpeg- 4 media are designed in detail. main works and contributions are outlined as follows. firstly, functional models of server and client in this drm system are built. the main function of server is user information management, authorization and mpeg- 4 files content encryption. the client s function is to decrypt the streaming media data received from internet, and then play it. in this thesis, tripe level encryption mechanism is proposed. it is a mixed key system which includes content key, service key and user key, ensuring the security of this drm system effectively. secondly, a new method of encrypting mpeg- 4 files without breaking file format is proposed based on the analysis of encryption technology of streaming media, encryption algorithms of mpeg and mpeg- 4 data format, and four means of encrypting mpeg- 4 using content key are designed. finally, this thesis also designs the streaming media server, content packaging server and authorization server. a steaming media player with drm is implemented based on directshow. keywords: digital rights management streaming media mpeg- 4 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的 研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人 或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已 在文中以明确方式标明。本人完全意识到,本声明的法律结果由本人承担。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权 保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借 阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进 行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密 ,在_年解密后适用本授权书。 不保密。 (请在以上方框内打“”) 学位论文作者签名: 指导教师签名: 日期: 年 月 日 日期: 年 月 日 本论文属于 1 1 绪论 1.1 流媒体技术及数字版权保护简介 1.1.1 流媒体技术基础 在流格式媒体出现之前,人们若想从网络上观看影片或收听音乐,必须先将影 音档案下载至计算机储存后,才可以点选播放,不但浪费下载时间、硬盘空间,也 无法满足消费者使用方便及实时播放的需要。 streaming media(流媒体)的发展,克服了这些不足。所谓“流媒体”是指在 网络中使用实时流式传输技术1的连续时基媒体,如音频、视频或多媒体文件等。流 媒体与普通媒体的主要区别在于: 第一、流媒体为了适合网络,尤其是低带宽网络的实时传输,要经过特殊的编 码压缩,如 mpeg 等,在保证一定媒体质量的前提下,减少传输数据量。 第二、为了对媒体进行实时控制和播放,必须将媒体数据以特殊的流文件格式 存储(即流化),如 rm、wav 等。也就是说,网络中传输的数据包具有时间标记, 用来把不同时间到达用户的媒体片断重新连接成为顺序的媒体流。 目前常用的流媒体系统有 realnetwork 公司的 realsystem和 microsoft 公司的 mediaservice。这些流媒体系统在对流媒体编码时按照不同的传输速率进行分别编 码,在传输时根据用户的连接速率动态调整传输的媒体流,使得用户在不同的带宽 环境下均可以在线实时地欣赏到高质量的视音频内容,如 vod点播、收费电视等。 在网络上传输音视频 (a/v, audio/video) 等多媒体信息流式传输有两种方法1: 实时流式传输(real- time streaming transport)和顺序流式传输(progressive streaming transport)。 流式传输的实现需要两个条件: 第一、实现需要合适的传输协议。 第二、流式传输的实现还需要缓存。使用缓存系统能消除时延和抖动的影响, 以保证数据包顺序正确,从而使媒体数据能够连续输出。 流式传输的过程原理如下: 2 1) 用户选择某一流媒体服务后,web 浏览器与 web 服务器之间使用 http tcp 交换控制信息,以便把需要传输的实时数据从原始信息中检索出来; 2) web 浏览器启动音视频客户程序,使用 http 从 web 服务器检索相关参数 对音视频客户程序初始化,这些参数可能包括目录信息、音视频数据的编码类型或 与音视频检索相关的服务器地址; 3) 音视频客户程序及音视频服务器运行实时流协议, 以交换音视频传输所需的 控制信息,实时流协议提供执行播放、快进、快倒、暂停及录制等命令的方法; 4) 音视频服务器使用 rtpudp 协议将音视频数据传输给音视频客户程序, 一旦音视频数据抵达客户端,音视频客户程序即可播放输出。 在流式传输中,使用 rtpudp 和 rtsptcp 两种不同的通信协议与音视频 服务器建立联系,目的是为了能够把服务器的输出从定向到一个非运行音视频客户 程序的客户机的目的地址。 1.1.2 实时流媒体网络传输协议 因特网一直主要用来提供可靠的数据传送服务,对数据的时延几乎没有什么限 制。tcp/ip22就是为这种类型的传输设计的,而且工作的很好。然而像多目标广播 这样的多媒体应用却具有不同的特性,因此就需要不同的协议来提供所需要的服务。 例如,如果在接收来自因特网的声音、电视或者要求时延很小的其他数据时,使用 tcp/ip 在实时播放过程中就可能会产生抖动或者是不能接受的抖动,使声音或者电 视的质量明显下降。实时传输协议(rtp,real- time transport protocol) ,实时控制 协议(rtcp,real- time transport control protocol) ,资源保留协议(rsvp,resource reservation protocol)和实时流放协议(rtsp,real- time streaming protocol)就是 为实时多媒体在网络上的应用而开发的协议23- 25。其中 rtp 协议负责数据传输, rtcp 协议提供数据传输质量反馈,rsvp 协议用于资源预留以保证网络服务质量, rtsp协议则提供数据传输的远端控制。rtp/rtcp 协议是流媒体技术的核心,在流 媒体技术中具有举足轻重的作用。 rtp 是用于 internet 上针对多媒体数据流的一种传输协议。rtp 被定义为在一对 一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。rtp 通常使 用 udp 来传送数据,但 rtp 也可以在 tcp 或 atm 等其他协议之上工作。当应用程 3 序开始一个 rtp 会话时将使用两个端口:一个给 rtp,一个给 rtcp。rtp 本身并 不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它 依靠 rtcp 提供这些服务。通常 rtp 算法并不作为一个独立的网络层来实现,而是 作为应用程序代码的一部分。实时传输控制协议 rtcp。rtcp 和 rtp 一起提供流量 控制和拥塞控制服务。在 rtp 会话期间,各参与者周期性地传送 rtcp 包。rtcp 包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料,因此,服务器 可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。rtp 和 rtcp 配 合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因而特别适合传送 网上的实时数据。 1)rtp 协议 rtp 数据协议负责对流媒体数据进行封包并实现媒体流的实时传输, 每一个 rtp 数据报都由头部(header)和负载(payload)两个部分组成,其中头部前 12 个字节 的含义是固定的,而负载则可以是音频或者视频数据。rtp 数据报的头部格式如图 1.1 所示: content source (csrc) (0- 15) synchronization source (ssrc) timestamp vp x cc mptsequence number bit 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 16 7 8 9 0 1 2 3 4 5 6 7 8 9 0 31 图 1.1 rtp 头部格式 其中比较重要的几个域及其意义如下: (1)csrc 记数(cc) 表示 csrc 标识的数目。csrc 标识紧跟在 rtp 固定 头部之后,用来表示 rtp 数据报的来源,rtp 协议允许在同一个会话中存在多个数 据源,它们可以通过 rtp 混合器合并为一个数据源。例如,可以产生一个 csrc 列 表来表示一个电话会议,该会议通过一个 rtp 混合器将所有讲话者的语音数据组合 为一个 rtp 数据源。 (2)负载类型(pt) 标明 rtp 负载的格式,包括所采用的编码算法、采样频 4 率、承载通道等。例如,类型 2 表明该 rtp 数据包中承载的是用 itu g.721 算法编 码的语音数据,采样频率为 8000hz,并且采用单声道。 (3)序列号 用来为接收方提供探测数据丢失的方法,但如何处理丢失的数据 则是应用程序自己的事情,rtp 协议本身并不负责数据的重传。 (4)时间戳 记录了负载中第一个字节的采样时间,接收方能够根据时间戳来 确定数据的到达是否受到了延迟抖动的影响,但具体如何来补偿延迟抖动则是应用 程序自己的事情。 从 rtp 数据报的格式不难看出,它包含了传输媒体的类型、格式、序列号、时 间戳以及是否有附加数据等信息,这些都为实时的流媒体传输提供了相应的基础。 rtp 协议的目的是提供实时数据(如交互式的音频和视频)的端到端传输服务,因 此在 rtp 中没有连接的概念,它可以建立在底层的面向连接或面向非连接的传输协 议之上;rtp 也不依赖于特别的网络地址格式,而仅仅只需要底层传输协议支持组 帧(framing)和分段(segmentation)就足够了;另外 rtp 本身还不提供任何可靠 性机制,这些都要由传输协议或者应用程序自己来保证。在典型的应用场合下,rtp 一般是在传输协议之上作为应用程序的一部分加以实现的。 2)rtcp 协议 rtcp 控制协议需要与 rtp 数据协议一起配合使用,当应用程序启动一个 rtp 会话时将同时占用两个端口,分别供 rtp 和 rtcp 使用。rtp 本身并不能为按序传 输数据包提供可靠的保证,也不提供流量控制和拥塞控制,这些都由 rtcp 来负责 完成。通常 rtcp 会采用与 rtp 相同的分发机制,向会话中的所有成员周期性地发 送控制信息,应用程序通过接收这些数据,从中获取会话参与者的相关资料,以及 网络状况、分组丢失概率等反馈信息,从而能够对服务质量进行控制或者对网络状 况进行诊断。 rtcp 协议的功能是通过不同的 rtcp 数据报来实现的,主要有如下几种类型: (1)发送端报告(sr) 所谓发送端是指发出 rtp 数据报的应用程序或者终 端,发送端同时也可以是接收端。 (2)接收端报告(rr) 所谓接收端是指仅接收但不发送 rtp 数据报的应用 程序或者终端。 (3)源描述(sdes) 主要功能是作为会话成员有关标识信息的载体,如用 户名、邮件地址、电话号码等,此外还具有向会话成员传达会话控制信息的功能。 5 (4)通知离开(bye) 主要功能是指示某一个或者几个源不再有效,即通知 会话中的其他成员自己将退出会话。 (5)由应用程序自己定义(app) 解决了 rtcp 的扩展性问题,并且为协议的 实现者提供了很大的灵活性。 rtcp 数据报携带有服务质量监控的必要信息,能够对服务质量进行动态的调 整,并能够对网络拥塞进行有效的控制。由于 rtcp 数据报采用的是多播方式,因 此会话中的所有成员都可以通过 rtcp 数据报返回的控制信息,来了解其他参与者 的当前情况。 在一个典型的应用场合下,发送媒体流的应用程序将周期性地产生发送端报告 sr,该 rtcp 数据报含有不同媒体流间的同步信息,以及已经发送的数据报和字节 的计数,接收端根据这些信息可以估计出实际的数据传输速率。另一方面,接收端 会向所有已知的发送端发送接收端报告 rr,该 rtcp 数据报含有已接收数据报的最 大序列号、丢失的数据报数目、延时抖动和时间戳等重要信息,发送端应用根据这 些信息可以估计出往返时延,并且可以根据数据报丢失概率和时延抖动情况动态调 整发送速率,以改善网络拥塞状况,或者根据网络状况平滑地调整应用程序的服务 质量。 3)rtsp 实时流协议 作为一个应用层协议,rtsp 提供了一个可供扩展的框架,它的意义在于使得实 时流媒体数据的受控和点播变得可能。总的说来,rtsp 是一个流媒体表示协议,主 要用来控制具有实时特性的数据发送,但它本身并不传输数据,而是必须依赖于下 层传输协议所提供的某些服务。rtsp 可以对流媒体提供诸如播放、暂停、快进等操 作,它负责定义具体的控制消息、操作方法、状态码等,此外还描述了与 rtp 间的 交互操作。 rtsp 在制定时较多地参考了 http/1.1 协议,甚至许多描述与 http/1.1 完全相 同。rtsp 之所以特意使用与 http/1.1 类似的语法和操作,在很大程度上是为了兼 容现有的 web 基础结构, 正因如此, http/1.1 的扩展机制大都可以直接引入到 rtsp 中。 由 rtsp 控制的媒体流集合可以用表示描述(presentation description)来定义, 所谓表示是指流媒体服务器提供给客户机的一个或者多个媒体流的集合,而表示描 6 述则包含了一个表示中各个媒体流的相关信息,如数据编码/解码算法、网络地址、 媒体流的内容等。 虽然 rtsp 服务器同样也使用标识符来区别每一流连接会话 (session) , 但 rtsp 连接并没有被绑定到传输层连接 (如 tcp 等) , 也就是说在整个 rtsp 连接期间, rtsp 用户可打开或者关闭多个对 rtsp 服务器的可靠传输连接以发出 rtsp 请求。此外, rtsp 连接也可以基于面向无连接的传输协议(如 udp 等) 。 rtsp 协议目前支持以下操作: (1)检索媒体 允许用户通过 http 或者其它方法向媒体服务器提交一个表示 描述。如表示是组播的,则表示描述就包含用于该媒体流的组播地址和端口号;如 果表示是单播的,为了安全在表示描述中应该只提供目的地址。 (2)邀请加入 媒体服务器可以被邀请参加正在进行的会议,或者在表示中回 放媒体,或者在表示中录制全部媒体或其子集,非常适合于分布式教学。 (3)添加媒体 通知用户新加入的可利用媒体流,这对现场讲座来讲显得尤其 有用。与 http/1.1 类似,rtsp 请求也可以交由代理、通道或者缓存来进行处理。 1.1.3 数字版权保护 目前的流媒体技术特别适合现场事件,也支持随机访问,用户可以快进或后退 的方式来观看前面或后面的内容。然而,流媒体要实现高级应用还需要解决许多问 题2,如媒体的制作、加密、编码、传输、管理、认证与收费、质量保证等方面。尤 其是随着关于流媒体的版权保护技术与标准日益受到人们的关注,数字版权管理 (digital right management,drm)系统3- 11应运而生。数字版权管理系统是媒体版 权保护,并借此获得商业利益的关键技术保障。数字版权管理系统是以某种安全方 式进行媒体内容加密的解决方案。 媒体拥有者和分发者可以通过 drm 来定义媒体内 容的观看时间、观看次数、自动删除等策略,以及防止复制等保护措施,同时赋予 用户灵活的媒体访问权限。 通常的 drm 系统都包含了版权使用的描述、 识别、 交易、 保护、监控、跟踪以及对版权所有者的关系管理等内容,并把安全性放在第一位。 流媒体本身的实时性决定了其具有一定的安全性。一般情况下,流媒体播放过 的内容随即被删除,这样在客户端就“不存在”一个完整的媒体流。流媒体的这种 自身的安全性,其存在的必要条件是用户无法获得本地缓冲区中的任何数据。但是, 7 在实际中,存在着大量的“不良用户”和“不良播放器”,他们以合法的身份做着 不合法的事情。他们采取某种手段截获数据流并存储,然后进行分发和其他破坏版 权的活动。 1.1.4 流媒体版权保护的一般应用框架 对流媒体的版权保护属于数字版权管理技术drm应用的范畴。流媒体版权 保护系统的一般框架12- 17,如图 1.2 所示,主要包括媒体拥有者及其制作服务器、数 字媒体授权中心、媒体分发服务器和授权用户四大部分。 媒体拥有者 加密后的媒体 媒体分发服务器 数字媒体授权中心 授权用户 密钥 认证数据 密钥 加密后的媒体 媒体请求 图 1.2 流媒体版权保护系统的一般框架 该系统的运作过程如下: 1)系统建立数字媒体授权中心,其目的是保存解密密钥并对用户的身份进行认 证和授权; 2)媒体拥有者制作、编码、加密媒体数据; 3)媒体拥有者将加密后的数据发送到媒体分发服务器,同时将相应的解密密钥 (可能与加密密钥不同)安全地发送给数字媒体授权中心进行安全存储; 4)用户根据所请求的媒体分发服务器中媒体数据的相关信息,到数字媒体授权 中心进行用户认证; 5)用户安全地从数字媒体授权中心获得解密密钥,并从媒体分发服务器获得所 请求的媒体数据; 6)用户使用解密密钥对媒体数据进行解密,然后以在线或下载方式收看。 从上述的一般框架及其运作过程可以看出,目前流媒体版权保护系统的核心是 数字授权中心,其采用的技术是密码学,经过加密、授权和认证三个阶段来获得对 流媒体版权的保护。在这里,版权保护的成功与否,取决于密钥的安全性(包括密 8 钥的分配、使用和保存)。密钥将通过授权的方式传递给用户,从而使授权用户能 对其需要的媒体内容进行解密。 1.2 mpeg- 4 标准及在流媒体技术中的应用 mpeg- 4 标准设系统、音频、视频、需求、实现研究、测试及自然合成混合编码 snhc(synthetic/natural hybrid coding)子组,提供更强的交互能力。场景中的每 个对象独立编码,用户可以选择性地与其中某几个对象交互,具有良好的重用性。 重新组合音视频对象(avo:audio- visual objects)构造新场景,可以集成各种对 象,无缝地集成自然信息与合成信息、实时信息与存储信息。avo 可以是单/双/多 声道音频信息、单/双/多镜头 2d/3d 视频信息。通过 mpeg- 4 系统层定义的 dmif (delivery multimedia integration framework)框架,用户可以透明地访问各类信息, 各种网络传输的信息最终被映射为本地信息,整个过程给用户的感觉就如同访问本 地信息一样。而且允许基于内容(比特率、分辨率、帧率、防错保护和解码优先级) 的可伸缩性和服务质量 qos(quality of service)参数,更加灵活,可扩展,充分考 虑未来技术的发展及应用需求,将解码器可编程能力分为:不可编程的标准工具集 合(flex- 0);由标准化工具及其接口灵活配置的算法(flex- 1);多种工具构成可 能算法的标准化可扩展机制(flex- 2)。 mpeg- 4 视频编码标准提供不同的视频标准源格式、码率、帧频下矩形图象的有 效编码,同时也支持基于内容的图象编码。 mpeg- 4 的最大特点是引入了基于对象表达(object- based representation)的概 念,用来表达视听对象 avo ,mpeg- 4 扩充了编码的数据类型,由自然数据对象扩 展到计算机生成的合成数据对象,采用合成对象/自然对象混合编码 snhc 算法;在 实现交互功能和重用对象中引入了组合、合成和编排等重要概念。 mpeg- 4 中制定了 一个称为传输多媒体集成框架 dmif 的会话协议,用来管理多媒体数据流。mpfg- 4 标准支持 8 项新的或改进的功能,可分为以下 3 类: 1) 基于内容的交互性 基于内容的多媒体数据存取工具;基于内容的码流操纵和编辑;自然与合成数 据的混合编码;增强的时间域随机存取。 2) 高压缩率 9 提高编码效率;对多个并发数据流的编码。 3) 灵活多样的存取 错误易发环境中的抗错性 (robustness) ; 基于内容的尺度可变性 (content- based scalability)。 mpeg- 4 之所以能够在流媒体技术中得到广泛的应用, 主要取决于两个方面的因 素: 一是编码的优势,集合了很多最先进的技术,能够适应很高的带宽 5kb/s 10mb/s,尤其是在甚低比特率下有良好的表现,并且具有很强的容错能力; 二是系统框架,在复用层上提供交织等功能,可以用在无线传输中。 还有一个潜在的因素,交互性是未来图像通信发展的一个重要方向,而 mpeg- 4 致力于交互性的实现,其基于对象的视频压缩编码方式不仅开辟了图象压缩编码的 新领域更为交互性的实现提供了一种可行的手段。虽然到目前为止图象分割技术还 没有什么大的突破,但一旦有标准出来,必然只会使 mpeg- 4 的应用更为广泛。 1.3 国内外流媒体数字版权管理技术发展现状 数字版权管理是一项涉及到技术、法律和商业各个层面的系统工程。它为数字 媒体的商业运作提供了一套完整的实现手段。drm 技术的出现,使得版权所有者不 用再耗费大量时间和精力与客户进行谈判,来确保数字媒体内容能够被合法的使用。 drm 将使各个平台(无论是因特网、流媒体还是交互数字电视(iptv)的内容提 供商提供更多的内容,采取更灵活的节目销售方式,同时有效的保护知识产权。 目前,在流媒体数字版权管理技术方面,占主导地位的是国外的三家巨头公司: microsoft,realnetworks 和 apple 公司。 微软公司的 windows media drm 是目前市场上一个领先的解决方案。 它提供了 完整的drm解决方案, 包括实现 drm 的体系结构和实现二次开发的sdk (software development kit)。微软的 drm 方案中采用 rc4,des,3des 等对称加密算法加 密数字内容,采用 rsa,ecc 等非对称算法进行身份验证和加密密钥。 realnetworks 公司的 helix drm 是一个综合、灵活的平台,确保标准格式和 internet格式,如 realaudio,realvideo,mp3,mpeg- 4,aac,sony 的 atrac3 和 h.264 等格式媒体的安全传输。 使用 helix drm, 不仅能将这些格式媒体传至 pc, 10 还能传至包括移动设备和家用电器在内的多种非 pc 设备。 helix drm 包括一系列的 产品与设备,它使版权拥有者能创建一系列健全的商业模式来传输多媒体给世界各 地最广大范围的观众,并为消费者找到和欣赏数字媒体提供了很多新的方式。 apple 公司专有的 drm系统 fairplay主要用于自身产品中,目前只有简单的保 护机制,并不能提供多样化的消费行为。 在我国,早在三四年前即开始关注流媒体技术的发展及应用,并积极尝试流媒 体在网络直播、视音频新闻播出、视频广告等领域的应用,为推动流媒体在我国新 闻传播等领域的大量应用打下了坚实的基础。一大批新兴的流技术开发公司和流技 术应用服务公司的崛起,将成为新的产业生态景观。现在各相关厂商彼此间展开了 激烈的竞争,已有不少厂商正着手开发或己开发出相应的产品系列。这些厂商要么 自己开发底层的流技术软件,要么利用国外这三大公司提供的技术开发相应的产品。 由于流媒体的核心技术(媒体格式标准等)是掌握在国外少数大公司的手中,所以 产品以应用类居多。至于流媒体数字版权管理技术这方面,由于是对流媒体文件本 身进行加密处理,更需要深入了解流媒体从制作到播放的深层技术内核。只有从媒 体格式到播放工具全部是自己的产品,才会在加密、解密等方面做的更加彻底。在 产品研发的同时,还要考虑市场用户的接受程度。诸多因素导致我国 drm 技术成熟 的应用产品比较少。 目前国内的一些 drm 集成商基本上是在微软的 windows media 技术基础上制作 drm产品。他们或直接应用 drm技术,或在流媒体加密技术中再 融入第三方的加密技术。随着宽带的普及,流媒体及其 drm 技术一定会有美好的前 景与未来。 1.4 课题研究的目的和意义 流媒体将成为未来互联网应用的主流,并将推动互联网整体架构的革新。现在 流媒体市场蓬勃发展,由于各种媒体信息的传播较以往更加方便、快捷,版权保护 及打击盗版的难度进一步加大,所以对于各应用服务提供商而言,他们迫切需要既 适应当前市场需求又具有 drm 版权保护功能的流媒体系统解决方案。 另一方面,mpeg- 4 标准以其高压缩率、高质量、低传输率成为目前网络流媒体 的主要格式和标准,然而 mpeg- 4 媒体市场存在的版权问题更加糟糕。mpeg 组织 针对 mpeg- 4 版权保护问题推出了 ipmp(intellectual property management and 11 protection,知识产权管理和保护)系统,但是 ipmp 系统只是 mpeg- 4 的一个应用 接口,在流媒体市场并没有得到广泛应用。因此,对 mpeg- 4 流媒体格式进行数字 内容保护的研究具有实际意义。 本课题的研究紧密结合当前的市场需求, 目的是设计一种简单而高效的 mpeg- 4 流媒体数字版权保护系统。 1.5 本文所做的主要工作 本文以 mpeg- 4 流媒体 drm 系统的设计和 mpeg- 4 流加密为核心,针对当前 流媒体数字版权管理的现状,提出了一种基于三层密钥机制的 mpeg- 4 流媒体 drm 系统框架,建立了服务器端和客户端功能模型。其中服务器端的主要功能是用户信 息管理、媒体授权和 mpeg- 4 文件内容加密,客户端则是从网络接收的流媒体数据, 解密出可播放的 mpeg- 4 流媒体文件。 文中提出了一种新的三层密钥管理机制:一个包含三种密钥内容密钥、业 务密钥和用户密钥的混合密钥体系,是保障 drm 系统安全的关键,并探讨了系统的 安全漏洞和相应的防范措施。 然后,通过分析流媒体加密技术、mpeg 加密算法和 mpeg- 4 视频码流的数据 格式,提出了一种不破坏 mpeg- 4 视频码流格式的加密方案,并设计了四种使用内 容密钥加密 mpeg- 4 视频码流的方法。 最后,设计并实现了 mpeg- 4 流媒体 drm 系统的流媒体服务器、内容打包服 务器和媒体授权服务器。同时,基于微软公司的 directshow技术,实现了支持 drm 功能的客户端流媒体播放器。 可以说本文所作的工作基本上是对一个完善的 drm 系统的研究和设计。 mpeg- 4 流媒体 drm 系统另外还涉及到用户管理、媒体数据库管理、密钥分配、密 钥传输等技术,但这不是本文研究的重点。 本文的内容安排如下: 第一章 绪论:对课题的研究背景进行了说明,介绍了流媒体相关技术,mpeg- 4 编 码的特点和国内外关于流媒体版权保护发展现状,并阐述了本文研究目的和 意义。 12 第二章 mpeg- 4 流媒体 drm 系统框架设计:建立 mpeg- 4 流媒体 drm 系统的服 务器端和客户端功能模型。 第三章 mpeg- 4 流媒体数据加密研究:提出了一种不破坏 mpeg- 4 视频码流格式的 加密方案,设计了四种使用内容密钥加密 mpeg- 4 视频码流的方法。 第四章 mpeg- 4 流媒体 drm 系统服务器端设计:本章包括流媒体服务器设计, mpeg- 4 内容打包器设计和媒体授权服务器设计三个部分。 第五章 mpeg- 4 流媒体 drm 系统客户端设计:本章介绍了微软的用于流媒体传输 解决方案的 directshow技术,设计了具有 drm 功能的流媒体播放器。 最后:总结所做的工作和研究成果,并对进一步的工作方向进行了展望。 13 2 mpeg- 4 流媒体 drm系统框架设计 2.1 总体框架设计 2.1.1 drm 系统框架 本文设计的 drm 系统采用传统的服务器/客户端模式,其中服务器端部分主要 包括四个模块:用户管理数据库、媒体授权、mpeg- 4 内容打包和内容分发子系统。 这四个子系统协同工作。其中用户管理数据库、媒体授权和 mpeg- 4 内容打包之间 的关系的实质上就是 drm系统中所用到的各种机制密钥之间的关系。 系统的基本框 架如图 2.1 所示: 用户申请注册 下载 用 户 信 息 用 户 密 钥 业 务 密 钥 智能卡分发 解密 存储许可证 发送许可信息 预定媒体,请求授权 客 户 端 用户管理 数据库 媒体授权 mpeg- 4 内容打包 智 能 卡 内容分发 子系统 图 2.1 mpeg- 4 流媒体 drm 框架模型 mpeg- 4 流媒体 drm 的工作流程如下: 1)用户通过网络向用户管理数据库申请用户 id,用户管理系统为该用户产生一 对非对称密钥,即用户密钥 uk,其私钥存储在智能卡中分发给用户,公钥由用户管 理数据库保管; 14 2)当用户向 mpeg- 4 流媒体服务器请求媒体播放时,首先要向媒体授权服务器 请求播放许可,它从用户管理数据库获取用户信息; 3)媒体授权服务器验证用户的合法性,如果验证为合法媒体授权服务器将用户 所预定的媒体信息以及该业务的业务密钥 sk 发给 mpeg- 4 内容打包器,同时媒体 授权服务器将 sk 用 uk 的公钥加密制作成播放许可证发送给用户; 4)mpeg- 4 内容打包器是 drm 系统的一个关键部分,它包括一个流式加密密 钥 ck(content key)的内容密钥发生器(随机序列发生器) 。打包器用 ck 加密媒 体源,用 sk 来加密 ck 产生内容密钥控制信息(ckcm,content key control message) ,然后将 ckcm 与用 ck 加密后的媒体进行复用,形成供下载的流媒体数 据流;然后,将打包好的 mpeg- 4 媒体发送给分发子系统 1) 客户端将接收到的许可证发送到智能卡中,用智能卡解密得到 ck; 2) 最后用 ck 解密媒体数据得到可以正常播放的媒体流。 2.1.2 三层密钥体系 前面已经提到服务器端用户管理数据库、媒体授权和 mpeg- 4 内容制作的关系 实质就是密钥管理机制中密钥之间的关系。 在任何 drm 系统中加密机制都是关键所 在,本文设计的 drm 系统采用三层加密机制,下面我们说明一下三层加密机制的构 成: 1)内容密钥 ck(content key) ck 是三层加密机制的核心,是系统中一个至关重要的信息,它被用作 drm 系 统中媒体加密解密的直接密钥,它是由随机序列发生器所产生。随机序列发生器的 初始字序列发生器输出的随机字被用来对 mpeg- 4 码流进行加解密操作, 在每个 ck 的有效区间内加密端和解密端的随机序列发生器都以该内容密钥为初始种子字来同 步产生每一瞬间码流加密的密钥。由于流媒体码流的数据量很大,如果一个 ck 被 长时间用来对码流进行操作势必会给攻击者提供大量的分析样本,这难免影响到系 统的安全性,因此该系统的内容密钥都会几秒钟或者十几秒改变一次,很显然内容 密钥序列的随机性越高攻击者就越难进行攻击,理想的内容密钥发生器莫过于真随 机序列发生器,这种发生器无论运行多久攻击者都不可能通过以前所有的内容密钥 来推测下一次的内容密钥。事实上,目前通过计算机或者微处理器所进行的数学运 15 算无法产生真正意义上的随机数,它们所产生的序列不论有多少种状态,但必然是 有限的并且是循环的。因此,drm 系统中并不试图事实上也并不必要得到一个真正 的随机序列只要它的循环周期足够长就可满足系统的需要。 2)业务密钥 sk(service key) 业务密钥 sk 是用来对 ck 进行加密产生内容密钥控制信息 (ckcm) 的。 sk 的 更新速度不必很快,该系统中的 sk 可以是一个月更新一次,发送端可以根据不同 媒体源授权情况的改变来调整 sk。 每个媒体源可采用不同的 sk,这使得灵活多样 的授权方式成为可能。 3)用户密钥 uk(user key) 用户密钥 uk 是一对非对称密钥,公钥存储在服务端的用户信息管理数据库中, 而私钥被存储在用户所拥有的智能卡的中。因为智能卡本身的防篡改性,避免了用 户与密钥的直接交互,保证了用户私钥的安全。 简单的说这个三个密钥的关系就是:在加密过程中,内容密钥 ck 加密 mpeg- 4 媒体源, 业务密钥 sk 加密内容密钥 ck, 用户密钥 uk 的公钥部分加密业务密钥 sk; 解密过程与此相逆,只是把用户密钥 uk 的公钥换为私钥。ck、sk、uk 分别对应 于服务端的用户管理数据库、媒体授权服务器、mpeg- 4 内容打包器。 2.2 服务器端功能模型 本 drm 系统服务端有四部分组成:用户管理数据库、媒体授权和 mpeg- 4 内 容打包器和内容分发子系统。各部分的作用如下: 1) 用户管理数据库:主要负责用户的注册、智能卡分发、用户数据更新。 2) 媒体授权:身份认证,权限描述,制作和颁发播放许可证。 3) mpeg- 4 内容打包器:加密 mpeg- 4 媒体源,制作受保护的流媒体内容。 4) 内容分发子系统:发布内容。 2.2.1 用户管理数据库 用户管理数据库是一个高安全性的数据库系统,存放着用户信息。通过用户管 理数据库为新注册的用户提供一个密钥文件,其中包含用户的个人信息(用户 id、 所拥有智能卡的 id) 、用户密钥 uk(rsa密钥对)以及有效期限。该系统中一个最 16 重要的功能是用户密钥 uk 的分配问题,它需要为每个合法用户分配 rsa密钥对, 公钥存到系统受保护的信息中,而私钥被存到智能卡中。 2.2.2 媒体授权 媒体授权包括身份认证模块和权限描述模块,身份认证和权利表达的实现在第 四章有详细的描述。制作和办法许可证模块的核心是一个 rsa加密程序,用用户密 钥 uk 的公钥加密业务密钥 sk,制作成许可证。 2.2.3 mpeg- 4 内容打包器与分发子系统 mpeg- 4 内容打包器是服务端的关键部分之一, 分发子系统是流媒体服务器与外 界联系的窗口。下面介绍受保护的 mpeg- 4 流媒体制作与发放的数据流程,如图 2.2 所示: ckckcm内容密钥 发生器 源文件 mpeg- 4 加密 加密 复 用 分 发 子 系 统 网 络 图 2.2 mpeg- 4 内容打包与分发数据流程 在实时加密的情况下,首先要进行 mpeg4 数据的流化,针对 mpeg- 4 媒体数据 特征(比如说一个数据包或者一帧)使用内容密钥产生的 ck 加密这一块数据,同 时 ck 被加密成ckcm 与加密过的 mpeg- 4 码流进行复用, 另外加上一些附加信息, 将 mpeg- 4 流打包。然后,这些媒体包通过分发子系统发送到网络。在服务器端和 客户端启动数据传输后,就开始了对数据包的加密、复用和发送,直至播放完毕。 在非实时加密的情况下,可以将媒体制作完成后,直接存放到流媒体服务器或 者内容服务器上,供用户下载。 17 2.3 客户端功能模型 2.3.1 客户端数据流程 客户端应用程序主要由网络接收模块、解复用及解密模块和播放模块组成。如 图 2.3 所示:接收模块把从 ip 网络收到数据包读到接收缓冲区;解复用器将 ckcm 信息从该缓冲区中的数据包中分离出来,在智能卡中解密;除去 ckcm 信息的数据 包被读到缓冲队列中,用 ck 将其解密;最后播放模块从缓冲队列中取得数据进行 播放。 解密 解密 解 复 用 接收ip网络 缓 冲 队 列接收缓冲 智能卡 播放 ckcm 图 2.3 客户端数据流程 在上面所示的客户端结构图中,用到了两个辅助技术:智能卡和 directshow技 术。 在 directshow 播放模块中,首先建立起一个 source filters,用于异步读取从网 络过来的数据包, 这个 filter 是要自己开发的; 包含 mpeg4 解码器的 transform filters 和用于播放的 rendering filters,可以从现有资源获取。 2.3.2 智能卡的作用 采用智能卡系统加密有许多优点之处,如:可灵活接收加密技术上的新算法和 新成果,更换智能卡和重新授权智能卡都是对窃视者的威慑力量,而且系统总是能 领先于非法窃视者,它还有一个好处就是独立于不同的系统,便于大批生产。 18 智能卡在本系统的客户端中担当解密出 ck 的重要角色。智能卡存储器中存有 用户密钥以及播放许可信息,首先用这个密钥解密播放许可信息得到业务密钥;然 后业务密钥解密 ckcm 信息就得到内容密钥 ck。 对业务密钥和内容密钥的解密都是在智能卡中进行的,而且许可证同智能卡绑 定在一起,没有智能卡,便无法播放流媒体。即使非法用户得到了下载的数据流, 因为没有智能卡以及相应的许可证,仍然无法使用流媒体。所以智能卡是本 drm 系 统中安全性能的关键一环。 2.4 系统安全性分析 本系统由于采用了三层加密机制,对于目前尚未成熟的流媒体 drm 市场,已经 是比较

温馨提示

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

评论

0/150

提交评论