用主处理器和协处理器解密数据的流程、设备和计算机程序的制作方法

文档序号:6560581阅读:275来源:国知局
专利名称:用主处理器和协处理器解密数据的流程、设备和计算机程序的制作方法
技术领域
本发明涉及用主处理器和协处理器对加密数据的解密。
背景技术
由于解密操作需要消耗计算资源,主处理器通常将整个的加密数据组传送到专用的处理器,也叫做协处理器,来进行解密操作。通常主处理器也传送所需要的密钥。
这种解密被广泛地用于电视节目的接收中,其中,电视节目是被加密了的,密钥被提供给用户以允许他们进行解密。
虽然主处理器和协处理器都被设计来保护存储在它们中的密钥,以防止任何盗窃的企图,但是这些盗窃方式或者是采取诸如分解破坏的方法窃取金属盒中的协处理硬件,或插入传感器的物理方法,或者采用专用软件以传输协处理器的密钥的逻辑方法,主处理器与协处理器之间的连接是可以被探测到的。
最终,整组加密数据和整组解密数据都在主处理器与协处理器之间的线路上传输。
因此,通过探测该线路就可以直接得到整组解密数据。而且,通过分析加密数据和解密数据就可以得到所使用的密钥。
一些已知的系统,例如专利文献US 2004/186979和EP 1115094中描述的那些系统,用几个冗余处理器来增加解密的安全性。但是这样做不能解决上述的问题。
因此,需要用主处理器和协处理器来提高解密安全性。

发明内容
为达到这个目的,本发明涉及权利要求1所述的解密数据的一种方法,以及一种权利要求10和11所述的相应的装置和程序。
由于在加密数据组解密之前对它分段,和用主处理器对一些加密数据分段进行解密,既没有整组加密数据也没有整组解密数据在主处理器与协处理器之间的线路上传输。这就会带来更高的安全性。


通过以下描述、权利要求和附图,本发明的其他特征和优点,会变得更加明显,其中-图1是实现本发明方法的解密单元的框图;-图2A是按本发明方法的流程图;-图2B表示图2A的方法中的数据。
具体实施例方式
图1所显示的例子中,解密单元是接收数字电视信号的机顶盒中的一个部件,数字电视信号中的某些信号是加密的。
解密单元2具有数据输入端口4,加密数据组通过它提供给主处理器6。该主处理器6经双向总线8连接到协处理器10,经另一个双向总线12连接到存储器14,例如RAM存储器。RAM是英文随机存取存储器的简写。
所述的实例中,主处理器6是机顶盒的中心处理器,协处理器10是专门用于解密的具有快速计算特征的协处理器。
主处理器6与RAM存储器14之间的线路12是受保护的线路,例如,将RAM构建在与主处理器6一样的芯片上。
现在参见图2A和2B来描述该单元的作用。
解密方法开始于主处理器6通过输入端口4在步骤20接收一组加密数据。
例子中,一组加密数据是在图2B中用“D”指示的数据包。
数据包是具有包括对应几个数据类型的几个数据场的确定的模式的连续的数据群。例如,数据包包括原始数据的数据场,也包括用于业务数据的数据场,例如报头HD,报尾FT,纠错码CRC等。
步骤20之后是步骤22,用主处理器6将解密密钥传送到协处理器10。该传送是经未显示的保密线路,按照常规方式进行的。
该方法还包括步骤24,用主处理器6将加密数据组D分成数据分段。这些加密数据分段在图2A中用S*1到S*5表示。
步骤24最好包括对将要分段的加密数据组的模式进行分析,而不解密数据。例如,按这种方式确定数据分段,使某些服务数据场,例如,CRC数据场分布在几个数据分段上。
最好是某些数据分段,例如S*2和S*4,的长度小于S*1,S*3和S*5的长度。
在步骤26,数据组的第一个数据分段用主处理器6经双向总线8提供给协处理器10。
将数据分段提供给协处理器的步骤26最好包括选择所述的数据分段,以按确定的标准形成第一部分数据分段。
例如,将传送到协处理器10的数据分段,作为其长度的函数来选择,选择比较大的数据分段;根据它们的位置来选择,选择非连续的数据分段;根据它们的内容,不选择包含关键数据场的数据分段。其他的标准及其组合可以用于选择要提供给协处理器10的包含在第一部分中的那些数据分段。
所述的实施例中,选择比较大的和不连续的数据分段,例如,S*1,S*3和S*5,形成其第一部分。
然后,该方法包括步骤28,用协处理器10解密数据分段的所述的第一部分,因此,实现了数据分段S*1,S*3和S*5的硬件解密,输出解密数据分段S1,S3和S5。
最好用协处理器10将50%以上的加密数据进行解密。
方法还包括步骤30,在步骤30中实现用主处理器6将数据分段的第二部分解密。例子中,第二部分包括在第一部分中没有选择的各个数据分段,和用主处理器解密的数据分段是长度最小的数据分段,因此,解密不需要太多的计算时间。更准确地说,在步骤30中,主处理器采用合适的软件对数据分段S*2和S*4进行解密,以输出数据分段S2和S4。该解密方法叫做软件解密。
所述的实施例中,方法还包括用协处理器10将解密的数据分段S1,S3和S5传送到主处理器6,然后,将它们和已经解密的数据分段S2和S4一起存储在RAM14中,在步骤32中,输出包含已解密的第一和第二部分的组合的解密数据。
因此,本发明方法避免在主处理器6与协处理器10之间传送整组的加密数据或整组的解密数据。因此,即使探测总线8,也不可能恢复整组数据或恢复所用的密钥。
当然,本发明可能会有其他的实施例。
例如,可以随机地实现由主处理器或协处理器对加密数据组的分段和/或对将要进行解密的数据分段的选择。
另一个实施例中,作为主处理器和/或协处理器可用性的函数,对用协处理器来解密的数据分段进行选择。
另一个实施例中,存储器是直接随机存取存储器,也叫做DRAM,在输出步骤中,协处理器和主处理器都可以将已经解密的数据直接写入其中。
本发明的方法和装置也可以用于任何类型的数据,例如,IP数据包,视频或音频数据流。
一个实施例中,只有一组数据中的某些数据是加密的。在那种情况下,只对加密数据进行分段和选择,使得一些解密操作在主处理器中进行,一些解密操作在协处理器中进行。
另一个实施例中,主处理器连接到几个协处理器,它们中的每一个接收某些数据分段用于解密,主处理器对那些不传送到任何一个协处理器的数据分段进行解密。
本发明也可以用包括主处理器的解密装置实施,例如,可编程的元件或专用芯片。主处理器包括-具有至少一个协处理器的接口;-将一组加密数据分成多段的分段装置;-将来自所述加密数据组的数据分段的第一部分提供给协处理器的供给装置;-控制协处理器对数据分段的所述的第一部分进行解密的控制装置;和
-对来自所述数据组的数据分段的第二部分进行解密的装置。
本发明方法也可以用解密装置的主处理器执行的计算机程序来实施,当用所述的主处理器执行时,有指令的计算机程序进行以下流程-将一组加密数据分成多个数据分段;-将来自所述数据组的数据分段的第一部分提供给至少一个协处理器;-控制所述的协处理器,以对数据分段的所述的第一部分进行解密;和-对所述数据组的多个数据分段的第二部分进行解密。
可以对这样的装置或主处理器程序进行修改以实现上述的任何实施例,也可以适用于在任何类型的电子产品,例如,数字电视接收机,计算机,膝上型计算机,和任何其它装置及其它们的内部元件。
权利要求
1,用主处理器(6)和至少一个协处理器(10)解密数据的方法,包括以下步骤-供给步骤(20),将一组加密的连贯的数据(D)提供给主处理器(6);-分段步骤(24),用主处理器(6)将所述的加密数据组分成数据分段;-提供数据步骤(26),将来自所述加密数据组的数据分段的第一部分提供给协处理器(10);-解密步骤(28),用协处理器(10)解密所述数据分段的所述第一部分;-解密步骤(30),用主处理器(6)解密所述加密数据组的数据分段的第二部分;和-输出步骤(32),输出包括已经解密的第一和第二部分的组合的解密数据。
2,按照权利要求1的方法,还包括以下步骤传送步骤,将用协处理器(10)解密的数据分段的第一部分传送到主处理器(6),其中,输出步骤包括存储子步骤(32),即在所述主处理器(6)的控制下存储已经解密的数据分段的第一和第二部分。
3,按照权利要求1的方法,其中所述的输出步骤包括在协处理器(10)的控制下存储已经解密的数据分段的所述第一部分,和在所述主处理器(6)的控制下存储已经解密的数据分段的所述第二部分。
4,按照权利要求1到3中的任一项的方法,其中所述的加密数据组包括在加密数据中识别几种数据类型的模式。
5,按照权利要求4的方法,其中所述的将加密数据组进行分段的步骤(24)包括分析所述模式以形成所述的数据分段。
6,按照权利要求1到5中的任一项的方法,其中所述为协处理器(10)提供数据分段的第一部分的供给步骤(26),包括按照所确定的标准,用包括选择的所述数据分段以形成所述第一部分。
7,按照权利要求6的方法,其中所述的数据分段是作为其长度的函数来选择的,选择比较大的数据分段形成所述的第一部分。
8,按照权利要求6的方法,其中所述的数据分段是作为其位置的函数来选择的,选择非连续的数据分段以形成所述的第一部分。
9,按照权利要求4和6的方法,其中所述的数据分段是作为其中的数据类型的函数来选择的,选择不包括关键数据类型的数据分段以形成所述的第一部分。
10,包含主处理器(6)的解密装置,其中主处理器(6)包括-至少一个协处理器(10)的接口;-用于将加密连续数据分成数据分段的分段装置;-将来自所述数据组的数据分段提供给协处理器(10)的装置;-控制协处理器(10)对该数据分段的所述第一部分进行解密的控制装置;以及-用于对来自所述数据组的数据分段的第二部分进行解密的装置。
11,由解密设备的主处理器执行的计算机程序,当用所述的主处理器执行时,该具有指令的计算机程序进行以下流程-分段步骤(24),将一组加密的连续数据组分成数据分段;-供给步骤(26),将来自所述数据组的数据分段的第一部分提供给至少一个协处理器;-控制协处理器解密的步骤(28),控制协处理器解密该数据分段的第一部分;和-解密步骤(30),解密来自所述数据组的数据分段的第二部分。
全文摘要
用主处理器(6)和至少一个协处理器(10)解密数据的方法包括以下步骤将一组加密的连贯的数据(D)提供给主处理器(6);由主处理器(6)将所述的加密数据组分成数据分段;将来自所述加密数据组的数据分段的第一部分供给协处理器(10);用协处理器(10)解密所述数据分段的所述第一部分;用主处理器(6)解密所述加密数据组的数据分段的第二部分;以及输出包括已经解密的第一和第二部分的组合的解密数据。
文档编号G06F21/00GK1909446SQ200610108780
公开日2007年2月7日 申请日期2006年8月4日 优先权日2005年8月4日
发明者西里尔·洛里, 斯特凡娜·德马尔希 申请人:迪康公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1