CN1589424A - 更少信息泄露的设备与方法 - Google Patents

更少信息泄露的设备与方法 Download PDF

Info

Publication number
CN1589424A
CN1589424A CNA028227395A CN02822739A CN1589424A CN 1589424 A CN1589424 A CN 1589424A CN A028227395 A CNA028227395 A CN A028227395A CN 02822739 A CN02822739 A CN 02822739A CN 1589424 A CN1589424 A CN 1589424A
Authority
CN
China
Prior art keywords
information
permanent storage
key
cryptographic key
encrypted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA028227395A
Other languages
English (en)
Other versions
CN100390695C (zh
Inventor
迈克尔·贝恩奇
彼得·比勒
托马斯·艾里克
弗兰克·霍林
马库斯·奥斯特赖克
托马斯·D·韦戈尔德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1589424A publication Critical patent/CN1589424A/zh
Application granted granted Critical
Publication of CN100390695C publication Critical patent/CN100390695C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/76Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Storage Device Security (AREA)

Abstract

本发明针对一种包括处理器与在其信息泄露水平高于第二永久存储器信息泄露水平的第一永久存储器中的第一经加密的信息的数据处理系统。在第二永久存储器中存储着用来解密第一经加密的信息的第一密码密钥,由此从其生成可由处理器用来执行操作的第一未加密信息。同一密码密钥也可以用来加密第一未加密信息,由此生成第一经加密的信息。本发明还针对一种处理此类包括操作系统的数据处理系统的方法,该方法包括:写入步骤,用来将第一未加密信息写入所述第一永久存储器,加密步骤,用来使用所述第一密码密钥加密第一未加密信息,由此在所述第一永久存储器中从其生成第一经加密的信息,访问限制步骤,用来将所述数据处理系统设置为一状态,其中由所述操作系统控制向所述第一永久存储器的写入。本发明还涉及一种处理此类数据处理系统的方法,该方法包括:解密步骤,用来使用第一密码密钥解密第一经加密的信息,由此从其生成第一未加密信息,执行步骤,用来由所述处理器通过使用所述第一未加密信息执行操作。

Description

更少信息泄露的设备与方法
技术领域
本发明有关于一种数据处理系统,数据处理方法,以及用来在其上执行操作的方法。更具体地讲,本发明有关于在使用密码密钥的情况下处理该智能卡的方法,以及在使用密码密钥的情况下在该智能卡上执行操作的方法。
背景技术
密码操作用于各种处理,诸如数据加密与身份验证。在典型的对称密码处理中,两个或更多方知道保密密钥,他们使用该保密密钥来保护其通信。在使用非对称或公共密钥密码的系统中,一方一般使用保密密钥,例如所谓的私有密钥,来进行操作,而另一方只使用非保密参数,例如所谓的公共密钥,来进行互补操作。不论在对称还是非对称密码系统中,保密参数必须保持秘密,这是因为获知密钥的攻击者可以解密通信,伪造签名,进行未授权交易,假冒用户,或者造成其他问题。
通过使用物理上安全的、被隔离的房间,安全管理密码密钥的方法已经为人所知并广泛使用。然而,在密码设备中保护密钥的公知方法经常不足以应对许多应用,例如那些要求高防篡改程度的应用。
例如P.Kocher在“Timing Attacks on Implementations of Diffie-Hellman,RSA,DSS,and Other Systems”,Advances in Cryptology-CRYPTO’96,Springer-Verlag,pages 104-113所述的、使用显微镜、定时攻击密码分析(timingattack cryptanalysis)的ROM逆向工程,以及例如E.Biham与A.Shamir在”Differential Fault Analysis of Secret Key Cryptolsystems”Advances inCryptology-CRYPTO’97,Springer-Verlag,1997,pages 513-525所述的的错误分析等攻击,已经是公知的用于分析密码系统的方法。
具有密码安全的密码与算法是公知的。例如,使用三重DES的协议,即,只要攻击者只能访问该协议的标准输入与输出,通过采用不同密钥的三次应用数据加密标准而构成的密码可以抵抗密码分析攻击。然而,如果没有安全地管理密钥,即使使用如三重DES等极强密码的产品也不安全。智能卡一般使用诸如数据加密标准(DES)等加密技术来对其内部数据编码。Bruce Scheier在Applied Cryptography,2n’edition,ISBN 0 11709-91 1996,John Wiley & Sons,at pp.265对于DES进行了详细描述,对于DES的联邦信息处理标准(FIPS)见于FIPS出版物46-3,可以从因特网上得到http://csrc.nist.gov/fips/。
DES为使用64位(其中实际上只使用了56位)密钥的块密码方法,其非常快,并已被广泛采用。虽然DES可以通过强力攻击攻破,即简单地测试所有可能密钥,但三重DES仍被认为是非常安全的。对于此后所述例子的目的,知道DES算法进行16次循环,即进行对于八个分离的称为S盒的转换表的查找就足够了。在本领域还知道其他类似的密码技术,包括三重DES、IDEA、SEAL、以及RC4;使用RSA与El Gamal的公共密钥(非对称)加密与解密;使用DSA、El Gamal、及RSA的数字签名;以及Diffie-Hellman密钥协定协议。不管这些密码系统的理论与复杂度为何,已经开发了使之能够更快地攻破这些密钥的功率分析技术。
有关DES与其他加密算法的信息可以在Menezes等人的Handbook ofApplied Crypography(CRC Press,Inc.,1997)中找到。数据加密标准(DES)被广泛用做数据加密、伪随机数生成、MAC、以及其他加密操作的加密原语。基本DES加密算法使用56位密钥来将64位明文块转换为64位密文块。相应的解密操作使用同样的密钥来将密文块转换为其对应的明文。
为了从密码的系统,也被称为密码系统,取得保密密钥,攻击者可以利用这样的系统泄露信息这一事实。攻击者可以通过观察一系列操作来试图收集数据,对这些观察进行统计分析,并使用其结果来确定密钥。在一般情况下,在进行加密操作时攻击者监视安全令牌的物理特性,诸如功率消耗。每次观察到该令牌进行有关该密钥的密码操作时,攻击者都采集少量与该密钥有关的数据。通过收集并统计地相关或组合来自对于该令牌在其进行有关该密钥的加密操作时的多次观察的数据,攻击者增加有关该密钥的已知信息量。在密码系统泄露信息的情况下,这样的观察可以包括信号信息,即与该密钥有用地相关的信息。然而,这样的观察也包括噪声,即阻碍或与确定密钥无关的信息与错误。来自这些观察的信息的质量由“信号比噪声”或信噪比来表示,其为信号量与噪声量相比的量度。为恢复密钥攻击者必须分析的操作的数目取决于测量与分析技术,但其一般与信噪比的平方成反比。比例常数也取决于攻击者所需的置信度。例如,对于愿意采用使用有关密钥比特值的统计信息的优化强力搜索的攻击者来说,相对较低的置信水平是可以接收的。将信号降低15倍同时将测量噪声量增加20倍将使信噪比降低300倍。这一般就意味着攻击者将需要大约90,000倍观察才能抽取有关密钥的等量信息。在信噪比降低之前需要1000次观察才能恢复密钥的攻击现在将需要9千万数量级次的观察才能取得对于所恢复密钥的同等水平的置信度。
Paul Kocher,Joshua Jaffe,and Benjamin Jun,1998,“Introduction todifferential power analysis and related attacks”,可从http://www.cryptography.com/dpa/technical得到;以及Thomas S.Messerges,Ezzy A.Dabbish,and Robert H.Sloan,1999,in“Investigations of poweranalysis attacks on smart cards”,Usenix ’99,参照http://www.eecs.edu/~tmesserg/usnix99/html/paper.html;还有Louis Goubin andJacques Patarin,1999,in“DES and differential power analysis:the“duplicationmethod”,Proceedings of CHES’99,Springer Lecture Notes in Computer Science,vol.1717(August 1999);http://www.cyrposoft.com/html/secpub.htm#goubin公开了DPA被用来抽取DES密钥的例子。
主要的目的在于建造不容易被成功攻击的密码系统,例如通过增加攻击者为获取密钥所需的观察次数。通过降低可得的信号大小和/或增加错误量、噪声量、与攻击者测量中的不确定性,系统设计人员可以是所谓的工作函数(即攻破系统所需的努力)更大。理想状况下,获得任何有意义量的有用密钥信息所需的样本数目应该超过,例如在该密钥过期之前可以使用该密钥进行的交易最大数目,或者该所需的样本数目大得使监视攻击可以与强力攻击或者其他已知攻击相比或者更难。例如,如果在被编程为一百万次操作(其大大超过大部分智能卡的操作寿命)后自动毁灭的系统中,攻击者被限定于具有整个交易过程中大大低于1/1000的信噪比的测量,则攻击者将不能收集到足够的测量以破坏该设备。对于物理上很大的系统,有效的物理屏蔽,物理隔离,以及对输入与输出的仔细过滤可以保护密码设备不受涉及分析功率消耗、电磁辐射、设备内电气活动等等的外部监视攻击,并且不受物理攻击。然而,这些技术不易应用到受限的工程环境中。例如,诸如大小与重量、成本要求、以及节约功率的需要等物理限制可能防止使用已知屏蔽技术。
在许多环境下,不论是个人的、商业的、政府的、抑或军用的,都希望隐藏电子信息不为敌意方所得。“封闭平台”,其为特殊类型的电子硬件设备,已经被开发来满足这种需求。名词“平台”一般指能够支持包括执行软件程序的计算的硬件/软件环境。“封闭”平台指有意构造来挫败逆向工程的平台。
与现有的在磁条上存储少量信息的信用卡与借记卡相比,诸如智能卡等封闭平台可以使用微处理器、随机访问存储器(RAM)、与只读存储器(ROM)存储并处理远远大得多的数据量。封闭平台一般使用密码技术来保护,所述密码技术用来在开放环境中保持并操纵保密参数,而不暴露其值。对于用来计算数字签名的保密密钥的泄漏可以(例如)使攻击者能够伪造所有人的数字签名并执行诈骗交易。
封闭平台用来在保护信息与算法的同时执行其功能,诸如进行作为竞争应答协议的一部分的数字签名,身份验证命令或者请求,以及加密或解密任意数据。在储值系统中使用的智能卡可以(例如)数字签名或者计算诸如作为值转移的一部分的该智能卡的序列号、节余、失效日期、交易计数、币种、以及交易量等参数。
功率分析为借助平台的“功率特征”来收集有关该平台上实现的数据与算法的信息的过程。平台的“功率特征”为在执行存储在该平台上的软件时通过一定时间测量的该平台的功耗特征集。微处理器、微控制器或类似电子设备所消耗的功率随该设备中这些电子器件的状态而变化。这些设备一般以二进制1与0来表示数据,而二进制1与0在电子设备中被表示为相应的高或低电压水平。例如,值1可以由+5伏表示,值0由0伏表示。
因此,封闭平台所消耗的功率量在给定时刻可以与数据字中二进制1的数目相关。进而,封闭平台所拉动的电流量,以及从其散发的电磁辐射可以与正在其中操纵的秘密相关。攻击者可以测量并分析这些信号以恢复保密密钥。状态转换也是对于进行计算的设备的功耗的主要影响。当比特值变化时,与该比特相关联的晶体管开关转变状态。因此,当系统在转换时,所消耗的功率量增加。攻击者可以使用外部部测量与对在进行加密操作期间的设备功耗、电磁辐射、或者处理器周期定时的分析,来无干扰地抽取保密密钥。当智能卡在运行时,可以监视供给该智能卡的电流与电压。
在简单功率分析(SPA)中,执行给定算法的功率特征用来确定有关该算法及其数据的信息。一般地,功率数据从许多次执行中收集并在特征集中每个时间点上平均。
例如,如果SPA用来攻击DES密钥空间,并且攻击者可以访问特定代码,但不能访问特定DES密钥,在功率特征中的特定序列的点可以指示DES密钥的每个8位字节中1与0的数目。如果为该密钥的每个字节都存储了奇偶校验位,这就将用于穷尽所有可能密钥的攻击的可能密钥空间从258个密钥缩减到238个可能密钥,使得在可能密钥之间的搜索降低了大约218倍。
差分功率分析(DPA)为一种通过收集多个功率特征并分析其间的差异来抽取信息的功率分析形式。对于显示重复行为的特定类型的数据与算法,这是一种异常有效的刺探存储于封闭平台上密钥的方法。它可以揭示有关计算所导致的数据的信息,从存储区到存储器的读取,在执行过程中从中读取数据或者存储数据的封闭平台存储器中的数据地址,以及在封闭平台上算法执行过程中从中读取指令的代码地址。这些能力使得封闭平台对于DPA攻击的保护就安全性来讲十分重要并且也很难在廉价的封闭平台上取得。SPA攻击主要使用视觉查看以发现相关功率波动,而DPA攻击使用统计分析与纠错技术来抽取与保密密钥相关的信息。因此,DPA是比SPA功能强大得多的攻击,并且更难于防止。DPA的一种用途是抽取用于在封闭平台上执行的加密或解密的密码密钥。对于数据加密标准(DES),DPA已经证明异常有效;根据最近的经验,证明了进行DES的低成本智能卡非常易于被DPA攻破。当在低成本智能卡或类似封闭平台上实现时,任何形式的与DES类似的加密或解密必然具有类似的易攻破性。
寻找DES密钥的DPA攻击的实现涉及两个阶段,即数据收集与随后的数据分析。DPA的数据收集可以通过以下步骤进行:采样在作为时间或者时钟周期数的函数的密码操作过程中的设备功耗。对于DPA,观察多次使用目标密钥的密码操作。为了对智能卡进行此类攻击,处理大量(一千次或更多)对于不同明文(或密文)的DES加密(或解密),同时记录功率特征集,由攻击者任意选择的输入;以及由该智能卡计算的、作为用隐藏密钥对每一个解密值的加密值的输出。
每个功率特征集被称为样本。在DES的每一循环中,给定S盒的输出取决于待加密(或解密)数据与密钥两者。因为攻击者知道输入文本,他可以猜测密钥值是什么,该值用来生成特定功率特征样本,这样他就可以对于在该样本中所使用的特定数据确定给定S盒的特定输出位是1还是0。每个标准S盒具有6位输入与4位输出。一般地,该分析从第1循环或第16循环开始,这是因为这些循环为攻击者对于相应S盒或者知道准确的输入(对于第1循环)或者知道输出(对于第16循环)的循环次数。攻击者不知道密钥,但是因为DES算法一次只进行一次S盒查找,所以只需要猜测保密密钥与所观察的S盒有关的、并且对应于此时功耗的六位。因为只有六位是有关的,只需要测试对于56位保密密钥的给定6位部分的26=64个可能的值序列。对于这六位值的每次猜测,将样本分为两组:那些如果攻击者对于六个密钥位的猜测是正确的则其中目标输出位,即来自被选择为第一循环攻击目标的目标S盒的四个输出位之一,为1的组(1组),以及那些如果攻击者对于六个密钥位的猜测是正确的则其为0的组(0组)。然后,平均每组中的功率样本。在平均上,DES中的modulo minor asymmetries,平均功率特征集的那些只受不同于上述特定输出位的位所影响的部分应该类似,这是因为在平均上,在两个组中,它们应该对于每个组中一半样本为1,对于每个组中一半样本为0。然而,平均功率特征集的那些的受上述输出位影响的部分应该在1组与0组之间显示明显区别。这种差异或者多个这种差异的出现指示对于这六个密钥位的猜测值是正确的。其不出现或者多个这种差异的不出现显示对于这六个密钥位的猜测值是错误的。重复以下过程直至显示猜测正确:猜测保密密钥值,将功率特征样本分为那些产生1输出的组与那些产生0输出的组(分别为1组与0组),平均特征集,并且寻找上述明显差异。然后就获得了密钥的六位。对于其他七个S盒重复上述猜测过程。当以这种方式处理了所有S盒时,就取得了56密钥位中的48位,只剩下8位未确定。这意味着只需搜索剩余的28=256个可能密钥的密钥空间,来寻找正确保密密钥的其余部分。显然攻击者不需要很多信息来采用这种攻击。攻击者不必知道用来实现DES的特定代码,用来存储S盒的存储器布局,其中在功率特征集中对于正确猜测将出现明显差异或者差异(如果有的话);对于正确猜测在功率特征集中希望出现多少个这类明显差异;或者所选择的S盒输出位是正常的还是补码,这是因为翻转1与0将产生同样类型的明显差异。DPA只取决于这种差异是否存在,而不在于任何给定差异的符号,即+或-。
为了进行成功攻击,攻击者真正需要知道的就是正在攻击的是DES,并且DES的该实现在某点上使用对应于S盒的特定输出的位,使得其使用将影响功率特征集样本。进行彻底攻破封闭平台上隐藏DES密钥的成功DPA攻击所需知识之少清楚地表明DPA是刺探封闭平台的非常有效的方法。此处只描述了一种特定形式的DPA攻击,但也可能有许多有关形式的DPA攻击。
虽然一般不可能从对于设备功耗的直接观察来确定单个晶体管开关的效应,但是在DPA中所使用的统计操作能够可靠地找到功耗中异常小的差异。
保护封闭平台不受攻击的已知物理措施包括:将系统封装在物理上坚固的外壳中,对于存储器单元与数据线的物理屏蔽,物理隔离,以及用特殊涂层覆盖集成电路,该涂层被移除时将摧毁芯片。虽然这些技术可以提供一定程度的对于物理破坏与逆向工程的保护,但是这些技术不能防止无干扰功率分析方法。有些设备,诸如按照United States Goverement Tempest规格屏蔽的设备,使用大电容与其他功率调节系统,以最小化功耗的变化,将设备封装在屏蔽盒中以防止电磁辐射,并且缓冲输入与输出以阻碍外部监视。这些技术一般昂贵或者物理上笨拙,因此是不适宜于许多应用,如智能卡、安全微处理器、以及其他小型低成本设备。由于对于外部电源的倚赖、屏蔽的物理不实用性、成本、以及其他诸如尺寸与重量等由封闭平台的物理限制所强加的特性,物理保护一般不适用或不充分。
与物理保护相比,智能卡通过以“汉明中立”形式来表示数据,也可以在软件层次上一定程度地取得对于功率分析攻击的保护。诸如数据字或字节等位串的汉明权为该位串中具有值1的位的数目。例如,10100具有汉明权2,1111具有汉明权4。一组“汉明中立”的位串为一组具有同样数目的1的位串,例如集合{011,101,110}为汉明中立集合。如果软件应用所操纵的所有数据字节都具有同样数目的1,则该设备所消耗的功率以及其散发的噪声在该设备处理该数据时将不改变。例如,可以通过将每个“1“替换为”“10”,每个“0”替换为“01”来编码位串。这样所有的位串就具有同等数目的1与0,在任何位串之间将不会有可检测的功率或者噪声变化。
这种技术在电气信令与硬件设计领域是公知的,其被称为功率平衡或者差分信令。这种电路的优点包括:降低了噪声发散或者其他电路中串扰感应;降低了地电位扰动(ground bounce);因为改善需求是恒定的,所以当电路从低转到高时接地总线的电压不会局部地上升;因为差分对的两条电气线路都受基本相同水平的环境噪声影响,所以理论上在接收端不会检测到净差异。这些技术广泛应用于军事、超级计算机、以及工业控制应用。
因为正常的未封闭平台容易受到可能比功率分析(PA)更强大的攻击,所以使用PA来发现保密信息主要针对封闭平台,诸如智能卡。然而,对于任意处理器都可以在模拟器上生成执行的模拟功率特征集,所以可能使用PA来分析在普通未封闭平台上执行的算法。因此,虽然对于抗PA的最紧迫需求是在封闭平台上使用诸如智能卡,但抗PA适用于种类广泛得多的平台。因此,改进的安全性对于这些设备是有用的,以安全地用于在传统零售商业之外范围广大的应用,包括停车表、蜂窝式与付费电话、付费电视、银行业务、基于因特网的电子商务、医疗记录的保存,身份识别与安全访问。因此需要一种方法、装置与系统,来降低泄露给攻击者的有用信息量,同时不产生过度的耗费。降低泄露一般指减低任何可能对于试图确定保密信息的攻击者有用的信息的泄露。
在WO 01/61915中,通过将随机性引入可观察操作来降低系统的弱点,由此挫败输出功率发散与任何有意义的内部处理的相关。
在US 6278783中,描述了用于通过降低处理过程中所泄露的有用信息量与的信噪比来改进DES与其他密码协议以防外部监视攻击的装置与方法。然而,该发明的改进的DES实现使用两个56位密钥(K1与K2)与两个64位明文报文(M1与M2),每个都与排列(permutation)相关联(即K1P,K2P与M1P,M2P),使得K1P{K1}XOR K2P{K2}等于“标准”DES密钥K,并且M1P{M1}XOR M2P{M2}等于“标准”报文。在设备运行期间,最好定期更新表,这是通过比信息泄露更快地将新的熵引入表中来完成的,使得攻击者不能通过对测量的分析来取得表的内容。这项技术可实现于加密智能卡、抗破坏芯片、以及各种安全处理系统中。
WO 01/08012描述了一种用于通过将密码算法所使用的第一函数转换为第二函数来防止对于进行密码算法的微电子组件的信息泄露攻击的装置与方法,该方法包括以下步骤:接收具有数目为n的位的、由输入掩码掩蔽输入数据,其中n为第一预定整数;使用基于预定掩蔽方案的第二函数来处理该掩蔽输入数据;产生具有数目为m的位的、由输出掩码掩蔽的经掩蔽的输出数据,其中m为第二预定整数。
在WO 00/02343中,公开了一种用于通过使用带索引的密钥更新技术来提高密码系统防泄露能力的装置与方法。在一个实施例中,密码客户端设备保持保密密钥值作为其状态的一部分。客户端使用更新处理,该更新处理使可能先前已经被泄露给攻击者的有关该秘密的部分信息不再有用地描述新的更新后的保密值,例如在每次交易之前,可以在任何时刻更新其保密值。通过反复进行该更新处理,在密码操作时泄露的、攻击者所收集的信息很快就变得过时了。由此,这样的系统可以保持安全,防止涉及对设备功耗、电磁特性、或在交易时所泄露的其他信息的测量的分析的攻击。本发明的使用可以结合应用这样一种协议的客户端与服务器。为了进行与客户端的交易,服务器取得该客户端的当前交易计数。然后服务器进行一系列操作以确定从客户端的初始保密值再次导出正确会话密钥所需的转换序列。进行这些转换,并且将结果用做交易会话密钥。
WO 99/67909提出了一种通过降低在处理期间所泄露的有用的信息量来对智能卡与其他密码系统的泄露最小化。这通过以下来完成:使用“无分支”或固定执行路线例程来实现关键操作,其中执行路线不以在随后操作中可能揭示有关保密密钥的新信息的任何方式改变。更具体地,该发明的各种实施例包括:实现模求幂(modular exponentiation)而没有倚赖于密钥的条件跳转;用固定存储器访问模式实现模求幂;实现模乘法而不使用易泄露的乘以-1(multiplication-by-one)操作;以及对于其他椭圆曲线密码系统(elliptic curvecryptosystems)实现泄露最小化的乘法与操作。
在WO 99/67766中,公开了一种用于进行计算的装置与方法,其中数据的表示、每个计算步骤上系统状态转换的数目,以及所有操作数的汉明权都与计算输入、中间值、或结果无关。描述了使用诸如电子组件、逻辑门等等现有易泄露硬件元件以及在现有易泄露微计算机上运行的软件来实现的示范性实施例。该发明的智能卡与其他防篡改设备提供了对于涉及外部监视的密码攻击抵抗性的提高。
在WO 99/63696中,公开了一种用于通过降低在处理期间所泄露的有用信息量与信噪比来保护密码系统不受外部监视攻击的装置与方法。这一般是通过将不可预测信息融入密码处理来完成的。该发明的各种实施例使用的实际例如降低信噪比、随机噪声生成、时钟跳跃、以及将熵引入处理操作的顺序或者执行路径。这些技术可以实现于硬件或软件,可以使用数字与模拟技术的组合,并且可以应用在各种密码设备中。
发明的目的与优点
根据如权利要求1与2所列出的本发明的第一方面,提出了一种数据处理系统,其包括存储在具有比另一存储器较低水平的信息泄露的存储器中的密码密钥。使用这一密钥带来了以下优点:使用这一密钥加密的信息由此免于受到外部攻击,具体为差分功率分析。由于通过更少的信息泄露而得到的更高水平的抗攻击性,所以该密钥本身不易受此类攻击。典型数据处理系统为机器可读媒体,更具体地为如芯片卡(也被称为智能卡)等封闭平台,即包括其自身的处理器与存储器的机器可读设备。具体地,可以将密码设备或系统用作数据处理系统。
如果第一未加密信息包括可用来为操作解密第二经加密的信息的第二密码密钥,则使用两阶段加密处理,其很好地将通过第二密码密钥的局部安全性与通过第一密码密钥的全局安全性结合起来。第二密码密钥一般为个人密钥,为该数据处理系统或其用户所特有。第一密码密钥一般不是为该数据处理系统或其用户所特有,但对于外部实体未知。不使用DPA,知道第一密码密钥的人员不能访问由第二密码密钥保护的保密信息,并且知道第二密码密钥的人员也不能找到第一密码密钥,以使用该信息访问在其他机器可读媒体上的保密信息。
如果该数据处理系统包括所存储的、用于执行个性化步骤的代码,则个性化实体只需要通过该数据处理系统执行该步骤,以取得个性化状态,包括使用第一密码密钥。由此,对于该密钥的使用对于个性化实体是透明的,即不可见。
如果该数据处理系统包括所存储的、用于执行操作执行步骤的代码,则该步骤可以包括解密步骤,以揭示先前用第一密码密钥加密的信息。由此该解密步骤的执行也对外部世界透明,包括个性化实体与该数据处理系统的用户。
对于该数据处理系统的典型例子为智能卡。
根据权利要求6所列的本发明的第二方面,提出了一种处理此类数据处理系统的方法。该处理可以被解释为其中通过用该数据处理系统所特有特定信息来改进该系统从而将该数据处理系统从非定制化产品转变为定制化产品的个性化步骤。
该个性化步骤可以通过以下进行:将未加密信息写入其目标存储器位置,例如EEPROM,随后扫描该EEPROM寻找任何此类信息并对其执行加密。加密EEPROM中的敏感信息并由此保护它。对于该敏感信息,典型的例子是密码密钥。这可以包括个人密钥或其他密钥。在基于对象或基于类型的编程语言中,不需要改变API或者使用这些密钥的应用。
因为所确立的整个过程不需要改变,所以不需要改变生产或测试步骤;只是在测试与生产的结尾处,再次加密这些密钥,所述密钥的加密对于任何其他卡上或者卡外软件或硬件是透明的。第一密码密钥不必为个性化方所知。
根据权利要求7所列的本发明的第三方面,提出了一种在此类数据处理系统上执行操作的方法。该方法包括在该操作实际执行之前的解密步骤。该解密步骤在的经加密的信息上执行,该经加密的信息已经从第一永久存储器载入较少泄露存储器。因此,该解密步骤在较少泄露并因此较不易受功率分析工具的环境中执行。该解密步骤自身不为外部用户所注意,只是造成了该操作的更长些的,但并不显著更长的执行时间。
根据权利要求8所列的本发明的第四方面,提出了一种计算机程序产品,包括用于执行上述方法的程序代码装置。该计算机程序产品在最简单的形式下为载有计算机代码的存储媒体。该存储媒体最好可集成到该数据处理系统之中。
发明内容
当访问这些内容以读取所存储信息时,智能卡存储器,包括EEPROM,泄露有关其内容的信息。攻击方利用该泄露的一种方式是当通过芯片功耗监视读操作时,借助差分功率分析(DPA),并且导出实际的EEPROM内容。如果这些EEPROM内容为保护(例如)电子交易的保密密钥,则整个电子交易系统的安全性都处于危险之中。
本发明针对一种包括处理器与在其信息泄露水平高于第二永久存储器信息泄露水平的第一永久存储器中的第一经加密的信息的数据处理系统。在第二永久存储器中存储着用来解密第一经加密的信息的第一密码密钥,由此从其生成可由处理器用来执行操作的第一未加密信息。
本发明还针对一种包括处理器与在其信息泄露水平高于第二永久存储器信息泄露水平的第一永久存储器中的第一经加密的信息的数据处理系统。在第二永久存储器中存储着第一密码密钥。该第一密码密钥用来解密第一经加密的信息,由此从其生成第一未加密信息。
另外,以上两种情况的结合也是可能的,即同一第一密码密钥可用于第一信息的加密与解密。
本发明还针对一种处理此类包括操作系统的数据处理系统的方法,该方法包括:写入步骤,用来将第一未加密信息写入第一永久存储器;加密步骤,用来使用第一密码密钥加密第一未加密信息,从而在第一永久存储器中从其生成第一经加密的信息;以及访问限制步骤,用来将所述数据处理系统设置到其中由操作系统控制向第一永久存储器的写入的状态。
本发明还针对一种处理此类数据处理系统的方法,该方法包括:解密步骤,用来使用第一密码密钥解密第一经加密的信息,由此从其生成第一未加密信息);以及执行步骤,用来由处理器使用第一未加密信息执行操作。本发明还针对一种包含用来执行此方法或此类方法的程序代码的计算机程序产品。
本发明适用于运行于在易受外部探测的数据存储媒体上存储了敏感信息的任何数据处理系统上的任何基于对象或基于类型的编程语言。一个例子是JavaCard运行环境。
通过跟踪第一永久存储器中的敏感数据,并且当存储在该永久存储器中时通过用来加密该敏感信息的第一密码密钥对其进行保护,就保护了该敏感信息免于通过DPA分析。当该敏感信息从该永久存储器中读出以实际使用时,第一密码密钥再次被用来加密该敏感信息。因此,更好地保护了以基于对象或基于类型的编程语言运行的、存储在易受探测攻击存储技术的永久存储器中的敏感信息,免受诈骗探测,例如差分功率攻击。
附图说明
附图中描绘了本发明的例子,并且以下作为示例详细描述了本发明。该发明显示于
图1,具有其组件的智能卡的示意方框图。
为清楚起见,所有图形都没有以实际尺寸显示,各尺寸之间的关系也没有以实际比例显示。
具体实施方式
以下将描述本发明的各种示范性实施例。
智能卡一般将电子芯片嵌入塑料卡中。该电子芯片可以包括(例如)微处理器或类似设备、只读存储器(ROM)、和/或读写随机访问存储器(RAM)。该电子芯片还可能包括其他电子组件,诸如数字信号处理器(DSP)、现场可编程门阵列(FPGA)、电可擦除可编程只读存储器(EEPROM)以及各种支持逻辑。一般地,电子芯片被粘和到塑料卡的凹入区域,并以印刷电路覆盖,该印刷电路向外部智能卡阅读器提供了电气接口。该印刷电路的输入与输出焊盘(pad)的标准构造一般包括电源(VCC)、接地(GND)、时钟输入(CLK)以及串行输入/输出焊盘(I/O)。在标准构造中还包括了几个附加的未连接的焊盘(N/C)。因为塑料卡有些柔性,所以该电子芯片应该足够小以防折断。这就将电子芯片的物理储存限制到直径几个毫米内,并且还限制了可以支持的电子组件的数目。现在还使用无接触智能卡,其使用射频或者其他无线通信媒体与外部智能卡阅读器通信。这样的智能卡一般都配有内部天线,而不是印刷电路的输入与输出焊盘。
在图1中,数据处理系统10,此处为智能卡,描绘为包括EEPROM 20、也被称为第一永久存储器,第二永久存储器40、也被称为ROM,以及易失存储器30、也被称为RAM。这三个存储器20、30、40连接到处理器50,处理器50再连接到DES协处理器55。智能卡10还包含连接器区60,用来连接到外部设备。操作系统41以及第一密码密钥(也被称为密码主密钥45)位于ROM 40中。第二密码密钥21与第三密码密钥22存储在EEPROM 20中。第二经加密的信息33存储在RAM 30中。协处理器55可以进行任意类型的密码操作,此处处于示范目的选择DES。
为了更好地理解,首先解释不使用密钥主密钥45的处理。在这种情况下,第二密码密钥21与第三密码密钥22以未加密形式存在于EEPROM 20中,并且用于由DES协处理器55辅助处理器50分别进行的加密处理与解密处理中。如果在应用执行过程中,处理器50被命令进行需要使用密码密钥21、22的一个或更多个的操作,则启动DES协处理器55。对于此例子假设此处需要第二密码密钥21来进行解密。处理器50访问EEPROM 20以从中检索第二密码密钥21。第二密码密钥21从EEPROM 20中通过处理器50装入RAM 30。DES协处理器55通过处理器50从RAM 30检索第二密码密钥21,并且还通过处理器50从存储器20、30、40之一检索待使用密码密钥21解密的数据。此处该数据包括第二经加密的信息33。然后,DES协处理器55进行解密并将经解密的数据发送给处理器50。
恶意用户可以对该操作进行DPA攻击,具体地讲,通过使用适当的泄露检测探测器结合相应的软件来嗅探在EEPROM 20与处理器50之间的信号泄露。
为了使这样的DPA攻击更困难,根据本发明使用密码主密钥45。密钥密钥21、22以加密形式驻留于EEPROM 20中,即先前已经使用密码主密钥45加密。因此它们呈现为第一经加密的信息。在更下面一些的地方将解释相应的加密处理,但此处首先说说解密处理。假定一操作需要第二密码密钥21。该操作由处理器50在操作执行步骤来执行。因为第二密码密钥21以加密形式驻留于EEPROM 20中,所以操作执行步骤包括解密步骤,以使之能够访问解密形式的第二密码密钥21,并由此能够使用它。因此,处理器50不仅从EEPROM 20中检索经加密的第二密码密钥21,而且启动执行经加密的第二密码密钥21的解密步骤。
加密第二密码密钥21从EEPROM 20通过处理器50载入RAM 30。密码主密钥45从ROM 40通过处理器50载入RAM 30。DES协处理器55从RAM 30通过处理器50检索密码主密钥45,并且还从RAM 30通过处理器50检索待使用密码主密钥45解密的经加密的第二密码密钥21。然后,协处理器55对于经加密的第二密码密钥21进行解密步骤,并且将结果的经解密的第二密码密钥21发送到RAM 30。
下面是操作执行步骤的执行步骤。协处理器55从RAM 30通过处理器50检索经解密的第二密码密钥21,还从RAM 30通过处理器50检索待使用经解密的第二密码密钥21解密的数据。然后协处理器55进行解密,并且将经解密的数据发送给处理器50。这就是一系列的解密处理。优点在于从EEPROM 20检索第二密码密钥21的操作不易受DPA攻击,这是因为从EEPROM 20传送来的、并且经受EEPROM 20信息泄露的信息,即第二密码密钥21,是以加密形式传送的。因为ROM 40与RAM 30的泄露低于EEPROM 20的泄露,所以整个系统对于DPA攻击的易感性降低。
以下,将描述个性化智能卡10的过程。智能卡10由智能卡制造商制造,包括塑料载体与嵌入的芯片。在ROM 40中,该芯片已经包含预先存储的密码主密钥45。然后,接收方,一般为智能卡发行方,在个性化步骤中处理该卡,即制备该智能卡10以备特定人员在将来使用。因此,智能卡发行商给智能卡10配备个人信息,此处即密码密钥21、22,其首先写入EEPROM 20。该写入步骤在安全环境中进行,即不允许访问敏感个人信息的环境。智能卡发行商本身是受信任的一方,即假定其不使用密码密钥21、22、甚至密码主密钥45对系统进行攻击。
智能卡10达到智能卡发行商时预先存储了操作系统41。在该操作系统41中,以编程形式包含了个性化步骤,该步骤由智能卡发行商在将个人信息21、22写入EEPROM 20之后启动。该个性化步骤包括两个子步骤,加密步骤与访问限制步骤。
个性化步骤开始时进行加密步骤,该加密步骤加密第一未加密信息,即密码密钥21、22。为此,扫描EEPROM 20寻找所有待使用密码主密钥45加密的信息。此处该信息包含密码密钥21、22。在扫描步骤,扫描算法可以识别密码密钥21、22,并且一旦找到它们,就将其加密并作为经加密的密码密钥21、22写回到EEPROM 20中。对于该加密步骤,智能卡发行商自身确实不需要知道密码主密钥45,并且实际上甚至根本不需要知道存在密码主密钥45。可以在智能卡发行商不知道的情况下执行该加密步骤。
为了扫描步骤识别密码密钥,这些密码密钥最好最后有标记,即应该能被辨别为此类型。对于为JavaCard的智能卡来说一定如此,这是因为Java是基于对象的系统,其中所有敏感信息都标记为名为“Key”的Java类。
在加密步骤之后,访问限制步骤使得智能卡10被设置:为其中限制向EEPROM 20写入、即通过操作系统41由访问控制来限制的状态。该限制确保再也不允许写入智能卡10的特定区域,在这些区域中就有经加密的密码密钥21、22所在的区域。由此,就排除了以后在该禁区内的修改,包括欺诈企图。在个性化步骤完成之后,智能卡就处于所谓个性化状态。以这种状态将智能卡10发放给终端客户或用户。
在智能卡的运行中,如上所详述,借助DES协处理器55进行解密,DES协处理器55从EEPROM 20载入密码密钥21、22。该载入步骤易受DPA影响,但因为密码密钥21、22只是以加密状态存在,由此也以此形式传送,所以攻击具有更低的成功率。密码主密钥45从ROM 40载入DES协处理器55,并且因为ROM 40比EEPROM 20或RAM 30耗能更低,所以借助DPA的成功攻击要困难很多,因此也更不可能。
在原理上,操作执行步骤可以在智能卡周围环境不知道使用了密码主密钥45的情况下执行。从所执行的操作的结果的角度来看,没有什么区别。优点在于以下事实:所述方法与系统提高了系统安全性,但对于外界环境是完全透明的。
因此提出:敏感数据,即存储在EEPROM 20中的密码密钥21、22以加密形式存储,而不是作为易受上述攻击的明文数据。该加密步骤使用另一保密密钥来进行,即密码主密钥45,其或者可以是该芯片所特有的,或者可以是称为掩码的、包含访问EEPROM 20的程序逻辑的软件所特有的。在对于可能使用密码密钥21、22的应用为透明的前提下达到了这一点。加密密码主密钥45驻留于非泄露或少泄露存储器中,诸如ROM 40。
换而言之,通过减少信息泄露,也被称为功率耗散,引入密码主密钥45使得降低了智能卡10的可受攻击性,或易受攻击性。使用密码主密钥45来加密第一未加密信息31、32,例如包括明文密钥,以由此形成第一经加密的信息21、22。因此,修改了写入过程,并且在其存储到EEPROM 20之前,使用密码主密钥45加密该明文密钥,密码主密钥45为内部芯片所特有的或者掩码所特有的密钥。
对于解密,截取密钥读取或使用方法,并且经加密的密码密钥21、22首先在无泄露或少泄露的存储器中解密,诸如RAM 30,以在其实际使用之前取得第一未加密信息31、32。
在扩展形式下,个性化的处理方法提供了对于整个EEPROM 20的扫描,以寻找其中存储的密码密钥21、22,并依照上面描述的同样步骤将其所有加密。这意味着包含明文形式的非敏感与敏感信息的完整EEPROM镜像可以被转换为包含明文形式的非敏感信息与加密形式的敏感信息的EEPROM镜像。可以用来做到这一点的技术为存储器走查技术(memory-walk technology),其寻找对象类型,即在给定情景中的密码密钥。在JavaCard的情况下,可以使用公知的无用单元收集机制来进行这一点,因为此机制也遍历整个EEPROM20。这样做的优点在于智能卡10可以在所有数据,即敏感与非敏感数据都在明文形式下的前提下进行制备与测试,并且只在测试与制造的结尾处转换到其中密码密钥21、22被加密的安全模式以备使用。
所述实施例可以部分组合也可以全部组合。
对于本领域技术人员来说,显然本发明可以实现于硬件、软件、和两者结合。另外,也可以以集中方式实现于一个单一计算机系统,或者以分布方式实现,其中不同的元件分散在几个互连的计算机或计算机系统上,由此任何形式的计算机系统——或者用来执行此处所述的方法的其他装置都是适合的。硬件与软件的典型组合可以是通用计算机与计算机程序,所述程序当加载并执行时,控制该计算机系统使之执行此处所述方法。本发明也可以实现于计算机程序产品,其包括所有使之能够实现此处所述方法的特征,并且其在加载到计算机系统中时,能够执行这些方法。
此处的计算机程序部件或者计算机程序指以任意语言、代码或者标记方法、用来使具有信息处理能力的系统或者直接或者在以下之一或者两者之后执行特定功能的一组指令的任意表示:a)转换为另一种语言,代码或者标记方法;b)以不同的物质形式重现。
任何所公开的实施例都可以与所显示和/或描述的其他实施例的一个或几个结合。这对于实施例的一个或更多个特征也是可能的。
对于本领域技术人员来说,显然可以多种方式修改所式的构造,而不脱离由权利要求所覆盖的本发明的精神。

Claims (10)

1.一种数据处理系统(10),包括:
处理器(50),
第一永久存储器(20),具有第一级信息泄露,
第二永久存储器(40),具有低于所述第一级信息泄露的第二级信息泄露,
第一经加密的信息(21、22),存储在所述第一永久存储器(20)中,
存储在所述第二永久存储器(40)中的、用来解密所述第一经加密的信息(21、22)的第一密码密钥(45),由此从其生成可由所述处理器(50)用来执行操作的第一未加密信息(31、32)。
2.一种数据处理系统(10),包括:
处理器(50),
第一永久存储器(20),具有第一级信息泄露,
第二永久存储器(40),具有低于所述第一级信息泄露的第二级信息泄露,
存储在所述第二永久存储器(40)中的、用来加密第一未加密信息(31、32)的第一密码密钥(45),以从其生成可存储在所述第一永久存储器(20)中的、并且可由所述处理器(50)用来执行操作的第一经加密的信息(21、22)。
3.如权利要求1或2所述的数据处理系统(10),其中第一未加密信息(31、32)包括可用于解密第二经加密的信息(33)的所述操作的第二密码密钥。
4.如权利要求1至3所述的数据处理系统(10),进一步包括所存储的、用于执行个性化步骤的代码,该个性化步骤包括:
加密步骤,用来使用第一密码密钥(45)加密第一未加密信息(31、32),由此在所述第一永久存储器(20)中从其生成第一经加密的信息(21、22),
访问限制步骤,用来将所述数据处理系统(10)设置为一状态,其中由操作系统(41)控制向所述第一永久存储器(20)写入。
5.如权利要求1至4所述的数据处理系统(10),进一步包括所存储的、用于执行操作执行步骤的代码,该操作执行步骤包括:
解密步骤,用来通过使用第一密码密钥(45)解密第一经加密的信息(21、22),由此从其生成第一未加密信息(31、32),
执行步骤,用来由所述处理器(50)通过使用所述第一未加密信息(31、32)执行操作。
6.一种处理数据处理系统(10)的方法,该处理数据处理系统(10)包括:处理器(50),第一永久存储器(20),具有第一级信息泄露;第二永久存储器(40),具有低于所述第一级信息泄露的第二级信息泄露;操作系统(41);以及第一密码信息(45),存储在所述第二永久存储器(40)中,所述方法包括:
写入步骤,用来将第一未加密信息(31、32)写入所述第一永久存储器(20),
加密步骤,用来使用所述第一密码密钥(45)加密第一未加密信息(31、32),由此在所述第一永久存储器(20)中从其生成第一经加密的信息(21、22),
访问限制步骤,用来将所述数据处理系统(10)设置为一状态,其中由所述操作系统(41)控制向所述第一永久存储器(20)的写入。
7.一种处理数据处理系统(10)的方法,该处理数据处理系统(10)包括:处理器(50),第一永久存储器(20),具有第一级信息泄露;第二永久存储器(40),具有低于所述第一级信息泄露的第二级信息泄露;以及第一经加密的信息(21、22),存储在所述第一永久存储器(20)中;第一密码信息(45),存储在所述第二永久存储器(40)中,所述方法包括:
解密步骤,用来使用第一密码密钥(45)解密第一经加密的信息(21、22),由此从其生成第一未加密信息(31、32),
执行步骤,用来由所述处理器(50)通过使用所述第一未加密信息(31、32)执行操作。
8.如权利要求6或7所述的方法,其中所述第一未加密信息(31、32)被选择来包含用于解密第二经加密的信息(33)的所述操作的第二密码密钥。
9.一种计算机程序产品,包括用来执行如权利要求6至8所述方法的程序代码装置。
10.如权利要求11所述的计算机程序产品,包括存储在数据处理系统上的程序代码装置。
CNB028227395A 2001-11-14 2002-11-05 更少信息泄露的设备与方法 Expired - Fee Related CN100390695C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01811093 2001-11-14
EP01811093.2 2001-11-14

Publications (2)

Publication Number Publication Date
CN1589424A true CN1589424A (zh) 2005-03-02
CN100390695C CN100390695C (zh) 2008-05-28

Family

ID=8184241

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028227395A Expired - Fee Related CN100390695C (zh) 2001-11-14 2002-11-05 更少信息泄露的设备与方法

Country Status (8)

Country Link
US (2) US7543159B2 (zh)
EP (1) EP1449045A2 (zh)
JP (1) JP2005510095A (zh)
KR (1) KR20040053101A (zh)
CN (1) CN100390695C (zh)
CA (1) CA2465333A1 (zh)
IL (2) IL161652A0 (zh)
WO (1) WO2003042799A2 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102438237A (zh) * 2010-11-23 2012-05-02 微软公司 使用移动通信设备的访问技术
CN101675428B (zh) * 2006-12-22 2012-09-05 Nxp股份有限公司 在应答器的存储阵列中存储/读取数据的方法和设备
CN101682612B (zh) * 2007-04-12 2013-02-06 本质Id有限责任公司 受控的功能激活
CN104468501A (zh) * 2013-09-25 2015-03-25 国际商业机器公司 保护服务使用信息的安全方法和系统及负载再平衡控制器
US9509686B2 (en) 2010-12-03 2016-11-29 Microsoft Technology Licensing, Llc Secure element authentication
US9525548B2 (en) 2010-10-21 2016-12-20 Microsoft Technology Licensing, Llc Provisioning techniques
CN108270427A (zh) * 2017-01-03 2018-07-10 意法半导体(鲁塞)公司 用于对集成模块的电流消耗进行管理的设备和方法
CN109417466A (zh) * 2016-04-01 2019-03-01 巴黎矿业电信学院 机密密钥估算方法与装置
CN113536351A (zh) * 2021-07-27 2021-10-22 中国电子科技集团公司第五十八研究所 一种基于flash型fpga的带永久加密的加密方法

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9323955B2 (en) * 2000-12-21 2016-04-26 Gemalto Sa Method for protecting a logic or mathematical operator installed in an electronic module with a microprocessor as well as the associated embedded electronic module and the system
WO2003075506A1 (en) * 2002-03-07 2003-09-12 Axalto Sa Method for making safe an electronic cryptography assembly with a secret key
WO2005041000A1 (en) * 2003-10-23 2005-05-06 Koninklijke Philips Electronics N.V. Method for protecting information carrier comprising an integrated circuit
GB2411261B (en) * 2004-02-20 2007-07-11 Hewlett Packard Development Co Standalone memory device and system and method using such device
JP2005316284A (ja) * 2004-04-30 2005-11-10 Hitachi Ltd 携帯端末とデータ保護システム
CN100353276C (zh) * 2004-06-24 2007-12-05 株式会社东芝 微处理器
CN100354787C (zh) * 2004-06-24 2007-12-12 株式会社东芝 微处理器
KR20070030237A (ko) * 2004-06-30 2007-03-15 코닌클리케 필립스 일렉트로닉스 엔.브이. 암호화된 데이터를 사용하기 위한 디바이스와 이를 위한방법
US7877621B2 (en) * 2004-09-03 2011-01-25 Virginia Tech Intellectual Properties, Inc. Detecting software attacks by monitoring electric power consumption patterns
US7809283B2 (en) * 2004-10-29 2010-10-05 Finisar Corporation Multi-transceiver module control with single microcontroller
US7457960B2 (en) * 2004-11-30 2008-11-25 Analog Devices, Inc. Programmable processor supporting secure mode
JP4896595B2 (ja) * 2006-01-18 2012-03-14 株式会社Pfu 画像読取装置およびプログラム
US7870336B2 (en) * 2006-11-03 2011-01-11 Microsoft Corporation Operating system protection against side-channel attacks on secrecy
JP5033196B2 (ja) * 2006-12-22 2012-09-26 エヌエックスピー ビー ヴィ データ記憶方法、並びにこの方法を実行するように構成されたトランスポンダ、読取り/書込み装置、プログラム要素、及びプログラム要素を含むコンピュータ可読媒体
US8362881B2 (en) 2006-12-27 2013-01-29 Nxp B.V. Method for storing data as well as a transponder, a read/write-device, a computer readable medium including a program element and such a program element adapted to perform this method
US7974409B2 (en) * 2007-06-28 2011-07-05 Samsung Electronics Co., Ltd. Changing the order of public key cryptographic computations
EP2218208B1 (fr) * 2007-12-13 2011-06-15 Oberthur Technologies Procede de traitement cryptographique de donnees, notamment a l'aide d'une boite s, dispositif et programme associes
EP2243238A4 (en) * 2007-12-27 2011-03-16 Safend Ltd SYSTEM AND METHOD CONTROLLING ACCESS TO CONTEXTUAL AND BEHAVIORAL DATA
US20090214023A1 (en) * 2008-02-26 2009-08-27 Al-Somani Turki F Method for elliptic curve scalar multiplication
US8422685B2 (en) 2008-02-26 2013-04-16 King Fahd University Of Petroleum And Minerals Method for elliptic curve scalar multiplication
JP4701260B2 (ja) * 2008-03-31 2011-06-15 株式会社エヌ・ティ・ティ・データ 情報処理装置、情報処理方法、および、情報処理プログラム
KR101472777B1 (ko) 2008-06-24 2014-12-16 한양대학교 에리카산학협력단 스캔 기반 사이드 채널 공격을 방지하기 위한 암호화 장치및 방법
WO2010011180A1 (en) 2008-07-25 2010-01-28 Resolvo Systems Pte Ltd Method and system for securing against leakage of source code
EP2154604A1 (en) * 2008-08-06 2010-02-17 Gemalto SA Countermeasure securing exponentiation based cryptography
JP5447790B2 (ja) * 2009-04-22 2014-03-19 大日本印刷株式会社 セキュリティトークン及びスクランブル鍵の派生方法
EP2520044B1 (en) 2009-09-29 2016-11-09 Memjet Technology Limited Communication system, method and device with limited encryption key retrieval
US8356358B2 (en) * 2009-12-04 2013-01-15 Altera Corporation Preventing information leakage between components on a programmable chip in the presence of faults
KR101714108B1 (ko) * 2009-12-04 2017-03-08 크라이프토그라피 리서치, 인코포레이티드 검증가능 누출 방지 암호화 및 복호화
US8752210B2 (en) * 2012-01-10 2014-06-10 International Business Machines Corporation Implementing data theft prevention
US8797059B2 (en) 2012-03-01 2014-08-05 International Business Machines Corporation Implementing carbon nanotube based sensors for cryptographic applications
US8819842B2 (en) 2012-11-20 2014-08-26 International Business Machines Corporation Implementing conductive microcapsule rupture to generate a tamper event for data theft prevention
DE102014208855A1 (de) * 2014-05-12 2015-11-12 Robert Bosch Gmbh Verfahren zum Durchführen einer Kommunikation zwischen Steuergeräten
EP2950229B1 (en) * 2014-05-28 2018-09-12 Nxp B.V. Method for facilitating transactions, computer program product and mobile device
EP2998977B1 (en) 2014-09-19 2018-07-04 ABB Schweiz AG A method for determining the operating status of a mv switching device of the electromagnetic type
US9495111B2 (en) * 2014-10-10 2016-11-15 The Boeing Company System and method for reducing information leakage from memory
US10771235B2 (en) * 2016-09-01 2020-09-08 Cryptography Research Inc. Protecting block cipher computation operations from external monitoring attacks
EP3698262B1 (en) 2017-10-18 2023-08-02 Cryptography Research, Inc. Protecting modular inversion operation from external monitoring attacks
CN108764892A (zh) * 2018-05-29 2018-11-06 广东通莞科技股份有限公司 一种移动支付平台的加密系统

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH025158A (ja) 1988-06-22 1990-01-10 Fujitsu Ltd 拡張icカード及びそのアクセス法
US4888802A (en) 1988-06-17 1989-12-19 Ncr Corporation System and method for providing for secure encryptor key management
SG46692A1 (en) * 1992-03-30 1998-02-20 Telstra Corp Ltd A cryptographic communications method and system
US5457748A (en) 1992-11-30 1995-10-10 Motorola, Inc. Method and apparatus for improved security within encrypted communication devices
AU1265195A (en) * 1993-12-06 1995-06-27 Telequip Corporation Secure computer memory card
JPH0895942A (ja) 1994-09-27 1996-04-12 Sanyo Electric Co Ltd 1チップマイクロコンピュータ
EP0753816A1 (en) 1995-07-07 1997-01-15 Thomson Consumer Electronics, Inc. A method and apparatus for storing sensitive information securely in a relatively insecure storage medium
JPH09114731A (ja) 1995-10-17 1997-05-02 Sanyo Electric Co Ltd マイクロコンピュータ
JPH10214232A (ja) 1997-01-30 1998-08-11 Rohm Co Ltd Icカードおよびicカードの運用方法
JPH10254848A (ja) 1997-03-10 1998-09-25 Sanyo Electric Co Ltd 1チップマイクロコンピュータ
JPH10334205A (ja) 1997-05-30 1998-12-18 Toshiba Corp Icカードおよびメモリパッケージ
WO1999019846A2 (en) * 1997-10-14 1999-04-22 Visa International Service Association Personalization of smart cards
CA2316227C (en) * 1998-01-02 2009-08-11 Cryptography Research, Inc. Leak-resistant cryptographic method and apparatus
KR100397316B1 (ko) 1998-01-21 2003-09-06 비.유.지., 인크. 기억 장치, 암호화ㆍ복호화 장치 및 불휘발성 메모리의액세스 방법
WO2000019366A1 (de) 1998-09-30 2000-04-06 Koninklijke Philips Electronics N.V. Datenverarbeitungseinrichtung und verfahren zu deren spannungsversorgung
CA2258338C (en) 1999-01-11 2009-02-24 Certicom Corp. Method and apparatus for minimizing differential power attacks on processors
JP4083925B2 (ja) 1999-06-24 2008-04-30 株式会社日立製作所 情報処理装置、カード部材および情報処理システム
JP4348790B2 (ja) 1999-09-20 2009-10-21 ソニー株式会社 半導体記憶装置及び半導体記憶装置の動作設定方法
GB2356469B (en) * 1999-11-17 2001-12-12 Motorola Ltd Portable data carrier memory management system and method
JP2002229861A (ja) 2001-02-07 2002-08-16 Hitachi Ltd 著作権保護機能つき記録装置
US7194633B2 (en) * 2001-11-14 2007-03-20 International Business Machines Corporation Device and method with reduced information leakage

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101675428B (zh) * 2006-12-22 2012-09-05 Nxp股份有限公司 在应答器的存储阵列中存储/读取数据的方法和设备
CN101682612B (zh) * 2007-04-12 2013-02-06 本质Id有限责任公司 受控的功能激活
US9525548B2 (en) 2010-10-21 2016-12-20 Microsoft Technology Licensing, Llc Provisioning techniques
CN102438237B (zh) * 2010-11-23 2015-08-19 微软技术许可有限责任公司 使用移动通信设备的访问技术
US9026171B2 (en) 2010-11-23 2015-05-05 Microsoft Technology Licensing, Llc Access techniques using a mobile communication device
CN102438237A (zh) * 2010-11-23 2012-05-02 微软公司 使用移动通信设备的访问技术
US8805434B2 (en) 2010-11-23 2014-08-12 Microsoft Corporation Access techniques using a mobile communication device
US9509686B2 (en) 2010-12-03 2016-11-29 Microsoft Technology Licensing, Llc Secure element authentication
CN104468501A (zh) * 2013-09-25 2015-03-25 国际商业机器公司 保护服务使用信息的安全方法和系统及负载再平衡控制器
CN104468501B (zh) * 2013-09-25 2018-01-12 国际商业机器公司 保护服务使用信息的安全方法和系统及负载再平衡控制器
CN109417466A (zh) * 2016-04-01 2019-03-01 巴黎矿业电信学院 机密密钥估算方法与装置
CN109417466B (zh) * 2016-04-01 2022-11-25 巴黎矿业电信学院 机密密钥估算方法与装置
CN108270427A (zh) * 2017-01-03 2018-07-10 意法半导体(鲁塞)公司 用于对集成模块的电流消耗进行管理的设备和方法
CN108270427B (zh) * 2017-01-03 2021-06-15 意法半导体(鲁塞)公司 用于对集成模块的电流消耗进行管理的设备和方法
CN113536351A (zh) * 2021-07-27 2021-10-22 中国电子科技集团公司第五十八研究所 一种基于flash型fpga的带永久加密的加密方法

Also Published As

Publication number Publication date
US7543159B2 (en) 2009-06-02
IL161652A (en) 2013-05-30
CA2465333A1 (en) 2003-05-22
JP2005510095A (ja) 2005-04-14
EP1449045A2 (en) 2004-08-25
IL161652A0 (en) 2004-09-27
US20060090081A1 (en) 2006-04-27
WO2003042799A3 (en) 2003-11-27
KR20040053101A (ko) 2004-06-23
WO2003042799A2 (en) 2003-05-22
CN100390695C (zh) 2008-05-28
US20080222427A1 (en) 2008-09-11

Similar Documents

Publication Publication Date Title
CN100390695C (zh) 更少信息泄露的设备与方法
CN107438850B (zh) 使用签名的地址验证
US7194633B2 (en) Device and method with reduced information leakage
US6510518B1 (en) Balanced cryptographic computational method and apparatus for leak minimizational in smartcards and other cryptosystems
CA2333095C (en) Improved des and other cryptographic processes with leak minimization for smartcards and other cryptosystems
JP4216475B2 (ja) 漏洩抵抗力を有する暗号索引付き鍵の更新方法及びデバイス
US8438401B2 (en) Device and method for securely storing data
CN110637301B (zh) 减少虚拟机中敏感数据的泄密
CN105406957B (zh) 保护密码设备对抗实现攻击
US9053480B1 (en) Secure validation using hardware security modules
Gupta et al. A taxonomy of various attacks on smart card–based applications and countermeasures
CN106100823B (zh) 保护密码装置
JP2008287706A (ja) 情報セキュリティ装置、セキュリティシステム及び入力情報漏洩防止方法
Rae et al. A taxonomy of attacks on secure devices
Rossudowski et al. A security privacy aware architecture and protocol for a single smart card used for multiple services
Nakano et al. Memory access pattern protection for resource-constrained devices
KR20170053056A (ko) 사례기반 추론엔진을 이용한 보안 서버 및 보안 기능의 설치를 위한 저장 매체
US20210256150A1 (en) Efficient random tokenization in the cloud
US11061996B2 (en) Intrinsic authentication of program code
Zanero Smart card content security
EP1802024B1 (en) Balanced cryptographic computational method and apparatus for leak minimization in smartcards and other cryptosystems
Rau et al. Constructing a security-mechanism RFID system
Chaumette et al. Extended secure memory for a java card in the context of the java card grid project
Ramkumar DOWN with trusted devices
CN117574332A (zh) 基于数据加解密的程序防篡改方法、装置、设备和介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080528

Termination date: 20111105