数字版权管理技术原理与应用(txt+pdf+epub+mobi电子书下载)


发布时间:2020-09-07 01:55:27

点击下载

作者:冯明,唐宏,陈戈,等(编著)

出版社:人民邮电出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

数字版权管理技术原理与应用

数字版权管理技术原理与应用试读:

前言

近年来,随着IPTV、数字音乐、移动流媒体等业务的快速发展,数字版权管理(DRM)越来越受到业界的重视,普通民众也逐渐开始接触到 DRM这一技术。虽然DRM并不是一项新技术,但目前它在商业上的应用还较少,广大技术人员对其技术原理普遍不太熟悉,市面上针对 DRM 的书籍也非常少,写一本针对DRM原理与应用的书时机已经成熟。

DRM技术是属于安全领域的,它是很敏感的,涉及相关产业链的各方面利益,例如,内容提供商希望DRM能带给它们控制内容传播范围的技术,并可按内容的使用次数收费;业务运营商希望通过DRM获取更多最新、最有价值的内容以吸引用户;普通用户希望能获取到尽可能多的内容,但并不希望为此支付更多的费用。由此可见,因为大家对DRM的诉求和利益有一定的冲突,所以DRM的商用可以说是困难重重。

虽然DRM的商用成功案例较少,但这并不妨碍它成为信息产业的研究热点。相关政府部门也非常重视这方面的工作。目前已经开始制定DRM标准的组织包括OMA、ISMA、安全视频处理器(SVP)联盟、Coral联盟等。我国目前也在积极参与国际DRM标准化的工作,如OMA DRM标准的制定,国内的设备提供商、运营商均积极参与,提出了不少提案。在ISMA DRM制定的过程中,国内的意见也反映给了标准制定者。

DRM技术已经进入了一个技术成熟的阶段,各种DRM技术使用的方法及核心原理大同小异。DRM已经可以通过公开的技术规范及接口标准实现互通,而且还能保证DRM系统的安全,这与以前的CA系统相比可谓有了相当大的进步。

本书通过对各种标准化组织研究成果的介绍,力图使读者对DRM的研究内容有一定的了解,并根据作者多年从事DRM研究工作的成果,总结归纳了DRM的核心原理,揭开了DRM的神秘面纱。

DRM作为一种数字化产业的关键技术,它并不能独立存在,它必须与具体的应用结合起来才能找到落脚点。这些应用对DRM有不同的需求,所以针对这些需求,DRM在具体应用于各业务系统时,必须针对具体的业务需求进行有针对性的设计。为此,本书用很大的篇幅介绍了DRM的主要业务应用,以方便读者在设计业务系统时了解DRM的特点及功能。

本书由冯明、唐宏、陈戈主编,么静华、张路宜参与编写。其中唐宏负责第1、7、9章的编写,陈戈负责第3、6、10章的编写,么静华负责第4、5章的编写,张路宜负责第2、8章的编写。冯明负责全书的统稿工作。此外,李江葳、苏军根、陈学亮、张志健、海锦霞等人在作者的编写过程中提供了帮助,在此表示感谢。

由于水平所限,本书难免有疏漏和不当之处,敬请读者批评指正。作者2009年5月第1章概述1.1 版权保护技术发展简介

1995 年,美国麻省理工学院教授兼媒体实验室主任尼葛洛庞蒂出版了《数字化生存》一书,正式向人们宣布数字化时代的到来。在数字化时代,数字技术向人类生活各个领域全面推进,包括通信领域、大众传播领域内的传播技术手段以数字制式实现了全面替代传统模拟制式的转变。

在十几年后的今天,数字化步伐不断加快,人们的生活、消费越来越离不开数字化的信息及内容。报刊、书籍等印刷媒体越来越多地被数字化的电子文档、网页取代;传统的音视频内容正在全面向数字化发展,许多高清电影的摄制开始使用数字化的摄像机,MP3、MP4、DVD等播放器全面取代模拟时代的卡式录音机、录像机;广播在经历了调幅、调频两个技术发展阶段后,正进入数字音频广播新阶段;电视也正全面朝数字高清晰度电视及数字压缩卫星直播电视的方向发展。

可以说,数字化影响了人们日常生活的方方面面,给人们带来了巨大的便利。但数字化的发展也面临着内容版权保护的巨大难题。

数字化的信息内容本身是由 bit 组成的,计算机处理、存储、传送信息的基本单位是由 1和0所组成的二进制数字,其复制及传播非常简单。而且,由于网络时代的到来,通过网络传播数字化内容具有“雪崩”效应,一份数字化内容很容易被复制为千千万万份一模一样的内容。

美国电影协会(Motion Picture Association of America)调查发现,2005年仅好莱坞影城就因版权损失了61亿美元。商业软体联盟(Business Software Alliance)进行的一次类似调查显示,2005年全球电脑软件行业的版权损失达到340亿美元。国际唱片业协会(International Federation of the Phonographic Industry)估计2005年全球商业唱片市场因盗版行为的存在而会损失46亿美元。

可以看出,全球目前都面临着猖狂的盗版威胁,影视、音乐、软件、数字文档等的盗版行为已经影响到相关行业的可持续发展。

保护版权是一个庞大的系统工程,需要法律法规、技术等方面相互配合才能取得效果。法律法规是保护版权的根本,技术是保护版权的手段。

版权保护技术是伴随着其保护对象的技术发展而发展的。在模拟时代,一些保护内容不被非法录制的技术已经非常流行,如著名的模拟保护系统(APS,Analog Protection System)技术。

APS技术是一种防止用户通过模拟视频输出录制节目的技术。目前,APS技术主要是利用防录制芯片来实现的,如Macrovision7芯片。在具备APS技术的机器上进行视音频播放时, APS芯片将快速调制的色突发信号(彩条)和垂直消隐信号(AGC)送到复合视频端和S端子。因此,在大部分的录像机里,会干扰电路同步和自动录写级别干扰,使录像带的影像就变得模糊或产生畸变。

APS也有一定的副作用,即降低了视音频的质量,特别是如果设备陈旧或是非标准,APS会引起信号出现彩条、变形、摇摆、黑白图像、明暗交替,所以APS目前的应用并不太广泛。

在数字化时代,也出现过不少内容保护技术,如 DVD 防复制技术 CSS 加密。DVD 的CSS(Content Scrambling System,数据干扰系统)技术利用了加密技术来保证DVD的内容未经正确解密就不能被复制。传统的VCD是把影音数据放在光盘的MPEGAV这个目录下,如果要保存、转换、播放,直接从光盘复制到硬盘不成什么问题。但是对付 DVD 这样简单的招数就行不通了,因为DVD影片数据现在被CSS保护,未经过“解码”就不能够被复制。

CSS最初是由Matsushita和东芝开发的。每个CSS证书都有一把密钥,它是从存储在每张CSS加密盘片上的由400个密钥组成的母集中取出来的。这样,以后盘片上的密钥被移除,证书就无效了。CSS解密算法与驱动器单元交换密钥,以生成加密用的密钥。这样生成的密钥用来扰乱盘片密钥与影片密钥的交换。影片密钥用来解密盘片上数据。DVD播放机在解码和播放前,由CSS电路对数据进行解密。如果是计算机,那么DVD解码硬件和软件必须加入一个CSS 解密模块。所有DVD-ROM驱动器都有一个额外的装置可以与计算机中的CSS模块交换鉴定和解密钥匙。

原本人们普遍认为对DVD解密极难,但一旦发现了第一个解密钥,剩下的就简单多了,这是因为解密高手们能利用原始、有效的密钥作为一个切入点来发现更多有效的解密钥。

1999年,16岁的挪威黑客君·约翰逊(Jon Johansen)同另外两个从网上认识的黑客开始了工作,掀起一个名为MoRE(Masters of Reverse Engineering,反向设计大师)的组织,以反抗DVD播放机厂商的行为。 他们发现一家公司用于Windows的DVD-playing软件的漏洞构造可以泄露打开CSS锁的密钥,通过这个,可以很容易地破解DVD密码。于是,约翰逊开发一种名为DeCSS的小程序,它可以破解DVD盘的加密,从而使未经授权的播放机也能播放DVD电影。经过网络的传播,目前,DVD的CSS加密已不能阻止DVD盗版了。

经过多年盗版与反盗版技术的较量,人们开始认识到,版权保护应结合现代多种技术,以可交互、可升级、可管理、高可靠性为基本特征。数字版权管理技术由于满足这些要求,已逐渐成为内容保护的最主要技术。1.2 DRM技术发展简介

数字版权管理(DRM,Digital Rights Management)技术最早起源于对软件的保护,因为软件本身比较容易被盗版,所以软件的防盗版技术出现得也很早。对软件的保护在 20 世纪80年代就已经非常普遍,虽然那时候没有DRM这个词,但可以说软件的保护是最早的DRM应用。

在有线电视领域,对内容进行保护的技术是条件接收技术,条件接收技术与现代的数字版权管理技术有很多相似的地方,条件接收技术的发展为DRM技术提供了很好的借鉴。

数字版权管理技术就是以数字加密技术为基础,结合一系列软硬件技术,实现对数字内容的保护,其中的数字内容包括电子书、数字电影、数字音乐、图片、软件等。DRM 涉及的主要技术包括数字标识技术、安全和加密技术、存储技术、电子交易技术等。

随着互联网的发展,电子书、数字音乐、数字视频等业务被广泛应用,如何防止这些数字内容的盗版成为IT业界头疼的问题。Adobe公司最早在其电子书软件中使用了DRM技术,国内的方正Apabi系统也开始应用DRM技术。微软公司在1999年8月发布了Windows Media DRM 系统,以保护数字音乐及数字视频的版权,随后越来越多的公司发布了DRM的系统, DRM发展进入了成熟期。

目前DRM的主要应用包括以下几点。(1)PC视频点播。DRM目前最主要的应用是在PC视频点播上,例如中国电信的互联星空平台提供了部分使用微软DRM技术加密的视频点播业务。(2)音乐下载。在一些收费音乐下载业务中,也使用了DRM技术,例如国外的iTUNE音乐下载及微软的音乐下载业务。(3)IPTV。在正在快速发展的IPTV业务中,国外运营商已经提供了DRM保护的IPTV业务,而国内运营商还在进一步试点,未正式商用IPTV DRM。(4)电子图书。国内外许多提供电子图书浏览的运营商在其产品中均内置了DRM代理,用户只能在获得授权的范围内使用这些电子图书。(5)3G。3G 的 DRM 标准主要使用 OMA DRM 标准,国外一些运营商已经开始提供OMA DRM加密的业务,一些主要3G手机制造商也开始提供支持OMA DRM的手机。(6)P2P应用。目前P2P视频内容在互联网上广泛应用,PPS、PPLive等在线P2P视频应用越来越受到人们的喜爱,可是P2P的版权问题也是困扰这个产业发展的重要因素。可以说,不解决P2P的版权问题,就不会有P2P产业的健康发展。

除以上业务外,DRM还用于数字电影、卡拉OK等领域。在以上领域中,DRM是作为一种安全技术手段存在的,它以数字加密技术为基础,结合一系列软硬件技术,实现对数字内容的保护。

业界也有人认为DRM可以独立成为一种业务。DRM业务构思主要为中小型企业及个人提供内容安全的服务。例如,中小型企业在为其客户发放数字媒体时,可借用运营商的DRM系统为这些媒体内容提供加密的服务,并代其发放密钥及授权。运营商可根据这些企业客户使用DRM 的次数进行收费,这时DRM 就成为了一种新业务。目前,国内外还没有独立的DRM业务成功开展的先例,如何开展DRM业务还需运营商对其业务逻辑、市场等进行深入研究。

运营商在IPTV、PC流媒体、3G、电子图书等业务中引入DRM技术后,相应的业务系统必须进行一定的改造才能适应DRM的要求。(1)后台系统需扩充支持 DRM。DRM 需要与业务后台系统配合的部分主要包括 DRM用户的开户,即业务账号与DRM的身份识别标识(如数字证书)的绑定;DRM授权信息的管理,即后台系统需满足DRM多种授权的计费及管理要求。(2)业务流程的修改。引入DRM技术后需对这些业务的流程进行一定的调整。(3)终端的升级。引入DRM技术后,原终端需嵌入DRM代理,以便DRM业务在终端呈现。

越来越多的DRM系统发布后,人们发现DRM带来了许多新的问题,最主要的是DRM的应用使得数字产业割裂,数字内容由于DRM的格式限制难以在不同设备及用户间传播,影响了使用的便利性。这个问题实质是因为DRM标准的私有性引起的,为解决问题,必须对DRM进行标准化。目前,已经开始制定DRM标准的组织包括OMA、ISMA、安全视频处理器(SVP)联盟、Coral联盟等。数字版权管理技术正朝着标准化的方向发展。1.3 未来DRM技术的主要发展方向

DRM技术目前主要应用于音乐下载/点播、互联网流媒体、IPTV、电子书等领域,随着3G业务的不断成长,移动应用也开始蓬勃发展。总的来说,DRM技术的发展已基本成熟,微软、Real等公司的DRM产品已得到大规模应用,DRM被破解的案例还很少。DRM技术的主要发展方向有以下几点。(1)DRM标准化进程将加快。DRM技术在发展上还有一些问题,目前最重要的问题是DRM的标准化问题。现在的主要DRM产品都是基于私有协议的,无法互通,这意味着由某DRM系统加密的资源无法在具有另一DRM解密功能的终端上使用,这与开放、资源共享的互联趋势是相矛盾的。目前已经开始制定DRM标准的组织包括OMA、ISMA、安全视频处理器(SVP)联盟、Coral联盟、Marlin等。

OMA(开放移动联盟)已经制定出了OMA DRM 2.0标准,该标准是针对3G业务而设计的,但经修订后也可用于其他业务。

ISMA已经制定出ISMACrypt1.1标准,主要定义了对ISMA流媒体加解密的标准。

SVP联盟主要由芯片厂商组成,包括意法半导体(ST)、NDS公司和汤姆逊公司等,目前该组织的目标是提出一种开放的芯片内容保护方案。

Coral联盟的目标是为在消费电子设备和服务中采用的各种DRM技术提供开放、自愿的互操作性标准。近日它发布了互通性规范的新草案,它的成员包括 SecureMedia 公司和Verimatrix等DRM专业厂商。

Marlin DRM是索尼、松下电器产业等5家日本电视厂商提倡的面向电视影像发送服务acTVila的DRM,目前已经发布标准与相关的产品。(2)将出现适用于多业务融合环境的DRM系统。任何的DRM系统都是为业务服务的,所以在考虑DRM 系统时,首先要考虑到底有哪些业务需要DRM 系统的支持,这些业务的价值链各环节对DRM的要求如何,业务运营模式怎样才合理等重要问题。

原来许多业务都是独立发展的,但近年来融合性的业务大量出现,如视频既可以在电脑上播放,也可以在手机、IPTV等终端上播放。由于目前DRM技术标准主要由某一专业领域内的标准组织制定,其主要服务对象限于某一专门的领域,所以还没有一个公开的DRM体系架构适合多业务融合环境中直接应用。为适应多业务融合环境下内容安全,DRM 系统必须进行一定的改造。目前已有不少DRM厂商在从事融合环境下的DRM技术研发。(3)DRM 支持的运营模式将更灵活。各种业务根据其业务特点及不同时期业务发展的不同阶段,其运营模式可能会不断变化,所以DRM系统应可适应灵活多变的运营模式。运营模式与业务的产业链密切相关。

DRM系统是否可适应灵活多变的运营模式取决于DRM系统在设计时是否已针对以上产业链环节进行了可分权、可分别管理的设计。为满足不同的业务运营模式,DRM 系统必须是一种模块化的设计,各模块可分别由不同运营商运营及控制,模块间的接口应基于可公开的协议。DRM 系统不同模块如果由不同运营商控制,应具备一个可以互信的技术条件,例如基于PKI体系的信任模型。目前主流的DRM系统,要适应多样化的业务运营模式还不可能,但正在向这个方向发展。(4)DRM使用的便利性将更好。在内容保护中增加DRM的保护,无可避免地需要在用户的终端上安装软硬件,并在业务流程中增加DRM相关流程,最终导致用户使用业务的流程和便利性受到影响。目前很多DRM系统已在使用的便利性方面做了相当的工作,一些DRM相关操作在后台自动处理了,而无需人工干预,这大大增强了DRM使用的便利性。未来DRM系统还将继续在使用的便利性上进一步发展。

可以预计,DRM 技术在近年将随着数字产业的快速发展而得到广泛应用,其主要缺陷也将通过人们的努力得到很大的改善。第2章DRM相关技术2.1 加密技术2.1.1 加密技术简介

一说起数字版权管理技术,人们脑海里首先反映的必然是加密,因为只有通过加密才能让非授权用户无法非法获取、传播内容。与加密对应的就是解密,授权用户只有得到正确的密钥与解密算法才能对加密后的内容进行解密。

加密作为保障数据安全的一种方式,它不是现在才有的,它的历史相当久远。它的起源要追溯到公元前2000年,虽然它不是现在我们所讲的加密技术(甚至不叫加密),但作为一种加密的概念,确实早在几个世纪前就诞生了。当时埃及人是最先使用特别的象形文字作为信息编码的,随着时间推移,巴比伦、美索不达米亚和希腊文明都开始使用一些方法来保护他们的书面信息。

近代,由于军事战争的需求,大家开始使用密语,这种信息经过翻译才能被正确理解,电影《风语者》就讲述了美军如何为了保护这种密语而不惜一切代价的故事。再到后来,人们发明了编码机与解码机,解决了密语难以使用的问题。在第二次世界大战中德国人发明了“German Enigma”编码机,利用它创建了加密信息。此后,由于“Alan Turing”和“Ultra计划”以及其他人的努力,盟军方面终于对德国人的密码进行了破解。当初,计算机的研究就是为了破解德国人的密码,人们并没有想到计算机能给今天带来信息革命。同时,随着计算机运算能力的增强,破解过去的密码都变得十分简单了,于是人们又不断研究出了新的数据加密方式。

当今网络中,因要对数字版权进行保护而选择加密技术已是我们的唯一选择。其原因在于,一方面我们知道在互联网上进行文件传输、电子邮件商务往来存在许多不安全因素,而且这种不安全性是互联网存在基础——TCP/IP所固有的,包括一些基于TCP/IP的服务;另一方面,互联网给众多的商家带来了无限的商机,互联网把全世界连在了一起,走向互联网就意味着走向了世界,这对于无数商家特别是中小企业来说无疑是梦寐以求的好事。为了能在安全的基础上打开这扇通向世界之门,我们只好选择了数据加密和基于加密技术的数字签名。

加密在网络上的作用就是防止有用或私有化信息在网络上被拦截和窃取。一个简单的例子就是密码的传输。计算机密码极为重要,许多安全防护体系是基于密码的,密码的泄露在某种意义上来讲意味着其安全体系的全面崩溃。

通过网络进行登录时,用户所键入的密码以明文的形式被传输到服务器。由于网络上的信息极容易被窃听,所以黑客很有可能会窃取到用户的密码,如果用户是 Root 用户或Administrator用户,那后果将是极为严重的。

还有如果某公司在进行某个招标项目的投标工作,工作人员通过电子邮件的方式把其公司的标书发给招标单位,如果此时有另一位该公司的竞争对手从网络上窃取到标书,从中知道其投标的标的,那后果将不堪设想。

这样的例子实在是太多了,解决上述难题的方案就是加密。加密后的口令即使被黑客获得也是不可读的,加密后的标书没有收件人的私钥就无法解开,标书成为一大堆无任何实际意义的乱码。总之,无论是单位还是个人,从某种意义上来说,加密已成为当今网络社会进行文件或邮件安全传输的时代象征。

数字签名就是基于加密技术的,它的作用就是用来确定用户是否是真实的。应用最多的还是电子邮件,当用户收到一封电子邮件时,邮件上面标有发信人的姓名和信箱地址,很多人可能会简单地认为发信人就是信上说明的那个人,但实际上,伪造一封电子邮件即使对于一个普通人来说也是极为容易的事。在这种情况下,就要用到加密技术基础上的数字签名,用它来确认发信人身份的真实性。

类似数字签名技术的还有一种身份认证技术,有些站点提供入站 FTP 和 WWW 服务,当然用户通常接触的这类服务是匿名服务,用户的权力要受到限制,但也有的这类服务不是匿名的。例如,某公司为了信息交流提供给用户的合作伙伴非匿名的FTP服务,或开发小组把他们的Web网页上载到用户的WWW服务器上,现在的问题就是,用户如何确定正在访问用户服务器的人就是用户认为的那个人。身份认证技术就是一个好的解决方案。

文件加密其实不只用于电子邮件或网络上的文件传输,其实也可应用于静态的文件保护,如PIP软件就可以对磁盘、硬盘中的文件或文件夹进行加密,以防他人窃取其中的信息。

现代的加密技术主要分为对称加密技术与非对称加密技术两种。对称加密就是加密和解密使用同一个密钥,通常称之为Session Key,这种加密技术目前被广泛采用,如美国政府所采用的DES加密标准就是一种典型的对称加密法,它的Session Key长度为56位。

非对称加密就是加密和解密使用的不是同一个密钥,通常有两个密钥,称为“公钥”和“私钥”,它们两个必须配对使用,否则不能打开加密文件。这里的“公钥”是指可以对外公布的,“私钥”则不能,只有持有人一个人知道,它的优越性就体现于此。对称加密方法如果是在网络上传输,加密文件就很难把密钥告诉对方,因为不管用什么方法都有可能被别人窃取到。而非对称加密方法有两个密钥,且其中的“公钥”是可以公开的,也就不怕别人知道,收件人解密时只要用自己的私钥即可,这样就很好地避免了密钥的传输安全性问题。2.1.2 对称加密技术

对称加密采用了对称密码编码技术,它的特点是文件加密和解密使用相同的密钥,即加密密钥也可以用作解密密钥,这种方法在密码学中叫做对称加密算法。图2-1为对称加密解密流程图。图2-1 对称加密解密流程图

对称加密算法使用起来简单快捷,算法实现后的效率高、速度快、密钥短,且破译困难。主要的对称加密算法包括DES、3DES、IDEA、AES等。目前安全性较高,适于DRM系统使用的加密算法包括3DES、AES等。

对称密钥的管理和分发工作是一件具有潜在危险的烦琐过程。对称加密是基于共同保守秘密来实现的,采用对称加密技术的双方必须保证采用的是相同的密钥,保证彼此密钥的交换是安全可靠的,同时还要设定防止密钥泄密和更改密钥的程序。如果任何一对发送方和接收方都有他们各自商议的密钥的话,那么很明显,假设有N个用户进行对称加密通信,如果按照上述方法,则他们要产生 N(N−1)个密钥,每一个用户要记住或保留 N−1 个密钥,当 N很大时,记住是不可能的,而保留起来又会引起密钥泄漏可能性的增加。另外,如何安全地将加密解密所使用的密钥传送给对方,也是一个必须考虑的问题。因此,对称加密技术的安全性依赖于密钥,密钥泄漏就意味着任何人都可以对他们发送或接收的消息解密,所以密钥的保密性对通信安全至关重要。

现阶段在电子商务中常用的对称加密算法是美国数据加密标准(Date Eneryption Standard,DES)。DES是对称的,既可用于加密又可用于解密。它是一种典型的按分组方式工作的密码,是两种基本的加密组块替代和换位的细致而复杂的结构。它将明文按 34 位二进制数据进行分组,然后使用 34 位的密钥组进行加密,通过反复依次应用组块替代和换位技术来提高加密技术的强度。明文要经过总共 16 次替代和交换后,才能获得密文。解密的过程和加密时相似,但密钥的顺序正好相反。对于这种加密技术,除了使用穷举法尝试所有可能的密钥外,还没有已知技术可以求得所使用的密钥。DES的安全性只依赖于密钥的安全性,不依赖于算法的安全性。2.1.3 非对称加密技术

1976年,美国学者Dime和Henman为解决信息公开传送和密钥管理问题,提出一种新的密钥交换协议,允许在不安全的媒体上的通信双方交换信息,安全地达成一致的密钥,这就是“公开密钥系统”。相对于“对称加密算法”,这种方法也叫做“非对称加密算法”。

与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥(Public Key)和私有密钥(Private Key)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。正是因为加密和解密使用的是两个不同的密钥,所以这种算法称为非对称加密算法。图2-2为非对称加密解密流程图。

这种技术要求发送方用户和接收方用户在安全通信之前,发送方通过网络查询或其他方式得到接收方的公开密钥;发送方使用公开密钥对明文进行加密得到密文;接收方收到密文后,用自己的私有密钥进行解密,恢复出明文。图2-2 非对称加密解密流程图

非对称加密技术可以使用户不必记忆大量提前商定好的密钥,因为发送方和接收方事先根本不必商定密钥,发送方只要可以得到可靠的接收方的公开密钥就可以给他发送信息了。这样使得密钥的管理更加简单,只需保管一对密钥就可以了。如果有N个用户相互通信需要使用非对称加密技术时,只需N对密钥就可以保证双方收发密文,而第三者无法了解密文内容,公开密钥的发放和保管十分方便。但为了保证可靠性,非对称加密技术需要一种与之相配的公开密钥管理机制,例如加大公开密钥的位数来增加可靠性等,所以使用非对称加密技术对用户来讲,算法更为复杂,花费的时间长,速度比较慢,不太适合对文件进行加密。

现阶段在电子商务中常用的非对称加密算法是RSA编码法,这种算法因发明者的姓名为Rivest、Shamir、Adelman 而得名 RSA。它是一个可以支持长密钥的公开密钥加密算法,利用两个很大的质数相乘所产生的乘积来加密。这两个质数无论哪一个先与原文件编码相乘,对文件加密,均可由另一个质数再相乘来解密,但要用一个质数来求出另一个质数,则是十分困难的,因此将这一对质数称为密钥对。RSA的安全性取决于从公开密钥计算出私有密钥的困难。但是不存在永远无法破译的加密算法,随着技术的发展,同样的加密算法被破译所需要的时间会愈来愈短。实际上,只要破译所需要的时间超过保密期,保密的目的也就达到了。2.1.4 加密技术标准

1.DES算法

数据加密标准(DES)是美国经长时间征集和筛选后,于1977年由美国国家标准局颁布的一种加密算法。它主要用于民用敏感信息的加密,后来被国际标准化组织接受作为国际标准。DES主要采用替换和移位的方法加密。它用56位密钥对64位二进制数据块进行加密,每次加密可对64位的输入数据进行16轮编码,经一系列替换和移位后,输入的64位原始数据转换成完全不同的64位输出数据。DES算法仅使用最大为64位的标准算术和逻辑运算,运算速度快,密钥产生容易,适合于在当前的大多数计算机上用软件方法实现,同时也适合于在专用芯片上实现。

DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节共64位,是要被加密或被解密的数据;Mode为DES的工作方式有两种:加密或解密。

DES算法是这样工作的:如Mode为加密,则用Key 去把数据Data进行加密,生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。这样,便保证了核心数据(如PIN、MAC等)在公共通信网中传输的安全性和可靠性。

通过定期在通信网络的源端和目的端同时改用新的 Key,便能更进一步提高数据的保密性,这正是现在金融交易网络的流行做法。

DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,整个算法的主流程图如下。0

其功能是把输入的64位数据块按位重新组合,并把输出分为L、0R两部分,每部分各长32位,其置换规则如下。

58,50,12,34,26,18,10,2,60,52,44,36,28,20,12,4,

62,54,46,38,30,22,14,6,64,56,48,40,32,24,16,8,

57,49,41,33,25,17, 9,1,59,51,43,35,27,19,11,3,

61,53,45,37,29,21,13,5,63,55,47,39,31,23,15,7,

即将输入的第58位换到第一位,第50位换到第2位……依次类000推,最后一位是原来的第7位。L、R则是换位输出后的两部分,L0是输出的左32位,R是右32位。例如,设置换前的输入值为 12364058508DDD……D,则经过初始置换后的结果为 L=DD…D;057497R=DD…D。1616

经过16次迭代运算后,得到L、R,将此作为输入,进行逆置换,即得到密文输出。逆置换正好是初始置的逆运算。例如,第 1 位经过初始置换后,处于第 40 位,而通过逆置换,又将第40位换回到第1位,其逆置换规则如下所示。

40,8,48,16,56,24,64,32,39,7,47,15,55,23,63,31,

38,6,46,14,54,22,62,30,37,5,45,13,53,21,61,29,

36,4,44,12,52,20,60,28,35,3,43,11,51,19,59,27,

34,2,42,10,50,18,58,26,33,1,41, 9,49,17,57,25,

放大换位表如下。

32, 1, 2, 3, 4, 5, 4, 5, 6, 7, 8, 9, 8, 9, 10,11,

12,13,12,13,14,15,16,17,16,17,18,19,20,21,20,21,

22,23,24,25,24,25,26,27,28,29,28,29,30,31,32, 1,

单纯换位表如下。

16,7,20,21,29,12,28,17, 1,15,23,26, 5,18,31,10,

2,8,24,14,32,27, 3, 9,19,13,30, 6,22,11, 4,25,128

在f(Ri,Ki)算法描述图中,S,S,…,S为选择函数,其功能是把6位数据变为4位数据。下面给出选择函数Si(i=1,2,…,8)的功能表。

选择函数Si,如下。1

S:

14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7,0,15,7,4,14,2,13,

1,10,6,12,11,9,5,3,8,4,1,14,8,13,6,2,11,15,12,9,7,3,10,

5,0,15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13,2

S:

15,1,8,14,6,11,3,4,9,7,2,13,12,0,5,10,3,13,4,7,15,2,8,

14,12,0,1,10,6,9,11,5,0,14,7,11,10,4,13,1,5,8,12,6,9,3,

2,15,13,8,10,1,3,15,4,2,11,6,7,12,0,5,14,9,3

S:

10,0,9,14,6,3,15,5,1,13,12,7,11,4,2,8,13,7,0,9,3,4,6,

10,2,8,5,14,12,11,15,1,13,6,4,9,8,15,3,0,11,1,2,12,5,10,

14,7,1,10,13,0,6,9,8,7,4,15,14,3,11,5,2,12,4

S:

7,13,14,3,0,6,9,10,1,2,8,5,11,12,4,15,13,8,11,5,6,15,0,

3,4,7,2,12,1,10,14,9,10,6,9,0,12,11,7,13,15,1,3,14,5,2,

8,4,3,15,0,6,10,1,13,8,9,4,5,11,12,7,2,14,5

S:

2,12,4,1,7,10,11,6,8,5,3,15,13,0,14,9,14,11,2,12,4,7,13,

1,5,0,15,10,3,9,8,6,4,2,1,11,10,13,7,8,15,9,12,5,6,3,

0,14,11,8,12,7,1,14,2,13,6,15,0,9,10,4,5,3,6

S:

12,1,10,15,9,2,6,8,0,13,3,4,14,7,5,11,10,15,4,2,7,12,9,

5,6,1,13,14,0,11,3,8,9,14,15,5,2,8,12,3,7,0,4,10,1,13,

11,6,4,3,2,12,9,5,15,10,11,14,1,7,6,0,8,13,7

S:

4,11,2,14,15,0,8,13,3,12,9,7,5,10,6,1,13,0,11,7,4,9,1,

10,14,3,5,12,2,15,8,6,1,4,11,13,12,3,7,14,10,15,6,8,0,

5,9,2,6,11,13,8,1,4,10,7,9,5,0,15,14,2,3,12,8

S:

13,2,8,4,6,15,11,1,10,9,3,14,5,0,12,7,1,15,13,8,10,3,7,

4,12,5,6,11,0,14,9,2,7,11,4,1,9,12,14,2,0,6,10,13,15,3,

5,8,2,1,14,7,4,10,8,13,15,12,9,0,3,5,6,11,11

在此以S为例说明其功能。我们可以看到,在S中,共有4行数据,命名为0,1、2、3行;每行有16列,命名为0、1、2、3……14、15列。123456

现设输入为D=DDDDDD2345

令列=DDDD16

行=DD1

然后在 S表中查得对应的数,以 4 位二进制表示,此即为选择1函数 S的输出。下面给出子密钥Ki(48位)的生成算法。

从子密钥Ki的生成算法描述图中我们可以看到,初始Key值为64位,但DES算法规定,其中第8、16……64位是奇偶校验位,不参与DES运算。故Key实际可用位数便只有56位。即经过缩小选择换位表001的变换后,Key的位数由64 位变成了56位,此56位分为C、D两部111分,各28位,然后分别进行第1次循环左移,得到C、D,将C(281位)、D(28位)合并得到56位,再经过缩小选择换位2,从而便得01215到了密钥K(48位)。依此类推,便可得到 K、K……K,不过需要注意的是,16 次循环左移对应的左移位数要依据下述规则进行。

循环左移位数如下。

1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1

以上介绍了 DES 算法的加密过程。DES 算法的解密过程是一样1514的,区别仅仅在于第一次迭代时用子密钥K,第二次K……最后一0次用K,算法本身并没有任何变化。

DES的算法是对称的,既可用于加密又可用于解密。图2-3是它的算法框图,其具体运算过程有如下7步。图2-3 DES算法示意图

2.AES算法

高级加密标准(AES,Advanced Encryption Standard)是美国政府为了保护敏感的但未经保密的信息所组织的一种特殊的加密算法。并且,这种加密算法很可能最终会正式成为私人企业部门商业交易中的加密标准。而美国军事以及其他保密性通信进行加密的算法则由独立的、秘密的算法来处理。

1997 年 1 月,美国商业部的一个单位——美国国家标准与技术局(NIST)发明了一种新的加密过程,这种新的加密技术可以很好地代替数据加密标准(DES),而且可以较少地使用三层数据加密标准(Triple DES)。这种运用分块加密法(Block Cipher)的技术被称作对称密钥加密算法(顾名思义,其加密和解密是使用同一个密码块进行的)。高级加密标准将被设计有三个密钥长度:128 字节、192 字节以及 256 字节。这种加密算法被要求能够在全世界范围内免版税使用,并且能够提供的安全级别要足以保护未来 20~30 年内的数据。这种方法在计算机软件和硬件上实施起来都很容易,在一些受限的环境中(例如,智能卡)也很容易运用,而且还能提供良好的防御各种攻击的技术。

整个挑选过程都是完全公开的,接受各类公众和舆论的监督。这种透明的机制可以确保设计分析和检验的可靠性。1998年,美国国家标准与技术局为AES挑选了15个候选算法,这15种算法后来供世界密码共同体预试分析。基预试分析结果,1999年8月,美国国家标准与技术局为进一步的分析,将候选的算法缩小到以下的5个算法。(1)MARS算法,由IBM公司研究部门的一个庞大团队发布。(2)RC6,由RSA实验室发布。(3)Rijndael,由Joan Daemen和 Vincent Rijmen 两位比利时密码专家发布。(4)Serpent,由Ross Anderson、Eli Biham 和 Lars Knudsen发布。(5)Twofish,由包括Counterpane公司的一位备受尊重的密码专家Bruce Schneier在内的一个庞大的团队发布。

以上的所有候选算法的速度和可靠性方面都用ANSI C 和Java语言进行了广泛的测试,例如在硬件和软件系统中,都对加密和解密的速度、密钥和算法安装时间,以及对各种攻击的拦截程度等进行了测试。再一次,世界密码共同体提供了更为详细的分析。最后的结果是,在2000年10月2日,美国国家标准与技术局宣布Rijndael为AES的最佳候选算法。2001年12月6日,美国官方正式颁布了联邦信息处理标准197(FIPS),并指定所有敏感的未经保密的信息和文档都将采用Rijndael作为高级加密标准。

为了安全传输内容密钥,目前一般的做法是通过公私密钥算法实现。DRM 的密钥管理模块通过机顶盒的公钥加密内容密钥后传给终端,终端得到加密后的内容密钥后用自己的私钥解密,得到内容密钥,这样终端即可解密加密后的内容。

由上可以看出,终端的私钥安全是DRM系统中最关键的部分。如果终端私钥被破解,则内容密钥即可被破解。

目前终端的私钥有几种保存方案,如智能卡方案、软件方案。

3.AVS中的加密算法标准

AVS是中国自主制定的音视频编码技术标准。AVS工作组成立于2002年6月,当年8月开始了第一次的工作会议。经过7次AVS正式工作会议和3次视频组附加会议,经历一年半的时间,AVS工作组审议了182个提案,先后采纳了41项提案,2003年12月19日AVS视频部分终于定稿。AVS1.0将包括三大部分,第一部分为系统,第二部分为视频,第三部分为音频,另外还包括一致性等标准支撑部分。

AVS 中数字版权管理标准是其中一个重要的支撑,该标准中用到的密码算法如表 2-1所示。表2-1 AVS中的加密算法标准

上表中,算法编号为 0000 的算法为国家密码应用主管部门指定的算法,所有符合标准本部分的实现都应实现这些算法。其他算法根据有关规定选择。

内容解密算法为对称算法,其中StreamCipherAlgorithm:SMS-128为AVS解码器必须支持的算法,此算法支持每次1位的密码序列。

对内容进行加解密的密钥称为CK,CK长度记为CK_Length。实现内容解密算法的部件称为解密单元。对解密单元的性能要求为解密速度不小于40Mbit/s。推导算法需要使用杂凑算法,这里采用HashAlgorithm:SCH-192。

CK的长度CK_Length根据所采用的内容解密算法确定,HashAlgorithm的输出比特数记为Hash_Length。

CK的计算方法如下。(1)如果CK_Length小于或等于Hash_Length,则

CK = LEFT(hash(MK‖AK),CK_Length)(2)如果CK_Length大于Hash_Length,则

CK = LEFT(hash(MK‖AK‖"0001")‖hash(MK‖SK‖"0002")‖...‖hash(MK‖SK‖"000n"),CK_Length)

其中(1)LEFT(s,i):取字符串s的左i个字符。(2)s‖t:字符串s和t串联操作。(3)n等于CK_Length / Hash_Length向上取整。

4.RSA算法

生成密钥对时先选择两个大素数p和q。

n=p×q (n称为模数)

然后随机选择加密密钥e < n(经常为3或65 537),要求c和(p−1)×(q−1)互质。最后,利用Eucild算法计算解密密钥d,满足

e×d=1(mod(p−1)×(q−1))

其中n和d也要互质,数e和n是公钥,d是私钥。两个素数p和q不再需要,应该丢弃,不要让任何人知道。

使用RSA算法加密时,首先把加密信息m(二进制表示)分成等12i长数据块 m,m,…, m,块长s,如果最后一块长度不到s时就用预定的符号将其填满,其中 2^s <= n,s尽可能大。对应的密文为ii

c=m^e(mod n)ii

其中,m为未加密的第i块数据块,c为加密后的第i块数据块。

解密时作如下计算ii

m=c^d(mod n)

RSA 算法的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前,RSA的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。现在,人们已能分解140多个十进制的大素数。随着量子计算技术的发展,大素数的分解速度将会得到很大程度的提高,在未来这种算法未必是保险的。

5.DSS/DSA算法

DSA(Digital Signature Algorithm)是Schnorr和ElGamal签名算法的变种,被美国NIST作为DSS(Digital Signature Standard)。算法中应用了下述参数。

p:L位长的素数。L是64的倍数,范围是512~1 024。

q:p−1的160位的素因子。

g:g=h^((p−1)/q)mod p,h满足h1。

x:x < q,x为私钥。

y:y=g^x modp,p、q、g、y为公钥。

H(x):One-Way 散列函数。DSS中选用SHA(Secure Hash Algorithm)。

p、q、g 可由一组用户共享,但在实际应用中,使用公共模数可能会带来一定的威胁。签名及验证协议如下。(1)P产生随机数k,k < q。(2)P计算 r = ( g^k mod p ) mod q

s=(k^(−1)(H(m)+xr))mod q

签名结果是(m,r,s)。(3)验证时计算 w = s^(−1)mod q1

u=(H(m)×w)mod q2

u=(r×w)mod q12

v=((g^u×y^u)mod p)mod q

若v = r,则认为签名有效。

DSA是基于整数有限域离散对数难题的,其安全性与RSA相比差不多。DSA的一个重要特点是两个素数公开,这样,当使用别人的p和q时,即使不知道私钥,你也能确认它们是否是随机产生的,还是做了手脚,RSA算法却做不到。

非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要,但加密和解密花费时间长、速度慢,不适合于对文件加密而只适用于对少量数据进行加密。2.1.5 加密格式与方法

DRM 由于应用的范围很广,所以需要加密的内容也千变万化,各种内容的文件格式千差万别,所以DRM 加密格式与方法的选取就显得十分重要。由于DRM 加密后的内容如果不解密在传输环节将无法被识别,所以在一些多媒体类的应用(如视频点播应用)中,如何保证加密后的内容还可以快进、快退等操作,就需要对加密格式与方法进行合理的设计才行。以下以多媒体数据的加密为例进行说明。

多媒体数据加密方法在过去的十年间出现了许多用于多媒体数据的加密方法。根据加密算法与压缩编码过程关系的不同,分为将多媒体数据看作普通数据的直接加密方法、选择性加密方法、加密过程和压缩编码过程相结合的加密方法等三种方法。(1)直接加密方法。直接加密方法包括对原始多媒体数据直接加密和对压缩后的数据进行加密,这类算法将多媒体数据当作普通二进制数据,使用传统的加密算法,如DES、IDEA、RSA 等来加密。例如,Kuhn 提出的一种用于付费电视的直接置乱加密算法,就是对原始数据直接加密的方法。不过这类算法更多的是对压缩后的数据进行直接加密,例如,Qiao 和Nahrstedt提出的一种称作VEA的视频加密方法;Li提出的一种基于混沌的块密码的视频数据加密算法;Wee和Apostolopoulos提出的一种适用于流格式视频数据的分层加密方法;易开祥等提出的以混沌流密码为基础构造的图像加密方法;吴敏和单华宁等提出的以混沌为基础构造的用于图像加密的块密码。这些方法利用了传统密码的高强度的优点,可满足高安全性要求,但这些方法的计算复杂度高,加密速度慢,因此难以满足实时性要求。这种算法主要适合于多媒体数据存储等实时性要求不高或者安全性要求很高的应用中。(2)选择性加密方法。选择性加密方法是只选择性地加密一部分数据,在分层的MPEG和H.263编码中,码流分为基本层和增强层。基本层对应视频序列的近似数据,增强层增加视频画面的细节效果,此时只加密基本层就可达到加密后的图像无法浏览的效果。选择性加密方法一般在变换域进行,实现图像空域与频域之间的转换可以利用离散余弦变换(DCT)、快速傅立叶变换(FFT)及小波变换(DWT)等完成,其中 DCT 被认为是对语言和图像的准最佳变换。对图像频域数据只选择D C系数进行加密就有较好的加密效果,具有更高的加密效率。

针对多媒体数据通常具有数据量大的特点,目前研究最多的是选择性加密方法,因为视频数据通常比图像和音频具有更大的数据量。根据所加密的数据的不同,可以将视频加密算法分为选择加密不同帧和块、DCT系数置乱、加密DCT系数的符号和运动向量的符号、频率域数据置乱和符号加密相结合、加密数据格式信息等。

这类加密方法的优点是可以降低加密的数据量,提高加密效率;缺点是缺少通用的安全性分析方法,算法的安全性得不到保障。例如,仅仅置乱DCT块内系数不能保证对已知明文攻击的安全性;仅仅加密DCT系数或运动向量的符号,不能保证对穷举攻击的安全性。可见,这种加解密效率的提高是以降低安全性为代价的,因此对于选择性加密算法,关键要解决的是算法的安全性问题。不过,在某些多媒体加密应用中并不要求加密后的信息完全不可理解,例如,在图像传输中可能只要求对其中某个人、物或区域部分加密;在视频点播中可能只要求将原始画面变得模糊,而其中的轮廓可见,此时有选择性地加密是比较合适的。(3)加密过程和编码过程相结合的加密方法。由于多媒体数据数据量大、冗余度高,因此在多媒体数据的存储和传输过程中,数据的高效压缩是必不可少的,对多媒体数据的加密需考虑与数据的压缩相结合。目前公认的关于图像数据压缩编码的国际标准是JPEG工作组和MPEG工作组推荐的几种图像编码标准算法。因此,与编码过程相结合的加密方法主要考虑JPEG和MPEG两类编码。

这类加密方法通常是将编码过程和加密过程相结合,使二者同时进行,其代表有Sridharan等提出的将加密过程与快速傅立叶变换过程相结合的语音加密方法;Uehara提出的将编码和加密相结合,并以小波变换编码中系数置乱的方法;Wen等提出的使用定长编码FLC和变长编码VLC进行加密的方法;Tosun和Feng提出的使用前向纠错编码实现加密的方法;Wu和Kuo提出的采用多种Huffman树(MHT)的加密方法。这类加密方法能够保持数据格式的相容性,具有较高的加解密效率,但由于采用了不同的统计模型,这类算法通常改变压缩性能,而且,其压缩性能与其安全性存在一定的关系。此外,这类算法对已知明文攻击的安全性相对较低,需要对算法进行改进。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载