在安全模块之间安全装载数据的方法

文档序号:7595336阅读:171来源:国知局
专利名称:在安全模块之间安全装载数据的方法
技术领域
本发明涉及将秘密数据从第一安全模块安全装载到至少一个第二安全模块的方法,其中所述第一模块含有至少一个秘密数据文件,所述第二模块包括第一非易失性存储器和第二易失性存储器。
本发明可以有利地应用于电话领域。
在电话领域中,存在着终端管理系统,所述终端管理系统包括管理服务器内的第一机载安全模块和通常安装在上述终端上的第二安全模块。终端就是所谓的公用付费电话。
第二安全模块保证了插入到公用付费电话的用户卡的有效性,尤其通过验证所述的卡。为此目的,第二安全模块在它的第一存储器中包括了使用户卡的所述有效性能够得到保证的秘密数据。公用付费电话管理系统,以及秘密数据是由电话公司来管理的。为了降低通过窃听服务器与公用付费电话之间的通信网络而进行伪造,从而使所述秘密数据失密所带来的风险,要让电话公司根据包含在第一安全模块中的文件中的秘密数据,定期修改公用付费电话内第二安全模块中的全部或部分秘密数据。
现有技术中的已知方法包括下列步骤-加密要传输到第二安全模块和驻留在管理服务器中的第一安全模块的秘密数据;-当没有正在进行之中的呼叫时,使公用付费电话与管理服务器相连接;-将秘密数据传输到公用付费电话内的第二安全模块。
当公用付费电话与管理服务器相连接时,任何用户都不能使用,因此,这种连接通常发生在晚上。数据交换是在所谓“脱机”的断开模式下进行的。
为了使秘密数据的传输多样化,根据第二安全模块中的计数器值使用伪随机数据块。当交换每个秘密数据时,计数器值就递增,第一安全模块必须知道所述计数器的值,并递增专用于第二模块的本机计数器的值。
尽管这种方法允许秘密数据装载在第一和第二安全模块之间,但是,它要求繁重的数据度管理,以保证不同计数器之间的适当同步。尤其是,必须保存用第二安全模块实现的所有交换的线索。此外,这种方法不能保证完全多样化的数据交换。
因此,本发明要解决的技术问题是,提供将秘密数据从第一安全模块安全装载到至少一个第二安全模块的方法,其中所述第一模块含有至少一个秘密数据文件,所述第二模块包括第一非易失性存储器和第二易失性存储器,在避免过分繁重的数据度管理的同时,它们将保证脱机模式下,第一和第二案件模块之间的完全多样化数据交换。
根据本发明,对所提出的技术问题的解决方案是,例如,包括下列步骤的装载方法-在第二模块中的第二存储器内生成至少一个随机数据项;-将包括所述随机数据项的信息记录在第二模块的第一存储器内;-将随机数据项发送到第一模块;-在第一模块内,根据随机数据项和加密算法,加密所述第一模块内的文件的秘密数据项;-将所述加密的秘密数据项发送到第二模块;-将包括存储在第二模块的第一存储器中的随机数据项的信息,从所述第一存储器传输到所述模块的第二存储器;-根据解密算法和随机数据项,解密所述加密的秘密数据项,并将所述解密的秘密数据项记录在第二模块内。
因此,正如下面所详细显示的,根据本发明的装载方法通过使传输的数据完全多样化,使得可以利用装载秘密数据用的随机数据项提高数据装载的安全性。因此,窥视通信网络并且收集传输数据的诈骗者决没有能力获取同一加密值,从而,也决没有能力揭开与所传输秘密数据有关的任何秘密。另外,将随机数据项记录在第二安全模块中的非易失性存储器内,使它可以用在“脱机”模式中,原因是当关闭所述第二安全模块时,所述随机数据项并没有丢失。
通过参照附图,对本发明通过非限制性实例的方式提供的优选实施例进行如下描述,本发明的其它特征和优点将更加清楚。


图1是一个第一安全模块和几个第二安全模块的示意图;图2是显示图1所示的第一模块和第二模块的示意图;图3是显示图2所示的第一模块和第二模块之间的数据交换的示意图;图4是显示图2所示的第一模块和第二模块之间的第二数据交换的示意图;和图5是显示图2所示的第一模块和第二模块之间的第三数据交换的示意图。
在图1中,显示了第一安全模块S和几个第二安全模块SAM,每个第一模块SAM包括第一非易失性存储器M1和称为工作存储器的第二易失性存储器M2。图2显示了第一模块S和第二模块SAM。第一模块S包括至少一个文件EF1,存储着秘密数据DATA和加密算法ALGO。秘密数据文件通常与给定的电话公司相联系。第二模块SAM包括解密算法ALGOP和秘密数据DATA。解密算法ALGOP是加密算法ALGO的逆运算。
为了改变第二模块SAM内的秘密数据项,秘密数据项必须从第一安全模块S内的文件EF1装入。装载操作应该以安全的方式进行。因此,秘密数据在加密之后传输。装载阶段包括如下所述的几个步骤。
在第一步骤中,在第二模块SAM的易失性存储器M2内生成至少一个随机数据项RAND。
在第二步骤中,如图3所示,将包括所述随机数据项RAND的信息INFO记录在第二模块SAM的非易失性存储器M1中。为此目的把所述非易失性存储器M1内的存储位置另外存起来,并将其设为它的默认初始值V。
在第一实施例中,包含所述随机数据项RAND的信息INFO包括与秘密数据项DATA相关的索引。这个索引可以是,例如,要修改的秘密数据块号,或/和应该将秘密数据项装入第二模块SAM的存储位置的索引。因此,当为了节省电能而关闭第二模块SAM时,随机数据项RAND及其相关信息不会丢失。
在第三步骤中,将随机数据项RAND发送到第一模块。应该注意到,第二步骤和第三步骤是可以交换的。
为了减少访问第二模块RAND的次数,生成和发送随机数据项RAND,以及将信息INFO记录到第二模块SAM中,通过第一命令ASKLOADING来实现。这个第一命令由管理服务器通过公用付费电话(未示出)发送到第二模块SAM。
在第四步骤中,在第一模块S中,加密要传输到第二模块SAM的、文件EF1中的秘密数据项DATA。这个加密包括利用加密算法ALGO和随机数据项RAND的加密步骤。利用随机数据项RAND避免了对秘密数据项DATA使用同一加密值。因此,由于一次传输与下一次传输之间是不同的,诈骗者难以找出在通信网络上传输的不同数据项之间的任何关系。加密还可以包括,一方面,根据随机数据项RAND标记秘密数据项DATA的步骤,另一方面,认证所传输数据的步骤。签名步骤使装载的秘密数据项DATA的真实性得到检验,和证书使所传输数据的完整性得到检验。
在第五步骤中,如图4所示,将所述加密的秘密数据项DATAC发送到第二模块SAM。
在第六步骤中,将包含存储在第二模块SAM的非易失性存储器M1中的随机数据项RAND的信息INFO从所述存储器M1传输到所述模块SAM的工作存储器M2。因此,从工作存储器M2中恢复用于加密秘密数据项DATA的随机数据项RAND,以及它的相关信息。
将随机数据项RAND和它的相关信息复制到第二模块SAM的两个不同存储器中可能会导致所述模块内的不一致性和安全问题。因此,在第二模块SAM中只保存一组信息INFO。为此目的,在将包括所述随机数据项RAND的信息INFO记录在第二模块SAM的第一存储器M1内之后(图3),删除存储在第二模块SAM的第二存储器M2中信息INFO。同样,在将包括所述随机数据项RAND的信息INFO记录从第二模块SAM的第一存储器M1传输到所述模块SAM的第二存储器M2之后(图4),删除存储在第一存储器M1中信息INFO。
最后,在最后一个步骤中,根据第二模块SAM的解密算法ALGOP和根据随机数据项RAND,解密所述加密的秘密数据项DATAC,并将所述解密的秘密数据项DATA记录到第二模块SAM中。
为了减少访问第二模块SAM的次数,传输信息INFO、解密第二模块SAM内的秘密数据项DATA、并进行记录的步骤通过第二命令ADMINRECOVER来实现。这个第二命令由管理服务器通过公用付费电话(未示出)发送到第二模块SAM。在装载操作期间或在所述装载操作结束时发生故障的情况下,将非易失性存储器M1内存储包括随机数据项RAND的信息INFO的存储位置重新设为它的初始值V。如果故障已经发生,则生成另一个随机数据项RAND,并且重新进行上述方法的各个步骤。当第二ADMINRECOVER命令被发送时,检验是否已经生成和记录了随机数据项RAND。因此,检验专用于随机数据项RAND的、第二模块SAM中的第一非易失性存储器M1的存储位置是否包含了初始值V。如果回答是肯定的,则执行第二ADMINRECOVER命令。反之,则不执行,并进行该方法的第一步骤。
一般来说,第二模块SAM管理不同类型的用户卡,因此,包括几种分别与每种类型的用户卡相联系的秘密数据项,卡的类型一般与提供所述卡的给定公司相对应。通常,最好能够修改与给定卡类型相联系的该组秘密数据项DATA。在这种情况中,执行如上所述的、根据本发明的方法的第一步骤,但该第一步骤应用于要修改的所有秘密数据项DATA。因此,在第二模块SAM的第二存储器M2内生成几个随机数据项RAND,并且在每次生成随机数据项RAND之后,记录包括生成的随机数据项RAND的信息INFO。正如图5中的实例所示的,在第二模块SAM内生成三个随机数据项RAND1、RAND2和RAND3,并将它们记录到所述模块的非易失性存储器M1中。这样,生成的三个随机数据块被发送到管理服务器中的第一模块S1。驻留在第一模块F中的文件EF1中的三个秘密数据项DATA1、DATA2和DATA3被加密,并与第二模块SAM内要修改的三个秘密数据项相对应。例如,通过与三个随机数据项RAND同时发送的秘密数据的三个索引(1、2和3),对它们进行匹配。最后,为了传输三个秘密数据项DATA1、DATA2和DATA3,在所述第二模块SAM中,从用于要装载的每个秘密数据项的或用于如前面步骤中那样的整组秘密数据的第五步骤开始,全部执行如上所述的、根据本发明的方法的步骤。
因此,根据如上所述的装载几个数据项的第一实施例,对于每次装载操作,随机数据项RAND都用于装载秘密数据项RAND。根据第二实施例,为了减少装载秘密数据所需的次数,对于每次装载操作,唯一的随机数据项RAND用于装载几个秘密数据项DATA。
当然,本发明并不限于电话领域,还可以应用于在存储秘密数据的中心化模块与适用于接收这样的秘密数据的远程模块之间实现数据交换系统的其它领域。
权利要求
1.一种将秘密数据从第一安全模块(S)安全装载到至少一个第二安全模块(SAM)的方法,其中所述第一模块(S)包括至少一个秘密数据(DATA)的文件(EF1),所述第二模块(SAM)包括第一非易失性存储器(M1)和第二易失性存储器(M2),其特征在于,所述方法包括下列步骤在第二模块(SAM)中的第二存储器(M2)内生成至少一个随机数据项(RAND);将包括所述随机数据项(RAND)的信息(INFO)记录在第二模块(SAM)的第一存储器(M1)内;将随机数据项(RAND)发送到第一模块(S);在第一模块(S)内,根据随机数据项(RAND)和加密算法(ALGO),加密所述第一模块(S)内的文件(EF1)中的秘密数据项(DATA);将所述加密的秘密数据项(DATAC)发送到第二模块(SAM);将包括存储在第二模块(SAM)的第一存储器(M1)中的随机数据项(RAND)的信息(INFO),从所述第一存储器(M1)传输到所述模块(SAM)的第二存储器(M2);根据解密算法(ALGOP)和随机数据项(RAND),解密所述加密的秘密数据项(DATAC),并将所述解密的秘密数据项(DATA)记录在第二模块(SAM)内。
2.根据权利要求1所述的方法,其特征在于,还包括下列步骤在将包括随机数据项(RAND)的信息(INFO)从第二模块(SAM)的第一存储器(M1)传输到所述模块的第二存储器(M2)之后,从所述第一存储器(M1)中删除所述信息(INFO)。
3.根据前面权利要求任何一项所述的方法,还包括下列步骤在将包括随机数据项(RAND)的信息(INFO)记录从第二模块(SAM)的第一存储器(M1)传输到所述模块(SAM)的第二存储器(M2)之后,从所述第一存储器(M1)中删除所述信息(INFO)。
4.根据前面权利要求任何一项所述的方法,其特征在于,生成和发送随机数据项(RAND),以及将信息(INFO)记录到第二模块(SAM)中的步骤是通过第一命令(ASKLOADING)实现的。
5.根据前面权利要求任何一项所述的方法,其特征在于,传输信息(INFO)、解密第二模块(SAM)中的秘密数据项(DATA)、并进行记录的步骤是通过第二命令(ADMINRECOVER)实现的。
6.根据前面权利要求任何一项所述的方法,其特征在于,包括所述随机数据项(RAND)的信息(INFO)包括与秘密数据项(DATA)相关的索引。
7.根据前面权利要求任何一项所述的方法,其特征在于,在第二模块(SAM)的第二存储器(M2)中生成几个随机数据项(RAND),并且,在生成每个随机数据项(RAND)之后,将包括生成的随机数据项(RAND)的信息(INFO)记录在第二模块(SAM)的第一存储器(M1)中。
8.根据前面权利要求任何一项所述的方法,其特征在于,对于每次装载操作,随机数据项(RAND)都用于装载秘密数据项(DATA)。
9.根据权利要求1至7任何一项所述的方法,其特征在于,对于每次装载操作,唯一的随机数据项(RAND)用于装载几个秘密数据项(DATA)。
全文摘要
本发明涉及将秘密数据从第一安全模块安全装载到第二安全模块的方法,其中所述第一模块包括秘密数据,所述第二模块包括第一非易失性存储器和第二易失性存储器。本发明的特征在于,所述方法包括下列步骤:将包括一个随机数据项的信息记录在第二模块的第一存储器内;将根据随机数据项加密的秘密数据从第一模块发送到第二模块;将包括随机数据项的信息从第二模块的第一存储器传输到所述模块的第二存储器;根据随机数据项解密所述加密的秘密数据项,并将所述解密的秘密数据项记录在第二模块内。尤其是,本发明可以应用于电话。
文档编号H04L9/08GK1353897SQ00806630
公开日2002年6月12日 申请日期2000年3月17日 优先权日1999年3月17日
发明者理查德·多利特 申请人:施蓝姆伯格系统公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1