CN100583746C - 用于生成安全密钥的方法和系统 - Google Patents

用于生成安全密钥的方法和系统 Download PDF

Info

Publication number
CN100583746C
CN100583746C CN200410081896A CN200410081896A CN100583746C CN 100583746 C CN100583746 C CN 100583746C CN 200410081896 A CN200410081896 A CN 200410081896A CN 200410081896 A CN200410081896 A CN 200410081896A CN 100583746 C CN100583746 C CN 100583746C
Authority
CN
China
Prior art keywords
key
output
input
input key
generate
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.)
Expired - Fee Related
Application number
CN200410081896A
Other languages
English (en)
Other versions
CN1798023A (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.)
Avago Technologies International Sales Pte Ltd
Original Assignee
Zyray Wireless Inc
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 Zyray Wireless Inc filed Critical Zyray Wireless Inc
Priority to CN200410081896A priority Critical patent/CN100583746C/zh
Publication of CN1798023A publication Critical patent/CN1798023A/zh
Application granted granted Critical
Publication of CN100583746C publication Critical patent/CN100583746C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明涉及用于生成安全密钥的方法和系统,其中包括一个安全密钥生成器,它用于接收第一、第二和第三输入密钥,并利用这些密钥生成一个第一输出密钥。所述第一、第二和第三输入密钥可分别为用户密钥、用户密钥选择和密钥变量。所生成第一输出密钥可以是唯一的,它与第一输入密钥不相同,并且不是一个弱密钥或半弱密钥。所述第一、第二和第三输入密钥可被映射,以生成映射的输出密钥数据,并根据第一输入密钥生成中间密钥。所述中间密钥和输出密钥数据可被加扰,以产生一个加扰输出。所述输出密钥数据中的至少一部分可被屏蔽,并与所述加扰输出一起进行XOR处理,以生成第一输出密钥。

Description

用于生成安全密钥的方法和系统
技术领域
本发明涉及有条件存取和复制保护系统。更具体的说,本发明涉及用于生成安全密钥的方法和系统。
背景技术
数字电视,一般称为DTV,它是一种能够传输和接收数字信号、显示数字图像、以及播放数字声频的增强型电视系统。虽然某一些特征已存在于当前的模拟电视系统中,如国家电视标准委员会(NTSC)、顺序彩色和存储视频制式(SECAM)、以及逐行倒相制式(PAL)等电视系统,但是,对数字化传输、接收、视频和音频的组合,可将数字电视与当前的模拟电视系统区别开来。
数字电视所采用的技术优于当前的模拟电视系统,并且以更高的频谱效率方式使用很少的带宽。在这方面,与当前的模拟电视系统相比,数字电视在相同的带宽中允许更多频道可包含更多可供广播的信息。因此,可以将任何多余的带宽重新分配给其它类型的通信系统使用。因此,与当前的模拟广播电视系统相比,采用数字电视系统的广播公司能够提供包含更高画面分辨率的空中电视信号。基于这些原因,国会已要求当前的广播电视服务必须及时、完全地转换为数字电视。
为了提供这些高分辨率的电视信号,数字电视系统会采用不同的视频和音频压缩技术,例如运动图像专家组(MPEG)。MPEG是由国际标准化组织(ISO)和国际电工委员会(IEC)组建的一个联合委员会,一般称为ISO/IECJTC1/SC29/WG11。MPEG包括多个成员组织,每个成员组织包括来自全世界的计算机、无线电通信、电视、电缆、人造卫星和其它工业领域的代表。各种MPEG视频和音频的成员组织针对全运动视频、相关的音频以及它们的数字存储媒介复用来研发相应的压缩标准。这些压缩标准同样被数字电缆电视系统和数字卫星系统采用。虽然压缩标准是由不同的组织颁布的,但是在MPEG标准中并没有特别规定传输和加密或有条件访问技术。因此,系统设计者和集成者可以自由地确定和实现他们自己的传输或有条件访问技术。
此外,在一些传统的音频/视频处理系统中,音频/视频数据如电影易遭盗版的攻击,需要防止非法复制的保护。在高价值的电影和视频节目中,与盗版和未授权复制相关的损失非常巨大。由于可利用未压缩的清晰数字视频来实现对高价值节目的完美复制,所以需要复制保护技术来保护未压缩的视频。为了防止盗版或未授权复制,当在存储器和存储设备中存取之前,可对视频数据如高价值的视频内容进行压缩和加密。视频解码和解压缩系统中,一般采用帧缓存器进行运动预测,这样可提供增强的图片质量。存储在这些帧缓冲器中的视频图像或图片是未压缩的并且是清晰的。因此攻击者或黑客可利用不同的方法访问这些缓存器,然后复制视频图像。
而且,通过将现有系统与本发明进行比较,本领域的技术人员将会进一步看出传统方案的其他局限性和缺点。
发明内容
本发明涉及用于产生安全密钥的方法和系统。本发明的方法可包括如下步骤:接收至少一个第一输入密钥、一个第二输入密钥和一个第三输入密钥,然后根据至少所述第一输入密钥、第二输入密钥和第三输入密钥生成一个第一输出密钥。所生成的第一输出密钥应保证它是唯一的,并且与所述第一输入密钥不相同。所述第一输入密钥可为用户密钥,第二输入密钥可为用户密钥选择,第三输入密钥可为密钥变量。另外,还可确定第一输出密钥是否为唯一密钥和/或与第一输入密钥不相同。如果确定所述第一输出密钥不是唯一密钥和/或与第一输入密钥相同,则根据第一输入密钥、第二输入密钥和/或第三输入密钥中的一个的修正值,生成一个第二输出密钥。还可进一步确定所述第二输出密钥是否为唯一密钥和/或与第一输入密钥、第二输入密钥和/或第三输入密钥的修正值不相同。第一输出密钥和第二输出密钥可能不是弱密钥或半弱密钥。
另一方面,本发明中的第一输入密钥,第二输入密钥和第三输入密钥可被映射,以生成映射的输出密钥数据。也可根据所述第一输入密钥生成中间密钥。所生成的中间密钥和所生成的映射输出密钥数据可被加扰,以产生一个加扰输出。所生成的映射输出密钥数据中的至少一部分可被屏蔽,并与加扰输出一起进行异或(XOR)处理,以生成第一输出密钥。然后,所生成的第一输出密钥可被传送到加密引擎,使它可利用所生成的第一输出密钥对信息进行加密。
本发明的另一个实施例中,提供一种机器可读存储装置,其中存储有计算机程序,所述计算机程序中至少有一个代码部分用于产生安全密钥,所述至少一个代码部分可被机器执行,以使该机器执行上述用于生成安全密钥的步骤。
在本发明的另一个实施例中,提供一种用于产生安全密钥的系统,包括可接收至少一个第一输入密钥、一个第二输入密钥和一个第三输入密钥的安全密钥生成器。据此,所述安全密钥生成器可根据至少第一输入密钥、第二输入密钥和第三输入密钥,生成一个第一输出密钥。所生成的第一输出密钥应是唯一密钥并且不同于至少所述第一输入密钥。所述第一输入密钥可为用户密钥,第二输入密钥可为用户密钥选择,第三输入密钥可为密钥变量。所述第一输出密钥和第二输出密钥可能不是弱密钥和/或半弱密钥。所述安全密钥生成器可确定所述第一输出密钥是否为唯一密钥并且不同于至少所述第一输入密钥。如果安全密钥生成器确定所述第一输出密钥不是唯一密钥和/或与至少第一输入密钥相同,则安全密钥生成器会根据第一输入密钥、第二输入密钥和/或第三输入密钥中一个的修正值,生成一个第二输出密钥。所述安全密钥生成器还可确定第二输出密钥是否为唯一密钥和/或与所述第一输入密钥、第二输入密钥和/或第三输入密钥中至少一个的修正值不相同。
所述系统中还包括对至少第一输入密钥、第二输入密钥和第三输入密钥进行映射以生成映射的输出密钥数据的映射器(mapper)。安全密钥生成器可根据第一输入密钥生成一个中间密钥。加扰器(scrambler)可对生成的中间密钥和所生成的映射输出密钥数据进行加扰,以产生加扰输出。屏蔽器(masker)可屏蔽所生成的映射输出密钥数据中的至少一部分,异或运算器(OXR)可对所生成的映射输出密钥数据的被屏蔽部分和所述加扰输出进行异或处理,以生成第一输出密钥。所述安全密钥生成器可将生成的第一输出密钥传送到加密引擎,所述加密引擎可利用生成的第一输出密钥对信息进行加密。
在本发明的另一个实施例中,提供了一种用于产生安全密钥的系统,其中包括一个映射器。与所述映射器相连的一个加扰器和一个屏蔽器。与所述加扰器相连的一个安全密钥生成器,以及可与所述屏蔽器和加扰器相连的一个XOR运算器。在这样的结构中,所述XOR门电路的一个输出作为该安全密钥生成系统的一个输出。至少一个处理器和/或加密引擎可与XOR运算器的输出相连。还可设置存储器与所述加密引擎和/或处理器相连。
一个方面,本发明提供一种用于生成安全密钥的方法,此方法包括:
接收至少一个第一输入密钥、一个第二输入密钥和一个第三输入密钥;
根据至少所述第一输入密钥、所述第二输入密钥和所述第三输入密钥,生成一个第一输出密钥,其中所述第一输出密钥是唯一的,并与至少所述第一输入密钥不相同。
本发明的优选方案中,所述第一输入密钥是用户密钥,所述第二输入密钥是用户密钥选择,所述第三输入密钥是密钥变量。
本发明的优选方案中,所述方法还包括:
确定所述第一输出密钥是否为唯一密钥中的至少一个,并且与至少所述第一输入密钥不相同;
如果所述第一输出密钥为非唯一密钥中的至少一个,并且与至少所述第一输入密钥相同,则根据所述第一输入密钥、所述第二输入密钥和所述第三输入密钥中至少一个的修正值,生成第二输出密钥。
本发明的优选方案中,所述方法还包括确定所述第二输出密钥是否为唯一密钥中的至少一个,并且与所述第一输入密钥、所述第二输入密钥和所述第三输入密钥中至少一个的修正值不相同。
本发明的优选方案中,所述第一输出密钥和所述第二输出密钥不是弱密钥或半弱密钥。
本发明的优选方案中,所述方法还包括映射至少所述第一输入密钥、所述第二输入密钥和所述第三输入密钥,以生成映射的输出密钥数据。
本发明的优选方案中,所述方法还包括根据所述第一输入密钥生成一个中间密钥。
本发明的优选方案中,所述方法还包括对所述生成的中间密钥和所述生成的映射输出密钥数据进行加扰,以产生一个加扰输出。
本发明的优选方案中,所述方法还包括:
屏蔽所述生成的映射输出密钥数据中的至少一部分;
对所述生成的映射输出密钥数据中被屏蔽的至少一部分和所述加扰输出进行异或处理,以生成所述第一输出密钥。
本发明的优选方案中,所述方法还包括,将所述生成的第一输出密钥传送到加密引擎,使之可利用所述生成的第一输出密钥对信息加密。
另一方面,本发明提供一种机器可读存储装置,其中存储有计算机程序,所述计算机程序中至少有一个用于产生安全密钥的代码部分,所述至少一个代码部分可被机器执行,使所述机器可完成以下步骤:
接收至少一个第一输入密钥、一个第二输入密钥和一个第三输入密钥;
根据至少所述第一输入密钥、所述第二输入密钥和所述第三输入密钥,生成一个第一输出密钥,其中所述第一输出密钥是唯一的,并与至少所述第一输入密钥不相同。
本发明的优选方案中,所述第一输入密钥是用户密钥,所述第二输入密钥是用户密钥选择,所述第三输入密钥是密钥变量。
本发明的优选方案中,所述机器可读存储装置还包括:
用于确定所述第一输出密钥是否为唯一密钥中的至少一个并与至少所述第一输入密钥不相同的代码;以及
当所述第一输出密钥为非唯一密钥中的至少一个并与至少所述第一输入密钥相时,用于根据所述第一输入密钥、所述第二输入密钥和所述第三输入密钥中至少一个的修正值来生成第二输出密钥的代码。
本发明的优选方案中,所述机器可读存储装置还包括用于确定所述第二输出密钥是否为唯一的密钥中的至少一个,并确定它与所述第一输入密钥、所述第二输入密钥和所述第三输入密钥中至少一个的修正值不相同的代码。
本发明的优选方案中,所述第一输出密钥和所述第二输出密钥不是弱密钥或半弱密钥。
本发明的优选方案中,所述机器可读存储装置还包括用于映射至少所述第一输入密钥、所述第二输入密钥和所述第三输入密钥以生成映射的输出密钥数据的代码。
本发明的优选方案中,所述机器可读存储装置还包括根据所述第一输入密钥生成中间密钥的代码。
本发明的优选方案中,所述机器可读存储装置还包括用于对所述生成的中间密钥和所述生成的映射输出密钥数据进行加扰以产生加扰输出的代码。
本发明的优选方案中,所述机器可读存储装置还包括:
用于屏蔽所述生成的映射输出密钥数据的至少一部分的代码;
用以对所述生成的映射输出密钥数据中被屏蔽的至少所述部分和所述加扰输出进行异或,以生成所述第一输出密钥的代码。
本发明的优选方案中,所述机器可读存储装置还包括用于将所述生成的第一输出密钥传送到加密引擎的代码,使密引擎用可利用所述生成的第一输出密钥对信息加密。
另方面,本发明还提供一种用于生成安全密钥的系统,该系统包括:
一个安全密钥生成器,它用于接收至少一个第一输入密钥、一个第二输入密钥和一个第三输入密钥;
所述安全密钥生成器根据至少所述第一输入密钥、所述第二输入密钥和所述第三输入密钥,生成一个第一输出密钥,其中所述第一输出密钥是唯一的,并且与至少所述第一输入密钥不相同。
本发明的优选方案中,所述第一输入密钥是用户密钥,所述第二输入密钥是用户密钥选择,所述第三输入密钥是密钥变量。
本发明的优选方案中,所述安全密钥生成器:
确定所述第一输出密钥是否为唯一密钥中的至少一个,并且与所述至少所述第一输入密钥不相同;
如果所述第一输出密钥是非唯一密钥中的至少一个,并且与至少所述第一输入密钥相同,则根据所述第一输入密钥、所述第二输入密钥和所述第三输入密钥中至少一个的修正值生成第二输出密钥。
本发明的优选方案中,所述安全密钥生成器会确定所述第二输出密钥是否为唯一密钥中的至少一个,并且与所述第一输入密钥、所述第二输入密钥和所述第三输入密钥中至少一个的修正值不相同。
本发明的优选方案中,所述第一输出密钥和所述第二输出密钥不是弱密钥或半弱密钥。
本发明的优选方案中,所述系统还包括用于映射至少所述第一输入密钥、所述第二输入密钥和所述第三输入密钥,以生成映射的输出密钥数据的映射器。
本发明的优选方案中,所述系统还包括可根据所述第一输入密钥生成中间密钥的密钥生成器。
本发明的优选方案中,所述系统还包括用于对所述生成的中间密钥和所述生成的映射输出密钥数据进行加扰以产生加扰输出的加扰器。
输出密钥数据加扰以产生:
用于屏蔽至少一部分所述生成的映射输出密钥数据的屏蔽器;
异或运算器将所述屏蔽的至少所述一部分所述生成的映射输出密钥数据和所述加扰输出进行异或,从而生成所述第一输出密钥。
本发明的优选方案中,所述安全密钥生成器将所述生成的第一输出密钥传送到加密引擎,它利用所述生成的第一输出密钥对信息加密。
另一方面,本发明还提供一种用于生成安全密钥的系统,该系统包括:
一个映射器;
一个与所述映射器相连的加扰器;
一个与所述映射器相连的屏蔽器;
一个与所述加扰器相连的安全密钥生成器;以及
一个与所述屏蔽器和所述加扰器相连的XOR运算器。
本发明的优选方案中,所述系统还包括与所述XOR运算器的输出相连的至少一个处理器。
本发明的优选方案中,所述系统还包括与所述XOR运算器的输出相连的加密引擎。
本发明的优选方案中,所述系统还包括与至少一个所述加密引擎和所述至少一个处理器相连的存储器。
下面将结合附图及实施例,进一步说明本发明的优点、特征和新颖性,以对本发明有更加充分的理解。
附图说明
图1是本发明一个实施例中可使用安全密钥生成器、从多个输入密钥而生成一个输出密钥的系统的方框图。
图2是本发明一个实施例中,可从图1所示的多个输入密钥生成一个输出密钥的安全密钥生成功能块的方框图。
图3是本发明一个实施例中,可用于实现图2所示安全密钥生成功能,并用于检验所生成密钥的有效性的流程图。
图4是本发明一个实施例中,可用于从图2所示的多个输入密钥生成一个输出密钥的安全密钥生成系统的方框图。
具体实施方式
在数字电缆和人造卫星系统中,高价值电影和视频节目或内容可通过有条件的访问(CA)或复制保护(CP)加扰系统来保护。在这方面,加扰密钥可由CA或CP系统控制和加密,并作为重放或接收过程中的一部分,这些密钥可在例如机顶盒(STB)中被解密并被用来将内容解扰。本发明提供了一种方法和系统,以通过安全地处理一些输入密钥生成用户有条件访问和复制保护的密钥。
在使用加密或解密引擎如DES、3DES或AES的系统中,对密钥保护是保证安全的最重要的任务之一。对于许多应用来说,可从若干输入密钥中生成密钥。生成的密钥称为输出密钥。一般地,输出密钥可从用户密钥、用户密钥选择和密钥变量的任意组合中生成。用户密钥是分配给特定STB厂商的密钥。用户密钥选择是被分配用于使用不同运行方式的密钥。例如,特定的用户密钥选择可用于现场直播解码模式,而对于重放模式可采用另一用户密钥选择。密钥变量是用于区别不同的机顶盒(STB)的密钥。通常,密钥生成过程应满足不同的安全需求方式。
因此,本发明的某些实施例可体现为用于生成安全密钥的方法和系统。根据本发明的实施例,该方法包括接收至少一个第一输入密钥、一个第二输入密钥和一个第三输入密钥,并根据至少所述第一输入密钥、第二输入密钥和第三输入密钥生成一个第一输出密钥。所生成的第一输出密钥应保证它是唯一的,并与第一输入密钥不相同。所述第一输入密钥可为用户密钥,第二输入密钥可为用户密钥选择,第三输入密钥可为密钥变量。
而且,还可确定所述第一输出密钥是否为唯一密钥和/或与第一输入密钥不相同。如果确定第一输出密钥不是唯一密钥和/或与第一输入密钥相同,那么根据修正的第一输入密钥、修正的第二输入密钥和/或修正的第三输入密钥,生成一个第二输出密钥。在任一情形下,可确定第二输出密钥是否为唯一密钥和/或与修正的第一输入密钥、第二输入密钥和/或第三输入密钥不相同。所述第一输出密钥和第二输出密钥可能不是弱密钥或半弱密钥。
所述第一输入密钥、第二输入密钥和第三输入密钥可通过一个映射函数而被映射,以生成映射的输出密钥数据。根据第一输入密钥也可生成中间密钥。可对生成的中间密钥和生成的映射输出密钥数据进行加扰,以产生加扰输出。所生成的映射输出密钥数据中的至少一部分可被屏蔽,并与所述加扰输出进行异或,从而生成第一输出密钥。生成的第一输出密钥随后被传送到加密引擎,使加密引擎可利用生成的第一输出密钥对信息加密。
图1是本发明一个实施例中,可使用安全密钥生成器从多个输入密钥中生成输出密钥的系统100的方框图。参照图1,图中显示了一个安全密钥生成功能块110;一个第一输入密钥,它是用户密钥cus_key 120;一个第二输入密钥,它是用户密钥选择cus_key_sel 130;一个第三输入密钥,它是密钥变量key_var140;以及一个输出密钥out_key 150。其中,用户密钥cus_key 120可以是一个K位的用户密钥;用户密钥选择cus_dey_sel 130可以是一个L位的用户选择向量;输入密钥变量key_var 140可以是一个M位的密钥变量向量;输出密钥out_dey 140可以是一个N位的处理密钥。在操作中,安全密钥生成功能块110接收输入密钥cus_key 120、cus_key_sel 130、key_var 140,并相应地生成输出密钥out_key 150。
图2是本发明一个实施例中,可从图1所示的多个输入密钥生成一个输出密钥的安全密钥生成功能块的方框图200。参照图2,该安全密钥生成功能块中包括一个安全密钥生成器260、一个映射器270、一个加扰器280、一个屏蔽功能块或屏蔽器290、以及一个XOR运算器295。输入密钥cus_key220可作为安全密钥生成器260和映射器270的输入,输入密钥cus_key_sel230和key_var240可作为映射器270的输入。安全密钥生成器260的输出297与加扰器280相连。映射器270的输出272与屏蔽功能块290的输入以及加扰器280的输入相连。加扰器280的输出282和屏蔽功能块290的输出292与XOR运算器295相连。XOR运算器295的输出即为N位的输出密钥,out_key250。在这种结构中,每个K位的用户密钥220、L位的用户密钥选择230和M位的密钥变量240都可由映射器270来映射。
映射器270包括适当的映射电路、逻辑和/或代码,它们适于处理例如用户密钥220、用户密钥选择向量230和密钥变量向量,从而为加扰器280和屏蔽功能块290生成输入数据。因此,数据272可表示为:data=MappingLogic(Cus_key,Cus_key_sel,key_var)。
本发明中,映射器270可设计成具有以下特性。映射器270可作为扩散过程操作,用以消除用户密钥220、用户密钥选择向量230和密钥变量向量240中的统计分布。映射器270可适于生成相对易于计算的固定长度的输出272。映射器270可实现难以逆转换的单向功能。在这方面,假设映射器270生成了一个特定输出272,那么根据该输出将很难确定其输入。对于至少一些用户密钥,映射器270还可以以无碰撞的方式来运行。因此,由映射器270接收的输入中,不会有两个被映射成相同的输出,换句话说,对于用户密钥220、用户密钥选择向量230和它们的密钥变量向量240,映射器是无碰撞的,两个不同的输入不会产生或被映射成相同的输出。
密钥生成器260可包括适于根据接收的用户密钥220生成密钥的逻辑、电路和/或代码。通过设计安全密钥生成器260,可使得输入cus_key220和输出gen_key297之间存在一一对应的关系。
屏蔽功能块或屏蔽器290包括适当的逻辑、电路和/或代码,从而适于提高加扰器280的安全性。屏蔽功能块或屏蔽器290可结合映射器270和安全密钥生成器260一起设计,以保证可以维持某特定的条件。例如,输出out_key250可能与相应的用户密钥cus_key220不相同。本发明中,屏蔽功能块或屏蔽器290可使得输出密钥out_key250决不是弱密钥或半弱密钥。例如,DES有四个弱自对偶密钥k,其中Ek(Ek(m))=m,以及k1和k2成对出现的十二个半弱密钥,使得Ek1(Ek2(m))=m。因此,如果DES引擎使用了输出密钥250的话,那么输出密钥out_key250决不是这些弱密钥和半弱密钥中的一个。以下表格示出了示例性的弱密钥和半弱密钥。
Figure C20041008189600151
Figure C20041008189600161
图3是本发明一个实施例中,可用于实现图2所示安全密钥生成功能,并用于检验所生成密钥的有效性的流程图300。可定义一个配置,其输入包括cus_key220的Q个不同值、针对每个cus_key220的cus_key_sel230的R个不同值、以及key_var240的S个不同值。这些配置值可使用于图2所示的密钥生成功能块中。为了保证不违反任何条件或要求,常用的方法是在cus_key220的Q个不同值、cus_key_sel230的R个不同值和key_var240的S个不同值的所有可能输入组合中进行循环。如果违反了某一条件,则改变cus_key220的Q个不同值、eus_key_sel230的R个不同值和key_var240的S个不同值中的至少一个配置,然后在对这些值进行测试,以确定是否违反了条件。复位计数器I、J、K,以检查新的配置中的可能的输入组合未产生违反的条件。
参照图2和图3,该流程开始于步骤302。在步骤302中,将表示当前用户密钥的计数器I,I=1,...,Q,表示当前用户密钥选择向量的计数器J,J=1,...,R和表示密钥变量向量的计数器K,K=1,...,S,初始化为零(0)。参照图3和图2,在步骤306中,为第j个用户密钥cus_key分配一个值A,为第i个用户密钥选择cus_key_sel分配一个B,为第K个密钥变量key_varition分配一个C。在步骤308中,映射器270对分配的值A、B、C进行处理,以生成输出数据272。在步骤310中,安全密钥生成器310对分配的值A进行处理,生成输出key_gen297。映射器270的输出数据272被传递到屏蔽器290和加扰器280。屏蔽器290在对数据272进行处理之后生成输出292。
安全密钥生成器260的输出key_gen297还被传递到加扰器280。因此,在步骤312中,加扰器280对输出数据272和由安全密钥生成器260生成的key_gen297进行处理,产生输出282。加扰器280的输出282和屏蔽器290的输出292在步骤312中还进行XOR处理,以产生结果输出out_key250。一旦生成了输出密钥out_key250,可利用步骤314到步骤334,确定输出密钥out_key250是否有效或已违反了至少一预先规定的条件。根据输出密钥的唯一性,所述映射器、安全密钥生成器、屏蔽器和/或密钥表可自适应地进行调整。
因此,在步骤314中,可确定输出密钥out_key250是否为唯一的。如果确定了输出密钥out_key250不是唯一的,那么在步骤334中,会修正映射器270、安全密钥生成器260、屏蔽器290和/或输入A、B、C中的至少一个。然后,本流程控制转到开始步骤302,以根据步骤334得到的修正信息生成密钥。在步骤314中,如果确定了输出密钥out_key250是唯一的,那么在步骤316中,会确定输出密钥250是否与用户密钥cus_key或A相同。如果确定了输出密钥out_dey250与用户密钥cust_key220相同,那么会在步骤334中,修正映射器270、安全密钥生成器260、屏蔽器290和/或输入A、B、C中的至少一个。如果确定了输出密钥out_key250与用户密钥cust_key220不相同,那么在步骤318中,会确定K值是否与S值相同。因为K值最初被初始化为零(0),所以在初始执行的步骤302到步骤318中,K值为零(0)。在序列K=1,...,S中,S表示密钥变量向量的终值。如果确定了K值与S值相同,那么在步骤330中,将K值初始化为零(0)。如果确定了K值与S值不相同,那么在步骤324中,K值加1,然后本流程控制转回到步骤306。
当K值在步骤330中被初始化为零(0)后,在步骤320中,可确定J值是否与R值相同。因为J值最初被初始化为零(0),所以在初始执行的步骤302到步骤318中,J值为零(0)。在序列J=1,...,R中,R表示用户密钥选择向量的终值。如果确定了J值与R值相同,那么在步骤332中,会将J值初始化为零(0)。如果确定了J值与R值不相同,那么在步骤326,J值加1,然后控制转回到步骤306。
当J值在步骤332中被初始化为零(0)后,在步骤322中,可确定I值是否与Q值相同。因为I值最初被初始化为零(0),所以在初始执行的步骤302到步骤318中,I值为零(0)。在序列J=1,...,Q中,Q表示用户密钥的终值。如果确定了I值与Q值相同,则本流程在步骤336结束。如果确定了I值与Q值不相同,那么在步骤328中,I值加1,然后控制转回到步骤306。
图4是本发明一个实施例中,可用于从图2所示的多个输入密钥生成一个输出密钥的安全密钥生成系统的方框图400。参照图4,该密钥生成功能块包括安全密钥生成器460、映射器470、加扰器480、屏蔽功能块或屏蔽器490、以及XOR运算器495。该安全密钥生成系统400还包括处理器402、存储器404和加密引擎406。
输入cus_key420可作为安全密钥生成器460和映射器470的输入,输入密钥cus_key_se1430和key_var440可作为映射器470的输入。安全密钥生成器460的输出连接到加扰器480。映射器470的输出与屏蔽功能块490的输入以及加扰器480的输入相连。加扰器480的输出和屏蔽功能块490的输出与XOR运算器495相连。处理器402可以是例如微处理器、微控制器或其它类型的加密处理器。存储器404是随机访问存储器(RAM),例如DRAM或SRAM。加密引擎406可以是DES、3DES、AES或其它加密引擎。
参照图4,用于生成安全密钥的系统400可包括一个安全密钥生成器410,它接收至少一个第一输入密钥420、一个第二输入密钥430和一个第三输入密钥440。因此,安全密钥生成器410可根据至少第一输入密钥420、第二输入密钥430和第三输入密钥440,生成一个第一输出密钥450。所生成的第一输出密钥450应是唯一密钥,并至少与第一输入密钥420不相同。第一输入密钥420可为用户密钥,第二输入密钥430可为用户密钥选择,第三输入密钥440可为密钥变量。安全密钥生成器410可确定第一输出密钥450是否为唯一密钥,并与至少第一输入密钥420不相同。如果第一输出密钥450不是唯一密钥和/或与至少第一输入密钥420相同,安全密钥生成器410会根据第一输入密钥420、第二输入密钥430和/或第三输入密钥440的修正值,生成第二输出密钥。安全密钥生成器410还可确定第二输出密钥是否为唯一密钥和/或与至少修正的第一输入密钥、第二输入密钥和/或第三输入密钥不相同。第一输出密钥450和第二输出密钥不是弱密钥和/或半弱密钥。
所述系统400中的映射器470可映射至少所述第一输入密钥420、第二输入密钥430和第三输入密钥440,以生成映射的输出密钥数据472。安全密钥生成器460根据第一输入密钥420生成中间密钥497。加扰器480对中间密钥497和生成的映射输出密钥数据472进行加扰,产生加扰输出482。屏蔽器490可屏蔽所生成的映射输出密钥数据472中的至少一部分,异或运算器495可对生成的映射输出密钥数据492和加扰输出482中被屏蔽的部分进行异或处理,以生成第一输出密钥450。安全密钥生成器410将生成的第一输出密钥450传送到加密引擎406,加密引擎406利用生成的第一输出密钥450对信息加密。
本实施例中,虽然处理器402、存储器404和/或加密引擎406与安全密钥生成器410是分离的,但是本发明并不限于此。因此,处理器402、存储器404和/或加密引擎406的任何结合可被集成入安全密钥生成器410,或成为它的一部分。根据本发明的实施例,利用处理器402确定生成的密钥是否有效,如果有效,则保留生成的密钥。否则放弃生成的密钥。关于有效密钥或无效密钥的表格被存储在存储器404中。因此,一旦密钥生成,则可将它与存储在存储器404中的有效或无效密钥进行比较。存储器404还包含供处理器402和/或加密引擎406使用的代码。
因此,本发明可在硬件、软件或软硬件结合中实现。本发明能以集中方式在一个计算机系统中实现,或以分布方式即以不同的元件分布在几个互连的计算机系统中的方式来实现。可以采用适于实施这里所描述的方法的各种计算机系统或其它设备。带有计算机程序的通用计算机系统是硬件和软件的典型组合,当加载和执行程序后,相应的程序可以控制计算机系统实现这里所描述的方法。
本发明还可嵌入计算机程序产品中,它包括能实现这里描述的方法的所有特征,当程序装载入计算机系统后,能实现这些方法。本文中的计算机程序可用一套指令集中的任何表达式、任何语音、代码或符号,使系统有信息处理能力,可直接完成特定功能,或者在以下步骤之一或二者完成之后来完成:1)转化为另一种语音、代码或符号;2)以不同的材料形式复制。
虽然已参照某些特定实施例对本发明进行了描述,但是本领域的技术人员会明白,在不偏离本发明的范围的情况下,可以进行各种变化和等同替代。此外,在不偏离本发明的范围的情况下,为使特定条件和材料适合于本发明的示教,可以作出许多修改。因此,本发明并不是局限于所公开的特定的实施例,而是属于权利要求范围的所有实施例。

Claims (4)

1.一种用于产生安全密钥的方法,其特征在于,包括:
接收一个第一输入密钥、一个第二输入密钥和一个第三输入密钥,其中所述第一输入密钥是用户密钥,所述第二输入密钥是用户密钥选择,所述第三输入密钥是密钥变量;
根据所述第一输入密钥、所述第二输入密钥和所述第三输入密钥,生成一个第一输出密钥,其中所述第一输出密钥是唯一的,并且与所述第一输入密钥不相同,该第一输出密钥的生成过程包括:
将所述第一输入密钥输入密钥生成器和映射器,将所述第二输入密钥和第三输入密钥输入映射器;
对所述第一输入密钥、第二输入密钥和第三输入密钥进行映射,生成映射输出密钥数据;
通过所述密钥生成器使用第一输入密钥生成中间密钥,并将生成的中间密钥发往加扰器;
对中间密钥和映射输出密钥数据进行加扰,生成加扰输出;
通过屏蔽器对映射输出密钥数据的至少一部分进行屏蔽;以及
通过异或运算器对映射输出密钥数据中被屏蔽的部分和加扰输出进行异或运算,生成所述第一输出密钥。
2.根据权利要求1所述的方法,其特征在于,还包括:
如果所述第一输出密钥并非唯一或者该第一输出密钥与所述第一输入密钥相同,则根据所述第一输入密钥、所述第二输入密钥和所述第三输入密钥三者之中至少一个的修正值,生成第二输出密钥。
3、根据权利要求2所述的方法,其特征在于,所述第一输出密钥和所述第二输出密钥不是弱密钥或半弱密钥。
4、一种安全密钥生成器,其特征在于,包括:
密钥生成器,用于接收一个第一输入密钥,并基于该第一输入密钥生成中间密钥,其中,所述第一输入密钥是用户密钥;
映射器,用于接收第一输入密钥、一个第二输入密钥和一个第三输入密钥,并对所述第一输入密钥、第二输入密钥和第三输入密钥进行映射,生成映射输出密钥数据,其中,所述第二输入密钥是用户密钥选择,所述第三输入密钥是密钥变量;
加扰器,与密钥生成器和映射器相连,用于对中间密钥和映射输出密钥数据进行加扰,生成加扰输出;
屏蔽器,用于对映射输出密钥数据的至少一部分进行屏蔽;
异或运算器,与加扰器和屏蔽器相连,用于对映射输出密钥数据中被屏蔽的部分和加扰输出进行异或运算,生成一个第一输出密钥;
其中,所述第一输出密钥是唯一的,并且与所述第一输入密钥不相同。
CN200410081896A 2004-12-29 2004-12-29 用于生成安全密钥的方法和系统 Expired - Fee Related CN100583746C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200410081896A CN100583746C (zh) 2004-12-29 2004-12-29 用于生成安全密钥的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200410081896A CN100583746C (zh) 2004-12-29 2004-12-29 用于生成安全密钥的方法和系统

Publications (2)

Publication Number Publication Date
CN1798023A CN1798023A (zh) 2006-07-05
CN100583746C true CN100583746C (zh) 2010-01-20

Family

ID=36818826

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200410081896A Expired - Fee Related CN100583746C (zh) 2004-12-29 2004-12-29 用于生成安全密钥的方法和系统

Country Status (1)

Country Link
CN (1) CN100583746C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101437089B (zh) 2007-11-16 2013-01-02 华为技术有限公司 实现主叫名显示业务的方法和主叫信息服务设备

Also Published As

Publication number Publication date
CN1798023A (zh) 2006-07-05

Similar Documents

Publication Publication Date Title
US6934389B2 (en) Method and apparatus for providing bus-encrypted copy protection key to an unsecured bus
US6477252B1 (en) Digital video content transmission ciphering and deciphering method and apparatus
US6731758B1 (en) Digital video content transmission ciphering and deciphering method and apparatus
JP4878602B2 (ja) デジタルオーディオ/ビデオデータの処理ユニット及び前記データへのアクセスの制御方法
US10057641B2 (en) Method to upgrade content encryption
CA2602226C (en) System and method for a variable key ladder
US20080101603A1 (en) System and method for copy protection for digital signals
US20110103582A1 (en) System for securing access to data streams
US7502475B2 (en) Method and system for secure key generation
CN100583746C (zh) 用于生成安全密钥的方法和系统
KR100933363B1 (ko) 비디오 신호의 스크램블링 및 언스크램블링 방법, 그 방법을 구현하기 위한 장치, 인코더, 디코더, 방송 서버 및 데이터 기록매체
CN105578208A (zh) 一种iptv视频加密传输系统
US20090060181A1 (en) Local Content Security System
CN106559682B (zh) 一种数字电视指纹水印保护的方法及装置
Aly et al. A light-weight encrypting for real time video transmission
US7277544B1 (en) Local content security system
US20130145147A1 (en) Content Protection Method
EP1659728A1 (en) Method and system for secure key generation
US20050021951A1 (en) System and method for copy protection for digital signals
Yokoyama et al. FPGA-based content protection system for embedded consumer electronics
Yang et al. Controlled Access System for HDTV
WO2006040708A2 (en) Method and device for encrypting a data stream
KR20030063580A (ko) 피브이알의 암호화키 관리 방법

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180511

Address after: Singapore Singapore

Patentee after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: california

Patentee before: BROADCOM Corp.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190830

Address after: Singapore Singapore

Patentee after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: Singapore Singapore

Patentee before: Avago Technologies General IP (Singapore) Pte. Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100120