用于保护秘密信息免遭分析破解的系统和程序的制作方法

文档序号:6416495阅读:224来源:国知局
专利名称:用于保护秘密信息免遭分析破解的系统和程序的制作方法
技术领域
本发明叙述一种用于保护电子装置尤其是芯片卡上的秘密信息免遭分析破解的系统和程序。
秘密的码存在芯片卡上,这些密码被用来保护对与安全有关的功能和数据的访问。为此,要借助密码将未经编码的数据转换转换为经过编码的数据。
为了进行编码和解码,需要有一种或两种密码。如果例如说间谍发现了一种编码算法的密码,他就可以将编了码的数据也就是被保护的数据解码,从而找出数据的内容并可在必要时改变密码。
有许多可找出芯片卡上密码的程序。这些程序之一就是利用专门为此开发的监测技术来找出密码。在这方面,为了能够从监测所得的信息中找出密码,常起用尽可能多的编码运算方法。在这种情况下,利用测量例如说芯片卡的电流供应进行分析秘密数据。但是,这些测量结果常与噪声叠加在一起。这就需要连续不断地重复使用密码,以便能够滤除噪声。
对这种监测测量的安全性防范基本上就是必须将密码保护得不受任何监测。
为了保证到这一点,下面是利用现有技术当前状态的程序。
使用过错计数器保护芯片卡包含有一个过错计数器。如果芯片卡证实一次用错密码例如使用错误的码打错验证暗号,过错计数器便起动计数。当过数计数器达到某个极限值时,便阻止继续使用密码或芯片卡。
这个程序的一个缺点是仅对过错使用进行计数,对非过错使用则不计数。因此,这个程序并不能保护不受非过错使用现代监测技术找出密码的侵袭。这就特别容易遭到一些特许用户对秘密信息进行破解。
德国专利DE 19506921叙述了这样一种用于移动式数据载体尤其是芯片卡的程序。移动式数据载体与数据输入/输出装置进行通信。将输入到数据输入/输出装置中的秘密数据与存储在芯片卡上的数据相比较。如果通过比较检出一个错误,则计数器向上计数。在错误尝试了一定次数之后,将自动阻止任何的继续使用。
利用使用计数器保护这个保护机构在于通过一个使用计数器来限制密码的使用次数。在这里,对有效的使用也进行计数。这个设计的一个缺点是在允许使用次数设定得太小时,卡片也可能对合理使用进行阻止,而在允许使用次数设定得太大的情形,卡片和/或密码又可能被利用分析方法破解。
日本专利10069435叙述了这样一种借助计数器在卡片起动后对所执行的操作进行计数并在计数超过最大值时阻塞卡片的机构。
因此,本发明的任务是提出一种用于保护秘密信息免遭破解并避免了上述程序的缺点的系统和程序。
根据本发明的用于保护秘密信息免遭分析破解的程序,其特征在于以下步骤a)对秘密信息(S1-Sn)配给一个计数器以建立秘密信息的使用次数;b)将计数器置到一个起始数值(A);c)每次使用(a)秘密信息(S1-Sn)时,将计数器的数值(B)增加一个规定的数值;d)当一个规定的事件(E2,E3,E4,En)出现时,将计数器数值(B)置回起始数值(A);e)当达到规定的最大数值时(C)时,阻止使用秘密信息。
本发明的优点是通过在输入一个规定事件时将计数器自动重置到它的起始点,使得没有必要通过对此受权的机构进行另外的重新起动。由于每一个密码都可能具有其自己的配给计数器,因此对每个密码都能够根据其功能建立不同的使用次数。由于芯片卡可以包含有任何数目的密码用于大多数广泛变化的用途,因此,阻止使用仅限于对一些易遭损害的用途。
因此,并不是整个地阻止使用芯片卡。若干个事件就能允许简单地满足相应的应用领域的不同安全性和用户要求。
将结合附图用优选的设计实例非常详细地叙述本发明,附图所示如下

图1是本发明的状态图;图2是具有根据本发明的事件和密码之间的一些可能组合的一个表格。
图1以状态图的形式用一个对被保护的数据元素或秘密信息特别是密码的使用进行计数的计数器来叙述本发明。
计数器的起始位置(A)有一个规定的起始数值(A)。这个数值在每次出现规定的事件(a)例如使用一个密码时增加某一个数值(计数器的状态B)。如果通过输入某一事件(b)使计数器的数值超过某一规定的最大数值(计数器的结束状态C),则阻止对密码的访问。不再执行密码所保护的功能。对于每个密码都存在一个规定的事件(c)使计数器重置到起始状态(A)的规定起始数值。
如果出现这一事件(c),则尽管还没有达到结束状态(C),计数器将被自动置回到起始状态。另外一种可能的设计变例是在访问被阻止后,事件(d)使计数器回复到其起始数值,并解开对密码的访问。事件的选择可以与密码的使用次数无关。这样,事件就能够例如说是使用另一密码的一个成功的证明。
因此,事件可以用任何能够检验的可限定条件触发并存储在卡片内部。
一个事件也可以由几个存储有“或”或“与”或“非”逻辑的要素事件组成。这样,对于每一个密码,总能规定出某个事件或者某几个事件满足特定芯片卡的特殊安全性和用户要求。
同一个事件也可以配给具有不同作用的几个密码。这里面存在的可能性可以在下面的附图2中看到。
图2利用一个表格叙述了本发明可能的设计实例的一种选择。利用事件E1,E2,E3,E4和En以及密码S1,S2,S3和Sn,示出并说明诸事件和密码或它们的配给计数器的最常见的可能组合。事件E1,E2,E3,E4和En以一种确定的方式配给密码S1,S2,S3和Sn。一个事件可以是任何定义明确的条件例如说可以指密码的使用次数。但是,事件也可以指任何其他被选用的技术条件或其他条件。在任何情形下,输入一个事件都会触发计数器的状态变化。计数器的状态变化可产生阻塞密码的结果。
例如说,事件E1配给密码S1和S3的方式是在输入事件E1时,各密码计数器分别向上计数一个规定的数值。事件E2配给密码S1和S3的方式是在输入事件E2时,配给这些密码的计数器均回复到起始数值。事件E3和E4例如说以“或”逻辑配给密码S2,当两个事件都发生时,用于密码S2的计数器向上计数某一数值。
此外,事件E3还以这样的方式配给密码S3和Sn,在输入事件E3时,密码S3的计数器置回到起始数值,而密码Sn的计数器则向上计数某一数值。
事件E4以这样的方式配给密码Sn,当这个事件发生时,如果事件En已经发生,则密码Sn的计数器置回到其起始数值。
最后,事件En以这样的方式配给两个密码S2和Sn,在发生事件En时,密码S2的计数器置回到其起始数值。
本发明的适用的特殊领域包括病人芯片卡,芯片储蓄卡和访问控制芯片卡。这些卡都必须特别保护以防止特许用户使用它们去破解秘密信息。
在电子储蓄卡的情形,存在有特许的用户通过小额取款例如说一辨士来频烦起动使用密码、从而能够利用分析监测程序建立起密码的危险。这一点当可使用本发明防止,通过每取款一次使计数器状态增加某一数值并在计数数值达到最大值时将卡片阻塞(如果在此前没有发生任何使计数器置回到其起始状态的事件的话)。这个事件可以是例如说银行的一个测试程序-例如说在加载电子存折时将卡片持有人的取款记录与银行的经验统计数值相比较。
另一个领域是大楼的访问控制。这里面的风险是频繁利用访问芯片卡通过访问检查,就可以使用分析法找出密码来。对于这一点,可提供一个具有规定的最大值的计数器的某种控制设施。将计数器复位可以例如说由诸如大门的安全警卫等受权单位执行。计数器的复原可以同卡片持有人的行为与根据经验得出的某个平均数相吻合这样一个事件联系起来。
本发明特别适用于芯片卡。除此以外,本发明也可用于任何包含有秘密信息或秘密功能的电子装置。其中值得指出的是带有安全模块的汽车和大门钥匙或者是带有安全模块的时钟。
权利要求
1.用于保护秘密信息免遭分析破解的程序,其特征在于以下步骤a)对秘密信息(S1-Sn)配给一个计数器以建立秘密信息的使用次数;b)将计数器置到一个起始数值(A);c)每次使用(a)秘密信息(S1-Sn)时,将计数器的数值(B)增加一个规定的数值;d)当一个规定的事件(E2,E3,E4,En)出现时,将计数器数值(B)置回起始数值(A);e)当达到规定的最大数值时(C)时,阻止使用秘密信息。
2.根据权利要求1的程序,其特征在于下面的进一步步骤f)当存在一个规定的事件(d)时,解除对使用秘密信息的阻塞并将计数器数值置回到起始数值(A)。
3.根据权利要求1和2的程序,其特征在于步骤d)中的起始数值是一个新的起始数值。
4.根据权利要求1至3的程序,其特征在于在出现步骤d)的规定事件或者达到步骤e)中的规定最大值以前,一直不断地重复步骤c)。
5.根据权利要求1至4的程序,其特征在于几个秘密信息片配给一个计数器。
6.根据权利要求1至5的程序,其特征在于事件(E1-En)可以是能够通过是/否决定进行访问的任何技术、经济或组织机构方面的条件。
7.根据权利要求1至6的程序,其特征在于一个事件包括一个或多个使用“与”或“或”逻辑函数相互组合起来的要素事件。
8.根据权利要求1至7的程序,其特征在于同一事件被配给不同的计数器。
9.根据权利要求1至8的程序,其特征在于一个事件的出现在不同计数器中引起计数数值的增加。
10.根据权利要求8的程序,其特征在于一个事件的出现会导致一个计数器中计数数值增加和另一个计数器中计数数值回复到起始数值。
11.根据权利要求1至10的程序,其特征在于秘密信息是一个用于将数据编码的密码。
12.根据权利要求1至11的程序,其特征在于秘密信息是一种用于在芯片卡上执行与安全性有关的操作的秘密功能。
13.根据权利要求1至12的程序,其特征在于密码存储在芯片卡内。
14.用于存储和处理秘密信息的电子装置包含有根据权利要求1至11的程序。
15.根据权利要求14的程序,其特征在于电子装置是一种芯片卡或安全模块。
16.数据载体包含有一个用于执行根据权利要求1至11的程序的程序。
全文摘要
本发明叙述一种用于保护秘密信息免遭破解的系统或程序。对每一个秘密信息片特别是密码配给一个计数器。计数器对秘密信息的使用次数计数。为此,将计数器置为起始数值。每使用一次秘密数据元素都使计数状态增加一个规定的数值。如果计数状态达到一个最大数值,便阻止使用秘密信息。但是,如果在计数器达到最大数值之前出现一个规定的事件将计数器的状态自动置回到其起始数值的话,就可以避免阻止使用秘密信息。
文档编号G06F21/62GK1245311SQ9910698
公开日2000年2月23日 申请日期1999年6月4日 优先权日1998年7月17日
发明者阿尔伯特·沙尔, 赫尔穆特·舍尔泽, 迈克尔·希林 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1