一种DRM密钥保存、读取方法和保存、读取系统转让专利

申请号 : CN201611264007.X

文献号 : CN106603230B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈钢陈赫

申请人 : 北京奇艺世纪科技有限公司

摘要 :

本发明实施例提供了一种DRM密钥保存、读取方法和保存、读取系统,其中DRM密钥保存包括:将欲保护的DRM密钥存入分配的动态存储区中,并保存所述DRM密钥的动态存储地址和数据长度信息;基于存入的所述欲保护的DRM密钥,生成读取权限验证码并予以保存;基于所述读取权限验证码,对所述DRM密钥的动态存储区进行加密,并生成相应的解密密钥并予以保存。本发明实施例通过设置读取权限验证码,对欲读取DRM密钥的身份进行验证,并对DRM密钥的动态存储区进行加密处理,而且应用了动态地址和对非法调试的监控,加大了读取DRM密钥难度,从而有效防止非法盗取密钥行为的发生,进而保护了视频版权所有者的利益。

权利要求 :

1.一种DRM密钥保存方法,其特征在于,包括:

将欲保护的DRM密钥存入分配的动态存储区中,并保存所述DRM密钥的动态存储地址和数据长度信息;其中,若所述DRM密钥读取成功,则为所述DRM密钥分配新的动态存储区,重新将所述DRM密钥存入所述新的动态存储区中;

基于存入的所述欲保护的DRM密钥,生成读取权限验证码并予以保存;

基于所述读取权限验证码,对所述DRM密钥的动态存储区进行加密,并生成相应的解密密钥并予以保存。

2.根据权利要求1所述的方法,其特征在于,还包括:将所述DRM密钥的动态存储地址、所述DRM密钥的数据长度信息、所述读取权限验证码以及所述解密密钥保存至元信息数据组中。

3.根据权利要求1所述的方法,其特征在于,还包括:检测所述DRM密钥的动态存储区是否处于调试状态,若是,则结束所述DRM密钥的保存进程。

4.一种DRM密钥读取方法,其特征在于,包括:

将接收的读取权限验证码与预设的读取权限验证码进行匹配;

若匹配成功,则读取DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥;

基于所述读取的DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥,对所述DRM密钥的动态存储区进行解密,得到所述DRM密钥。

5.根据权利要求4所述的方法,其特征在于,所述将接收的读取权限验证码与预设的读取权限验证码进行匹配的步骤,包括:基于元信息数据组的存储地址,得到所述元信息数据组中存储的所述预设的读取权限验证码;所述存储的读取权限验证码用于与所述接收的读取权限验证码进行匹配;

所述元信息数据组中包括:所述DRM密钥的动态存储地址、所述DRM密钥的数据长度信息、所述读取权限验证码以及所述解密密钥。

6.根据权利要求4所述的方法,其特征在于,还包括:检测所述DRM密钥的动态存储区是否处于调试状态,若是,则结束所述DRM密钥的读取进程。

7.一种DRM密钥保存系统,其特征在于,包括:

DRM密钥保存模块,用于将欲保护的DRM密钥存入分配的动态存储区中,并保存所述DRM密钥的动态存储地址和数据长度信息;其中,所述DRM密钥保存模块包括DRM密钥动态保存单元,所述DRM密钥动态保存单元,用于若所述DRM密钥读取成功,则为所述DRM密钥分配新的动态存储区,重新将所述DRM密钥存入所述新的动态存储区中;

读取权限验证码生成模块,用于基于存入的所述欲保护的DRM密钥,生成读取权限验证码并予以保存;

存储区加密模块,用于基于所述读取权限验证码,对所述DRM密钥的动态存储区进行加密,并生成相应的解密密钥并予以保存。

8.一种DRM密钥读取系统,其特征在于,包括:

验证码匹配模块,用于将接收的读取权限验证码与预设的读取权限验证码进行匹配;

存储地址读取模块,用于若匹配成功,则读取DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥;

存储区解密模块,用于基于所述读取的DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥,对所述DRM密钥的动态存储区进行解密,得到所述DRM密钥。

说明书 :

一种DRM密钥保存、读取方法和保存、读取系统

技术领域

[0001] 本发明涉及DRM密钥保护技术领域,特别是涉及一种DRM密钥保存方法、一种DRM密钥读取方法、一种DRM密钥保存系统和一种DRM密钥读取系统。

背景技术

[0002] 在视频版权保护中,通常采用DRM(Digital Rights Management,数字版权管理)密钥对视频进行加密,用于防止未授权用户非法获得视频文件。在播放视频时,DRM密钥需要反复使用,所以通常保存在内存中保存,方便读取。但是在现有技术中,内存中DRM密钥容易被他人非法盗取,进而侵犯了视频版权,损害视频版权所有者的利益。

发明内容

[0003] 本发明实施例所要解决的技术问题是提供一种DRM密钥保存方法和一种DRM密钥读取方法,以解决现有技术的视频加密处理中DRM密钥容易被他人非法盗取的问题。
[0004] 相应的,本发明实施例还提供了一种DRM密钥保存系统和一种DRM密钥读取系统,用以保证上述方法的实现及应用。
[0005] 为了解决上述问题,本发明公开了一种DRM密钥保存方法,包括:
[0006] 将欲保护的DRM密钥存入分配的动态存储区中,并保存所述DRM密钥的动态存储地址和数据长度信息;
[0007] 基于存入的所述欲保护的DRM密钥,生成读取权限验证码并予以保存;
[0008] 基于所述读取权限验证码,对所述DRM密钥的动态存储区进行加密,并生成相应的解密密钥并予以保存。
[0009] 优选地,所述方法还包括:
[0010] 将所述DRM密钥的动态存储地址、所述DRM密钥的数据长度信息、所述读取权限验证码以及所述解密密钥保存至元信息数据组中。
[0011] 优选地,所述方法还包括:
[0012] 若所述DRM密钥读取成功,则为所述DRM密钥分配新的动态存储区,重新将所述DRM密钥存入所述新的动态存储区中。
[0013] 优选地,所述方法还包括:
[0014] 检测所述DRM密钥的动态存储区是否处于调试状态,若是,则结束所述DRM密钥的保存进程。
[0015] 本发明实施例还公布了一种DRM密钥读取方法,包括:
[0016] 将接收的读取权限验证码与预设的读取权限验证码进行匹配;
[0017] 若匹配成功,则读取DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥;
[0018] 基于所述读取的DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥,对所述DRM密钥的动态存储区进行解密,得到所述DRM密钥。
[0019] 优选地,所述将接收的读取权限验证码与预设的读取权限验证码进行匹配的步骤,包括:
[0020] 基于元信息数据组的存储地址,得到所述元信息数据组中存储的所述预设的读取权限验证码;所述存储的读取权限验证码用于与所述接收的读取权限验证码进行匹配;
[0021] 所述元信息数据组中包括:所述DRM密钥的动态存储地址、所述DRM密钥的数据长度信息、所述读取权限验证码以及所述解密密钥。
[0022] 优选地,一种DRM密钥读取方法还包括:
[0023] 检测所述DRM密钥的动态存储区是否处于调试状态,若是,则结束所述DRM密钥的读取进程。
[0024] 本发明实施例还公布了一种DRM密钥保存系统,包括:
[0025] DRM密钥保存模块,用于将欲保护的DRM密钥存入分配的动态存储区中,并保存所述DRM密钥的动态存储地址和数据长度信息;
[0026] 读取权限验证码生成模块,用于基于存入的所述欲保护的DRM密钥,生成读取权限验证码并予以保存;
[0027] 存储区加密模块,用于基于所述读取权限验证码,对所述DRM密钥的动态存储区进行加密,并生成相应的解密密钥并予以保存。
[0028] 优选地,所述DRM密钥保存模块包括:
[0029] DRM密钥动态保存单元,用于若所述DRM密钥读取成功,则为所述DRM密钥分配新的动态存储区,重新将所述DRM密钥存入所述新的动态存储区中。
[0030] 本发明实施例还公布了一种DRM密钥读取系统,包括:
[0031] 验证码匹配模块,用于将接收的读取权限验证码与预设的读取权限验证码进行匹配;
[0032] 存储地址读取模块,用于若匹配成功,则读取DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥;
[0033] 存储区解密模块,用于基于所述读取的DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥,对所述DRM密钥的动态存储区进行解密,得到所述DRM密钥[0034] 与现有技术相比,本发明实施例包括以下优点:
[0035] 本发明实施例通过设置读取权限验证码,对欲读取DRM密钥的身份进行验证,并对DRM密钥的动态存储区进行加密处理,而且应用了动态地址和对非法调试的监控,加大了读取DRM密钥难度,从而有效防止非法盗取密钥行为的发生,进而保护了视频版权所有者的利益。

附图说明

[0036] 图1是本发明的一种DRM密钥保存方法实施例一的步骤流程图;
[0037] 图2是本发明的一种DRM密钥保存方法实施例二的步骤流程图;
[0038] 图3是本发明的一种DRM密钥读取方法实施例一的步骤流程图;
[0039] 图4是本发明的一种DRM密钥读取方法实施例二的步骤流程图;
[0040] 图5是本发明的一种DRM密钥保存系统实施例的结构框图;
[0041] 图6是本发明的一种DRM密钥读取系统实施例的结构框图。

具体实施方式

[0042] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0043] 本发明实施例的核心构思之一在于,在保存DRM密钥时,生成读取权限验证码用于读取时身份的验证,并对DRM密钥的动态存储区进行加密;每次读取完DRM密钥,会为DRM密钥重新分配存储地址,增强了DRM密钥的安全性能。
[0044] 参照图1,示出了本发明的一种DRM密钥保存方法实施例一的步骤流程图,具体可以包括如下步骤:
[0045] 步骤101,将欲保护的DRM密钥存入分配的动态存储区中,并保存所述DRM密钥的动态存储地址和数据长度信息;
[0046] 步骤102,基于存入的所述欲保护的DRM密钥,生成读取权限验证码并予以保存;
[0047] 步骤103,基于所述读取权限验证码,对所述DRM密钥的动态存储区进行加密,并生成相应的解密密钥并予以保存。
[0048] 参照图2,示出了本发明的一种DRM密钥保存方法实施例二的步骤流程图,具体可以包括如下步骤:
[0049] 步骤201,检测所述DRM密钥的动态存储区是否处于调试状态,若是,则结束所述DRM密钥的保存进程。
[0050] 管理员或非法人员可以利用程序调试的方式来跟踪分析或改变DRM密钥的保存进程。如果有其他管理员正在调试该DRM密钥的保存进程。则停止,保证了DRM密钥的保存进程正常进行。非法人员可能通过跟踪分析该DRM密钥的保存进程,窃取DRM密钥。所以通过对调试状态的检测,可以防止DRM密钥被窃取。
[0051] 步骤202,将欲保护的DRM密钥存入分配的动态存储区中,并保存所述DRM密钥的动态存储地址和数据长度信息。
[0052] 该DRM密钥的动态存储地址和数据长度信息,用于读取DRM密钥时,能够快速从内存中查找到DRM密钥。
[0053] 在具体实现中,所述步骤202之前具体可以包括:
[0054] 子步骤11,根据DRM密钥数据的大小,为DRM密钥数据分配一块动态存储区;
[0055] 子步骤12,将欲存入DRM密钥的动态存储区的权限设置为可写不可读。
[0056] 在本发明实施例的一种优选示例中,所述步骤202可以包括:
[0057] 若所述DRM密钥读取成功,则为所述DRM密钥分配新的动态存储区,重新将所述DRM密钥存入所述新的动态存储区中。
[0058] 在具体实现中,每当DRM密钥被读取成功,将DRM密钥存入新的存储地址。每次更新存储地址后,释放掉原有存储区上的数据,并利用新的存储地址覆盖掉旧的存储地址。这种动态存储方式能够有效保护DRM密钥不被盗取。
[0059] 步骤203,基于存入的所述欲保护的DRM密钥,生成读取权限验证码并予以保存。
[0060] 存入DRM密钥后,系统随机生成一串数码,将该数码作为读取权限验证码,用于读取DRM密钥时的身份验证。
[0061] 步骤204,基于所述读取权限验证码,对所述DRM密钥的动态存储区进行加密,并生成相应的解密密钥并予以保存。
[0062] 在在本发明实施例的一种优选示例中,通过流式加密算法对DRM密钥的动态存储区进行加密。
[0063] 该解密密钥,用于读取DRM密钥时,对加密的DRM密钥的动态存储区进行解密,从而得到DRM密钥。
[0064] 在具体实现中,所述步骤204之后还包括:
[0065] 子步骤21,将DRM密钥的动态存储区的状态标记为使用状态。
[0066] 因为内存会定期回收未使用的内存区域,所以需要将DRM密钥的动态存储区的状态标记为使用状态,防止该DRM密钥的动态存储区被回收。
[0067] 子步骤22,将DRM密钥的动态存储区的权限设置为不可读不可写。
[0068] 在本发明实施例中,上述的DRM密钥的动态存储地址、DRM密钥的数据长度信息、读取权限验证码、解密密钥以及DRM密钥动态存储区的状态信息为DRM密钥的元信息。该DRM密钥的元信息可以保存至元信息数据组中。元信息数据组能够对DRM密钥的元信息进行统一管理,也能够方便查找各个DRM密钥的元信息。
[0069] 内存中会保存有多个DRM密钥,每个DRM密钥的元信息对应一个元信息数据组。并保存每个DRM密钥对应的元信息数据组的存储地址,用于读取DRM密钥。
[0070] 在本发明实施例中,若DRM密钥读取成功,重新动态存储所述DRM密钥之后,对权限验证码进行更新,并重新对所述DRM密钥的动态存储区进行加密。
[0071] 参照图3,示出了本发明的一种DRM密钥读取方法实施例一的步骤流程图,具体可以包括如下步骤:
[0072] 步骤301,将接收的读取权限验证码与预设的读取权限验证码进行匹配;
[0073] 步骤302,若匹配成功,则读取DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥;
[0074] 步骤303,基于所述读取的DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥,对所述DRM密钥的动态存储区进行解密,得到所述DRM密钥。
[0075] 参照图4,示出了本发明的一种DRM密钥读取方法实施例二的步骤流程图,具体可以包括如下步骤:
[0076] 步骤401,检测所述DRM密钥的动态存储区是否处于调试状态,若是,则结束所述DRM密钥的读取进程。
[0077] 步骤402,将接收的读取权限验证码与预设的读取权限验证码进行匹配。
[0078] 在本发明实施例中,当接收到欲读取DRM密钥时发送过来的读取权限验证码后,可以基于元信息数据组的存储地址,得到元信息数据组中存储的读取权限验证码。将接收的读取权限验证码与存储的读取权限验证码进行匹配。
[0079] 步骤403,若匹配成功,则读取DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥。
[0080] 在本发明实施例中,若匹配成功,则从元信息数据组中读取DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥。
[0081] 步骤404,基于所述读取的DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥,对所述DRM密钥进行解密,得到所述DRM密钥。
[0082] 具体地,步骤404可以包括:
[0083] 子步骤31,基于读取的DRM密钥的动态存储地址和数据长度信息,从内存中查找到相应的DRM密钥;
[0084] 子步骤32,将DRM密钥的动态存储区的权限设置为可读不可写;
[0085] 子步骤33,基于解密密钥对DRM密钥的动态存储区进行解密,读取到DRM密钥。
[0086] 综上所述,本发明实施例通过设置读取权限验证码,对欲读取DRM密钥的身份进行验证,并对DRM密钥的动态存储区进行加密处理,而且应用了动态地址和对非法调试的监控,加大了读取DRM密钥难度,从而有效防止非法盗取密钥行为的发生,进而保护了视频版权所有者的利益。
[0087] 需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0088] 参照图5,示出了本发明一种DRM密钥保存系统实施例的结构框图,具体可以包括:
[0089] 第一调试状态检测模块501,用于检测所述DRM密钥的动态存储区是否处于调试状态,若是,则结束所述DRM密钥的保存进程。
[0090] DRM密钥保存模块502,用于将欲保护的DRM密钥存入分配的动态存储区中,并保存所述DRM密钥的动态存储地址和数据长度信息。
[0091] 在本发明实施例的一种优选示例中,所述DRM密钥保存模块502可以包括:
[0092] 内存分配单元,用于根据DRM密钥数据的大小,为DRM密钥数据分配一块动态存储区;
[0093] 第一权限设置单元,用于将欲存入DRM密钥的动态存储区的权限设置为可写不可读。
[0094] DRM密钥动态保存单元,用于若所述DRM密钥读取成功,则为所述DRM密钥分配新的动态存储区,重新将所述DRM密钥存入所述新的动态存储区中。
[0095] 读取权限验证码生成模块503,用于基于存入的所述欲保护的DRM密钥,生成读取权限验证码并予以保存;
[0096] 存储区加密模块504,用于基于所述读取权限验证码,对所述DRM密钥的动态存储区进行加密,并生成相应的解密密钥并予以保存。
[0097] 在本发明实施例的一种优选示例中,所述存储区加密模块504可以包括:
[0098] 状态标记单元,用于将DRM密钥的动态存储区的状态标记为使用状态;
[0099] 第二权限设置单元,用于将DRM密钥的动态存储区的权限设置为不可读不可写。
[0100] 参照图6,示出了本发明一种DRM密钥读取系统实施例的结构框图,具体可以包括:
[0101] 第二调试状态检测模块601,用于检测所述DRM密钥的动态存储区是否处于调试状态,若是,则结束所述DRM密钥的读取进程。
[0102] 验证码匹配模块602,用于将接收的读取权限验证码与预设的读取权限验证码进行匹配;
[0103] 存储地址读取模块603,用于若匹配成功,则读取的DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥;
[0104] 存储区解密模块604,用于基于所述读取的DRM密钥的动态存储地址、DRM密钥的数据长度信息以及解密密钥,对所述DRM密钥的动态存储区进行解密,得到所述DRM密钥。
[0105] 在本发明实施例的一种优选示例中,所述存储区解密模块604可以包括:
[0106] 查找单元,用于基于读取的DRM密钥的动态存储地址和数据长度信息,从内存中查找到相应的DRM密钥;
[0107] 第三权限设置单元,将DRM密钥的动态存储区的权限设置为可读不可写;
[0108] 解密单元,基于解密密钥对DRM密钥的动态存储区进行解密,读取到DRM密钥。
[0109] 对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0110] 以上对本发明所提供的一种DRM密钥保存方法、一种DRM密钥读取方法、一种DRM密钥保存系统和一种DRM密钥读取系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
[0111] 本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0112] 本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0113] 本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0114] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0115] 这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0116] 尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
[0117] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。