CN102752105B - 在安全可移动媒介之间共享许可的方法及装置 - Google Patents

在安全可移动媒介之间共享许可的方法及装置 Download PDF

Info

Publication number
CN102752105B
CN102752105B CN201210218215.1A CN201210218215A CN102752105B CN 102752105 B CN102752105 B CN 102752105B CN 201210218215 A CN201210218215 A CN 201210218215A CN 102752105 B CN102752105 B CN 102752105B
Authority
CN
China
Prior art keywords
license
srm
drmagent
srm2
rights
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210218215.1A
Other languages
English (en)
Other versions
CN102752105A (zh
Inventor
黄晨
张仁宙
周志鹏
袁卫忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201210218215.1A priority Critical patent/CN102752105B/zh
Publication of CN102752105A publication Critical patent/CN102752105A/zh
Application granted granted Critical
Publication of CN102752105B publication Critical patent/CN102752105B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种在SRM之间共享许可的方法及装置,其中的方法包括:DRM Agent从第一SRM获取许可,并将所述许可在本地设置为中转状态,指定转移给第二SRM,不可用所述许可消费内容;所述DRM Agent将所述许可的共享权限扣除一次;所述DRM Agent将所述许可发送给第二SRM。与现有方案在许可从SRM1转移到设备过程中需要扣除一次Move权限、在许可从设备转移到SRM2过程中需要扣除另一次Move权限相比,本发明实施例通过将DRM Agent中转的许可设置为中转状态,由此仅扣除一次共享权限,减少了共享权限的不必要的消耗,有利于维护用户权益。

Description

在安全可移动媒介之间共享许可的方法及装置
(本申请是针对2008年7月29日提交的,申请号为200810134766.3,发明名称为“在安全可移动媒介之间共享许可的方法及装置”的专利申请,所提交的分案申请)
技术领域
本发明涉及数字版权管理(DigitalRightsManagement,DRM)技术领域,尤其涉及一种在安全可移动媒介(SecureRemovableMedia,SRM)之间共享许可的方法及装置。
背景技术
为了保护内容所有者的合法权益,DRM通过内容保护和权限控制方案管理数字内容的使用。
典型的DRM方案包括:数字内容发行者(ContentIssuer,CI)用内容加密密钥(ContentEncryptionKey,CEK)对数字内容进行加密打包为内容数据包(DRMContentFormat,DCF)分发给设备,并将数字内容的内容标识与对应的CEK提供给版权发行者(RightsIssuer,RI);RI生成与数字内容对应的许可并发送给设备中执行DRM功能的代理DRMAgent,许可中包括加密的CEK和使用内容的权利和限制,权利包括执行、播放和转移等,限制包括次数、累积时间和有效期等。DRMAgent获得DCF和许可后,可解密得到CEK,进而解密得到内容,并按照许可中的权限使用数字内容。
SRM是可以保护内部数据不被未授权访问的可移动媒介。通过使用SRM存储和转移DCF和许可,扩大了存储空间,提供了许可的可移动性。
在某些场景下,用户希望将许可赠送给他人或者更换SRM,这就需要将许可从一个SRM转移(Move)或复制(Copy)到另一个SRM上。随着一机多卡的普及,用户对在SRM卡之间共享许可的需求更加普遍。
开放移动联盟(OpenMobileAlliance)的SRM标准中给出了许可从设备转移到SRM中和许可从SRM中转移到设备的协议。SRMAgent为SRM中执行DRM相关功能的实体。
现有方案提供了将许可从DRMAgent转移到SRM的方案,也提供了将许可从SRM转移到DRMAgent的方案,不论在哪种转移方案中,每次转移都需要扣除共享权限,那么,如果要实现将许可从SRM1转移到SRM2,至少需要经过将许可首先从SRM1转移到DRMAgent,然后再由DRMAgent转移给SRM2,也就是说至少需要扣除两次共享权限。本发明人在发明的过程中发现,现有技术中对许可的转移需要多次权限,对用户而言造成不必要的权限浪费
发明内容
本发明提供一种在SRM之间共享许可的方法及装置,以解决现有方案存在的过多消耗共享权限的问题。
为此,本发明实施例采用如下技术方案:
一种在SRM之间共享许可的方法,包括:数字版权管理终端DRMAgent从第一SRM获取许可,并将所述许可在本地设置为中转状态,指定转移给第二SRM,不可用所述许可消费内容;
所述DRMAgent将所述许可的共享权限扣除一次;
所述DRMAgent将所述许可发送给第二SRM。
一种共享许可的装置,包括:
获取单元,用于从第一安全可移动媒介SRM获取许可;
中转设置单元,用于将所述获取的许可设置为中转状态,指定转移给第二SRM,不可用所述许可消费内容;
发送单元,用于将所获取的许可发送给第二SRM;
控制单元,扣除一次共享权限。
与现有方案在许可从SRM1转移到设备过程中需要扣除一次Move权限、在设备转移到SRM2过程中需要扣除另一次Move权限相比,本发明实施例通过将DRMAgent中转的许可设置为中转状态,由此仅扣除一次Move权限,减少了Move权限的消耗,有利于维护用户权益。
附图说明
图1为本发明在SRM之间共享许可方法实施例一流程图;
图2为本发明在SRM之间共享许可方法实施例二流程图;
图3为本发明在SRM之间共享许可方法实施例三流程图;
图4为本发明图3中SRM之间协商共享密钥的流程图;
图5为本发明在SRM之间共享许可方法实施例四流程图;
图6为本发明在属于相同用户的SRM之间共享许可方法实施例五流程图;
图7为本发明在属于相同用户的SRM之间共享许可方法实施例六流程图。
具体实施方式
本发明实施例提供一种在SRM之间共享许可的方案,通过DRMAgent或RI等设备将SRM1中的许可共享给SRM2,仅消耗一次共享权限。
上述所谓的共享许可,包括转移许可和复制许可等情况,下面着重以转移许可为例对方法实施例进行说明。
下面介绍在SRM之间共享许可方法的各个实施例。
概括而言,实施例一和实施例二方法包括以下步骤:
[1]DRMAgent从第一SRM获取许可,并将所述许可在本地设置为中转状态;
[2]所述DRMAgent将所述许可的共享权限扣除一次;
[3]所述DRMAgent将所述许可发送给第二SRM。
其中,所述共享许可是指复制许可,所述共享权限是指复制权限;或者,所述共享许可是指转移许可,所述共享权限是指转移权限。
当所述共享许可是指转移许可时,还需要执行以下步骤:所述DRMAgent触发所述第一SRM删除许可。
实施例一与实施例二主要区别即在于执行该步骤的时机不同,在实施例一中,是在所述DRMAgent将获取的许可设置为中转状态后,执行所述DRMAgent触发所述第一SRM删除许可的步骤;而在实施例二中,是在所述DRMAgent确定所述第二SRM接收到所述许可后,执行所述DRMAgent触发所述第一SRM删除许可的步骤。
下面首先介绍实施例一。
参见图1,是在SRM1和SRM2之间共享许可方法实施例一流程图,包括:
S101:DRMAgent和SRMAgent1相互认证并建立安全认证通道(SecureAuthenticatedChannel,SAC),认证过程中DRMAgent和SRMAgent1互相交换证书并验证对方证书的有效性,交换随机数并根据随机数生成通信密钥,包括加密密钥和完整性保护密钥。
在DRMAgent和SRMAgent之间建立SAC为现有技术,此处不过多描述。
S102-S103:DRMAgent发起将SRM1上的Rights直接转移到另一SRM:SRM2,该操作可由用户通过和DRMAgent的交互触发,DRMAgent从SRM1获取Rights信息和REK,具体为现有技术。
S104:DRMAgent验证Rights信息及Move权限,并在验证通过后扣除Move权限,具体为现有技术。扣除Move权限具体可表现为将Rights对应的状态信息中Move权利的剩余次数扣减一次;或者,将Rights对应的状态信息中Move权利的已使用次数增加一次。Rights在设备上设置为中转状态,即指定必须转移给另一SRM,即DRMAgent不可用其消费内容。如果此时DRMAgent已获知转移的目的设备为SRM2,则可指定具体SRM2标识。
S105-106:DRMAgent指示SRMAgent1删除该Rights,具体步骤为现有技术。
S107-S108:DRMAgent查询SRM2是否有足够的空间安装该Rights,具体为现有技术。
在S107之前DRMAgent和SRMAgent2互相认证并建立SAC通道。图1中以S107a表示。如果DRMAgent可同时和两个SRMAgent交互,则S107a在S107之前任意时刻执行即可。
如果DRMAgent不能同时和两个SRMAgent交互,则在S107之前可先和SRM1断开连接,再和SRM2连接执行后续步骤。执行后续步骤的过程可由用户操作设备触发,具体的可以将Rights在设备处存储为特殊格式的文件,用户浏览确定该Rights处于中转状态,选择将该文件转移到另一SRM完成中转,或者设备将Rights信息提示给用户,用户选择是否继续转移。或者设备可根据Rights关联的目的设备的标识自动执行,例如在连接到SRM2时搜索本地处于中转状态且关联的目的设备为SRM2的Rights,并自动执行S107后续步骤。
S109-S110:DRMAgent向SRMAgent2发送Rights安装请求消息,消息中包含handle、REK、内容标识的hash的列表、Rights信息,SRM2安装Rights并返回响应,即不必进行第二次Move权限的扣除,因此减少了扣除Move权限的次数。
S111:如果SRM2成功安装Rights,则DRMAgent删除本地的Rights。
可选地,在S104中不扣除Move权限,而在将Rights安装到SRM2时再在设备上执行扣除Move权限的操作。
另外,在S106之后,设备可以保留该中转Rights的源SRM即SRM1的记录,这样如果在Rights安装到SRM2的过程中发生意外而导致失败,例如SRM2没有足够的空间安装该Rights,可以将Rights重新恢复到SRM1上,从而保证用户的权益不受损害。
实施例一是以转移(Move)许可为例对共享许可进行说明,如前所述,共享还包括复制(Copy),将SRM1中的许可复制到SRM2的过程与图1类似,不同在于,在复制过程中消耗的是Copy权限:DRMAgent将SRM1上的所述许可的Copy权限扣除一次,DRMAgent发送给SRM2的许可不包含Copy权限;或者DRMAgent将发送给SRM2的许可的Copy权限扣除一次,并将SRM1上的许可的Copy权限全部扣除。SRM1无需删除该许可。
可见,与现有方案在许可从SRM1转移到设备过程中需要扣除一次共享权限、在许可从设备转移到SRM2过程中需要扣除另一次共享权限相比,本发明实施例通过将DRMAgent中转的Rights设置为中转状态,由此仅扣除一次Move权限,减少了Move权限的消耗,有利于维护用户权益。
下面介绍在SRM之间共享许可方法的实施例二。
在上述实施例一中图1的S107-S108中,如果Rights安装到SRM2的过程失败,将Rights重新恢复到SRM1则较为复杂,较佳的方案是在确认SRM2有足够的空间安装Rights后,再删除SRM1上的Rights。
参见图2,实施例二流程包括:
S201:DRMAgent分别和SRMAgent1、SRMAgent2互相认证并建立SAC通道,DRMAgent和SRMAgent2的认证可以在S205之前任何时候进行。
S202-S203:DRMAgent发起将SRM1上的Rights直接转移到SRM2,该操作可由用户通过和DRMAgent的交互触发,DRMAgent从SRM1获取Rights信息和REK。
S204:DRMAgent验证Rights信息以及Move权限,并在验证通过后扣除Move权限。扣除Move权限的操作可以在S406之后再执行。
S205-S206:DRMAgent查询SRM2是否有足够的空间安装该Rights。
S207-S208:DRMAgent向SRMAgent2发送Rights安装请求消息,消息中包含handle、REK、内容标识的hash的列表、Rights信息,SRM2安装Rights并返回响应。如果SRM2成功安装Rights,则DRMAgent删除本地的Rights。
S209-S210:如果SRM2成功安装Rights,则DRMAgent指示SRMAgent1删除该Rights。
其中,S209-S210也可以在S206之后执行。
如果在将Rights安装到SRM2的过程中发生错误,例如SRM2空间不够,则DRMAgent可以取消Move操作,恢复SRM1上的原Rights。如果DRMAgent和某一SRM连接中断,则DRMAgent可记录中断日志,中断日志具体包括:操作类型、当前状态、许可标识、SRM1标识、许可在SRM1上对应的handle1、SRM2标识、许可在SRM2上对应的handle2。下次连接时根据中断日志中的信息进行恢复:继续将许可发送到SRM2,完成操作;或者取消操作,将许可恢复到SRM1。
为了从一定程度上提高REK的安全性,可以由DRMAgent将SRM2的公钥或证书提供给SRMAgent1,SRMAgent1使用SRM2的公钥对REK进行加密后通过DRMAgent传输给SRM2。
可见,实施例二与实施例一相比,在SRM2确定可以安装Rights后,才将SRM1中的Rights删除,这在SRM2无法安装Rights的情况下,DRMAgent恢复SRM1上的原Rights操作比较简单,仅需将Rights恢复为可用状态。
下面介绍在SRM之间共享许可方法的实施例三。
在实施例三中,通过DRMAgent协助,在SRM1和SRM2之间建立SAC,并使用SAC密钥共享许可。下面仍以转移许可为例介绍实施例三,对于复制许可,与其类似。
概括而言,实施例三包括以下步骤:
[1]DRMAgent触发第一SRM和第二SRM协商共享密钥;
[2]第一SRM使用协商的共享密钥加密许可的部分或全部信息;
[3]第一SRM将许可发送给第二SRM。
下面结合附图对实施例三详细流程进行介绍。
参见图3,为实施例三流程图,包括:
S301:DRMAgent分别和SRMAgent1和SRMAgent2交换各自支持的信任锚(Trustanchor)。
S302:DRMAgent触发SRMAgent1和SRMAgent2认证。消息中包含选择的Trustanchor,DRMAgent可根据待转移的Rights来选择。可选的,触发消息中还可包含SRM2标识。本步骤可由用户选择在两个SRM之间转移Rights的操作触发。
S303:SRMAgent1向SRMAgent2发送认证请求。请求中包含Trustanchor、SRM1证书链、SRMAgent1支持的算法等。如果SRMAgent1和SRMAgent2之间可以直接通信,则消息可不经过DRMAgent,否则所有的消息都需要DRMAgent代为中转。
S304:SRMAgent2向SRMAgent1返回认证响应。响应中包含SRMAgent2证书链、SRM2选择的算法、用于生成密钥的随机数RN1,其中RN1需要使用SRM2的公钥加密传输。
S305:SRMAgent1向SRMAgent2发送密钥交换请求。请求中包含用于生成密钥的随机数RN2,其中RN2需要使用SRM1的公钥加密传输。
S306:SRMAgent2向SRMAgent1返回密钥交换响应。响应中可能包含RN1和RN2的连接值的Hash用于确认随机数。至此,SRM1和SRM2均获得RN1和RN2,分别使用RN1和RN2生成会话密钥和MAC密钥。
S307:DRMAgent触发SRMAgent1向SRM2转移Rights,消息中可包含该Rights在SRM1上对应的Handle或者许可标识。
S308:SRMAgent1向SRMAgent2发送初始化转移请求,请求中包含Rights的大小,可能包含该Rights在SRM2上对应的Handle。
S309:SRMAgent2检查本地是否有足够的空间安装该Rights,如果S508中SRMAgent1发送了Handle,则SRMAgent2需要检查该Handle和SRM2上已有的Handle是否重复。并在向SRMAgent1返回的初始化转移响应中包含检查结果。如果S308中SRMAgent1没有发送Handle,则SRMAgent2可自动生成一个和本地其他Handle不同的Handle,并可在响应中返回。
S310:SRMAgent1向SRMAgent2发送转移请求,请求中包含Rights信息、REK、Rights关联的内容标识等,如果SRMAgent1获知Rights在SRM2上关联的Handle,则可在请求消息中包含该Handle。
S311:SRMAgent2验证Rights信息,验证通过后扣减Move权限,并将Rights存放在SRM2中。
可选的,也可由SRMAgent1在步骤S310之前检查Move权限并扣减,这样,在步骤S311中SRMAgent2无需扣减Move权限
与实施例一或实施例二相比,实施例三中是通过SRM1和SRM2之间建立SAC,由该SAC将许可进行转移,其中的DRMAgent仅是执行转发功能,由于转发的Rights是经过SRM1和SRM2协商的密钥加密的,DRMAgent无法对其执行操作,这在一定程度上提高了Rights安全性。
但是如果SRM1和SRM2由于能力问题无法验证Rights,则可由DRMAgent代为验证,并扣减Move权限,可在S310中执行,这需要SRMAgent1或SRMAgent2将MAC密钥告知DRMAgent。
图3中S301-S306完成的在两个SRM间协商共享密钥的过程为本发明实施例新提出的,概括而言包括以下步骤:
[1]DRMAgent向第一SRM发起认证过程,获取第一SRM证书链;
[2]DRMAgent向第二SRM发起认证过程,将所获取的第一SRM证书链发送给第二SRM,并从第二SRM获取第二SRM证书链和第一SRM公钥加密的第二随机数;
[3]DRMAgent向第一SRM发起密钥交换过程,将所获取的第二SRM证书链和第一SRM公钥加密的第二随机数发送给第一SRM,并从第一SRM获取第二SRM公钥加密的第一随机数;
[4]DRMAgent向第二SRM发起密钥交换过程,将所获取的第二SRM公钥加密的第一随机数发送给第二SRM;
[5]第一SRM和第二SRM利用所述第一随机数和第二随机数,确定共享密钥。
该过程可以和DRMAgent和两个SRM协商共享密钥的过程一起完成,下面结合图4,对其进一步描述:
S401:DRMAgent分别和SRMAgent1和SRMAgent2交换各自支持的Trustanchor。
S402:DRMAgent向SRMAgent1发起认证请求。消息中包含选择的Trustanchor,对应该Trustanchor的设备证书链等。DRMAgent可根据待转移的Rights来选择Trustanchor。
S403:SRMAgent1返回认证响应。响应消息中包含SRM1证书链,使用设备公钥加密的随机数RNs1d。
S404:DRMAgent向SRMAgent2发起三方认证请求。消息中包含选择的Trustanchor,对应该Trustanchor的设备证书链和SRM1证书链等。
S405:SRMAgent2返回三方认证响应。响应消息中包含SRM2证书链,使用设备公钥加密的随机数RNs2d和使用SRM1公钥加密的随机数RNs2s1。
S406:DRMAgent向SRMAgent1发送三方密钥交换请求。消息中包含SRM2证书链,使用SRM1公钥加密的随机数RNs2s1,使用SRM1公钥加密的随机数RNds1(可以和RNs1d的哈希连接后再使用SRM1公钥加密)。
S407:SRMAgent1返回三方密钥交换响应。响应消息中包含使用SRM2公钥加密的随机数RNs1s2(可以和RNs2s1的哈希连接后再使用SRM2公钥加密),可能包含RNds1和RNs1d的连接值的哈希。
S408:DRMAgent向SRMAgent2发起三方密钥交换请求。消息中包含使用SRM2公钥加密的随机数RNs1s2(可以和RNs2s1的哈希连接后再使用SRM2公钥加密),使用SRM2公钥加密的随机数RNds2(可以和RNs2d的哈希连接后再使用SRM2公钥加密)。
S409:SRMAgent2返回三方密钥交换响应。响应消息中可能包含RNs1s2和RNs2s1的连接值的哈希以及RNds2和RNs2d的连接值的哈希。
至此,DRMAgent和SRMAgent1、SRMAgent2两两之间共享了一对随机数,可各自独立用其生成密钥。这样,SRM1向SRM2转移Rights时,重要信息如REK可以使用与SRM2之间的共享密钥加密,而其他信息可以使用和DRMAgent间的共享密钥加密或进行完整性保护以方便DRMAgent处理。
DRMAgent向SRMAgent1和SRMAgent2提供的随机数可以一样,这样三方可以使用此公共随机数生成三方公共密钥。
或者,DRMAgent可以将SRMAgent1提供的RNs1d作为RNds2提供给SRMAgent2,将SRMAgent2提供的RNs2d作为RNds1提供给SRMAgent1,也可生成三方共享密钥。
目前SRMAgent和DRMAgent使用随机数生成密钥时是按照RNd和RNs的顺序连接,但在本方案中为了保证密钥的一致性,可以默认对于每对随机数按照传输的顺序连接,即SRMAgent1使用RNs1d和RNds1的顺序连接,而SRMAgent2则使用RNds2和RNs2d的顺序连接。在不影响密钥的一致性的情况下,也可使用其它方式生成密钥。
通过DRMAgent将Rights从SRM1转移到SRM2的过程中,为了安全起见,SRM1可在获得SRM2收到Rights的确认后才删除Rights。具体的,SRM2的确认可以是使用私钥对安装信息(如REK)的签名,或者使用仅由SRM1和SRM2共享的密钥对安装信息(如REK)进行加密的结果;或者由SRM1向SRM2提供确认信息(如随机数),该确认信息可以使用SRM2的公钥或者SRM1和SRM2共享的密钥加密传输,SRM2向SRM1表示获知该确认信息,例如使用私钥对其签名或对该确认信息进行某种转换(如哈希或简单的加一操作)后使用SRM1和SRM2共享的密钥加密返回。
下面介绍在SRM之间共享许可方法的实施例四。
以上方案中通过DRMAgent在两个SRM之间转移Rights,某些情况下可能两个SRM位于不同的地方,无法直接连接到同一个DRMAgent,则可能需要经过多个DRMAgent代为中转。例如,可由DRMAgent1从SRM1获取Rights,转移到DRMAgent2并指明给SRM2,DRMAgent2将该Rights转移到SRM2。
此外,也可以通过RI在两个SRM之间转移Rights,概括而言,包括以下步骤:
[1]在第一DRMAgent从第一SRM获取许可后,发送给RI;
[2]所述第二DRMAgent从RI获取许可并发送给第二SRM。
具体流程如图5所示:
S501:RI向DRMAgent1发送触发器ROAPtrigger{SRMROUpload},触发设备UploadSRM上的许可。触发器包括:RI标识、RIURL等信息,并包括布尔类型的roRequested,用于表示RI是否需要SRM上报待upload的rights,如果RI缓存了下发的许可,则该属性为false,否则为true。触发器中可选的包含SRM1标识和许可标识。本步骤是可选的,用户可以通过人机界面操作设备uploadSRM1上的许可,直接从S502开始。
S502:DRMAgent1向SRMAgent1发送RightsUpload请求消息,消息中包含:标识Rights的handle、用于替换该handle的新handle。在S502之前DRMAgent1和SRMAgent1之间需要互相认证和建立SAC通道。
S503:SRMAgent1判断新handle是否和本地其它handle重复,如果不重复,则使用新handle替换步骤1中的handle,并将Rights置为不可用。SRMAgent1向DRMAgent1返回RightsUpload响应消息,如果handle不重复,则消息中还包含Rights信息,REK,Kmac,时间戳,以及SRMAgent1对{指明upload的标志、REK、RI标识、时间戳}的签名。
S504:DRMAgent1检查Rights信息中的RI签名以及状态信息是否超出Rights中的原始权限。
S505:DRMAgent1向RI发送SRMROUpload请求消息,其中除了请求消息包含的一些公共参数,如设备1标识、RI标识、nonce、时间戳、设备1证书链等之外,还包含upload信息:
·从SRMAgent1获取的Rights信息中的RightsObjectContainer部分(即原RI下发的许可中的<rights>和<signature>)或对其格式转换后的结果,如果RI在ROAPtrigger{SRMROUpload}中标记roRequested为false,则该参数可省略;
·如果该许可为有状态的,则包括从SRMAgent1获取的Rights信息中的状态信息;
·RI公钥加密的REK和Kmac;
·SRM1标识、SRM1证书链、SRMRightsUpload响应消息中的时间戳、SRMAgent1对{指明upload的标志、REK、RI标识、时间戳}的签名;
·以及使用Kmac对上述参数进行MAC操作的结果。
DRMAgent1需对请求消息中的参数进行签名,并将签名在请求消息中一起发送给RI。
S506:RI对请求消息中的各参数进行验证:
·如果请求消息中有DRMAgent1证书链,则验证其有效性(可能需要通过OCSP或CRL实现),并使用请求消息中的设备1证书链或RI本地的设备上下文中的设备1证书链验证请求消息中DRMAgent1的签名;
·解密得到REK和Kmac,使用Kmac验证请求消息中的MAC值;
·验证SRM1证书链的有效性,可能需要通过OCSP或CRL实现,并使用SRM1证书链验证SRM1签名信息的有效性;
·验证请求消息中的时间戳早于当前时间,验证SRMRightsUpload响应消息中的时间戳早于请求消息中的时间戳;
·验证<rights>和<signature>的正确性(如果请求消息中有的话),如果许可为有状态的,还需验证状态信息在原始许可范围内;
·尝试使用REK解密<rights>元素中的加密的CEK验证REK和Rights的正确性。
S507:DRMAgent1向SRMAgent1发送RightsRemovalRequest消息,消息中包含标识Rights的handle,此handle即S502中的新handle。
S508:SRMAgent1删除RightsRemovalRequest消息中的handle对应的Rights,并向DRMAgent1返回RightsRemovalResponse消息,其中包含处理结果。
S509:RI向DRMAgent2发送触发器ROAPtrigger{SRMROAcquisition},触发DRMAgent2协助SRM2获取Upload的许可,触发器中包含RI标识、RI别名、RIURL、许可标识、许可别名、内容标识、以及RI是否保存了设备2和SRM2的证书链等参数。DRMAgent2和DRMAgent1可以为同一DRMAgent。本步骤是可选的,用户可以通过人机界面操作设备代理SRM2获取许可,直接从S510开始。
S510:DRMAgent2向RI发送获取许可请求,请求消息中包含设备2标识、RI标识、nonce、时间戳、许可标识、SRM2标识、设备2证书链及SRM2的证书链等,如果trigger中指示RI已保存设备2或SRM2的证书链,则无需重复发送。在步骤10之前DRMAgent2和SRMAgent2之间需要互相认证和建立SAC通道。
S511:RI向DRMAgent2返回许可响应,响应消息中包含设备2标识、RI标识、nonce、受保护的许可、RI证书链(如果DRMAgent2在请求消息中标识其已经保存了RI证书链,则此参数不需要)。许可可以绑定SRM2,也可以绑定DRMAgent2,但指定必须提供给SRM2。
S512:DRMAgent2将RI下发的许可写入SRM2。如果许可绑定SRM2,则DRMAgent2可先将加密的REK和Kmac的连接值发送给SRMAgent2,由SRMAgent2提供Kmac,并用其验证许可的完整性,再由DRMAgent2将rights和signature等写入SRM2。如果许可绑定DRMAgent2,则由DRMAgent2解密出REK后和rights、signature等一起写入SRM2。
上述流程中S507-S508和S509-512没有时间上的顺序关系。
以上是对在SRM之间共享许可方法的各个实施例的介绍,其中的实施例一至实施例三,仅需要消耗一次Move权限或Copy权限,而实施例四,由于是RI向SRM2提供许可,因此可能不需要消耗Move权限或Copy权限,因此实施例四也适用于同一用户的SRM之间许可的共享。如果在同一用户的SRM之间共享许可还需要消耗共享权限,对用户而言则是一种损失,因此,本发明实施例还提供一种在相同用户的SRM之间共享许可的方案,此时不需要消耗共享权限。
虽然在同一用户的SRM之间共享Rights不会消耗Rights的Move权限,但是RI需要验证SRM2和SRM1属于同一用户,验证方法包括多种:可以是RI根据本地保存的SRM标识和用户标识的对应关系验证,或者RI向另一实体(如用户管理器)查询,或者RI根据用户使用SRM提供的信息(如密码、问题答案等)来验证。
用户可以一次性Upload多个许可到RI,也可以一次性安装多个许可到SRM2。这种批量处理方式尤其适用于用户更换SRM卡的情况。
作为在同一用户的SRM之间共享Rights的替代方案,可以由DRMAgent向RI查询SRM1和SRM2是否属于同一用户,并直接进行Rights的共享,无需RI重新生成许可。
概括而言,本发明实施例提供的在属于相同用户的SRM之间共享许可的方法包括以下步骤:
[1]DRMAgent确定第一SRM和第二SRM属于相同用户时,将从第一SRM获取的许可发送给第二SRM;
其中,在实施例五和实施例六中,区别主要在所述DRMAgent向RI或用户管理器查询第一SRM和第二SRM所属用户的过程不同。
下面详细介绍在属于相同用户的SRM之间共享许可的各个实施例。
首先介绍在属于相同用户的SRM之间共享许可的实施例五。
概括而言,实施例五中查询第一SRM和第二SRM所属用户的过程为:
[1]DRMAgent向RI或用户管理器发送包含第一SRM标识的查询消息,查询所述第一SRM所属用户;
[2]DRMAgent向RI或用户管理器发送包含第二SRM标识的查询消息,查询所述第二SRM所属用户;
[3]DRMAgent验证第一SRM和第二SRM是否属于相同用户。
参见图6,为实施例五流程图,包括:
S601:DRMAgent根据用户请求发起将SRM1上的Rights共享给同一用户的另一SRM,DRMAgent从SRM1获取Rights信息和REK。在S601之前DRMAgent和SRMAgent1之间需要互相认证和建立SAC通道。
S602-S603:DRMAgent向RI查询SRM1所属的用户。请求中包含SRM1标识,RI在响应消息中返回用户标识。
S604:DRMAgent检查Rights信息中的RI签名以及状态信息是否超出Rights中的原始权限并在验证通过后安装该Rights,DRMAgent在安装该Rights时标识该Rights不可用,并指定关联到S603中RI返回的用户标识。
S605:如果共享操作为转移,则DRMAgent指示SRM1删除该Rights,具体步骤如图1中S105-S106。
S606-S607:DRMAgent将Rights共享给SRM2。由于Rights绑定用户标识,DRMAgent向RI查询SRM2所属的用户。请求中包含SRM2标识,RI在响应消息中返回用户标识。在S606之前DRMAgent和SRMAgent2之间需要互相认证和建立SAC通道。
S608:DRMAgent验证SRM2所属的用户与Rights绑定的用户是否一致,即和SRM1所属的用户是否一致。如果一致则执行S609,否则拒绝将Rights共享给SRM2。
S609:DRMAgent将Rights安装到SRM2,具体步骤如图1中S107-S110。
S610:如果SRM2成功安装Rights,则DRMAgent删除本地的Rights。
下面介绍在属于相同用户的SRM之间共享许可的实施例六。
与实施例五中DRMAgent分别查询SRM1和SRM2所属的用户并自行进行比较不同,该实施例六中由DRMAgent将SRM1和SRM2的标识上报给RI,由RI进行比较后返回比较结果。这种情况下DRMAgent无需了解用户标识细节。
概括而言,实施例六中查询第一SRM和第二SRM所属用户的过程为:
[1]DRMAgent向RI或用户管理器发送包含第一SRM标识和第二SRM标识的查询消息,查询所述第一SRM和所述第二SRM是否属于相同用户;
[2]RI或用户管理器向DRMAgent返回查询响应,告知所述第一SRM和第二SRM是否属于相同用户。
参见图7,实施例六包括:
S701:DRMAgent根据用户请求发起将SRM1上的Rights共享给同一用户的另一SRM,DRMAgent从SRM1获取Rights信息和REK,具体步骤如图1中S102-S103。在S701之前DRMAgent和SRMAgent1之间需要互相认证和建立SAC通道。
S702:DRMAgent检查Rights信息中的RI签名以及状态信息是否超出Rights中的原始权限并在验证通过后安装该Rights,DRMAgent在安装该Rights时标识该Rights不可用,并指定关联到SRM1的用户。
S703:如果共享操作为转移,则DRMAgent指示SRM1删除该Rights,具体步骤如图1中S105-S106。
S704-S705:DRMAgent将Rights共享给SRM2。由于Rights绑定SRM1的用户,DRMAgent向RI查询SRM1和SRM2是否属于同一用户。请求中包含SRM1和SRM2的标识,RI检查SRM1和SRM2关联的用户是否一致并在响应消息中返回结果。如果结果表明SRM1和SRM2属于同一用户,则执行S706,否则DRMAgent拒绝将Rights共享给SRM2。在S904之前DRMAgent和SRMAgent2之间需要互相认证和建立SAC通道。
S706:DRMAgent将Rights安装到SRM2,具体步骤如图1中S107-S110。
S707:如果SRM2成功安装Rights,则DRMAgent删除本地的Rights。
该实施例六中DRMAgent先从SRM1获取许可后再向RI查询SRM1和SRM2是否属于同一用户。如果用户发起共享时已经确定目的SRM,可选的,DRMAgent也可以先向RI查询SRM1和SRM2是否属于同一用户再从SRM1获取许可。此外,DRMAgent也可以在确认SRM2上有足够的空间安装Rights后再删除SRM1上的Rights。
上述在属于相同用户的SRM之间共享许可的两个实施例中,DRMAgent均向RI查询SRM所属的用户,如果RI无法获知SRM所属的用户,可能需要向其它实体,如用户管理器,查询SRM所属的用户,或者DRMAgent可以直接向管理SRM和用户关系的实体,如用户管理器,查询SRM所属的用户。
另外,上述在属于相同用户的SRM之间共享许可的两个实施例中,都是以SRM1和SRM2连接于同一个DRMAgent为例进行说明的,某些情况下,可能两个SRM位于不同的地方,无法直接连接到同一个DRMAgent,则可能需要多个DRMAgent代为中转。例如,需对图6改动的是,DRMAgent实际为两个DRMAgent:DRMAgent1和DRMAgent2,分别连接SRM1和SRM2,在具体流程上,可由DRMAgent1查询SRM1所属用户,并在将许可转移给DRMAgent2时指明该Rights只能共享给该用户的SRM,DRMAgent2确定SRM2同属于该用户后,才能将该Rights安装到SRM2;或者DRMAgent1确定SRM1和SRM2同属一个用户时,将许可共享给DRMAgent2并指明共享给SRM2,再由DRMAgent2安装到SRM2;或者DRMAgent将许可共享给DRMAgent2并指明共享给与SRM1同一用户的SRM,DRMAgent在确定SRM1和SRM2同属一个用户后,才能将该Rights安装到SRM2。需对图7改动的是,DRMAgent1向RI进行SRM1和SRM2所属用户查询,并且,在RI确定SRM1和SRM2同属一个用户时,由DRMAgent1将许可共享给DRMAgent2,再由DRMAgent2安装到SRM2;或者由DRMAgent1将许可共享给DRMAgent2,由DRMAgent2向RI进行SRM1和SRM2所属用户查询,并且,在RI确定SRM1和SRM2同属一个用户时,再由DRMAgent2安装到SRM2。可见,在实施例五和实施例六中,由于是对同属一个用户的两个SRM的许可的共享,无需消耗共享权限,进一步保证了用户权益。
综上,针对用户发起的在两个SRM间共享许可,设备可先判断两个SRM是否属于同一用户:如果属于同一用户则直接共享,不检查共享权限,如实施例五和实施例六所示;如果不属于同一用户则检查共享权限并扣除一次,如实施例一和实施例二所示。
与上述各个方法实施例相对应,本发明实施例还提供各种装置。
本发明实施例提供的第一装置是指DRMAgent或位于DRMAgent内的功能实体,该装置执行图1或图2中DRMAgent功能,该装置包括:获取单元,用于从第一SRM获取许可;中转设置单元,用于将所述获取的许可设置为中转状态;发送单元,用于将所获取的许可发送给第二SRM;控制单元,扣除一次共享权限。优选地,该装置还包括:请求删除单元,用于请求所述第一SRM删除所述许可;删除响应接收单元,用于接收所述第一SRM返回的删除许可响应。
另外,本发明实施例提供的第二装置是指DRMAgent或位于DRMAgent内的功能实体,该装置执行图3中DRMAgent功能,该装置包括:SRM交互单元,用于触发第一SRM和第二SRM进行密钥协商;转发单元,用于将所述第一SRM的许可转发给第二SRM。
另外,本发明实施例提供的第三装置是指第一SRM或位于第一SRM中的功能实体,该装置实现图3中SRM1的功能,该装置包括:密钥协商单元,用于与第二SRM进行密钥协商;处理单元,用于利用与第二SRM协商的共享密钥对许可的部分或全部信息加密;发送单元,用于将许可发送给第二SRM。优选地,该装置还包括:删除单元,用于在确认所述第二SRM接收到许可后,删除本地的所述许可。
另外,本发明实施例提供的第四装置是指第二SRM或位于第一SRM中的功能实体,该装置实现图3中SRM2的功能,该装置包括:密钥协商单元,用于与第一SRM进行密钥协商;接收单元,用于接收第一SRM发送的许可;权限扣除单元,用于在所述接收单元接收到正确的许可后,扣除一次操作权限。
另外,本发明实施例提供的第五装置是指RI或用户管理器或位于RI或用户管理器内的功能实体,该装置执行图5中RI功能,该装置包括:获取单元,用于从第一数字版权管理终端DRMAgent获取第一SRM的许可;发送单元,用于向第二DRMAgent发送所述许可,通过所述第二DRMAgent提供给第二SRM。
另外,本发明实施例提供的第六装置是指DRMAgent或位于DRMAgent内的功能实体,该装置执行图6或图7中DRMAgent功能,该装置包括:确定单元,确定所述第一SRM和第二SRM是否属于相同用户;获取单元,用于在所述确定单元确定第一SRM和第二SRM属于相同用户时,从所述第一SRM获取许可;执行单元,用于将所述许可发送给第二SRM。另外
需要说明的是,上述各个实施例仅是以在两个SRM之间共享许可为例进行说明的,本领域人员可毫无疑问地获知,本发明实施例可以实现在三个或三个以上SRM之间共享许可。本发明实施例也可应用于通过DRMAgent将SRM上的许可共享到另一DRMAgent。
本领域普通技术人员可以理解,实现上述实施例的方法的过程可以通过程序指令相关的硬件来完成,所述的程序可以存储于可读取存储介质中,该程序在执行时执行上述方法中的对应步骤。所述的存储介质可以如:ROM/RAM、磁碟、光盘等。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种在安全可移动媒介SRM之间共享许可的方法,其特征在于,包括:
数字版权管理终端DRMAgent发起将第一SRM上的许可直接转移到第二SRM,从第一SRM获取许可,并将所述许可在本地设置为中转状态,指定转移给第二SRM,不可用所述许可消费内容;
所述DRMAgent将所述许可的共享权限扣除一次;
所述DRMAgent将所述许可发送给第二SRM;
其中,所述DRMAgent将所述许可发送给第二SRM具体包括:所述DRMAgent向所述第二SRM发送许可安装请求消息,所述许可安装请求消息中包括句柄handle、REK、内容标识的hash的列表和许可信息,以便所述第二SRM安装许可并返回响应。
2.根据权利要求1所述方法,其特征在于,所述共享许可是指复制许可,所述共享权限是指复制权限;或者,所述共享许可是指转移许可,所述共享权限是指转移权限;
当所述共享许可是指转移许可时,还包括:所述DRMAgent触发所述第一SRM删除所述许可;
当所述共享许可是指复制许可时,所述DRMAgent将所述许可的共享权限扣除一次具体包括:
所述DRMAgent将第一SRM上的所述许可的复制权限扣除一次,所述DRMAgent将所述许可发送给第二SRM时许可不包含复制权限;
或者,
所述DRMAgent将发送给第二SRM的所述许可的复制权限扣除一次,并将第一SRM上的所述许可复制权限全部扣除。
3.根据权利要求1所述方法,其特征在于,所述DRMAgent将所述许可发送给第二SRM后,还包括:
所述DRMAgent删除本地的所述许可。
4.根据权利要求1所述方法,其特征在于,所述DRMAgent在中转操作过程中记录日志,所述日志包含操作类型、当前状态、许可标识、第一SRM标识、许可在第一SRM上对应的第一句柄、第二SRM标识、许可在第二SRM上对应的第二句柄中的部分或全部。
5.根据权利要求1所述方法,其特征在于,所述DRMAgent从第一SRM获取许可前,还包括:
所述DRMAgent将所述第二SRM的公钥或证书提供给第一SRM,第一SRM使用第二SRM的公钥加密许可中的权限加密密钥或内容加密密钥。
6.根据权利要求1所述方法,其特征在于,所述DRMAgent将所述许可发送给第二SRM具体包括:
所述DRMAgent将所述许可通过其它DRMAgent中转给第二SRM。
7.一种共享许可的装置,其特征在于,包括:
获取单元,用于发起将第一SRM上的许可直接转移到第二SRM,从第一安全可移动媒介SRM获取许可;
中转设置单元,用于将所述获取的许可设置为中转状态,指定转移给第二SRM,不可用所述许可消费内容;
发送单元,用于将所获取的许可发送给第二SRM;
控制单元,扣除一次共享权限;
其中,所述发送单元具体用于:所述第二SRM发送许可安装请求消息,所述许可安装请求消息中包括句柄handle、REK、内容标识的hash的列表和许可信息,以便所述第二SRM安装许可并返回响应。
8.根据权利要求7所述装置,其特征在于,还包括:
请求删除单元,用于请求所述第一SRM删除所述许可;
删除响应接收单元,用于接收所述第一SRM返回的删除许可响应。
CN201210218215.1A 2008-07-29 2008-07-29 在安全可移动媒介之间共享许可的方法及装置 Active CN102752105B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210218215.1A CN102752105B (zh) 2008-07-29 2008-07-29 在安全可移动媒介之间共享许可的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210218215.1A CN102752105B (zh) 2008-07-29 2008-07-29 在安全可移动媒介之间共享许可的方法及装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN2008101347663A Division CN101640589B (zh) 2008-07-29 2008-07-29 在安全可移动媒介之间共享许可的方法及装置

Publications (2)

Publication Number Publication Date
CN102752105A CN102752105A (zh) 2012-10-24
CN102752105B true CN102752105B (zh) 2016-06-29

Family

ID=47032019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210218215.1A Active CN102752105B (zh) 2008-07-29 2008-07-29 在安全可移动媒介之间共享许可的方法及装置

Country Status (1)

Country Link
CN (1) CN102752105B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106971094B (zh) * 2017-03-21 2018-09-21 北京深思数盾科技股份有限公司 软件数字许可转移方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101086752A (zh) * 2006-06-08 2007-12-12 华为技术有限公司 通过中间设备实现许可共享的方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101086752A (zh) * 2006-06-08 2007-12-12 华为技术有限公司 通过中间设备实现许可共享的方法及装置

Also Published As

Publication number Publication date
CN102752105A (zh) 2012-10-24

Similar Documents

Publication Publication Date Title
CN101640589B (zh) 在安全可移动媒介之间共享许可的方法及装置
CN103189872B (zh) 联网环境中的安全和有效内容筛选的方法和装置
KR100567827B1 (ko) 휴대용 저장 장치를 사용하여 디지털 저작권을 관리하는방법 및 장치
KR101346734B1 (ko) 디지털 저작권 관리를 위한 다중 인증서 철회 목록 지원방법 및 장치
US7676042B2 (en) Terminal apparatus, server apparatus, and digital content distribution system
JP3980355B2 (ja) ライセンス情報記憶装置、コンテンツ再生装置およびライセンス情報配信システム
CN100403209C (zh) 用于授权内容操作的方法与装置
CN101682501B (zh) 用于执行认证协议的方法和便携式存储设备
CN1940952B (zh) 用于管理内容数据的系统和装置
KR101517942B1 (ko) 디지털 저작권 관리에서 에스알엠을 사용하기 위한 장치 및방법
EP1801722A2 (en) Protecting copyrighted digital content against unauthorized copying
US20050076208A1 (en) Data terminal capable of transferring ciphered content data and license acquired by software
CN101626371B (zh) 许可的处理方法及装置
CN100471110C (zh) 使用便携式存储装置用于管理数字权限的方法和设备
CN101420296B (zh) 内容数据管理系统和方法
WO2007086015A2 (en) Secure transfer of content ownership
EP1585249A1 (en) Content reproduction device, license issuing server, and content reproduction system
US20080052510A1 (en) Multi certificate revocation list support method and apparatus for digital rights management
CN104104650A (zh) 数据文件访问方法及终端设备
JP2011028522A (ja) ホスト装置、認証方法、並びに、コンテンツ処理方法及びそのシステム
CN102752105B (zh) 在安全可移动媒介之间共享许可的方法及装置
CN101089865B (zh) 一种域许可转移的方法、装置及系统
CN101465845A (zh) 转移许可的方法及设备
CN115225346A (zh) 一种面向征信大数据领域的数据存证系统
CN100568366C (zh) 内容再现装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant