基于代理重加密和安全芯片的数据广播分发保护方法

文档序号:7551092阅读:770来源:国知局
专利名称:基于代理重加密和安全芯片的数据广播分发保护方法
技术领域
本发明涉及数据分发保护方法,特别是涉及基于代理重加密方法和安全芯片的数据广播分发保护方法,属于信息安全领域中的可信计算和数字版权管理技术交叉领域。
背景技术
随着我国信息产业蓬勃发展和相关法律法规的建立健全,数字版权保护技术受到越来越多的关注。数字版权管理领域的核心问题之一,是保证数据只能够被以安全的形式分发和使用。此处安全至少包含两层含义:第一、数据只能被授权的用户所使用;第二、数据只能被用户以可预期的、事先约定的方式使用。在很多情况下,数据使用者计算平台的硬件配置的正确性意味着他/她可以“安全”地使用数据。一方面,硬件配置正确的计算平台通常是授权用户才能获得的;另一方面,有理由相信硬件配置正确的计算平台会根据事先约定的内置的策略限制用户的使用方式。例如,在索尼和东芝公司的蓝光DVD和HD-DVD所采用的数字版权保护系统——先进访问内容系统(Advanced Access Content System,简称AACS)中,所有蓝光或者HD-DVD碟片都只能在特定配置的光驱中才能被读写。这些碟片的发布者相信,只有正常付费的用户才能获得这些光驱,而且这些光驱可以保证碟片不被恶意的使用。在上述的信息产业和技术发展的背景下,如何保障应用程序和多媒体等数据广播分发场景中,数据只能被分发传递至硬件配置正确的使用者计算平台是一个重要的应用技术问题。针对此问题,不同的厂商给出了多种不同的解决方案,它们大致可分为两类:第一,基于通用硬件平台的解决方案。此类方案通过在通用的个人电脑或移动设备上安装特定的数字版权保护软件,实现数据的安全下载和使用,有代表性的产品包括苹果公司的 FairPlay、微软公司的 Windows Media DRM 和 Sony 公司的 BMG copy protection等。由于只需要安装特定软件即可实施数据保护,此类方案成本低廉、易于推广,但是保护效果很差,容易被用户绕过或者破坏。例如,常用的Acrobat软件对pdf文档的防打印限制可以很容易的使用破解软件予以解除。第二,基于专用硬件平台的解决方案。此类方案要求用户购买专用硬件,硬件内预制了不可更改的软件及密钥等信息,从而实现高强度的数据安全下载与使用保护,有代表性的产品包括苹果公司的iTunes网络音乐商店、appStore应用程序商店以及上文提到的Sony公司和东芝公司的蓝光与HD-DVD系统。此类方案的不足主要是硬件购买的成本较高,推广阻力较大。综上,需要一种能够综合上述两类方案优点的新型数据分发保护方法,该方法必须成本低廉、易于部署且不易被绕过和破坏。同时,该方法必须适用于最常见的数据广播场景,即数据所有者分发数据的计算、通信负载必须较小。

发明内容
本发明的目的,是针对现有数据广播分发保护方案中存在的保护力度不足(基于通用硬件平台的解决方案)和实施成本高(基于专用硬件平台的解决方案)的问题,提出一种基于代理重加密和安全芯片的数据广播分发保护方法。该方法可以保障数据从数据所有者处发出后只能被特定配置的数据使用者计算平台所获取,应用层或者操作系统层软件被破坏和控制的情况下仍不会影响保护效果;实施方法只需要在普通的计算设备上配备(类似于国产可信芯片的)廉价安全芯片,实施成本很低;为了分发一份数据,数据所有者只需要生成一个数据加密包并将其广播至公共信息渠道即可,计算和通信负担小;数据使用者可以从公共渠道而不是所有者处获取数据,下载速度不受所有者自身分发信道带宽的限制且下载隐秘性强。本发明所提出的数据广播分发保护方法,至少包括以下参与方:数据所有者和数据使用者。数据所有者的目的是将数据分发至使用者,并且保证数据使用者的计算设备只有处于特定配置时才能解密获得数据;数据使用者可能是恶意的,其希望使用数据时不受监管。所述数据使用者的计算设备为配备了安全芯片的通用计算平台,通用计算平台控制与外界的通信,但不能控制安全芯片自身的运算。为了说明本发明方法的具体步骤,首先简要介绍代理重加密算法。代理重加密算法的目的,是使得某个用户A可以将自己的数据d加密后寄存于某个代理P处(记d的加密包为{d}A),再在某个适当的条件下由P将{(!^再次加密(即重加密),所得的结果{{d}A}P可以由另一个用户B解密并得到d。该类算法特别适用于外包存储等应用业务,该类业务中数据存储方即为用户A,存储服务提供商即为代理P,而数据下载方为用户B。代理重加密算法的安全特性是:第一,用户B必须向用户A注册后,才能使用自身的密钥解开重加密包,即A决定了潜在的数据用户范围;第二,代理P必须从A (和B)处获取重加密密钥后,才能执行重加密计算,即A (和B)决定了代理人身份;第三,通过掌控重加密计算的权力,代理P可以代表 A决定谁能够获取加密包,却无法获取有关d的任何信息。为了达到上述目的,代理重加密算法一般需要包括五个子算法:密钥生成算法% =生成算法所需的公共参数和各方的密钥;加密算法 :前述过程中,用户A加密数据d所用的算法;解密算法 :前述过程中,用户B解密数据包{{d} J P时所用的算法; 重加密密钥生成算法xg前述过程中,代理P获取重加密密钥的算法;重加密算法乾:前述;^桎甲,代理P重加密{(!^时所用的算法。本发明的数据广播分发保护方法,其步骤包括;数据使用者采用配备有安全芯片的通用计算机系统作为计算设备;数据分发之前,数据所有者和数据使用者商定双方的公共安全参数和密码学算法,数据使用者的计算设备中的安全芯片获得重加密加密密钥;数据所有者生成待分发数据的数据加密包,并将对硬件的配置要求与该数据加密包绑定,然后广播至公共渠道,数据使用者从公共渠道获取数据加密包;所述安全芯片进行计算机系统配置检查,如果计算机系统配置符合所述配置要求,则所述安全芯片采用所述加密密钥对数据加密包进行重加密(二次加密),然后数据使用者对重加密的数据进行解密以获得数据所有者分发的数据;如果计算机系统配置不符合所述配置要求,则拒绝解密。
可选地,所述安全芯片采用可信密码模块TCM,并在其基础上增加若干接口。所述接口包括加载重加密密钥接口和解密数据接口。可选地,所述通用计算机系统采用个人台式电脑、笔记本电脑、服务器电脑等。可选地,所述公共渠道采用下列公开的网络存储设备中的一种:网盘、电子公告板和公开的FTP服务器。上述方法中,硬件配置可以采用完整性度量值表征,或者采用属性代替完整性度量值来表征。上述方法中,数据所有者进行的加密计算、安全芯片对数据包进行的二次加密计算、数据使用者的解密计算、公共安全参数和密码学算法的商定过程以及安全芯片获取特殊加密所需密钥的过程,它们共同构成一个完整的、密码学意义下的代理重加密算法集合:数据分发前的数据协商采用代理重加密算法中的密钥生成子算法,安全芯片获取特殊加密密钥的方法基于重加密密钥生成子算法,数据所有者进行的加密计算采用代理重加密算法中的加密子算法,安全芯片执行的二次加密计算采用重加密子算法,数据使用者的解密计算采用代理重加密算法的解密子算法。上述方法中,所述重加密的运算量与密文规模无关,在重加密计算中不引入过于复杂的密码学运算,经过重加密的密文不能够被再次重加密。应用本发明的方法,在常见的软件和数字媒体广播时,数据所有者可以确信只有硬件为特定配置的数据使用者的计算设备才能够解密获得数据,即确保了只有授权、合法的用户才能得到数据,且这些用户将按照事先约定的方式来使用数据。无论潜在用户数量规模如何,数据所有者分发数据时必须也只需生成一个数据加密包。数据所有者产生的数据加密包,须经过数据使用者计算设备中的安全芯片进行二次加密,才能最终为数据使用者所解密;并且在解密之前,安全芯片会进行计算机系统配置检查,只有符合配置要求(该要求与加密包绑定分发)才允许进行解密,否则拒绝解密。计算机系统的配置检查过程完全在安全芯片内部完成,即使计算机系统的软件受到完全破坏也无法绕过该检查。传统的数据分发和使用保护方案中,保护机制的实施者自身是应用软件或者专用硬件,前者的保护力度较差,很容易被绕过和破坏,而后者的成本较高,用户负担较重。本发明中引入了不可篡改的安全芯片作为数据所有者在使用者平台的信任代理,可以强有力的检验使用者的平台配置,使该方法的保护力度较强,即使数据使用者平台的操作系统和应用软件全部被破坏的情况下,该方法仍可保证对平台配置进行有效检查。而且,由于安全芯片的价格十分低廉、通用性强,使该方法的实施成本较低,只需要在通用计算平台上配备廉价安全芯片即可,不需要其他任何额外的特殊硬件,用户负担较轻,较好的权衡了安全性、易用性和实施成本。另一方面,不论潜在用户数量规模大小,为了分发一份数据,本发明中数据所有者只需要进行一次加密计算和通信,即只需要生成一个数据加密包并将其广播至公共信息渠道即可,而且数据使用者可以从公共渠道而不是所有者处获取数据,下载速度不再受所有者自身分发信道带宽的限制,而且下载隐秘性强。


图1是实施例中数据广播分发保护方法的参与者与实施流程示意图。
具体实施例方式下面通过具体实施例,并配合附图,对本发明做详细的说明。图1是本实施例的出的基于代理重加密和安全芯片的数据广播分发保护方法的参与者与实施流程示意图。图中未标示出各步骤的顺序,这主要是因为部分步骤的顺序并无严格限制,例如数据使用者可以先下载数据再注册,也可以先注册再下载数据。本实施例的的数据广播分发保护方法,包括以下具体步骤:I)前提假设:数据所有者要分发自己的数据d,并要求只有配置满足特定完整性PI的平台才能得到d,此处PI代表数据所有者认为可监督并约束使用数据方式的特定配置;2)参数初始化:数据所有者指定代理重加密算法集合(密钥生成算法妨加密算法£、解密算法Φ、重加密密钥生成算法即和重加密算法是);数据所有者生成自身的加密公私密钥对(pkKA,skKA)和签名公私密钥对(pkKAS,skKeAS);数据使用者需要提前拥有具备强制权威效力的、能够影响其身份和名誉的公私密钥对(pkDU,skDU);安全芯片也要具备自身的加密公私密钥对(pkTPM,skTPM);数据所有者的签名算法为J ;3)数据广播阶段:数据所有者以数据所有者的公钥pkKAW密消息d,得到密文
权利要求
1.种数据广播分发保护方法,参与方至少包括数据所有者和数据使用者,其特征在于,包括如下步骤: 数据使用者采用配备有安全芯片的通用计算机系统作为计算设备; 数据分发之前,数据所有者和数据使用者商定双方的公共安全参数和密码学算法,数据使用者的计算设备中的安全芯片获得重加密加密密钥; 数据所有者生成待分发数据的数据加密包,并将对硬件的配置要求与该数据加密包绑定,然后广播至公共渠道,数据使用者从公共渠道获取数据加密包; 所述安全芯片进行计算机系统配置检查,如果计算机系统配置符合所述配置要求,则所述安全芯片采用所述加密密钥对数据加密包进行重加密,然后数据使用者对重加密的数据进行解密以获得数据所有者分发的数据;如果计算机系统配置不符合所述配置要求,则拒绝解密。
2.权利要求1所述的方法,其特征在于:采用代理重加密算法中的密钥生成子算法商定所述公共安全参数和密码学算法;所述数据所有者采用代理重加密算法中的加密子算法生成所述数据加密包;所述安全芯片基于重加密密钥生成子算法获取所述特殊的加密密钥,采用重加密子算法执行重加密计算;所述数据使用者采用代理重加密算法的解密子算法进行解密计算。
3.权利要求1或2所述的方法,其特征在于:所述重加密的运算量与密文规模无关,在重加密计算中 不引入过于复杂的密码学运算,经过重加密的密文不能够被再次重加密。
4.权利要求1或2所述的方法,其特征在于:采用完整性度量值表征硬件的配置。
5.权利要求4所述的方法,其特征在于,所述数据广播分发保护方法采用如下具体实现步骤: O前提假设:数据所有者要分发的数据设为d,并要求只有配置满足特定完整性PI的平台才能得到d,该PI代表数据所有者认为可监督并约束使用数据方式的特定配置; 2)参数初始化:数据所有者指定代理重加密算法集合,包括密钥生成算法‘%、加密算法 、解密算法 、重加密密钥生成算法略和重加密算法C;数据所有者生成自身的加密公私密钥对(pkKA,skKA)和签名公私密钥对(pkKAS,skKeAS);数据使用者拥有具备强制权威效力的、能够影响其身份和名誉的公私密钥对(pkDU,skDU);安全芯片具备自身的加密公私密钥对(pkTPM,skTPM);数据所有者的签名算法为^ 3)数据广播阶段:数据所有者以数据所有者的公钥Pkm加密消息d,得到密文CRCA^E(pkRCA,d),并将其广播;同时,数据所有者为CKeA和PI签名,得到签名SRCA =S(pkRCAS,CRC4 IlPI),并将 Seca 广播; 4)数据下载阶段:数据使用者下载数据包Cka和签名Sm; 5)用户注册阶段:数据使用者与数据所有者进行用户注册,使安全芯片作为重加密代理得到重加常常钥ArCA—DU - ^SiP^RCAy s^RCA-P^du)和数据所有者的签名公钥pkRC;AS,该 —^和Pkms绑定为一个整体存储于安全芯片外部;注册过程中,数据所有者验证pkDU是一个具备权威效力的公钥;安全芯片确认调用自己完成用户注册功能的数据使用者确实知道参与生成rkKCA —DU的skDU ;6)数据解密阶段:数据使用者调用安全芯片加载rkKA —DU和pkms,并输入P1、数据包Ceca和签名SKeA,请求安全芯片重加密数据包;安全芯片首先使用pkKeAS验证Sm是否为对Ceca PI的合法签名;如果验证通过,则使用和pkKeAS —同加载的rkKQ^DU重加密CKeA,得到Cdu = <UrkDU,CRCA);最后,数据使用者解密CDU,得到数据d。
6.权利要求4所述的方法,其特征在于:在数据使用者和所有者的基础上增设属性证书权威P-CA,负责发放属性证书,该属性证书是属性权威对某些配置值-完整性度量值对的签名,进而采用属性取代完整性度量值表征硬件的配置。
7.权利要求1所述的方法,其特征在于:所述安全芯片采用可信密码模块TCM,并在其基础上增加若干接口。
8.权利要求7所述的方法,其特征在于:所述接口包括加载重加密密钥接口和解密数据接口。
9.权利要求1所述的方法,其特征在于,所述公共渠道采用下列公开的网络存储设备中的一种:网盘、电子公告板、公开的FTP服务器。
10.权利要求1所述的方法,其特征在于:所述通用计算机系统为个人台式电脑、笔记本电脑、服务器电脑中的一 种。
全文摘要
本发明公开一种基于代理重加密和安全芯片的数据广播分发保护方法,其步骤包括数据使用者采用配备有安全芯片的通用计算机系统作为计算设备;数据分发之前,数据所有者和使用者商定双方的公共安全参数和密码学算法且该安全芯片获得加密密钥;数据所有者生成数据加密包并将对硬件的配置要求与其绑定,然后广播至公共渠道,数据使用者从公共渠道获取数据加密包;安全芯片进行计算机系统配置检查,如果符合配置要求则对数据加密包进行重加密,然后数据使用者对重加密的数据进行解密,如果不符合配置要求则拒绝解密。本发明方法可以确保数据使用方的计算平台只有满足特定配置时才能够得到和使用分发的数据,保护力度强,实施成本低。
文档编号H04L9/32GK103095462SQ20131002796
公开日2013年5月8日 申请日期2013年1月24日 优先权日2013年1月24日
发明者冯登国, 初晓博, 秦宇, 奚瓅, 王维谨 申请人:中国科学院软件研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1