发明内容
针对现有的硬件绑定数字内容保护技术中存在的问题,本发明的目的是提供一种具有硬件适应性的数字内容与硬件绑定的方法,该方法能使得用户的硬件配置信息发生一定范围的变更时,不需要重新获取数字内容许可证或者保存用户机器硬件配置信息等任何额外的操作,仍旧可以使用原先购买的数字内容,而数字内容的版权却能得到有效地保护;同时该方法能增强现有数字内容保护系统的安全性和灵活性,保护用户机器的硬件配置信息等隐私不被跟踪。
为达到以上目的,本发明采用的技术方案是:
一种具有硬件适应性的数字内容与硬件绑定的方法,包括以下步骤:
1)数字内容的封装,即先通过计算机系统对数字内容进行加密处理,然后将加后的数字内容及其完整性校验信息封装在一起,并将数字内容的唯一标识和解密密钥发送给版权服务器;
2)数字许可证的申请、生成和发放步骤,具体包括许可证的申请和许可证的生成与发放两个步骤:
a)许可证的申请:首先,位于客户端的版权控制器收集相应数字内容的唯一标识、数字内容的付费收据和相关硬件设备的特征信息,该特征信息共有n个,其中n0<n个为当前机器不存在的相关硬件设备的特征信息;接着,将收集得到的n个硬件信息、数字内容的标识及其付费收据和n0,发送给版权服务器,申请许可证;
b)许可证的生成与发放:首先,版权服务器检查付费收据和数字内容的合法性;如果未通过合法性检查则整个步骤结束,如果通过合法性检查后,则根据接收得到的用户机器的硬件配置信息,选择门限参数t的值:
再接着,提取相应数字内容的解密密钥,根据(t,n)门限方案,将数字内容的解密密钥分成n个共享子密钥;然后,将各个共享子密钥分别与相应的硬件设备绑定,即版权服务器利用接收得到的n个硬件信息生成n个密钥,分别加密生成的n个共享子密钥或者这n个共享子密钥及其变量串联的n个信息串,同时生成各个共享子密钥的有效性校验信息;最后,将门限参数t的值、加密的共享、共享的有效性校验信息、数字内容标识、许可证版本号以及授予的数字内容的使用权限保存在一个文件里,并将该文件的完整性校验信息和/或版权服务器的签名信息封装在一起,形成数字内容的许可证并发送给相应的版权控制器;
3)数字内容的使用,即版权控制器根据用户机器硬件配置信息,从相应的许可证中恢复数字内容的解密密钥,对数字内容解密,最后将解密的结果发送给用户界面,展现给用户的过程;数字内容的解密密钥的恢复过程是许可证的申请、生成与发放的反过程:首先,版权控制器验证相应数字内容及其许可证的完整性和有效性;如果未通过验证则整个步骤结束,如果通过验证,则与客户获取数字内容的许可证时同样的方法,提取相关硬件设备的特征信息,并根据这些硬件设备特征信息,生成加密的共享的解密密钥,解密加密的共享;然后,根据共享的有效性校验信息,检验得到的共享的有效性,如果存在t个及以上的有效共享及其变量,则根据(t,n)门限方案,恢复数字内容的解密密钥,密钥恢复成功,否则,密钥恢复失败;
上述的相关硬件设备指的是计算机系统选定的用于绑定数字内容解密密钥的硬件设备。
更进一步,为使本发明具有更好的效果,还可以有以下附加技术特征:
①本方法所述的版权服务器可以是由不同计算机组成的计算机系统,也可以是由同一计算机组成的计算机系统;
②在本方法的数字内容的封装步骤中,从密钥库中随机选取加密算法,随机生成数字内容加密密钥和解密密钥,对数字内容进行加密,并在将数字内容的唯一标识和解密密钥发送给版权服务器的同时,将加密算法信息也发送给版权服务器;
③在本方法的许可证的申请步骤中,向版权服务器发送消息申请许可证之前,首先将收集得到的n个硬件信息分别与系统内嵌的n个字符串常量串联并作单向Hash变换,然后,将变换后的n个硬件信息、数字内容的标识及其付费收据和n0用版权服务器的公钥加密,发送给版权服务器,申请许可证;
④在本方法的许可证的生成与发放步骤中,从密钥库中随机选取n个对称加密算法,根据这些算法分别用接收得到的n个硬件信息生成n个加密共享子密钥的密钥,同时将这些加密算法信息也封装到数字内容许可证文件里,在使用数字内容时,根据这些加密算法信息和硬件设备特征信息生成加密的共享的解密密钥;
⑤在本方法的许可证的生成与发放步骤中,分别计算n个共享子密钥及其变量和系统内嵌的n个字符串常量串联结果的消息摘要值,作为共享子密钥的有效性校验信息,在数字内容的使用步骤中,数字内容的解密密钥的恢复时,通过这n个消息摘要值检查相应的共享子密钥的有效性;
⑥附加技术特征3、5所述的系统内嵌的n个字符串常量可以是相同的,也可以是互不相同的;
⑦在本方法的第2步,引入注册码机制。在许可证的申请步骤之前,版权控制器首先收集用户录入的用户注册名称、注册密码和用户机器的硬件标识信息到注册服务器注册,由注册服务器分配一个唯一标识的注册码。在许可证的申请和许可证的生成与发放步骤中,把该注册码作为硬件设备特征信息之一,发送给版权服务器,用于绑定一个共享子密钥;
⑧在本方法第2步,引入随机化机制,每次申请新的许可证时,发送给版权服务器的用户机器的硬件设备特征信息都经过随机化、单向变换和隐藏处理。在许可证的申请步骤中,版权控制器首先收集数字内容的唯一标识和数字内容的付费收据,向版权服务器申请随机化;接着,版权服务器检查付费收据和数字内容的合法性,如果通过合法性检查后,则为该数字内容和付费收据分配一个唯一的随机化参数r,否则结束整个步骤;然后,版权控制器保存随机化参数信息,并收集相关硬件设备的特征信息,将收集得到的n个硬件信息分别与随机化参数r、系统内嵌的n个字符串常量串联并作单向Hash变换,然后,将变换后的n个硬件信息、数字内容的标识及其付费收据和n0用版权服务器的公钥加密,发送给版权服务器,申请许可证。在许可证的生成与发放步骤中,版权服务器首先检查是否已经随机化,如果已经随机化,接着生成数字内容的许可证并发放许可证给相应的版权控制器,否则结束整个步骤。在数字内容的使用步骤中,用于生成加密的共享的解密密钥的硬件设备的特征信息先分别与相应的随机化参数r、系统内嵌的n个字符串常量串联并作单向Hash变换;
再进一步,可以同时在本方法第2步中引入注册码机制和随机化机制,并在版权控制器注册到注册服务器并获得注册码后,利用特定硬件的标识信息加密注册码信息并保存加密的结果,然后再利用注册码信息、系统内嵌的字符串常量信息加密随机化参数信息。
本发明的效果在于:首先,通过本发明所述的方法,采用密钥共享机制,根据(t,n)门限方案,将数字内容的解密密钥分成n个共享子密钥,然后将这些子密钥分别与相应的硬件设备绑定,使得系统生成的数字内容许可证具有硬件适应性,实现了版权保护的硬件适应性,当用户的硬件设备发生一定范围的变更时,不需要重新连接网络获取许可证或者保存用户机器的硬件配置信息等操作,无论在线还是离线,无论何时何地,仍旧可以使用原先购买的数字内容;其次,本方法采用的(t,n)门限方案中,门限参数t的值是根据用户机器的硬件配置情况选择的,使得用户机器的硬件配置信息的变更只能在一定的范围内进行,保证了只有具备相似硬件配置信息的用户机器才可以使用相应的数字内容,有效地控制了恶意的用户通过互换硬件设备、共享数字内容许可证或重新获取许可证等方式非法共享数字内容的行为,保护了数字内容的版权;再次,本方法通过随机选取加密算法和随机生成数字内容密钥的方式,使得对一个数字内容的破解不会影响其他数字内容的知识产权的安全性,并可以通过密钥库和内嵌的字符串常量的升级来保证系统的安全性。此外,通过引入注册码机制,提高了用户机器识别的唯一性,增加用户机器识别特征;通过引入随机化机制,保护用户机器的硬件配置信息等隐私不被跟踪;通过利用特定硬件的标识信息加密注册码和利用注册码等信息加密随机化参数信息的方式,保证只有从版权服务器获得许可证的机器,才可以使用相应的数字内容,有效地防止了数字内容的非法复制,进一步地保护了数字内容的知识产权。因而,本发明平衡用户硬件设备变更和数字内容的版权保护的需求,保护版权所有者和使用者双方的权益,增强现有版权保护系统的安全性和灵活性。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步地描述。
图1是使用本发明所述方法的系统整体框架示意图,其中内容服务器和注册服务器为可选部件,具体实施中不一定存在。在实际的系统中,还可以有其他组成部件,如付费中心等;
图2是数字内容许可证的获取流程图:描述一个数字内容许可证的申请、生成到发放的具体处理流程,包括重新获取数字内容许可证和随机化处理等各个方面。具体实施中,可以不包括重新获取数字内容许可证和/或随机化处理过程,相关部分的流程可以不存在。
图4是数字内容的使用流程图:描述用户使用购买的数字内容时,版权控制器的具体处理流程,从数字内容许可证文件的验证到数字内容解密密钥的恢复和数字内容的解密及展现。
图5是电子书购买、使用流程示例图:以电子书为例,从用户角度描述使用本发明的方法后,数字内容的购买、使用流程。
图6是硬件变更容许范围示例图:描述相关硬件设备的变更对数字内容使用的影响。
实施例1:
如图1所示,一种具有硬件适应性的数字内容与硬件绑定的方法,所需部件包括一个内容服务器、版权服务器、注册服务器和版权控制器,其中内容服务器和注册服务器为可选部件。内容服务器主要实现数字内容的封装和加密,并将相关的元数据和内容解密密钥、加密算法相关信息安全地发送给版权服务器;版权服务器主要负责数字内容解密密钥的存储和管理、数字内容许可证的生成、分发和管理;注册服务器主要负责版权控制器的注册,分发和管理注册码,每个注册用户具有唯一的注册码;版权控制器位于客户端,主要负责收集用户机器硬件配置信息和数字内容其他相关信息,并对信息进行变换、隐藏后,向版权服务器请求数字内容的许可证并保证数字内容的合法使用。图1中,版权服务器有一个专门的组成部件-许可证生成器,负责许可证的生成、分发和管理工作,是版权服务器的核心部分。在具体实施中,版权服务器可以没有这么一个专门的许可证生成器部件。
本发明采用密钥共享机制,根据用户机器的硬件配置情况,选择合适的门限参数t的值,并根据(t,n)门限方案,将数字内容的解密密钥分成n个共享子密钥,然后将这些子密钥分别与相应的硬件设备绑定,使得部分硬件设备的变更,不会影响数字内容解密密钥的恢复和数字内容的使用,从而实现版权保护的硬件适应性。
本发明中,系统选定的用于绑定数字内容解密密钥的硬件设备统称为相关硬件设备/相关设备。本发明具体包括以下步骤:
一.版权控制器的注册
安装在用户机器的版权控制器必须向注册服务器注册成功后,才能购买数字内容、申请数字许可证和使用数字内容。注册服务器根据版权控制器提交的用户注册名称、注册密码、用户机器的硬件标识信息等,为版权控制器分配注册码,并向版权控制器返回注册码。每个用户对应唯一的注册码,同一个注册名称不允许重复注册。
本步骤为可选步骤,与数字内容的封装步骤没有任何先后关系。注册服务器分配的注册码,在用户获取许可证时,可以作为一个硬件特征信息,绑定一个共享子密钥,用于提高用户机器识别的唯一性,增加用户机器识别特征。注册码信息可以用特定硬件的标识信息加密,以防止注册码的共享,保证每个版权控制器具有唯一的注册码。
二.数字内容的封装
数字内容在发布销售以前,要进行封装和加密处理。首先,内容服务器从密钥库中随机选取加密算法,随机生成数字内容加密密钥和解密密钥,对数字内容进行加密,并将加密后的结果和数字内容元数据信息、数字内容的完整性校验信息和内容服务器的签名信息以及其他相关信息封装在一起。接着,将数字内容的解密密钥和数字内容的元数据信息、数字内容的加密算法信息以及其他相关信息发送给版权服务器。最后,经过加密封装的数字内容就可以通过网络、光盘等进行发布销售。
内容服务器为可选组成部分,数字内容的封装可以通过其他方式完成。
三.数字许可证的申请、生成和发放
用户在获得数字许可证后才可以使用相应的数字内容。获取许可证包括许可证的申请和许可证的生成与发放两个步骤。
许可证的申请:
首先,版权控制器收集相应数字内容的唯一标识、数字内容的付费收据和相关硬件设备的特征信息,该特征信息共有n个,其中n0<n个为当前机器不存在的相关硬件设备的特征信息;接着,将收集的n个硬件信息分别和版权控制器内嵌的字符串常量串联并进行单向Hash变换;最后,将n个变换后的硬件信息、数字内容的标识及其付费收据和n0用版权服务器的公钥加密后,发送给版权服务器,申请许可证。
许可证的生成与发放:
1)版权服务器收到许可证申请请求后,启动许可证生成器验证数字内容的付费情况,如果没有付费收据或者付费收据非法(即不是由可信的信用机构产生的),则返回没有付费的信息给版权控制器,要求付费后再申请许可证;
2)将接收的硬件信息、数字内容标识与付费收据标识信息一起保存在服务器的许可证发放信息库中;
3)许可证生成器根据接收到的用户机器的硬件配置信息,选择门限参数t的值:
4)许可证生成器从密钥库中提取相应数字内容的解密密钥,根据(t,n)门限方案,将数字内容的解密密钥分成n个共享子密钥;
5)许可证生成器分别计算n个共享及其变量和内嵌的字符串常量串联结果的消息摘要值,从其加密库中随机选取n个对称加密算法,使用接收的n个硬件信息生成n个对称密钥,分别加密n个共享及其变量的串联;
6)许可证生成器将门限参数t的值、加密的共享、共享的摘要信息、加密算法信息、数字内容标识、许可证版本号以及授予的数字内容的版权等信息保存在一个文件里,并将该文件的完整性校验信息和版权服务器的签名信息封装在一起,形成数字许可证;
7)版权服务器通过网络将数字许可证发送给版权控制器,并将发送成功与否的信息更新到许可证发放信息库中。
上述步骤3)中,门限参数t还可以取集合
内的任何一个值,都可以达到同时满足硬件设备变更和版权保护的目的。当t取为n时,用户就不能变更硬件设备了。
许可证的重新获取:系统可以支持许可证的重新获取。当数字许可证丢失或者被毁坏后,向版权服务器重新获取该许可证。重新获取许可证的过程与首次获取许可证的过程基本类似。只是在许可证的生成与发放阶段的第一步,除了检查付费信息以外,还需要对接收到的n个硬件信息与许可证发放信息库中保存的原硬件信息进行比较,如果差别太大,则根据版权所有者设置的规则,确定是否终止许可证的生成与发放。
四.数字内容的使用
用户从版权服务器获得数字内容许可证后,便可以使用相应的数字内容。在使用数字内容时,版权控制器首先从相应的许可证中恢复数字内容的解密密钥,然后对数字内容解密,最后将解密的结果发送给用户界面,展现给用户。数字内容的解密密钥的恢复过程是许可证的申请、生成与发放的反过程:
1)版权控制器检验许可证文件的完整性和版权服务器的签名,如果检验失败,则密钥恢复过程终止;
2)与申请许可证时同样的操作,版权控制器收集相关的硬件特征信息,分别计算各个硬件特征信息与版权控制器内嵌的相应的字符串常量信息的串联并进行单向Hash变换;
3)根据许可证文件中加密算法的信息,利用步骤2)得到的硬件信息值,用生成许可证时同样的方法生成加密的共享的解密密钥,解密加密的共享,获取相应的共享及其变量,根据共享及其变量和内嵌的字符串常量串联结果的消息摘要值,判断得到的共享及其变量是否有效;
4)如果存在t个及以上的有效共享及其变量,则根据(t,n)门限方案,恢复数字内容的解密密钥,密钥恢复成功。否则,密钥恢复失败。
五.随机化
为了提高信息的安全性,保护数字内容的版权和用户机器硬件配置信息等隐私,可以在用户获取许可证时,引入随机化机制,增加随机化处理。随机化处理是本发明的可选步骤。增加随机化处理后,许可证的获取(包括许可证的申请和许可证的生成与发放)和重新获取、数字内容的使用这些步骤需要如下改动:
许可证的申请:在向版权服务器发出许可证申请请求之前,首先要向版权服务器申请随机化,获取唯一随机化参数,然后保存随机化参数信息,提取用户机器硬件特征信息并进行随机化处理后,向版权服务器发出许可证申请请求。具体如下:
①.版权控制器收集相应数字内容的唯一标识和数字内容的付费收据,并将收集到的信息使用版权服务器的公钥加密后,发送给版权服务器,申请随机化;
②.版权服务器收到随机化申请后,启动许可证生成器验证数字内容的付费情况,如果没有付费收据或者付费收据非法(即不是由可信的信用机构产生的),则返回没有付费的信息给版权控制器,要求付费后申请许可证,申请过程终止,申请失败;
③.许可证生成器为该数字内容和付费收据分配一个唯一的随机数r,将其与数字内容的标识、付费收据的标识一起保存在许可证发放信息库中,并将该随机数安全地发送给版权控制器;
④.版权控制器使用版权控制器内嵌的字符串常量和注册码信息,将数字内容标识和得到的随机数一起封装到随机化参数信息文件即随机数信息文件里;
⑤.版权控制器收集相关硬件设备的特征信息和当前机器不存在的相关硬件设备的特征信息数n0<n,将得到的n个硬件信息分别与随机数r、版权控制器内嵌的字符串常量串联并作单向Hash变换,然后将得到的n个硬件信息值、数字内容的标识及其付费收据和n0用版权服务器的公钥加密后,发送给版权服务器,申请许可证。
许可证的生成与发放:引入随机化处理后,许可证的生成与发放步骤基本与非随机化时相同。只需要将步骤1)改为
1)’版权服务器收到许可证申请请求后,启动许可证生成器检验是否已经经过随机化,否则返回没有随机化的信息给版权控制器,许可证生成过程终止。
许可证的重新获取:引入随机化处理后,重新获取许可证的过程与引入随机化后首次获取许可证过程基本类似。只是在重新获取许可证时,在许可证申请阶段的第3步,版权服务器接收到随机化申请后,不需要为数字内容和付费收据再次分配一个唯一的随机数,只需要从数据库中取得相应的随机数并发送给相应版权控制器即可。在许可证的生成与发放阶段的第一步,除了检查随机化以外,还需要比较接收到的n个硬件信息值与许可证发放信息库中保存的原硬件信息值,如果差别太大,则根据版权所有者设置的规则,确定是否终止许可证的生成与发放。
数字内容的使用:引入随机化处理后,数字内容的使用过程基本与非随机化时相同。只需要将步骤2)改为
2)’版权控制器利用内嵌常量和注册码等信息,从随机数信息文件获取相应数字内容的随机化数字r,收集相关的硬件特征信息,并逐个计算各个硬件信息与随机数r、版权控制器内嵌的相应的字符串常量等信息的串联并进行单向Hash变换。
本发明既适用于电子书等一般数字内容的版权保护,也适用于软件、游戏等数字内容的版权保护。从上述实施例中可以看出,本发明具有如下效果:
1.生成的数字内容许可证具有硬件适应性。在一定的范围内,无论在线还是离线,允许用户变更机器的硬件配置,数字内容的解密密钥仍旧能够被恢复,原先购买的数字内容依旧能够被合法地使用;
2.用户机器的硬件配置信息的变更控制在一定的范围内,超过这一范围,原先购买的数字内容就不能再使用,有效地控制了恶意的用户通过互换硬件设备或重新获取许可证等方式非法共享数字内容的行为;
3.利用注册码机制,给用户分配一个唯一标识的注册码,并且把该注册码作为硬件设备特征信息之一,用于绑定一个共享子密钥,提高用户机器识别的唯一性,增加用户机器识别特征;
4.发送给版权服务器的用户机器的硬件配置信息经过随机化和单向变换处理,每次申请新的许可证时,发送的用户机器的硬件配置信息都是不同的,保护了用户的隐私;
5.数字内容的随机化数字信息保存在随机数信息文件中,该文件使用注册码信息加密,只有具备相应注册码的版权控制器才可以获得这些随机化数字,才能恢复数字内容的解密密钥。
此外,可以通过使用用户机器特定硬件的标识信息加密注册码的方式,防止注册码的共享,保证每个版权控制器具有唯一的注册码,确保只有从版权服务器获得许可证的机器,才可以使用相应的数字内容;系统内嵌的字符串常量增强了共享子密钥等信息的安全性,可以通过增加自动升级等功能,来更新内嵌常量、升级密钥库,增强系统的安全性。
实施例2:
参照图1-5,下面以电子书为例,再来详细描述本发明的另一个具体的实施过程。
本实施例中,系统包括本发明的全部组成部件和所有步骤(包括注册和随机化处理等),许可证生成器和版权控制器具有n个相同的内嵌的字符串常量c1,c2,…,cn。
图1是系统的整体框架,包括内容服务器、版权服务器、注册服务器和客户端的版权控制器。各个服务器之间通过Internet互联。数字内容在内容服务器被封装加密后,发布销售。用户通过网络、光盘等媒介获得受保护的数字内容,从版权服务器得到数字内容的使用许可证后,在版权控制器的控制下,在他/她的机器上再现数字内容。版权控制器必须到注册服务器注册后,方可正常运行。
图5具体以电子书为例,从用户角度给出了数字内容的使用流程。图5包含专门的电子书阅读器和付费中心,版权控制器是电子书阅读器的一部分。网上付费中心不是系统必须的,用户可以以其他的方式付费,获得付费收据。在安装电子书阅读器后,首先需要到注册服务器注册,获得注册码。
用户通过购买电子图书光盘或者从网上购买或者下载等方式获得加密封装的电子图书后,通过电子书阅读器或者双击电子图书文件等方式,请求阅读电子图书,版权控制器被激活。版权控制器在收到请求后,首先检查是否存在该书的许可证文件,是否存在该书的付费收据。如果该书没有付费,则引导用户到付费中心付费,获得付费收据。然后,收集电子图书的标识和付费收据,向版权服务器请求随机化,获取唯一的随机数,存到本机的随机数文件中。紧接着,版权控制器收集电子书标识、付费收据、用户机器相关硬件设备信息,向版权服务器请求电子书使用许可证。版权服务器在收到请求后,利用用户机器硬件配置信息和电子图书的解密密钥,生成该电子书的许可证文件,并将其发送给版权控制器,保存到用户机器上。图2具体给出了用户获取许可证的流程,图3是许可证文件的详细结构和格式。在获得许可证后,版权控制器按照图4的流程,从许可证中获取电子书的解密密钥,将解密后的电子图书的内容显示在用户界面上。
参照图6,下面详细描述相关硬件设备的变更对数字内容使用的影响。
在这个例子中,系统选定的相关硬件设备共有m个:e1,e2,…,em,各个硬件设备绑定的共享子密钥数分别为0<n1≤n2≤…≤nm:
且提取的所有相关硬件设备的硬件信息都可以唯一的标识相应的硬件设备。这里,如果注册码信息作为一个硬件特征信息绑定共享子密钥的话,则视注册码本身为一个相关硬件设备,其绑定的共享子密钥数为1。在用户申请许可证时,其机器上有m0<m个相关硬件设备ei1,ei2,…,eim0不存在,1≤i1,i2,…,
对应的共享子密钥总数为 选择的门限参数
另外,nm≤n-t,自然数j、k分别满足下面的不等式方程组(1)、(2):
在申请得到数字内容的许可证文件后,相关硬件设备的变更对数字内容的使用的影响如图6所示。当变更的相关硬件设备总数落在“T”区,即[0,m-j+1]范围内时,数字内容仍然能够正常使用;当变更的相关硬件设备总数落在“I”区,即落在区域[k,m]上时,无法获取足够的有效共享子密钥,无法继续使用数字内容;当变更的相关硬件设备总数落在“P”区,即(m-j+1,k)上时,数字内容的使用可能不受影响,可能受到影响而无法使用。也就是说,在最好的情况下,用户最多能够变更(包括更换、删除、增加)绑定共享子密钥数较少的k-1个相关硬件设备。
值得注意的是,本发明适用于版权保护技术领域各种数字内容与硬件绑定的技术,也适用于其他类似的硬件绑定的方法与技术。虽然已经详细描述了本发明,但是上述描述用于说明而并非限制。在不背离本发明范围的情况下,可以有许多其他的修改和变化。