保证嵌入式微芯片系统,尤其是智能卡的预初始化阶段的安全性的方法和实现该方法的...的制作方法

文档序号:7644682阅读:111来源:国知局
专利名称:保证嵌入式微芯片系统,尤其是智能卡的预初始化阶段的安全性的方法和实现该方法的 ...的制作方法
技术领域
本发明涉及一个方法,该方法通过安全加载一个专用加密密钥以保证预定操作,尤其是嵌入式微芯片系统的预初始化阶段的运算的安全性。
更具体的是涉及智能卡。
本发明还涉及实现该方法的嵌入式系统。
同样地,术语″嵌入式系统″表示各种均使用一个包括数据存储和数据处理装置的微芯片的系统或设备,上述微芯片通常由一个微处理器或一个微控制器构成。尤其是可以通过一个智能卡构成这种嵌入式系统。
为了说明这个概念,此后我们会考虑本发明的最优应用,即智能卡的预初始化。
在多数基于智能卡的应用中,各种涉及安全的功能被转移到智能卡中。这个术语自身包括不同的概念保密,认证,等等。
为此,以永久(使用″只读存储器″或″ROM″)或半永久(″电可擦除可编程只读存储器″或″EEPROM″)方式被写入微芯片的上述存储装置的非易失部分的是这些功能需要的所谓秘密数据加密算法,加密秘密密钥(cléssecrètes de chiffrage),鉴别数据等等。
在这种数据中间,存在一个通常能够保证预初始化智能卡的所有步骤的安全性的所谓制造密钥。
智能卡的制造通常有两个主要阶段。在第一阶段期间,由一个此后被称作″芯片制造商″的第一实体制造微芯片。在第二阶段期间,这个微芯片被封装并且接着被集成到一个衬底上,即一个构成智能卡本身的近似矩形塑胶片。通常由一个与第一实体不同并且此后被称作″卡制造商″的第二实体执行这个操作。
此后被称作″预个性化制造商″的第三实体执行上述预初始化操作。
在现有技术中,几乎是有组织地以非加密形式写入保证智能卡预初始化中所有步骤安全性的制造密钥并且预先没有得到卡制造商的认证。这个操作模式造成若干问题-如果在从芯片制造商到卡制造商的运输过程中卡被盗窃,则软件安全没有保证可以利用欺诈手段对卡进行预初始化并且恶意使用;-以复制方式产生出卡的骗子可以不经检测将卡插到卡制造链中;并且-简单的在线刺探能够获得以非加密方式发送的制造密钥。
一个解决方案是在所谓的探查(sous pointe)操作中由芯片制造商写入制造密钥,但由于必须改变每个卡的秘密数据(非静态数据)并且降低了芯片制造商的生产率,这个解决方案是非常昂贵的。因此这个昂贵的方法是不现实的,并且因此实际了从未被实现。
因此,根据本发明的第一有利特性,通过一个被称为″SAM″(″安全访问模块″)的单元和智能卡之间的相互认证保护制造密钥的写入以便杜绝其中有复制的智能卡的假冒″SAM″模块或具有伪造ROM或其它非易失存储器的模块。此后为了简化描述,这个模块被称作″SAM″。它可以被放置在微型计算机或智能卡中。通常″SAM″可以被定义成一个″密钥保存″单元。它实质上存储了一个从不泄露的秘密密钥(désecrète),即不被传送到外部世界中。它被用来计算允许进行上述相互鉴别的其它密钥。
智能卡使用一个非对称加密算法对″SAM″进行认证。它可以是在金融应用领域广泛使用并且缩写为″RSA″(美国专利4 405 829 A的发明人″Rivest,Shamir和Adleman″)的算法。然而由于智能卡只配备了有限的计算资源,为此最好使用所谓的″Rabin″算法。事实上,在使用后者的情况下只需要较少的计算能力,这更加适合智能卡或类似设备的特点。此后所使用的非对称算法均会被认为是″Rabin″算法,并且不对本发明的范围产生任何限制。
至于″SAM″模块对智能卡的认证,使用对称算法较好,最好是所谓的″三重DES″(″数据加密系统″)算法。
通过使用Rabin算法完成智能卡对″SAM″的认证并且使用″三重DES″算法完成″SAM″对智能卡的认证,不必为实现安全机制而使用保密处理器,这在本发明涉及的应用范围内也是有利的。
基于本发明的方法允许经过认证的″SAM″安全地将制造密钥加载到进行自认证的智能卡中。
因此,本发明的主题是把专用于保证预定操作的安全性的密钥安全加载到嵌入式系统的微芯片的存储装置中的方法,上述专用密钥被包含在一个安全设备中,上述安全设备包含与上述微芯片双向通信的装置,其特征在于,上述微芯片的上述存储装置存储一个对称秘密加密密钥和一个非对称公开密钥并且上述安全设备存储对应于上述微芯片的公开密钥的相同对称秘密加密密钥和非对称秘密密钥,它包括-一个由上述微芯片认证上述安全设备的第一阶段,为了通过使用上述公开密钥进行的验证来认证上述安全设备,上述第一阶段包括由微芯片产生一个第一随机数并且传送到安全设备的步骤,以及由安全设备产生一个第二随机数,使用一个非对称签名算法和上述非对称秘密密钥根据上述第一和第二随机数产生一个第一密文并且传送到上述微芯片的步骤;-一个认证上述微芯片的第二阶段,为了通过使用上述会话密钥进行的验证来认证上述微芯片,上述第二阶段包括由微芯片和上述安全设备使用一个对称加密算法和上述秘密加密密钥根据上述第一随机数产生一个被称作会话密钥的秘密数据的步骤,以及接着通过使用一个对称加密算法和上述秘密会话密钥产生一个第二密文并且传送到上述安全设备的步骤;和-一个将经过上述秘密会话密钥加密的上述专用密钥传送到上述微芯片的上述存储装置中的阶段。
现在参照附图更详细地描述本发明,其中-

图1针对一个公开密钥的存储图解了基于本发明的一个方面的智能卡存储器的一个示例性结构;-图2根据本发明的方法图解了一个所谓的″SAM″密钥保存模块和一个智能卡的相互认证的主要信息交换;-图3根据本发明方法的一个方面图解了被用来根据智能卡和″SAM″模块分别产生的随机数计算一个Rabin签名的串联数据的一个例子;-图4根据本发明的一个方面在一个例子中图解了智能卡中产生会话密钥的过程;-图5根据本发明的一个方面在一个例子中图解了智能卡中产生密文的过程;和-图6图解了被用来计算Rabin签名的串联数据的一个例子,其中SAM在制造密钥被传送、加密之前根据加载制造密钥进入智能卡的命令计算出上述Rabin签名。
从智能卡和″SAM″模块的角度出发,基于本发明的方法需要一个此后被称作主密钥KM的对称秘密密钥。当微芯片或″芯片″离开被称作″芯片制造商″的实体时必须提供这个密钥KM。
在微芯片所配备的存储器的一个非易失部分一个″ROM″型永久存储器,或″EEPROM″或类似类型的半永久存储器中存储这种密钥KM。
在本发明实施例的一个最优变型中,根据本发明的第一特性,密钥KM被芯片制造商″探查″写入EEPROM。组成密钥KM的字节是非常敏感的数据并且必须被看作安全字节。在EEPROM中进行存储的方式允许若干批次的卡具有不同的密钥KM。
从智能卡的角度出发,基于本发明的方法也需要一个此后被称作非对称公开密钥n的非对称公开密钥。当卡或芯片离开被称作″芯片制造商″的实体时必须提供这个针对所有的卡设置的密钥n。
在微芯片所配备的存储器的一个非易失部分一个″ROM″型永久存储器和/或″EEPROM″或类似类型的半永久存储器中存储这种密钥n。
在本发明实施例的一个最优变型中,根据本发明的第二特性,微芯片的非易失存储器具有一个特定的物理逻辑混合结构。提供一个ROM型永久部分和一个EEPROM型可再编程半永久部分。通过下述特定方式将上述公开密钥的字节分布在这两个存储区之间。当芯片离开芯片制造商时必须提供上述字节。
存储器的EEPROM部分中的″探查″写入字节必须被认为是非常敏感的,并且因此必须被看作是安全字节。
例如,为了图解概念,此后我们会考虑一个长度为768位(或96字节)的公开密钥。后者完全驻留在ROM中。然而根据基于本发明的方法的一个最优实施例,每十二个字节中便有一个字节被有意按照错误方式存储在ROM型存储区中,这个错误数值已经被故意写入这个ROM型存储器部分中存储的代码内。有问题字节的正确数值被存储在EEPROM型部分中。因此在这个例子中,八个字节(或96/16=8)必须被编程到EEPROM型存储器部分中。由于公开密钥不变,所以这个数据是静态数据。
另外,对160位公开密钥n执行一个被称为″杂凑″的操作。结果被存储在ROM中,以便每当使用密钥n时可以验证密钥n。为此,使用一个被称为″SHA-1″的算法。因此这个特定算法必须被安装在智能卡中。
结合公开密钥n的特定存储,杂凑允许同时保证ROM和EEPROM型存储器部分的完整性。
图1图解了智能卡CP的这种存储器映射。在描述的例子中,存储装置M具体包含一个ROM型存储器部分1和一个EEPROM型存储器部分2。在描述的例子中,在″ROM″存储器1中存储八块表示上述公开密钥n的十二字节数字数据B1-B8。在所有这八个模块B1-B8中,存在一个有意写错的字节,这个字节可以是字节O1-O8中的任意一个。在″EEPROM″存储器2中存储八个对应于这些错误字节O1-O8的正确字节O′1-O′8。
现在我们描述将所谓的制造密钥安全加载到智能卡中的步骤。
基于本发明的方法的第一阶段完成智能卡CP对″SAM″的认证。
这个阶段具体包含一个步骤,在该步骤中″SAM″使用一个对应于卡中包含的非对称公开密钥n的非对称秘密密钥计算一个密文。实际上密钥由两个起始数组成,这两个起始数被任意称作p和q。″SAM″的非对称秘密密钥被称作Kpq。换言之,智能卡CP识别″SAM″并且智能卡CP通过公开密钥n识别其调用方。
如图2所示,″SAM″3使用一个输出命令Os从智能卡CP检索出一个十六字节随机数NaC。数量NaC此后会被称作卡随机数,并且在图解一个微处理器CPU的例子中可以由智能卡CP的计算装置产生。″SAM″3还产生一个被称作″SAM随机数″NaS的十六字节随机数。
″SAM″3根据九十六字节数据DSR计算一个此后被称作SR的Rabin签名。按照图3所示的方式连接这个数据DSR以便达到上述九十六字节-一个具有下面静态结构的五十九字节填充串DSR1十六进制的01,FF,...FF;-相互认证命令的一个五字节头字节串DSR2;和-由上述数NaS和NaC连接而成的三十二字节DSR3。
如果一个智能卡读卡器使用基于标准ISO 7816-1至ISO 7816-4的协议读取智能卡CP,则通过一个被称为″APDU″的命令的内容可以构成相互认证命令的五字节头字节串DSR2。更准确地说,可以和加载指令编码到一起。
再次参照图2,Rabin签名SR和随机数NaS通过一个指示相互认证的输入输出命令OES被发送到智能卡CP。由于″SAM″3存储的秘密密钥从不被泄露,″SAM″3能够单独产生这个签名SR。智能卡CP使用其存储的非对称公开密钥n验证Rabin签名,这使得智能卡CP能够认证″SAM″3。
基于本发明的方法的第二阶段完成″SAM″3对智能卡CP的认证以便完成两个实体的相互认证。
根据秘密主密钥KM和上述十六字节随机数NaC,智能卡CP产生一个被称作会话密钥KS的十六字节对称秘密数据,使得能够计算一个特定智能卡CP的密文。
最好通过使用三重DES类型的算法对卡随机数NaC的NaC1和NaC2进行加密来获得这个被称作认证密钥的秘密会话密钥KS。
更准确地说,如图4的图例所述的方式计算秘密会话密钥KS。
众所周知,使用三重DES类型算法的加密按顺序包含一个使用某个密钥(在这种情况下为秘密主密钥KM)通过直接DES进行的第一加密,一个逆类型的第二DES,和一个也是直接类型的第三DES。
在智能卡随机数NaC的八字节″低阶″部分NaC1中,直接使用三个级联模块D11,D21和D31执行三重DES。模块D11和D31通过其密钥输入接收相同密钥数值,在这种情况下是密钥KM的八字节″高阶″部分KM1,而模块D21通过其密钥输入接收″低阶″部分KM2,也是八个字节。在模块D31的输出上获得秘密会话密钥KS的八字节″高阶″部分KS1。这个八字节字KS1可以被临时存储在一个存储寄存器或智能卡CP通常配备的一部分RAM中。
通过一个被表示成XOR的″异或″型逻辑电路的第一输入重新输入部分KS1。XOR通过一个第二输入接收智能卡随机数NaC的八字节″高阶″部分NaC2。逻辑电路XOR的输出被发送到一个三重DES加密链的输入上。使用三个级联模块D12,D22和D32执行这个三重DES。如上所述,模块D12和D32通过其密钥输入接收相同密钥数值,在这种情况下是密钥KM的八字节″高阶″部分KM1,而模块D22通过其密钥输入接收″低阶″部分KM2,也是八个字节。在模块D32的输出上获得秘密会话密钥KS的八字节″低阶″部分KS2。这个八字节字KS2也可以被临时存储在一个存储寄存器或一部分RAM中。
如上所述,秘密密钥KM可以被存储在ROM中,也可以被″探查″写入EEPROM中。
显然在微处理器CPU的控制下通过调用一个存储在″ROM″存储器1中的例程可以按照使用软件而不是使用特定逻辑电路XOR的方式执行″异或″逻辑操作。同样地,通常在微处理器CPU的控制下通过″ROM″存储器1中存储的算法执行″DES″和″DES-1″操作。中间结果被存储在寄存器或RAM中。
由于后者也存储秘密主密钥KM,所以″SAM″3能够按照上述方式计算相同的秘密会话密钥KS。
在一个附加步骤中,智能卡CP产生一个此后被称作″卡密文″CC的字节串。通过使用刚才计算出的秘密会话密钥KS加密被发送到智能卡CP的″SAM″随机数来获得后者。
图5图解了处理。后者类似于能够计算秘密会话密钥KS的处理。它尤其可以使用基于三重DES算法的″异或″和加密功能。并且与前面的图共有的单元具有相同的符号表示并且仅在需要时才加以描述。
已经从″SAM″3接收″SAM″随机数NaS并且随机数NaS被临时存储在一个寄存器或其它存储位置中。通过链D11-D31对这个随机数NaS的八字节高阶部分NaS1执行三重DES。然而首先通过一个第一电路XOR1(或一个软件处理)使用一个十六进制数值为″00″的八字节初始链接数值Nf对其执行一个″异或″逻辑操作。这个电路XOR1的输出被发送到上述链。加密密钥是在前面步骤中计算的秘密会话密钥KS。更准确地说,″DES″D11-D31的密钥输入接收这个密钥KS的八个高阶字节KS1并且DES D21的密钥输入接收八个低阶字节KS2。
这个处理使得能够计算密文CC的八个高阶字节CC1。这些字节CC1被当作输入重新注入″SAM″随机数NaS的低阶字节NaS2的三重DES加密链D12-D32中,更准确地讲是被注入到第二″异或″电路XOR2的一个输入,即接收随机数NaS的八个低阶字节的第一输入上。这个电路XOR2的输出被发送到上述链。更准确地说,″DES″D12-D32的密钥输入接收这个密钥KS的八个高阶字节KS1并且DES D22的密钥输入接收八个低阶字节KS2。DES D32的输出产生卡密文CC的八个低阶字节CC2。
通过输入输出命令OES(图2)将这个密文发送到″SAM″3以进行相互认证。如上所述,在这个步骤结束时,由于″SAM″3已经计算出会话密钥KS,所以″SAM″3可以根据卡密文CC认证智能卡CP。
最后步骤包括使用一个加载命令Cch将上述制造密钥KF加载到智能卡CP的存储器中。在一个被称为″CBC″(″密码块链接″)的模式下,以通过秘密会话密钥KS进行加密的方式保护这个密钥KF。
如果加载命令失败,则丢弃会话密钥KS并且有必要通过计算一个新会话密钥进行新的相互认证。
″SAM″3通过一个Rabin签名对加载命令签名。图6图解了被用来计算Rabin签名SR′的数据DSR′。
DSR′总共包括九十六字节。在例子中DSR′包括三个部分-一个头DSR′3,象在图2中那样可以是一个″APDU″命令;-表示制造密钥KF的加密数据DSR′2或Do1-Don(n是制造密钥KF的字节总数);并且-具有以下结构的静态填充数据DSR′1或x个字节十六进制的01,FF...FF(选择x的数值使得DSR′的字节总数等于九十六)。
通过阅读上述内容显然可以看到本发明实现了上述目标。
具体地,以非常高的安全强度加载以后被用来保证智能卡CP预初始化的步骤的安全性的制造密钥。该方法允许将其自身的密钥加载到每个智能卡CP中,即不同的智能卡具有不同的密钥。
然而虽然这允许密钥相互不同,但该方法不必借助费时并且昂贵的″芯片制造商探查写入″操作。
然而应当理解本发明不仅限于明确描述的示例性实施例,尤其是结合图1-6描述的实施例。
如上所示,虽然Rabin算法因其消耗较少的计算资源而显得特别有利,但这个算法可以被其它类型的非对称算法,例如″RSA″替代。三重DES算法也是可替代的。在不超出本发明范围的情况下可以使用其它对称密钥算法。这仅仅是本领域的技术人员能够作出的一种技术选择,并且非常依赖实际的应用。
同样地,描述中涉及的精确数值,字节或其它单元的数量仅被用于图解概念并且不对本发明范围产生任何限制。具体地,正如众所周知的,加密密钥长度取决于期待实现的安全强度,并且可以源于有关强制标准和/或选择的算法类型的技术选择。
如上所述,本发明不仅限于基于智能卡的应用。本发明可以被用于任何包括一个微芯片或类似设备并且有必要加载一个用于保证预定操作安全性的密钥的嵌入式系统中。
如上所述,所涉及的操作可以是预初始化操作,但也可以是其它类型的操作。
例如,可以是执行来自所谓的开放智能卡的敏感命令,例如向EEPROM部分加载被称为″API″(″应用程序接口″)的库或各种代码,也可以是加载设备和智能卡之间的相互认证,其中根据本发明的方法执行相互认证处理。
从智能卡角度出发,通常可以为各种要保证安全性的操作分配一个公开密钥和一个对称秘密密钥。在执行认证机制期间导出的会话密钥可以被用来保证另一个专用密钥的加载的安全性,例如保护上述″API″类型的库或″补丁″,即用二进制数据替换一个现有程序的全部或部分。
权利要求
1.把专用于保证预定操作的安全性的密钥安全加载到嵌入式系统的微芯片的存储装置中的方法,上述专用密钥被包含在一个安全设备中,上述安全设备包含与上述微芯片双向通信的装置,其特征在于,上述微芯片的上述存储装置(M)存储一个对称秘密加密密钥(KM)和一个非对称公开密钥(n)并且上述安全设备(3)存储对应于上述微芯片的公开密钥n的相同对称秘密加密密钥(KM)和非对称秘密密钥(Kpq),它包括-一个由上述微芯片(CP)认证上述安全设备(3)的第一阶段,为了通过使用上述公开密钥(n)进行的验证来认证上述安全设备,上述第一阶段包括由微芯片(CP)产生一个第一随机数(NaC)并且传送到安全设备(3)的步骤,以及由安全设备产生一个第二随机数(NaS),使用一个非对称签名算法和上述非对称秘密密钥(Kpq)根据上述第一(NaC)和第二(NaS)随机数产生一个第一密文(SR)并且传送到上述微芯片(CP)的步骤;-一个认证上述微芯片(CP)的第二阶段,上述第二阶段包括由微芯片(CP)和上述安全设备(3)使用一个对称加密算法和上述秘密密钥(KM)根据上述第一随机数(NaC)产生一个被称作会话密钥(KS)的密钥的步骤,以及接着通过使用一个对称加密算法和上述秘密会话密钥(KS)产生一个第二密文(CC)并且传送到上述安全设备(3)的步骤,以便通过使用上述会话密钥(KS)进行的验证来认证上述微芯片;和-一个将经过上述会话密钥(KS)加密的上述专用密钥(KF)传送到上述微芯片(CP)的上述存储装置(M)中的阶段。
2.如权利要求1所述的方法,其特征在于,一个密钥加载命令(Cch)激活传送上述专用密钥(KF)的阶段,并且使用一个非对称签名算法对上述阶段签名(SR′)。
3.如权利要求1所述的方法,其特征在于上述非对称算法是所谓的Rabin算法。
4.如权利要求3所述的方法,其特征在于上述第一(NaC)和第二(NaS)随机数长度为十六字节,通过对上述第一(NaC)和第二(NaS)随机数(DSR3)的连接使用上述Rabin算法获得上述第一密文(SR),使得上述连接(DSR)的总长度是九十六字节,等于上述公开密钥(n)的长度,其中上述第一和第二随机数具有第一指定数量的构成一个头(DSR2)的字节和具有第二指定数量的所谓填充字节(DSR1)。
5.如权利要求3所述的方法,其特征在于上述专用密钥(KF)被上述秘密会话密钥(KS)加密(DSR′2)并且与构成一个头的第三指定数量的字节(DSR′3)和第四指定数量的所谓填充字节(DSR′1)串联,使得上述连接(DSR′)的总长度是九十六字节,并且其特征在于在传送到上述智能卡(CP)之前使用上述Rabin算法对上述连接(DSR′)签名。
6.如权利要求1所述的方法,其特征在于上述非对称算法是所谓的三重DES算法。
7.如权利要求6所述的方法,其特征在于上述第一随机数(NaC)和上述秘密密钥(KM)长度为十六字节,上述产生秘密会话密钥的步骤包括-为了产生上述秘密会话密钥(KS1)的八个高阶字节,对上述第一随机数(NaC)的八个低阶字节(NaC1)应用上述三重DES,其中按顺序执行一个以上述秘密密钥(KM1)的八个高阶字节为加密密钥的直接DES(D11),一个以上述秘密密钥(KM2)的八个低阶字节为加密密钥的逆DES(D21),和一个以上述秘密密钥(KM1)的八个高阶字节为加密密钥的直接DES(D31);-在上述第一随机数(NaC)的这八个高阶字节(KS1)和八个低阶字节(NaC2)之间执行一个″异或″逻辑操作(XOR);和-为了产生上述秘密会话密钥(KS)的八个低阶字节(KS2),对上述逻辑操作结果应用上述三重DES,其中按顺序执行一个以上述秘密密钥(KM1)的八个最高阶字节为加密密钥的直接DES(D12),一个以上述秘密密钥(KM2)的八个最低阶字节为加密密钥的反置DES(D22),和一个以上述秘密密钥(KM1)的八个最高阶字节为加密密钥的直接DES(D31),上述最高阶字节(KS1)和最低阶字节(KS2)共同构成上述秘密会话密钥(KS)。
8.如权利要求6所述的方法,其特征在于,上述第二随机数(NaS)和上述秘密会话密钥(KS)长度为十六字节,上述产生卡的密文的步骤包括-在上述第二随机数(NaS)的八个最高阶字节(NaS1)和八个十六进制数值为00的静态字节之间执行一个″异或″逻辑操作(XOR1);-为了产生上述第二密文(CC)的八个最高阶字节(CC1),对上述逻辑操作结果应用上述三重DES,其中按顺序执行一个以上述秘密会话密钥(KS1)的八个最高阶字节为加密密钥的直接DES(D11),一个以上述秘密会话密钥(KS2)的八个最低阶字节为加密密钥的逆DES(D21),和一个以上述秘密会话密钥(KS1)的八个最高阶字节为加密密钥的直接DES(D31);-在上述第一随机数(NaS)的这八个最高阶字节(CC1)和八个最低阶字节(NaS2)之间执行一个″异或″逻辑操作(XOR2);以及-为了产生上述第二密文(CC)的八个最低阶字节(CC2),对上述逻辑操作结果应用上述三重DES,其中按顺序执行一个以上述秘密会话密钥(KS1)的八个最高阶字节为加密密钥的直接DES(D12),一个以上述秘密会话密钥(KS2)的八个最低阶字节为加密密钥的逆DES(D22),和一个以上述秘密会话密钥(KS1)的八个最高阶字节为加密密钥的直接DES(D32),上述最高阶字节(CC1)和最低阶字节(CC2)共同构成上述第二密文(CC)。
9.如权利要求1所述的方法,其特征在于上述嵌入式微芯片系统是一个智能卡(CP),上述专用密钥是一个被用来保证智能卡预初始化操作的安全性的所谓制造密钥(KF)。
10.包括数据处理和存储装置的嵌入式微芯片系统,上述数据处理和存储装置通过双向通信装置与一个安全设备协作以便接收一个专用于保证预定操作安全性的密钥,其特征在于,上述数据存储装置(M)存储一个对称秘密加密密钥(KM)和一个非对称公开密钥(n),而上述安全设备(3)存储对应于上述公开密钥(n)的相同对称秘密加密密钥(KM)和非对称秘密密钥(Kpq),上述微芯片包含产生一个被发送到上述安全设备(3)的第一随机数(NaC)的装置,从后者接收通过使用一个非对称算法和上述秘密密钥(Kpq)根据上述第一随机数(NaC)和一个第二随机数(NaS)产生的一个第二随机数(NaS)和一个第一认证密文(SR)的装置,使用一个对称算法和上述秘密密钥(KM)根据上述第一随机数(NaC)产生一个被称作会话密钥(KS)的密钥的装置(XOR,D11-D32),使用一个对称算法和上述秘密会话密钥(KS)根据从上述安全设备(3)接收的上述第二随机数(NaS)产生一个第二密文(CC)的装置,和从上述安全设备(3)接收经过上述会话密钥(KS)加密的上述专用密钥(KF)并且存储到上述存储装置(M)中的装置。
11.如权利要求10所述的系统,其特征在于上述系统由一个智能卡(CP)构成,上述专用密钥是一个所谓的制造密钥(KF),并且上述被保证安全性的操作是预初始化上述智能卡(CP)的操作。
全文摘要
本发明涉及通过存储一个对称秘密加密密钥(K
文档编号H04L9/32GK1386249SQ01801950
公开日2002年12月18日 申请日期2001年6月8日 优先权日2000年6月8日
发明者尼古拉斯·福格洛克斯, 本诺特·伯尔, 帕特里斯·汉缪 申请人:布尔Cp8公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1