用于安全通信系统的便携式电子装置以及参量初始化的方法

文档序号:6415831阅读:315来源:国知局
专利名称:用于安全通信系统的便携式电子装置以及参量初始化的方法
技术领域
本发明是关于安全保密电子通信系统的一般方法,特别是关于在这样的安全保密,保密系统中的便携式安全保密电子装置能够和别的电子单元建立通信和/或能够接入别的电子单元。
在许多电子通信系统中,都需要控制用户访问指定的功能或信源,或者需要鉴别人员或信息。这特别是在涉及到控制访问一个计算机的情况,或更为普通的情况下去访问一个信息网络,而这计算机或信息网络必须是合法的人所使用,这样的网络例如可以用于保证各种类型的业务中都含有交易,最经常的是经济事务,如电视购物、付费电视、家庭银行业务、交互电视娱乐、等等…。
在文献US-A-3 806 874、US-A-4 601 011、US-A-4 720860、US-A-4 800 590及US-A-5 060 263中,对控制访问系统有特别的描述。在这些文献所描述的系统都是借助于一个用一变量的加密来生成口令的便携式安全保密电子装置。一个验证单元按照同一个变量或近似于同一个变量进行同一个计算或类似的计算,并如在便携装置中生成的口令和在验证单元中生成的口令相符时,便授权访问请求的应用。述及的变量可以是一个随机数,或者是一个伪随机数,后面称为随机事件(aléa),从验证单元传送到便携装置,或者述及的变量可以在便携装置和验证单元中各自独立地例如用时钟和/或事件计算器生成。
当在便携装置和在验证单元中所实施的加密是借助于一个对称算法和一个密钥时,例如DES(数据加密标准Data EncryptionStandard)算法,系统的保密安全就建立在同时存储在便携装置中和验证单元中的密钥的秘密字符的保存上。
在某些情况下,密钥可以是静态的,就是说,在便携装置的整个寿命期内,密钥都保持相同的值。
在另一些情况下,密钥可以是动态的,就是说,例如根据时钟信号和/或事件记数器递增的记数器的内容,密钥随时间变化。
不管密钥是静态的还是动态的,都应有初始态。就是说,当对装置个人化时,就同时将一个确定的值存入便携电子装置和与这个验证单元相连的数据库去。当一个用户提出一个访问请求时,他必须用这种方式或那种方式,例如用公开识别号码或个人识别号码(PIN),根据验证单元从数据库中得到的静态密钥来进行检验。如涉及的是动态密钥,通常需要根据信息计算当前密钥。
同样的安全问题出现在利用便携电子装置和验证单元的安全保密系统中,述及的便携电子装置和检验单元借助于非对称算法对公开密钥或个人密钥进行加密和解密。根据在这样的算法中所使用的功能(鉴别,签字,等…),存储在述及的装置和/或验证单元内的一个或多个密钥中的保密字符在实际上应该保留。
这个或这些密钥以及其它保密的个人化数据在个人化过程中都被将装置发付给最终用户的实体加载到述及的装置的存储器中,为了保护这些个人化的数据,已知的方法,特别是文献WO 93/10509所提出的方法是让有存储器的卡的供商能用一个新的访问个人化数据的新密钥去替换由卡的制造商所植入的初始密钥。
还有,安全保密电子通信系统的巨大发展导致产品有多种不同的应用,且对同一种应用有多个安全等级。这就提出了有关保证应用独立和安全等级独立的问题,即述及的装置实施不同的功能的问题。
本发明的目的还在于提供一种和别的电子单元进行通信的便携安全电子装置,可以保证这些功能的独立性。
为此,在本发明所涉及的装置中具有数据存储装置、至少和一个用于将数据加载到述及的存储装置中的外部工具的接口装置,以及数据处理装置。述及的数据处理装置中具有初始化装置,可用来回答个人化访问密码的应用、述及的访问码的修改、以及将个人化数据的加载到述及的存储装置中。本发明所涉及的装置的特征在于述及的装置能实施多种功能,且其中还有加载装置和禁止装置。述及的加载装置进行分别表示不同的专门的访问密码的这一部分或那一部分的多个秘密数据加载,并将每一个分配给将述及装置的一个专门的功能的个人化。而述及的禁止装置是用来仅根据分配给一种功能的专门的访问码的应用才授权述及的处理装置接入述及的功能专门的个人化数据的加载和/或读取。
根据本发明的一个特征,所述禁止装置用于禁止对任何秘密数据的读取。
根据本发明的一个特征,述及的加载装置具有用于对全部述及的功能共同的专门密码表征的至少一个可程序化的专门秘密数据,而述及的禁止装置用来禁止述及的处理装置通过专门密码访问专门个人化的数据。
根据本发明的另一个特征,述及的数据处理装置能够授权修改用对一个功能专门的访问码表示的一个秘密数据,而这个秘密数据是通过述及的特别的访问密码,根据述及的专门访问码的应用加载到述及的存储装置中。
根据本发明的另一特征,所述加载装置借助于所述专门的可编程秘密数据,授权删除专门的秘密数据和先前装载的专门个人化数据,装载新的专门秘密数据。
最好,述及的专门的密码是一个去对述及的装置的各种功能的整体来说是共同的个人化数据的个人化进行访问的访问码。
还要单个地或结合起来来考察本发明的其它特征-述及的存储装置中至少有一个非易失存储器,其中存储一个基本密码。述及的初始化装置中具有第一装置,用来计算根据述及的基本密码和初始秘密参量来计算述及的专门的秘密数据的初始值。
-述及的禁止装置是用来从存储装置中抹去用访问码表示的述及的秘密数据中的一个,通过述及的访问码去应答用一个新的访问码表示的一个新的秘密数据的加载。
-述及的秘密数据是用于计算表示这个数据的访问码的验证码的一个密钥。
-述及的处理装置中有第二装置,用来通过计算得到的密钥通过对一个变量加密,计算述及的验证码。
-述及的个人化数据中至少具有这些与那些不同的鉴别密钥中的大部分,且将每一个密钥分配给一个述及的功能。述及的处理装置还具有第三装置,用来根据述及的鉴别密码中的一个对于一个鉴别单元计算一个鉴别码。
本发明的目的还在于对上面所定义的装置的初始化方法,其特征在于这种方法具有-一个第一的初始化阶段,在于确定述及的装置专门个人化密钥,并将之存储到述及的存储装置中。
-一个第二的个人化阶段,在于通过述及的专门的个人化密码的专门功能访问码将对于述及的函数为共同的个人化数据,以及计算专门的访问密码的密码加载到存储装置中,述及的访问密码的每一个是分配给相对于述及的函数中的一个的个人化数据的加载。而-一个第三的个人化阶段,在于对于每一个述及的函数,将有关述及的函数的个人化数据借助于相应的专门的访问密码加载到述及的存储器中。
最好,述及的第三阶段具有这样的步骤,即在当对有关至少一个述及的函数中的个人化数据加载时,就要修改专门赋给述及的功能的述及的访问密码的计算密钥。
根据本发明的一个特征,上面定义的方法的第一的初始化阶段包括●至少一个第一的初始化小阶段,在于确定用于同一实体的那些装置的总体所共同的至少一个秘密数据。
●至少一个第二的初始化小阶段,其中所有各步在于对于述及的整体中的每个装置,有a)阅读由述及的那个装置所承载的一个专门的识别数据,b)根据述及的共同的秘密数据和述及的识别数据,计算第一个专门个人化密钥,c)将述及的识别数据和述及的第一个专门个人化秘钥存储在述及的存储装置中,以及●至少一个第三的初始化小阶段,其中的各个步骤在于对于述及的整体中的每个装置,有d)从述及的装置取出专门的述及的识别数据,e)根据述及的共同的秘密数据和述及的专门的识别数据,在第一个外部工具中计算述及的第一个专门的个人化密钥,f)根据述及的专门的第一个个人化密钥和由述及的装置所传输的一个随机数,在述及的外部工具中计算第一个访问码。
g)从述及的工具向述及的装置传输第一个访问码以及个人化参量,述及的个人化参量中不同于述及的第一个个人化密钥具有第二个个人化密钥。
h)根据述及的第一个专门的个人化密钥和述及的随机数,在述及的装置中计算第一个访问码的验证码。
i)在述及的装置中,根据这些码的相关性将第一个访问码和述及的验证码比较。
j)将述及的个人化参量存储在述及的存储装置中,并k)在述及的存储器中用述及的第二个个人化密钥代替述及的第一个个人化密钥。
根据一种实施方式,述及的方法的特征在于本方法中具有第四个小阶段,是将一个公共基本密钥初始地存储在述及的存储装置的一个非易失存储器中,特征还在于在步骤a)和b)中有●将述及的秘密数据和述及的基本密钥提供给第二外部工具,●通过述及的第二工具读取述及的识别数据,●通过述及的第二工具计算述及的专门的个人化密钥,●用述及的公共基本密钥在述及的第二外部工具中加密述及的专门的个人化密钥。
●将述及的加密计算的结果从述及的第二工具中传输到述及的装置中,且●在述及的装置中,通过述及的基本密钥,对述及的结果解密以恢复述及的专门的个人化密钥。
根据另一个实施方式,述及的方法的特征在于其中具有第四个小阶段,是将一个共同的基本密钥初始地存储在述及的存储装置的一个非易失存储器中,特征还在于述及的第一小阶段还用述及的共同基本密钥的方式加密述及的共同的秘密数据,并将加密计算的结果用于第二外部工具,特征还在于述及的第二小阶段还有a)通过述及的第二工具读取述及的专门的识别数据,并将述及的识别数据和述及的加密计算结果传输到述及的装置中。
b)在述及的装置中用述及的库密码将述及的结果解密,以恢复述及的共同的秘密数据,然后计算述及的专门的个人化密钥。
本发明还有一个目标在于一个安全的通信系统,其中具有上面所定义的那种装置的整体以及至少一个个人化参量的初始化工具用来实施上面定义的方法的第三小阶段。
根据本发明的一个特征,述及的系统还具有产生参量的一个初始化工具,用来实施上面所定义的方法的第二个小阶段。
最后,本发明的一个目的在于一个安全的通信系统,其中有装置整体,装置整体中有实施如前面所定义的鉴别功能的装置,以及至少一个验证单元。
本发明的其它特征和优越性将从后面作为例子给出的实施方式的描述中得出,述及的描述用下列附图示出

图1是一示意图,示出用于控制访问的根据本发明的通信系统的总图。
图2是一方框图,示出便携式电子装置的参量产生的初始化机构。述及的便携电子装置是图1所示系统的一部分。
图3是为一方框图,示出用于初始化构成图1所示的系统的一部分的便携电子装置的参量的机构的一个变种;图4为一方框图,示出用于构成图1所示系统的一部分的便携电子装置的个人化参量的初始化的机构;以及图5是一总的方框图,简要地示出构成图1所示的系统的一部分的便携电子装置的各初始化小阶段,假定图1所示的访问控制系统给出有条件地访问某一功能,这个功能在图1中用方框1表示,应将术语“功能”看作是非常宽范围的含义,指明访问是以一授权作条件,授权使对装置(卡)的验证的鉴别参予进去,而由此提出请求。最好还有对请求访问这个功能的个人的进行识别,以便知道其中请求是否是合法的。
述及的功能可以是多样的,例如,访问一个区域、一个信息网,或者是一个计算机,一个经济范畴的交易(由电话购物、家庭银行业务、交互的电视游戏、付费电视)等,还有鉴别功能,或是对个人,或是对信息(电子签名)鉴别,清楚地落到本发明所达到的范围内。
根据图1所示的实施例,访问控制系统中第一单元或便携装置2,以及至少一个第二验证单元3。在后面又将便携装置2称为“卡”。根据本发明的访问控制系统可以具有很大数量的卡2和一个或多个验证单元3,然而在所有情况下数量都较少。本发明对卡2和验证单元3的数量都没有限制。
述及的卡2例如是一个计算器或是一个信用卡,其中具有一个键盘4,和各种功能键5,键盘4用来输入信息,例如个人识别号PIN。其中还有一个显示屏6,例如液晶显示屏,还装有集成电路,集成电路中包括程序化的微控制器7以及ROM型的非易失存储器8和可编程存储器9,它由RAM存储器构成,通常可能是EEPPOM存储器。非易失存储器8和可编程存储器9都不能从外部的卡来访问,而微控制器7的数据和地址的总线也不能从外部访问,以使不能从外部阅读和不正当地修改存储器8和9中的内容信息。
述及的非易失存储器(ROM)8的区域有一个程序区和一个数据区。
述及的程序区有程序指令,其功能分别如下1、安全功能
●持有者的识别●通过验证单元相比鉴别持有者。
●对验证单元的鉴别和对个人化单元的鉴别●信息鉴别●加密/解密●可能的电子签名●……2、个人化功能●制造时的个人化功能,●一个或多个客户的各个个人化时的个人化功能3、有关卡的应用的功能4、通信功能●与用户的通信显示器、键盘,●与验证单元或个人化单元的通信*红外*DTMF*与阅读器的通信●和智能卡的通信●等等……述及的数据区有制造掩码所共用的数据1、ROM密钥(KROM)2、软件版本号3、等等……将RAM型和可能的EEPROM可编程存储器区9存储的信息描述于后1.在对产生的参量和个人化的参量进行初始化的各个小阶段时所引入的数据这些数据是根据安全等级和应用而构成的。一个数据区域的修改是以对个人化请求者实体的鉴别为条件的用卡、签名等生成的随机函数的访问码。
这些数据可以是秘密的(密钥)亦可是可查阅的,但是不能被修改,这所涉及的是*个人化密钥*有关安全功能的密钥实体的鉴别、信息的鉴别、随机事件的生成,*有关应用的数据信息的内容、请求的安全功能的类型,……*有关将卡在数据应用中使用的数据个人识别号(PIN)所要求的长度、随机数的长度、访问码的格式,……*所有应用所共用的数据PIN的值、时钟的值、计算器的值、标准信息内容。
2.工作数据述及的卡2还具有通信装置10,可以和验证单元3,或与制造工具、或与个人化工具进行通信,在后面将对此进行描述。这通信可以是直接的,也可以是通过或长或短距离的传输连接。通信装置10可以有多种例如双向的电缆连接、DTMF式的双向电话连接、远红外双向连接,在称为“连接方式”的双向连接中,卡插入和单元3相连的光学接收装置中的相应的阅读器中,如在文献EP-A-0 399 897中描述的在屏幕6上对读出信息加密的装置中,或者是其它任何现有技术的传输装置中。
最后,还要有一个电能源(未画出),例如一小尺寸电池,用来对卡2的电路供电,并能使其独立工作。
述及的单元3中首先包含有接口装置,用来通过通信装置10和卡2进行通信。述及的接口装置中图中用方框12表示,可以表示成多种形式,可以是一个专门的阅读器,亦可以是一个计算机终端,一个插入网络的个人计算机,等等……。接口装置12的专门性使之保证通过通信装置10能和与之相连的一个或多个卡2进行通信。
接口装置12中还可具有一个键盘13和一个显示屏14,用来让用户输入与单元3的部分15通信的信息,例如口令或有关功能1的鉴别数据。然而也可以用别的方式引入这些数据,特别是不用用户手工参予的自动方式,例如简单地将卡2引入接口12,或是用一个功能键5的方法操作一个调制的红外线发射。
和单元3的部分15通信的接口12称为“服务器”,这个通信用连接16表示,可以使用适当的方式,或长或短。在这个连接上通过的信息特别是服务器15中的控制口令,在服务器中鉴别和使用的数据。
述及的服务器15特别具有一个处理器17和一个存储器18。处理器17能够有条件地释放由卡2所提出的访问请求所涉及的功能1。
卡2的微处理器7是程序化的,用来和验证单元3相连,保证多种意义上的通信的安全,例如对持有卡2的用户的鉴别、信息的确认。交易的安全化等…。这些鉴别机构,确认机构等等都是技术人员熟知的,在本专利申请中不作详细描述。这些机构都借助于在卡2或在单元3中,经由带有公共密钥和专用密钥的算法或带有安全密钥的算法对多个信息加密/解密,所有的密钥都存储在和微处理机7相连的可编程存储器9中和/或存储在服务器15的存储器18中。
后面描述本发明实施安全密钥的算法,但需明白,本发明并不限制在这类算法中。
这样,例如用密钥的算法的鉴别过程如下在用户为验证单元所识别以后,同时对卡2和验证单元3中的变量用这种算法和一个共用的密钥KSEA加密,然后,一般是在验证单元3中将从这个变量加密得到的两个口令ASEA比较。在非同步系统中,这个变量是在验证单元3中生成的随机数,并将之传输给卡2。在称为同步的系统中,这个变量是动态的,就是说,它在卡2和单元3中根据时钟计算器和/或事件计算器的内容随时间变化。同步系统假定在一定的容许偏差范围内,卡2的时钟计算器和/或事件计算器的内容和构成验证单元3的一部分的数据库的和卡2相关的地址中的内容一致,验证单元为了实施鉴别过程而去访问它。在文献EP-A-0 338 936和1996年4月17日请求号为No 96 04797的法国专利对于鉴别机构已有详细描述的示例,可以参考。
正如前面已经指出,存储在卡2和服务器15中的加密和/或解密的一个或多个密钥可以是静态的,亦可是动态的。静态是在整个生产期间,密钥保持不变,动态是密钥的值随时间而演化。动态密钥的值可以是时钟计算器和/或事件计算器的内容的函数,如象在1996年4月17日提出的请求号为No 96 04798的法国专利所描述的那样。
不管是静态密钥还是动态密钥,在对卡2的生产参量或个人化参量初始化的小阶段内,都需要将构成静态密钥或初始动态密钥或能计算初始动态密钥的一个根加载到卡2的可编程存储器9中。在一个具有很大数量的卡的系统中,例如成千上万张卡的系统中,对每一个卡的本身的不同于任何别的一个卡的一个或多个密钥的管理就提出了安全的问题。这实际上希望卡的最终使用者得到卡所提供的保证,不会因为对卡的生产参量和/或个人化参量的初始化的加载实体在上游实施的程序操作而产生危险。
安全通信系统的现实发展进一步强调这些安全问题。安全通信系统应该能够满足和应用多重性相关的需要,满足对于一个应用的安全级别的多重性的需要。为此例如对于一个给定配置的安全系统,即卡和为保证给定的功能而植于卡2中和验证单元3中的相应的软件的整体,这样的一个卡可以用于不同的应用,例如在信息网或类似物鉴别以后能够访问这个网的多个资源(对每个资源的访问需要一个不同的鉴别)电视购物等…,还有,对于每种同样的应用,可以有多个安全级别,例如按照用户的种类,使得所有的卡都应根据其最终持有人而个人化。
同一安全系统的应用的多重性与系统在其制造到供给最终用户的使用所经历的各个活动阶段相结合的同一应用的安全级别的多样性,可以造成对于同一系统同时地或不同时地有安全问题管理的多个管理者或多个负责管理者。
若考察一个简单的情况安全系统只有单一的一个应用,一个卡在其有效寿命阶段在一定数量的实体间活动,其中有-制造商或供应商,将安全系统卖给其客户;
-一个总管理人,他是客户的安全负责人,他可以有多个地理场所,每个场所都有相应的安全系统的管理组织,每个场所的管理组织相对于其它位置的管理组织都是独立的。
-多个区域管理人,公司的地理场所的每个安全系统组织的负责人;以及-各个最终使用者,他们是各个卡2的持有人,他们在给定的一个或多个地理场所使用这个卡。
这样的安全系统的管理假定一旦供应商或制造商将一批卡卖给一个客户,则只有总管理人能够使用这批卡,而另一个客户则不能使用,因此必须有-一方面,制造商或供应商在生产过程中对特定用户的一批卡初始化一定数量的共用参量,用来使给定的一个客户只有他才能在这个卡中初始化其个人的参量。
-另一方面,保证由上述客户的初始化操作的不可逆准则一旦总管理人将这些卡个人化了,则这些卡就不能再被制造人或供应商所使用。
一旦这批卡被持有,则总管理者就将对所有场地所共同的个人化参量在这些卡中初始化,然后将这些卡分配给多个场地,每个场地的区域管理人将与场地有关的个人化参量初始化。如果一些卡要在多个场地使用并被多个场地所承认,则首先将它交给第一个区域管理者以将第一场地的个人化参量初始化,然后交给第二个场地的管理者以将第二个场地的个人化参量初始化,如此进行……。在这种背景下,就需要保证管理装置的独立性,就是说-一个X区域管理者只能对X场地的个人化参量初始化对X场地的个人化参量初始化的事实不能导致对Y场地参量的初始化,也不能导致知道Y场地的个人化参量。
-总管理人的所做所为也不导致对各场所的个人化参量的知晓,这就保证了在每个场所的管理的独立性。
现在参照图2至4,描述实施生产参量和个人化参量初始化机构方式的各种功用。
图2为一方框图,示出在生产过程中对数据或参量初始化的过程,后面将这些参量称为生产参量,对于用于给定的用户专用的那批卡都是共同的。在这个图中,左边的一列示出的是由卡的供应商所实现的操作,就是说其实体是安全系统向用户提供的责任。中间一列示出的是由卡2的制造工具20所实施的操作,制造商和供应商可以是同一个实体,也可以不是。最后,右边的一列示出在卡2中所实施的操作。制造商所使用的制造工具20中具有材料机构和约定的软件,在这里不必再述,可以能建立一定数目的数据,并将之传给卡2,以由此对可编程存储器9编程。
在图2的左边的那列中,有一定数目的密钥KROM、KPEM、KALE和KMES,对用于一个给定的用户的那批卡都是共同的。
述及的KROM是由供应商确定,只有他自己知道。这个密钥KROM是在掩装集成电路时植入卡的非易失存储器8的,但是若制造商和供应商不是一个实体时,制造商是不知道的。为此,密钥例如可以是用加密的形式集结于制卡工具的控制软件中。
密钥KPEM、KALE和KMES也都是由供应商选择,用他自己加密的形式引入制卡工具的控制软件中。这三个密钥的值都与那批卡特定的客户通信。述及的密钥KPEM是个人化总密钥,这将在后描述,可根据其序列号生成对每个卡所专有的个人化密钥。述及的密钥KALE是一个能为卡生成随机数的密钥,而述及的密钥KMES是用来在卡中加载一个字母和一些信息的密钥。
如在图2的中间一列所示,与这个给定的卡相关的序列号NS由制造工具20阅读,这个号码NS借助于个人化总密钥KPEM(方框100),经历一个带有加密E的运算的算法。这个加密的结果是一个对这个卡来说是专门的特殊的个人化密钥,即KPER,它在101处借助于一个算法和密钥KROM进行逆运算E-1以产生一个数据E(KPER),密钥KPER被用来分别从密钥KMES和KALE借助于逆运算E-1,在102和103处生成数据E(KMES)和E(KALE)。在此前和此后,如B=E[Kx](A)是借助于一个密钥Kx加密一个数据A的结果,则E-1表示逆运算A=E-1[Kx](B),通过密钥Kx在输出处得到数据A,同时将数据A应用到数据B的加密算法的输入处。
对于一个数据卡2,生产参量(方框104)中有序列号NS,方框101、102或103的输出数据,以及制造工具的内部时钟计算器,用来对卡2的时钟初始化,特别是若是在系统应用变量和/或动态密钥的情况下。
在将参量置零和将有关卡2的内部参量初始化以后,便将这个卡置于接收一个制造帧的接收等待状态(方框105)。在步骤106中,卡2接收由前面(方框104)中列举的数据组成的制造帧。微控制器7用已经程序化的软件在随后的107处通过操作E从数据E(KPER)和密钥KROM出发计算密钥KPER。同样在108处,从数据E(KMES)和密钥KPER出发用运算E计算密钥KMES。在109处,从数据E(KALE)和密钥KPER出发,计算密钥KALE。
在步骤110中,序列号NS、密钥KPER、KALE和KMES,都存储在存储器中,已准备将卡交给用户,让他进行个人化。
在上述过程中,必须知道制造帧(方框104)的数据格式,才能将参量加载到一个卡中,因为这个操作并不借助于一个访问码。但一个知道这个制造帧的数据格式的盗用者仍不能进行个人化并使用这个卡,因为他不知道密钥KROM。
图3描述生产参量初始化过程的一个实施变种。这个变种的优点在于在制造工具20的生产参量的初始化软件中并不引入密钥KROM和KPEM。为此,供应商(左侧栏)采用专用的软件方法,分别从数据KPER、KMES和KALE以及密钥KROM出发计算数据E(KPER)、E(KMES)和E(KALE),在111、112和113处用运算E-1计算这些数据之后,供应商便将这些数据引入制造工具的生产参量的初始化软件中(步骤114)。
在工具20在115步骤中阅读了所涉及的卡的序列号后,在116步骤中将参量置零和将卡的内部参量初始化之后,制造工具20便将生产参量传输给卡(步骤117)涉及到序列号NS、数据E-1(KPER)、E-1(KMES)和E-1(KALE)以及内部时钟计数器的状态。在相应的帧接收之后(步骤118),微控制器6用运算E借助于数据E(KPEM)和密钥KROM计算密钥KPEM(步骤119),此后,用运算E借助于数据NS和个人化总密钥(步骤120)来计算卡的专用个人化密钥KPER。最后在步骤121和122中,微控制器7用运算E分别从数据E(KALE)和E(KMES)以及存储在卡的非易失存储器8中的密钥KROM出发计算密钥KALE和KMES。在步骤123中,将数据NS,KPEM、KALE和KMES存储到卡2的可编程存储器9中。这些数据和对照图2所描述的生产参量初始化过程所得到的数据是一样的。
当对为一个客户所用的那份卡的生产参量初始化时,便将这些参量和这份卡的公共密钥、即个人化总密钥KPEM、能生成随机数的密钥KALE和能加载字母和信息的密钥即KMES,交付给这个客户。每个卡中所存储的密钥KALE和KMES对于这份卡来说是共同的,而密钥KPER和序列号NS对卡来说是专用的。
另外,每个卡2中还存有一个码或一个号,用来标识在掩装这些卡时植入这卡的集成电路中的软件的版本。实际上交付同一个客户使用的同一份卡的内部的软件版本可以是这个和那个不同。通常可以有多组卡,根据客户所表明的对卡的使用装备有不同版本的软件。供应商将卡上面所显示出来的植入卡中的每种软件版本的码或号提供给卡的客户。这个客户也要根据植入卡中的软件的版本在卡中使用个人化需要的软件。
客户对卡2的个人化过程在图4中示出。在图4中,左边的一列示出由个人化工具30所实施的操作,而右边的一列是在卡2中所实施的操作。个人化工具30的结构和验证单元3的结构类似,就是说它具有和卡2的通信装置、一个信息处理器,一些存储器和一个数据库。述及的存储器中特别装有根据装在卡中的软件版本对卡个人化所需的一个或多个软件;而数据库中有密钥KPEM、KALE、KMES的值和根据植入卡2中的软件版本而加载到卡2中的个人化参量。
在图4中,在步骤200中,述及的卡处在等待来自个人化工具的通信开始帧状态。在步骤201中,个人化工具开始和要个人化的卡的通信,并发送通信开始帧INIT-MAT。在步骤203中,卡接收到通信开始帧INIT-MAT,并向个人化工具发送一个识别帧IDENT-MAT,其中含有卡所含有的软件版本的码或号。在步骤203中,个人化工具30接收到识别帧IDENT-MAT,并将软件版本号输入到数据库中以能在其中阅读。在步骤204中,个人化工具30发送卡在步骤205中要接收的软件初始化帧INIT-LOG,于是就过渡到步骤206。
在步骤206中,述及的卡通过运算E由密钥KALE(方框207)计算一个随机数,然后通过对卡的序列号NS的加密借助于同一个密钥计算数据E(NS),该密钥同样是通过软件的版本号NL的函数F借助于在207中计算的随机数加密的结果。在208和209这些加密操作之后,在步骤210中卡发送一个标识帧IDENT-LOG,其中有随机数和E(NS)。个人化工具30在步骤211中接收到这个帧,并在212中借助于由卡发送来的随机数对号NL进行一个运算F,而后在步骤213中借助于在212中实现的运算的结果对E(NS)进行运算E-1生成卡的序列号NS。将在个人化过程中的卡的序列号NS提供给数据库,以向客户保证每个卡一个个人化数据表。在步骤214中,个人化工具借助于工具30的数据库提供的个人化总密钥KPEM通过对序列号NS的加密操作E计算对卡专用的密钥KPER,然后述及的工具借助于密钥KPER通过对随机数的加密F计算鉴别口令APO(这构成卡的个人化的访问码)APO=F[KPER](随机数)。
在步骤216中,个人化工具从在步骤215中计算的口令和从数据库中接收到的个人化参量出发组成卡的个人化数据。这些个人化数据中有个人化操作码、个人化工具的鉴别口令APO、一个用来替换初始个人化密钥KPER的对这个卡专用的新的个人化密钥NKPER以及各个个人化参量;如有和验证单元3相对应的计算验证口令ASEA的一个或几个密钥KSEA(APEA=E[KSEA](随机数))。
在步骤217中,将这些个人化数据以多帧方式传输到卡。
在步骤218中,述及的卡接收到个人化帧,验证所有的个人化操作码、存储所接收到的数据,并向个人化工具发送一个接收确认。
在步骤219中,述及的卡通过加密随机数根据在步骤110或113中以存储在其存储器中的专门个人化密钥KPER的函数F计算鉴别口令APO的验证口令APCAPC=F[KPER](随机)。
在步骤220中,卡验证个人化工具30接收到的鉴别口令APO和由卡计算的验证口令APC是相关的,在证实的情况下,在步骤221中,卡存储个人化数据相关例如可以是两个口令是相同的,如图4所示。但事实上,相关也可以是这两个口令是通过别的预定的关系相联系的。
最后,在步骤222中,卡用从个人化工具接收到的新的个人化密钥NKPER代替旧的密钥KPER。这个新的个人化密钥NKPER是供应商所不知道的,于是他立刻就不能访问这个用户的个人化数据。对这些个人化数据的读和/或写访问需要由个人化工具向卡提供一个新的鉴别口令NAPO=F[NKPER](随机),这个口令和在卡中计算的验证口令NAPC相关,如在219中所指出的那样,NAPO和NAPC是在卡中生成并传输给个人化工具的一个新的随机数的基础上计算得到的。
然而,公共个人化密钥NKPER既不能读在步骤221在卡中装载的第二个人化密钥KPERX,KPERY,…等等,也不能读取其它密钥。
实际上,密钥不能读取是因为微控制器7中的程序并不包括任何用于读取这些参量的指令。
在步骤222之后,则总管理人就将这些卡交给地区管理者,其中每一个可用类似于图4所示的过程,利用各第二密钥KPERX,KPERY等将他的所负责的场所的专门的个人化加载到卡中。对此不再做新的详细描述。为此,专门用于卡个人化的第二密钥在总管理者和地区管理者之间秘密通信。
地区管理者通过发送给他的第二密钥以专用于该场所的个人化数据装载该卡,例如与该场所的验证单元相对应的用于计算一个鉴别口令的鉴别密钥。这样X地区的管理者就能够装载一个鉴别密钥KSEAX,Y地区的管理者就能够装载一个鉴别密钥KSEAY,等等。在对给定的场所X的卡进行个人化的过程中,地区管理人将可能用一个新的第二个人化密钥NKPERX代替他所接收到的总管理人对有关这个场所的第二个人化密钥KPERX。这就禁止总管理人再以读取和/或修改的方式访问这些已修改的第二个个人化密钥的卡的个人化参量。
修改第二密钥要确保卡的各段和各函数之间的密封。在修改第二密钥KPERX,KPERY等由(NKPERX,NKPERY等代替)时,确保不会损坏该段的其它秘密数据。这种损坏是有限的,因为即使知道相应的第二密钥也不能读取秘密数据。从而保证专门访问每个段的个人化,专门访问具有密钥KPER、NKPER的公共个人化数据。
在各段由第二密钥KPERX,KPERY,NKPERX,NKPERY个人化以后,最好是将卡专门的密钥KPER,NKPER重写以便如需要对卡的所有个人化参量重新初始化。在出现异常情况下非常有利,以防止设备永久地不能使用。
然而,在一种变形中,这种可能性将被禁止。
图5中的总的程序方框图示出在卡2中所执行的程序的主要阶段,分成多个段,它们在以共同的个人化参量初始化以后,由每段专用的函数初始化以便利用每个段专用的函数。
程序在步骤300开始,在步骤301,执行的一个检验用来确定是否在置零(“RESET”)后进行卡的第一次开始。
在证实的情况下,存储器在步骤302中重新置零,然后过渡到303,确定生产参量(由制造商初始化的参量)初始化的标记是否处在活动状态。如在301中的回答是否定,则直接过渡到检验步骤303。
如果在303的检验的答案是否定的话,则程序进入生产参量初始化的等待状态(步骤304)。后面的步骤305相当于参照图2和图3所描述的在卡2中生产参量的初始化。当这个初始化进行时,标记在步骤306中是活动的,且程序又回到检验303的入口处。
当在303的检验的答案是肯定的,就是说,生产参量已经初始化,则程序过渡到一个检验307中,以确定表示客户对共同的个人化参量的初始化的标记是否为活动的,若答案为否定,则程序进入共同的个人化参量初始化的等待状态(步骤308)。接下去的步骤309对应于参照图4所描述的在卡2中共同个人化参量的初始化。这些共同的个人化参量可以有对于每个程序段或每个功能所专用的可编程个人化密钥KPERX、KPERY。当这个初始化完成时,在步骤310中,一个标记是活动的,且程序又返回到检验307的输入处。
当在307的检验的答案是肯定的,则程序过渡到检验步骤311,以确定表示对于卡的不同程序段的本身的或专门的个人化参量的初始化的标记是否为活动的。如答案是否定的,则程序进入对程序段专门的个人化参量的初始化的等待状态(步骤312)。步骤313对应于在卡2中对程序段专门的个人化参量的初始化。对于每个程序段来说初始化从属于将正确访问码APX、APY(即分配给这个段的密钥KPERX、KPERY的函数)提供给述及的卡,从属于将卡所提供给个人化工具的随机数提供给卡,如参照图4所描述的。根据各种情况,这种初始化可以是由总管理人实现,也可以在不同地理场所由地区管理人来实现,对此前面已有叙述。在专门的个人化参量的初始化过程中,责任管理人可以用一个新的专门的个人化的密钥NKPERX、NKPERY取代已经在步骤309中加载的对于考察的程序段的起始的个人化密钥KPERX、KPERY。只有这个新密钥的持有人能够生成新的访问码NAPX,NAPY,并在后面访问(根据处理装置的程序化读出和/或写入)相对应的程序段的专门的个人化数据,且如专门的个人化密钥KPER的持有人(或者NKPER的持有人,如NKPER也已被修改)不知道新的专门的个人化密钥,则不能访问。
当所有程序段的个人化参量的初始化在进行时,则一个标记在步骤314中是活动的,在检验步骤311中的答案是肯定的,且程序过渡到步骤315,表示最终使用者访问由这个卡的程序所实施的卡的各种不同的功能。
如前面所提出的,本发明并不限于利用密钥的对称算法,亦可应用于借助于相对于公共密钥和私人密钥为非对称的算法对卡的参量初始化的机构。在这种情况下,公共密钥存储在卡2或装置2中,随机数在卡2或装置2中产生,并且私人密钥存储在个人化工具或个人化工具中的智能卡中。
还要注意,所描述的实施方式仅仅是示例,可以对此修改,特别是用等效的技术代替,而不超过本发明的范围。
权利要求
1.一种便携式通信安全保密电子装置,带有至少一个电子单元,用于至少实施一种功能,其中具有*数据处理装置,*带有至少一个外部工具的接口装置,用来将数据加载到述及的存储装置中。*数据处理装置,其中有初始化装置,可用来根据个人化访问密码的应用修改述及的访问码和将个人化数据加载到存储装置中,述及的安全保密电子装置的特征在于述及的装置能够实施多种功能(X,Y,…),且其中具有*多种秘密数据(KPERX,KPERY,…)的加载装置(KPER;NKPER),述及的多种秘密数据分别表示不同的专门访问密码(APX,APY,…),而每一个访问密码是分配给述及装置的专门功能的(X,Y,…)的个人化的,以及*禁止装置(7;222),用来根据分配给述及的功能的专门的访问码的应用仅授权述及的处理装置去访问对一个功能是专门的个人化数据的加载和/或读取。
2.根据权利要求1的装置,其特征在于述及的禁止装置(7)是用来禁止读取访问述及的秘密数据(KPER,KPERX,KPERY,…)中的任意一个。
3.根据权利要求1或2的装置,其特征在于述及的加载装置中具有至少一个可编程的专门的秘密数据(KPER),表示对述及的各功能的整体为共同的专门的密码(APO),特征还在于述及的禁止装置是用来禁止述及的处理装置(7)用述及的专门的密码(APO)去访问述及的专门的个人化数据。
4.根据权利要求3的装置,其特征在于述及的数据处理装置(7)能授权修改秘密数据(KPERX,KPERY),述及的秘密数据(KPERX,KPERY),表示对一个功能(X,Y)是专门的一个访问码,且是通过述及的专门访问密码(APO)根据述及的专门的访问码(APX,APY)的应用加载到述及的存储装置中。
5.根据权利要求4的装置,其特征在于所述加载装置通过所述可编程的专门秘密数据(KPER,NKPER),授权删除先前装载的专门个人化数据(KSEAX,KSEAY,…)并加载新的专门秘密数据。
6.根据权利要求3至5中任意一项的装置,其特征在于述及的专门的访问码(APO)是一个访问述及的装置的功能的整体共用的个人化数据的个人化的访问码。
7.根据权利要求3至6中任意一项的装置,其特征在于述及的存储器中至少有一个非易失存储器(8)和一些初始化装置(7),述及的非易失存储器中存储一个基本密钥(KROM),述及的初始化装置(7)中具有第一装置(7,107),用来根据述及的基本密钥(KROM)和一个初始的秘密参量(E(KPER);E(KPEM))来计算述及的专门秘密数据(KPER)的起始值。
8.根据权利要求1至7中任意一项的装置,其特征在于述及的禁止装置(7,222)是用来从述及的存储器(9)中抹去表示一个访问码的述及的秘密数据(KPER,KPERX,KPERY)中的一个,以根据述及的访问码(APO,APX,APY)将一个表示一个新的访问码(NAPO,NAPX,NAPY)的新的秘密数据(NKPER,KPERX,KPERY)的加载。
9.根据权利要求1至8中任意一项的装置,其特征在于述及的秘密数据(KPER,NKPER)是计算访问码(APO;NAPO)的验证码(APC,NAPC)的一个计算密钥,述及的数据是表示述及的访问码的。
10.根据权利要求9的装置,其特征在于述及的处理装置(7)中有第二装置,它用来通过计算述及的密钥(KPER,KPERX,KPERY,…)对一个变量加密,计算述及的验证码(APC,NAPC)。
11.根据权利要求1至10中任意一项的装置,其特征在于述及的个人化数据中至少有一些鉴别密钥(KSEAX,KSEAY),其中一些与另一些不同,其每一个都分配给述及的功能中的一个;特征还在于述及的处理装置(7)中有第三装置,用来根据述及的鉴别密钥(KSEAX,KSEAY)中的一个,对应于验证单元(3)计算一个鉴别码(APEA)。
12.根据权利要求1至11中任意一个的装置的初始化方法,其特征在于这个方法中有-一个第一的初始化阶段,在于确定一个对这述及的装置是专门的个人化密钥(NKPER),并将之存储在述及的存储器(9)中,-一个第二的个人化阶段,在于借助于述及的专门的个人化密钥的功能的专门的访问码(NAPO)将述及的各功能的共同的个人化数据以及计算专门访问密码(APX,APY)的密钥(KPERX,KPERY)加载到述及的存储器中,述及的专门访问密钥(APX,APY)中的每一个被分配以加载个人化数据,以及-一个第三的个人化阶段,在于对于每个述及的功能(X,Y),用相对应的专门的访问密码(APX,APY)将相对于述及功能的个人化数据加载到述及的存储器中去。
13.根据权利要求12的方法,其特征在于述及的第三阶段中有一步骤是在将相对于述及的功能(X,Y)中的至少一个的个人化数据加载时,修改分配给述及的功能的计算述及的专门访问密码(APX,APY)的述及的密钥(KPERX,KPERY)。
14.根据权利要求12至13中任意一项的方法,其特征在于,在第一的初始化阶段中有●至少一个第一的初始化小阶段,在于确定对同一个实体所用的所有装置的整体来说是共同的至少一个秘密数据(KPEM,E(KPEM)),●至少一个第二的初始化小阶段,其中的各个步骤在于对述及的整体中的每个装置是a)读取由述及的装置所承载的一个专门的识别数据(NS),b)根据述及的共同的秘密数据(KPEM;E(KPEM))和述及的识别数据(NS),计算专门的第一个个人化密钥(KPER),c)将述及的识别数据(NS)和述及的第一个专门的个人化密钥(KPER)存储在述及的存储装置(9)中,以及●至少一个第三的初始化小阶段,其中的各个步骤对于述及整体中的每个装置有d)从述及的装置(2)中取出述及的专门的识别数据(NS),e)在第一个外部工具(30)中,根据述及的共同的秘密数据(KPEM)和述及的专门的识别数据(NS),计算述及的专门的第一个个人化密钥(KPER),f)在述及的外部工具(30)中,根据述及的专门的第一个个人化密钥(KPER)和由述及的装置所传输的随机数,计算第一个访问码(APO),g)将述及的第一访问码(APO)以及个人化参量从述及的第一工具传输给述及的装置(2),述及的个人化参量中有一个不同于述及的第一个个人化密钥(KPER)的第二个人化密钥(NKPER),h)根据专门的述及的第一个个人化密钥(KPER)和述及的随机数,在述及的装置中计算述及的第一个访问码(APO)的验证码(APC),i)在述及的装置中,根据这些码的相关性将述及的第一个访问码(APO)和述及的验证码(APC)相比较,j)将述及的个人化参量存储在述及的存储装置(9)中,以及h)在述及的存储装置(9)中,用述及的第二个个人化参量(NKPER)取代述及的第一个个人化参量(KPER)。
15.根据权利要求14的方法,其特征在于其中具有第四个小阶段,在这一小阶段中,将一个共同的基本密钥(KROM)初始地存储在述及的存储装置的一个非易失存储器中(8)中,特征还在于在步骤a)和b)中有●将述及的秘密数据(KPEM)和述及的基本密钥(KROM)提供到第二外部工具(20)中,●用述及的第二工具读取述及的识别数据(NS),●用述及的第二工具装置(20)计算述及的专门的个人化密钥(KPER),●在述及的第二外部工具(20)中,用述及的共同的基本密钥(KROM)对述及的专门的个人化密钥(KPER)加密,●将述及的加密的结果(E(KPER))从述及的第二工具(20)中传输到述及的装置(2)中,●在述及的装置中,用述及的基本密钥(KROM)对述及的结果(E(KPER))解密(107),用来重新组成述及的专门的个人化密钥(KPER)。
16.根据权利要求14的方法,其特征在于其中具有第四个小阶段,初始地将一个共同的基本密钥(KROM)存储在述及的存储装置的一个非易失存储器(8)中,特征还在于述及的第一个小阶段还在于用述及的共同的基本密钥(KROM)对述及的共同的秘密数据(KPEM)加密,并将述及的加密的结果(E(KPEM))应用于第二外部工具(20)中,特征还在于述及的第二小阶段a)用述及的第二工具(20),读取述及的专门的识别数据(NS),并将述及的识别数据(NS)和述及的加密的结果(E(KPEM))传输到述及的装置中,b)在述及的装置(2)中,用述及的基本密钥(KROM)对述及的结果(E(KPEM))解密,以重新构成述及的共同的秘密数据(KPEM),然后再计算述及的专门的个人化密钥(KPEM)。
17.一种安全保密通信系统,其特征在于这个系统具有根据权利要求1至11中任意一项的装置的整体以及至少一个个人化参量的初始化工具(30),用来实施根据权利要求14至16中任意一项的方法的述及的第三个小阶段。
18.根据权利要求17的安全保密通信系统,其特征在于该系统还具有一个生产参量的初始化工具(20),用来实施根据权利要求14至16中任意一项的方法的述及的第二个小阶段。
19.一种安全保密通信系统,其特征在于其中具有根据权利要求11的装置的整体以及至少一个验证单元(3)。
全文摘要
一种带有至少一个电子单元的便携的通信安全保密电子装置中有数据存储装置(8,9),带有至少一个外部工具的接口装置(10)将数据加载到述及的存储装置中,以及数据处理装置(7)有一些初始化装置,能用来根据个人化的访问密码的应用修改述及的访问码、将个人化数据加载到述及的存储器中。这种装置有多种功能和不同的可编程访问密码(K
文档编号G06F21/22GK1271448SQ9880932
公开日2000年10月25日 申请日期1998年8月19日 优先权日1997年8月21日
发明者伊夫·路易斯·加布里尔·奥德伯特 申请人:阿克蒂夫卡德公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1