在安全单元之间安全下载数据的方法

文档序号:7590382阅读:248来源:国知局
专利名称:在安全单元之间安全下载数据的方法
技术领域
本发明涉及定制一个组的数个第二安全单元,包括将应用密钥从第一安全单元安全下载到所述组中的所述第二安全单元的方法,其中所述笫一单元和所述第二单元都包括至少一个存储器。
尤其是,当在象客户诚信(fidelity)和金融(banking)那样的领域中定制第二安全单元时,在这个阶段应用本发明是有益的。
这样的定制方法是在所述第二单元投入使用之前实施的。例如,当将它们用在客户诚信的领域中时,可以在加油站终端上建立和使用第二单元,以便在所述终端之一与用户信用卡之间提供诚信点(fidelity point)的借方信用交易方面的安全服务。在金融领域中,在金融终端上建立第二单元,和第二单元提供在用户信用卡方面进行金钱交易的安全服务。
名为DAQ电子公司在已公布美国专利第5 517 667号中公开的现有技术声称,已经有了当将第三用户单元或“远程单元”安装在诸如便携式电话之类的远程位置上时,进行可以在第二安全单元或“主单元”与所述第三用户单元或“远程单元”之间建立的安全通信的密钥加密系统。这种安全系统是基于临时通信密钥的使用的。根据这种系统,在用户单元已经被安装在它的远程位置上之后,通过第二单元生成通信密钥。因此,为了建立从第二单元到用户单元的每个通信,都要发送加密的通信密钥。通信密钥能够使安全消息在第二单元与用户单元之间交换,仿佛只有这两个单元知道它似的。更明确地说,密钥是基于对每个用户单元是唯一的一对秘密成员的,和第二单元包括与所有用户单元对应的所有对秘密成员。当将成对的两个秘密成员写入易失性的用户单元存储器中时,这种系统甚至更加安全。因此,当完成通信时,和当不再给用户单元供电时,就擦除这一对秘密成员,不存在两个秘密成员都被非法发现的风险。为了建立另一个通信,系统生成另一个通信密钥。
上述文件描述了当使用第二单元和用户单元时投入运行的系统,其目的是利用专用于通信的相同通信密钥在两个单元之间建立安全通信。它一点也没有对在一个组的数个第二安全单元中进行安全密钥下载的定制系统加以描述。
因此,本发明的目的要解决的技术问题是提供定制一个组的数个第二安全单元,包括将应用密钥从第一安全单元安全下载到所述组中的所述第二安全单元的方法,其中所述第一单元和所述第二单元都包括至少一个存储器,以便一方面防止所述应用密钥被非法发现,另一方面加速所述第二安全单元的定制阶段。
解决提出的技术问题的方案的特征在于,所述定制方法包括下列步骤对于所述组中的每个第二单元,在每一次下载时,根据专用于第二单元的一段信息、传输密钥(transportkey)和多样化算法(diversification algorithm),在第一单元中计算操作密钥(operation key),所述传输密钥驻留在第一安全单元的存储器中,所述存储器是非易失性的;根据包括所述操作密钥和加密算法的信息,在第一单元中加密应用密钥,所述应用密钥驻留在所述存储器中;将包括加密的应用密钥的数据发送到第二单元;在每一次下载时,根据专用于第二单元的一段信息、传输密钥和多样化算法,在第二单元中计算操作密钥,其中相同传输密钥驻留在所述组中每个第二安全单元的非易失性存储器中,所述操作密钥并不存储在所述第二单元的存储器中;和根据包括所述操作密钥和与加密算法相反的解密算法的信息,在第二单元中解密加密的应用密钥。
因此,正如下面所详细描述的,通过计算所述操作密钥和只在加密或解密应用密钥的时段内才保存它,本发明的下载方法能够提高应用密钥的下载安全性。因此,诈骗者既不能访问所述操作密钥,从而也不能访问应用密钥。由于与存储所述密钥所需的访问时间相比,操作密钥的计算时间可以忽略不计,因此,防止了可能的窜改,和不再实施定制阶段的费时操作。
通过结合附图对本发明进行如下描述,可以更全面地理解本发明,但是这些附图不应该用来限制本发明。


图1是显示第一单元和属于相同组的数个第二单元的示意图;图2是显示图1所示的第一单元和第二单元的示意图;图3是显示在图2的第一单元和第二单元之间进行数据交换的示意图;图4是显示在图2的第一单元和第二单元之间进行第二数据交换的示意图;图5是显示在图2的第一单元和第二单元之间进行第一数据交换的示意图;和图6是显示在图2的第一单元和第二单元之间进行第一数据交换的示意图。
图1显示了第一安全单元AS和属于相同组S(未示出)的数个第二安全单元EI,每一个单元(AS、EI)包括至少一个非易失性存储器M。第一单元AE以及所述组S的第二单元EI含有驻留在存储器M中的相同传输密钥T和被称为多样性算法的相同算法ALG01。图2显示了单元AS以及来自组S的一个单元EI。组S的每个第二单元EI含有相同传输密钥T。因此,通过传输密钥T将一组第二单元EI与另一组区分开。例如,两组第二单元EI对应于两个不同的加油站提供商。
并且,第一单元AS含有应用密钥TA和加密算法ALG02。应该注意到,两种算法ALG01和ALG02可以使用相同基本算法。所述组S的每个单元EI包括专用信息和至少一用户应用(未示出),譬如,为诚信点借方信用交易提供安全服务的应用。
为了使用所述组S的安全单元EI,所述组S的每个第二单元EI必须在包括下述步骤的所谓定制阶段,首先从第一单元AS下载应用密钥TA。这个密钥通过标准通信网络传输。防止想侦察所述网络或所述单元的诈骗者访问在下述单元中的密钥。
在第一步骤,在每一次下载时,根据专用于第二单元EI的信息SN、传输密钥T和多样化算法ALG01,在操作密钥T1的第一单元AS中进行计算,所述传输密钥T驻留在第一安全单元AS的存储器M中,该存储器是非易失性的。最好,存储器M是可重写存储器。应该注意到,即使在正在使用第二单元EI的阶段,只要不被取代,传输密钥T总是有效的。
专用于第二单元EI的信息SN不驻留在第一单元中。因此,如图3所示,在第一单元AS中计算操作密钥T1之前,将专用于第二单元EI的信息SN发送到第一单元AS。第一单元AS最好包含数个应用密钥TA。所述密钥T1将用于下载包含在第一单元AS中的应用密钥TA之一,所选的应用密钥将被加密和发送到单元EI。一个应用密钥与一用户应用相联系。根据驻留在第二单元EI中的应用选择适当的密钥。
如图3所示,为了选择所述应用密钥TA之一,在第二步骤,在所述单元AS加密应用密钥TA之前,将与应用密钥TA相关的一段信息REF1发送到第一单元AS,并根据所述信息REF1选择要加密的应用密钥TA。例如,可以通过第二单元EI发送代表密钥号为3的标记,以指示已经选择了与所述单元EI中的应用相对应的第三密钥。正是后者将被下载到第二单元EI中。如果没有所述号码REF1所指的应用密钥TA,那么,第一单元AS就指示这个密钥不存在。
在第三步骤,如图3所示,根据包括所述操作密钥T1和加密算法ALG02的信息,在第一单元AS中加密应用密钥TA。操作密钥临时驻留在第一单元AS中的第二易失性存储器(未示出)中。
在所述密钥TA加密后,包括加密的应用密钥TA的数据“DATA”被送到第二单元TA。
为了防止第一单元AS可能再次被窜改,在已经加密了应用密钥TA之后,擦除临时保存在第一单元AS的第二易失性存储器中的操作密钥T1。
在第四步骤,根据包括所述操作密钥T1和与加密算法ALG02相反的解密算法ALG02P的信息,在第二单元EI中解密解密的应用密钥TA。在这一步骤中,为了找出所选的应用密钥TA,有必要使用与在第一安全单元AS中用于加密所述应用密钥TA的操作密钥T1相同的操作密钥T1。为此,在解密所述加密应用密钥TA之前,在每次下载时,根据专用于第二单元EI的信息SN、传输密钥T和多样化算法ALG01,在操作密钥T1的第二单元EI中进行计算,所述相同传输密钥T驻留在所述组S的每个第二安全单元EI的非易失性存储器M中,所述操作密钥T1并不存储在第二单元EI的存储器M内。最好,第二单元的存储器M是可重写的。操作密钥T1临时保存在第二单元EI中的第二易失性存储器(未示出)中。
应该注意,这种计算可以在加密应用密钥TA之前的任何时候做。计算第二安全单元EI中的操作密钥T1所需的数据项与用于计算第一单元AS中的操作密钥T1的数据项相同。因此,两个密钥T1是相同的,所选的应用密钥的确可以在第二单元EI中找到。没有必要在通信网络上发送操作密钥T1。
在第五步骤,在已经解密应用密钥TA之后,最好正好在此解密之后,从第二单元EI中的所述第二易失性存储器中擦除临时保存的操作密钥T1。
一方面不在通信网络上发送任何操作密钥T1、另一方面不将任何操作密钥T1存储在第二模块EI中的非易失性存储器M中的事实,和最后,所述操作密钥只在解密应用密钥TA所需的时间内只驻留在第二单元中的事实,使窜改更难以实现,因为,如果诈骗者想要找出应用密钥TA,他或她应该首先找出使用中的操作密钥T1。最终,这有利于定制和建立第n个第二单元EI,因为对于定制第二单元来说,不再需要实现两次下载,第一次是下载操作密钥T1,第二次是下载应用密钥TA,而是只下载应用密钥TA就足够了。因此,相应地,省去了通常由与第一单元AS不同的实体实现的第一下载操作,一般来说,这是相对复杂的事情。
正如第一单元AS一样,单元EI最好包括数个应用密钥TA。因此,通过第二单元EI可以管理数个应用。并且,这提高了所述单元的安全性,因为,一方面,诈骗者更难以从其它应用密钥中揭密应用密钥,另一方面,更难以知道这个应用密钥专用于哪个应用。在与客户诚信的领域有关的前例中,当使用第二单元EI时,后者应该能够对例如不同的燃料类型,提供诸如诚信点的安全借方信用交易之类的各种服务。因此,对于管理代表不同应用的所述不同交易类型的安全性来说,重要的是在单元EI中含有不同的应用密钥TA。
因此,在第六步骤,在单元EI中解密所述加密的应用密钥TA之前,将与应用密钥TA相关的一段信息REF2发送到第二单元EI,如图的所示。信息REF2能够选择将源自第一单元AS的应用密钥的值指定给它的应用密钥TA,或者指示装载由所述第一单元AS提供的所述密钥TA的位置。因此,对于新的用户应用,可以修改已经驻留在所述第二单元EI中的密钥TA的值,或者将新的应用密钥TA下载到第二单元EI。
在由所述信息REF2指出的应用密钥TA不存在,或所述位置不存在或没有被设计成用于接受密钥的情况下,第二单元EI舍弃接收的密钥,并指示已经发生了错误。应该注意,分别发送到第一和第二安全单元的REF1和REF2信息可以是等效的。
以后,当使用时,驻留在第二单元EI中的应用密钥TA之一可以由所述单元用于根据诸如用户卡之类的外部实体标识它自身。但是,所述标识必须是唯一的。因此,密钥TA不应该有任何复制品。于是,当想要下载这个密钥时,在加密所述密钥之前,在单元AS内使所选应用密钥TA多样化。多样化是作为专用于每个第二单元的信息的函数进行的。
最终,在最后的步骤,在已经解密所述加密的应用密钥TA之后,将密钥TA存储在第二单元EI中。将应用密钥TA存储在所述第二单元EI中是根据与应用密钥TA相关的信息REF2进行的。密钥被存储在可重写的非易失性存储器M中。
现在可以使用第二单元EI了,可以将第二单元EI放置在诸如加油站终端那样的远程用户位置上。应该注意到,操作密钥T1没有从第一单元AS传输到第二单元EI,和被装载到安全模块的存储器M中。不进行这两个动作所需的操作,这缩短了定制所需的时间。因此,没有存储可直接供算法使用的秘密密钥,这防止了为揭密所述数据而对所述算法进行非法分析。结果,诈骗者为了找出使用的操作密钥T1,而去侦察通信网络或安全模块只能是徒劳的。
本发明的目的的另一个优点在于专用于每个第二安全单元EI的信息SN是唯一的事实。因此,已经多样化的、即已经根据所述信息计算的操作密钥T1对于每个安全单元EI来说是唯一的。于是,作为所述操作密钥T1函数的加密应用密钥TA只打算用于单个第二目标单元EI,这改善了本发明的安全特性。如果第二单元EI不含有与用于计算第一单元AS中的操作密钥T1的信息相同的信息SN,和如果它因此接收了不打算用于它的应用密钥TA,则它就舍弃这个密钥,并指示已经发生了错误。
下述的其它安全特性均在本发明的范围之内。
本发明的目的提供了图4所述的附加步骤,据此,在第一单元AS内加密应用密钥TA之前,将从第二单元EI获得的随机数R发送到第一单元AS。一方面在第一单元AS中用于加密应用密钥TA和另一方面在第二单元EI内用于解密解密的应用密钥TA的信息包含从第二单元EI获得的随机数。用于加密和解密所述应用密钥TA的随机数的使用,避免了当例如将所述密钥数次装载到所述单元中时,让关于相同应用密钥TA的相同加密值打算用于第二单元EI。因此,打算用于第二单元EI的应用密钥TA的每个加密值是唯一的。于是,侦察通信网络和当传输数据时获取该数据DATA的诈骗者决不会获得相同加密值,和因此不能揭密与传输的应用密钥TA相关的任何秘密。
但是,在这样的传输期间,诈骗者可能已经实施了改变传输数据的非法操作。因此,核实包括加密应用密钥TA的数据DATA的真实性。为此目的,如图5所示,在发送所述数据之前,在第一单元AS中对所述数据DATA计算证书CAS,此后将所述证书发送到第二单元EI,并且在所述第二单元EI中解密加密的应用密钥TA之前,在所述第二单元内核实所述证书。为了实现核实,根据接收的数据在第二单元EI中计算证书CEI,并对两个证书CAS和CEI加以比较。如果在所述传输期间已经发生了伪造或错误,则证书CAS的核实是错误的,不进行对应用密钥TA的解密,和第二单元EI指示已经发生了错误。因此,在使用第二单元EI之前,即在现场使用之前,当数据DATA在通信网络上从第一单元AS传输到第二单元EI时,这个系统确保了数据DATA的真实性。并且,在核实无效的情况下,这也避免了不得不进行的不必要解密和由此带来的无谓时间浪费。
正如有必要保证传输数据的真实性一样,也应该确保存储到第二单元EI中的数据的真实性。因此,要核实应用密钥TA的真实性。为此目的,如图5所示,在加密应用密钥TA之前,在第一单元AS中对所述密钥的签名进行计算,随后将所述签名发送到第二单元EI,并且在所述单元中核实所述签名。在第二单元EI解密加密的密钥TA之后和存储所述单元中的所述密钥之前,进行所述应用密钥TA的签名核实。为了实现这种核实,在第二单元EI中利用解密的应用密钥TA计算签名SEI,并对两个签名SAS和SEI加以比较。IV两个签名匹配时,解密的应用密钥TA得到了验证,并存储解密的应用密钥TA。在应用密钥TA没有得到验证的情况下,不存储这个密钥,第二单元EI指示已经发生了错误。因此,上述系统可以核实在第一单元AS中已经恢复了正确选择的应用密钥TA,而不是一些其它密钥。应该注意,当存在所述签名SAS时,证书CAS也可以作为所述签名SAS的函数加以计算。这个签名是在上述第三步骤期间发送的数据DATA的一部分。
向安全单元发送诸如证书或签名之类的数据依赖于将执行时间累加到定制阶段的时间的操作。因此,为了缩短对不同单元的的访问操作次数,和由此缩短定制时间,通过单命令一次性发送安全单元所需的数据组。随机数R、与应用密钥TA相关的号码REF1和专用于第二单元EI的数SN通过第一单命令EXPORTKEY发送到第一单元AS。同样,加密的应用密钥TA、与应用密钥TA相关的号码REF2、签名SAS、以及证书CAS,当它们存在时,通过第二单命令IMPORTKEY发送到第二单元EI。
本发明尤其适用于第一安全单元AS是智能卡时的情况。智能卡包括电子单元嵌在其中的塑料卡体,电子单元包括集成电路芯片。这个芯片通常包括两个存储器M和第三易失性存储器(RAM),其中第一存储器M是可重写的(EEPROM),和第二存储器不是可重写的(ROM)。第一存储器M包含所有的应用密钥TA和传输密钥T。第三存储器存储操作密钥T1。后者只在加密或解密安全模块中的应用密钥期间才只驻留在所述存储器中。多样化和加密算法ALG01和ALG02可以驻留在第一或第二存储器M中。但是,应该注意到,这些算法必须驻留在智能卡中并非是先决条件,它们可以存储在所述智能卡之外的实体中,例如,存储在与所述智能卡相连接的终端的中央处理单元中。
通过智能卡,可以保证应用密钥TA受到较好保护。在智能卡中,与计算机终端相反,例如,密钥不为除发出所述密钥的实体之外的任何实体(终端、卡管理员、另一个智能卡等)所知。另外,例如,对智能卡进行窜改要比对终端的中央处理单元进行窜改更难。同理,第二安全单元也是智能卡。
应该注意到,当将应用密钥TA存储在非易失性存储器M中时,它可以用在使用第二单元EI的数种场合下,因为即使不再对后者加电,密钥也不会被擦除。
权利要求
1.一种定制一个组(S)的数个第二安全单元(EI),包括将应用密钥(TA)从中央处理单元的第一安全单元(AS)安全下载到所述组的第二安全单元(EI)的方法,其中所述第一单元和所述第二单元都包括至少一个存储器(M),其特征在于,所述定制方法包括下列步骤对于所述组(S)中的每个第二单元(EI),在每一次下载时,根据专用于第二单元(EI)的信息、传输密钥(T)和多样化算法(ALG01),在第一单元(AS)中计算操作密钥(T1),所述传输密钥(T)驻留在第一安全单元(AS)的存储器(M)中,所述存储器(M)是非易失性的;根据包括所述操作密钥(T1)和加密算法(ALG02)的信息,在第一单元(AS)中加密应用密钥(TA),所述应用密钥(TA)驻留在所述存储器(M)中;将包括加密应用密钥(TA)的数据(DATA)发送到第二单元(EI);在每一次下载时,根据专用于第二单元(EI)的信息、传输密钥(T)和多样化算法(ALG01),在第二单元(EI)中计算操作密钥(T1),其中相同传输密钥(T)驻留在所述组(S)中每个第二安全单元(EI)的非易失性存储器(M)中,所述操作密钥(T1)并不存储在所述第二单元(EI)的存储器(M)中;和根据包括所述操作密钥和(T1)和与加密算法(ALG02)相反的解密算法(ALG02P)的信息,在第二单元(EI)中解密加密的应用密钥(TA)。
2.根据权利要求1所述的方法,其特征在于,它还包括下列附加步骤在第一单元(AS)中计算应用密钥(T1)之前,将专用于第二单元(EI)的信息发送到第一单元(AS)。
3.根据权利要求1或2所述的方法,其特征在于,它还包括下列附加步骤在第一单元(AS)中加密应用密钥(TA)之前,将第二单元(EI)提供的随机数发送到第一单元(AS)。
4.根据前述权利要求任何一项所述的方法,其特征在于,它还包括下列附加步骤在所述第一单元(AS)内加密应用密钥(TA)之前,将与应用密钥(TA)相关的信息发送到第一单元(AS)。
5.根据权利要求4所述的方法,其特征在于,它还包括下列附加步骤根据所述信息选择要加密的应用密钥(TA)。
6.根据前述权利要求任何一项所述的方法,其特征在于,打算用于第二单元(EI)的应用密钥(TA)的所述加密是唯一的。
7.根据前述权利要求任何一项所述的方法,其特征在于,它还包括下列附加步骤核实包括加密应用密钥(TA)的数据(DATA)的真实性。
8.根据前述权利要求任何一项所述的方法,其特征在于,它还包括下列附加步骤在所述组(S)的所述第二单元(EI)内解密加密的应用密钥(TA)之前,将与应用密钥(TA)相关的信息发送到所述第二单元(EI)。
9.根据前述权利要求任何一项所述的方法,其特征在于,它还包括下列附加步骤在所述第二单元(EI)内解密加密的应用密钥(TA)之后,将所述应用密钥(TA)存储在所述第二单元(EI)内。
10.根据权利要求9所述的方法,其特征在于,将所述应用密钥(TA)存储在所述第二单元(EI)内是根据与应用密钥(TA)相关的信息进行的。
11.根据前述权利要求任何一项所述的方法,其特征在于,它还包括下列附加步骤核实应用密钥(TA)的真实性。
12.根据前述权利要求任何一项所述的方法,其特征在于,第一安全单元(AS)是智能卡。
13.根据前述权利要求任何一项所述的方法,其特征在于,存储器(M)是可重写存储器。
14.根据前述权利要求任何一项所述的方法,其特征在于,第二单元(EI)包含数个应用密钥(TA)。
15.根据前述权利要求任何一项所述的方法,其特征在于,第一单元(AS)包含数个应用密钥(TA)。
16.根据前述权利要求任何一项所述的方法,其特征在于,它还包括下列附加步骤在加密应用密钥(TA)之后,擦除临时保存在第一单元(AS)的第二易失性存储器内的操作密钥(T1)。
17.根据前述权利要求任何一项所述的方法,其特征在于,它还包括下列附加步骤在解密应用密钥(TA)之后,擦除临时保存在第二单元(EI)中的第二易失性存储器(M2)内的操作密钥(T1)。
18.根据前述权利要求2至4任何一项所述的方法,其特征在于,它还包括下列附加步骤通过第一单命令(EXPORTKEY),将随机信息、与应用密钥(TA)相关的信息(REF1)、和专用于第二单元(TA)的信息(SN)发送到第一单元(AS)。
19.根据前述权利要求1和2任何一项所述的方法,其特征在于,它还包括下列附加步骤通过第二单命令(IMPORTKEY),将加密的应用密钥(TA)和与应用密钥(TA)相关的信息(REF2)发送到第二单元(EI)。
全文摘要
本发明涉及定制安全单元,包括将应用密钥从第一安全单元安全下载到一个组的数个第二安全单元的方法,其中所述第一单元和所述第二单元都包括至少一个存储器。该发明的特征在于,所述方法包括下列步骤:在每一次下载时,根据对于所述组中的每个第二单元来说都是相同的第一传输密钥,在第一单元和第二单元中计算操作密钥。操作密钥用于在第一单元中加密应用密钥。然后,将密钥发送到第二单元,并在所述单元中解密和核实它。操作密钥不存储在安全单元的存储器内。本发明尤其适用于金融领域。
文档编号H04L9/08GK1339206SQ00803434
公开日2002年3月6日 申请日期2000年1月18日 优先权日1999年1月18日
发明者丹·巴特纳鲁, 拉斐尔·罗塞特 申请人:施蓝姆伯格系统公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1