CN1126398C - 防止电子存储器被窜改的电子装置以及方法 - Google Patents

防止电子存储器被窜改的电子装置以及方法 Download PDF

Info

Publication number
CN1126398C
CN1126398C CN97199389A CN97199389A CN1126398C CN 1126398 C CN1126398 C CN 1126398C CN 97199389 A CN97199389 A CN 97199389A CN 97199389 A CN97199389 A CN 97199389A CN 1126398 C CN1126398 C CN 1126398C
Authority
CN
China
Prior art keywords
hashed value
memory
electronic installation
hash
here
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.)
Expired - Lifetime
Application number
CN97199389A
Other languages
English (en)
Other versions
CN1235743A (zh
Inventor
W·R·奥斯本
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.)
Ericsson Inc
Original Assignee
Ericsson Inc
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=24838185&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN1126398(C) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Ericsson Inc filed Critical Ericsson Inc
Publication of CN1235743A publication Critical patent/CN1235743A/zh
Application granted granted Critical
Publication of CN1126398C publication Critical patent/CN1126398C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/565Static detection by checking file integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/126Anti-theft arrangements, e.g. protection against subscriber identity module [SIM] cloning
    • 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/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/69Identity-dependent
    • H04W12/71Hardware identity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Abstract

披露了防止窜改电子装置(例如蜂窝电话)中存储器的方法和装置。具有存储器和处理装置的电子装置含有逻辑用于完成对该装置存储器内容的单向散列计算,从而导出这些内容的审查散列值或签名。该审查散列值与从真实存储器内容中导出的有效散列值比较。审查散列值和有效散列值之差异能指明存储器被窜改。根据本发明的另一方面,电子装置存储器内容能被数据传送装置更新,该数据传送装置在被允许访问存储器内容之前要被认证。数据传送装置的认证涉及使用公共/私人密钥编密码方案。当数据传送装置与电子装置建立接口并请求存储器访问时,一个认证数据传送装置的过程被启动。

Description

防止电子存储器被窜改的电子装置以及方法
背景
本发明是关于防止电子存储器被操纵的系统,特别是防止对电子装置中希望安全的存储器内容进行未授权操纵的方法和装置。
这里披露的发明是关于任何电子装置,它的存储器内容要被保持在安全的或最好是不被更改的状态。这种要求可能是安全原因所必须的,例如防止对蜂窝电话存储器进行欺骗性操纵,或者为了在要害性应用中保持电子装置操作的完整性,例如飞机控制或医疗仪器操作。如这里所披露和描述的那样,在保证蜂窝电话内一个或多个电子存储器安全的系统和方法这一范围内提出了本发明的示例性的若干方面。这里还描述了一个系统,它通过使用一个数据传送装置,该装置在被允许访问一个电子装置之前要受到鉴别处理,然后才允许访问和操纵该电子装置中的一个或多个电子存储器。也是在蜂窝电话应用的范围内描述了这后一个系统。虽然这里披露的本发明实施例是针对安全的蜂窝电话存储器以及用于安全地访问和更改蜂窝电话中存储器内容的装置进行描述的,但熟悉本门技术的人员会容易地理解,根据本发明构成的系统能被应用于具有一个或多个其内容保持不变的存储器的任何系统,或者其存储器只能被授权装置访问的任何系统。因此,本发明的范围不限于这些示例性的实施例,而是由这里所附的权利要求及其等同物所限定。
在美国,1995年中由于蜂窝电话欺诈造成的损失预计有6亿美元。作为对此的反应,制造商、服务提供商、联邦通信委员会(FCC)以及工业贸易集团已经在研究大量的打击这种欺诈的技术。在美国进行的蜂窝电话欺诈绝大多数涉及某种形式的存储器操纵,以便更改蜂窝电话电子序列号(ESN),该序列号是蜂窝电话为建立通信所必须提供的号码。其结果是,考虑到作为FCC的一种规定,一种防止欺诈技术是要求蜂窝电话制造商使所有微处理机代码和ESN都不可更改。下面将提供关于基本的蜂窝通信的一些背景情况,以帮助说明蜂窝远程通信的运行环境和包含本发明的系统所要解决的相关问题。
图1中描述了一种蜂窝通信系统的简化示意图。移动电话M1-M10通过向蜂窝基站B1-B10发送无线电信号和从基站B1-B10接收无线电信号来实现与公共交换网的固定部分进行通信。蜂窝基站B1-B10依次通过移动交换中心(MSC)与公共交换网相连。每个基站B1-B10在相应的区域(或称“小区(cell)”)C1-C10范围内发送信号。如图1中所示,基站的理想安排是要以最小重叠量使这些小区基本上覆盖移动电话通信通常发生的区域(例如城市区域)。
当用户启动一个小区内的一部移动电话时,该移动电话向小区基站发送一个信号,指出该移动电话的存在。移动电话在一指定的建立(set-up)信道(它由每个基站连续监测)中发送该信号,信号中可能包括ESN。当基站收到该移动电话信号时,它对该移动电话在该小区内的存在进行登录。这一过程能被周期性地重复进行,从而使移动电话移动到另一小区时能被适当地登录。
当拨打一个移动电话号码时,电话公司中心局识别出这个号码为移动电话,并把这一呼叫送到MSC。MSC根据所拨打的移动电话号码和当前的登录信息,向某些基站发出寻呼消息(paging message)。一个或多个基站在它的建立信道上发送一个寻呼信号(page)。该被拨打的移动电话在该建立信道上识别出它的标识码并响应该基站的寻呼。该移动电话还遵循一个指令调谐到一个指定的声音信道,然后启动振铃。当一移动电话用户终止一次通信时,一个信令音调被传送到基站,于是双方释放该声音信道。
在前面描述的操作中,移动电话不是永久性地连于固定网络,而是通过所谓的“空中接口(air interface)”与一基站相连,当然,这样做提供了蜂窝通信系统的灵活性,因为用户能容易地迁移移动电话而不受物理连接于一通信系统的限制。然而,这同一特性也造成了在保证蜂窝电话系统上传送信息安全性方面的困难。
例如,在通常的有线电话系统中,中心交换局能借助一电话机物理上连接的通信线识别特定用户以收取该电话机的使用费。这样,要欺诈性使用一用户的帐户便需要与该用户的线路进行物理连接。这存在着发现欺诈性使用者的危险。
与此相反,蜂窝通信系统对于会是欺诈性使用者的人而言不存在这种问题,因为这些系统是通过空中接口进行通信的。由于缺乏保护措施,欺诈性使用者能通过访问另一用户的电子序列号(ESN)来使用该用户的帐户,而该ESN是由移动电话在各种时刻传送给电话网的,借以建立和维持通信。
在建立标准的蜂窝连接时,两个标识代码被移动电话传送给系统。这些代码是移动标识号(MIN)和ESN。MIN标识一个用户,而ESN标识该用户使用的实际硬件。因此,由于用户会购买新的设备,故对应于特定ESN的MIN会随时改变。MIN是从10位电话簿电话号码中导出的34位二进制数,而ESN是唯一标识一部移动电话的32位二进制数。ESN通常由移动电话制造商设定。
图2中的流程图说明了例如在高级移动电话系统(AMPS)中建立通信时利用的传统的认证方法。根据这种方法,在方框200一基站从移动电话接口ESN和MIN。这些标识代码表示为ESNm和MINm,以指明它们是从移动电话收到的。接下来,在方框202,基站从系统存储器中提取出与MINm对应的ESNsys。然后在方框204把ESNsys与ESNm进行比较。如果这两个序列号相同,则流程进入方框206,系统被允许访问。否则,在方框208系统访问被拒绝。
本系统的一个缺点是,一个欺诈性使用者能通过在空中接口上窃听或从其他来源较容易地合成有效的MIN/ESN组合。如果从移动电话收到的MIN和ESN对应于系统存储器中存储的那些,则根据这一传统系统进行的访问便认为有效,由于这一情况,欺诈性访问所必要的全部信息能通过电子窃听获取。
已经提议了其他技术用于防止欺诈性使用。例如,美国专利5,386,486描述了以服务载波在个人通信终端中登录一标识号的方法。EP0 583 100A1描述了一个用于移动电话机的赋予号码模块设置系统,其中防止了在移动电话中非法设置一个赋予号码模块。
在欧洲GMS标准(移动通信全球系统)、美国TIA/EIA/IS-136标准以及日本个人数字蜂窝标准无线电通信系统下操作的系统中,利用查询-响应(Challenge-response)方法防止由窃听造成的欺诈。根据查询-响应方法,每个移动电话伴随一个唯一的密钥,它存储于该移动电话中和网络中的一个基站中。对于该系统为唯一的一种算法存储于每个移动电话中和所希望的一些网络节点中。当建立一个呼叫时,需要进行认证。做法是由网络向该移动电话发出一个查询(随机数)。根据收到的查询和所存储的密钥,该移动电话使用该算法计算出一个响应并把该响应发送到网络。与此同时,网络根据这同一个查询和网络存储的密钥计算出“期望的”响应。然后网络接收移动电话计算出的响应并把移动电话计算出的响应与网络计算出的响应进行比较。如果发生了不匹配,则产生适当的动作,例如拒绝访问或设置警告标志。在授予P.Dent等人的美国专利5,282,250中提出了一种方法,用于实现在移动无线电系统中-基站和-移动电话之间鉴别检验的方法。
在传统的模拟系统(例如AMPS)中,大多数欺诈是由这样一些欺诈性使用者搞出的,他们通过获取有效的MIN/ESN对和使用这一对去对一蜂窝电话重新编程来“克隆”出有效用户。在更复杂的克隆方法中,将蜂窝电话的软件重新编程,从而使它在称作“翻滚(tumbling)”的实践中使用多个MIN/ESN对。以翻滚程序编程的蜂窝电话随机地滚动和选择一个MIN/ESN对以启动一次呼叫。当试图进行一次呼叫但遇到无效MIN/ESN对时,翻滚程序只是简单地消掉那个MIN/ESN对并继续滚动,直到找到有效的MIN/ESN对为止。当编程到蜂窝电话中的所有MIN/ESN对都变为无效之后,该电话的使用者通常是返回到克隆者那里去使一组新的MIN/ESN对编程到该蜂窝电话中。
大多数蜂窝欺诈涉及某种程度的存储器操纵。这将参考图3进行描述,该图描述了传统蜂窝电话存储器和处理器结构的方框图。控制器300使用一存储器总线308与ROM或快速程序存储器320、EEPROM310以及随机存取存储器(RAM)330通信。程序存储器320是一个非易失读/写存储器,它存储用于蜂窝电话一般操作的大部分代码。EEPROM310用于存储MIN/ESN对314和316,以及用户轮廓(profile)信息312(例如加速拨号),而RAM用于读/写暂时(scrachpad)存储器。克隆者已知道去监视各存储器和控制器300之间的消息传送,以收集用于旁路或修改快速存储器320或EEPROM310中所存信息的信息。
电话欺诈的最常用方法是非法使用测试命令(这些命令是用于电话服务和维修),以改变ESM。然而,较新近生产的电话是抗这种行为的,而且已有效地消除了这种攻击的渠道。因此,克隆者们已经在重新寻找更复杂的攻击方式。
一种这类技术是去掉含有ESN314的原有EEPROM310并替换它。在把它去掉之后,对这个EEPROM进行研究以解密它的内容。然后把解密的内容用于以来自有效用户帐户的不适当的一对ESN/MIN对一个替代的EEPROM进行编程。这个技术可能对这样的克隆者有吸引力,如果他或她只想一次改变一个ESN的话。但是,这种技术是很费力的,而且如果不是特别小心的话,那些技术差的克隆者可能会损坏印刷电路。
在克隆复杂性方面的一个大步骤是分析电话的微处理器程序代码并重写该代码的一部分或多个部分,以把一个欺诈性标识(ESN/MIN对)传送到一个蜂窝基站。这往往涉及改变电话硬件设计的工程部分,并需要深入理解所嵌入的软件设计。然而,这种方法的明显优点是一旦完成了修改,该电话能按需要随时以新的标识进行重新编程。
最复杂的攻击是把前述对蜂窝电话微处理器代码的修改与硬件的修改结合起来。这种技术的一个实例是使用所谓“影子存储器(shadoumemory)”,以避免被传统的存储器有效性检验程序的监测,这个程序只是当蜂窝电话第一次打开电源时在启动(boot-up)过程中才执行。该启动过程的执行根据控制器300(见图3)中包含的启动代码304的一小部分。该启动过程把该蜂窝电话配置成一种在服务状态,并把微处理器301中的程序计数器设置到快速存储器320中的适当位置。当完成这一过程时,控制器300会点亮LED 318(或其他等效信号),以向用户指明该电话处于状态。克隆者能监测控制器300和LED 318之间和连线306,以破坏正常操作代码的执行,如下文中更详细描述的那样。
在典型的现代蜂窝电话中含有快速存储器320有512K可寻址能力。克隆者可能去掉这个快速存储器320,并在把这个原有快速存储器320的内容复制到1024K影子存储器322的第一个512K中之后,以这个1024K影子存储器322替代快速存储器320。在启动过程中,对程序存储器的任何访问都被成功地指向快速存储器320的第一个512K中。然后克隆者可以监测在电话中能得到的一个信号,它指示启动过程已经完成(例如LED信号306),以便把所有后来的程序存储器访问切换到影子存储器322。其后该蜂窝电话根据在影子存储器322中找到的指令进行操作,这个存储器能被编程以包含翻滚例程代码和相应的各MIN/ESN时。
各种尝试都已做过以防止存储器被窜改。例如,WO 91/09484描述了一种安全技术,其中只允许由取自ROM的CPU指令对移动无线电话中的存储器区域进行访问。FR2 681 965描述了一个系统用于防止在发生某些事件时存储器被写入。在美国专利5,046,082中描述了防止欺诈应用和/或窜改的其他系统,该专利描述了一个蜂窝电话远程访问系统,它阻止未授权访问和以蜂窝电话编程去窜改,专利5,442,645号描述了对程序或数据完整性的检验,其中由便携对象的处理电路计算出的签名与一个原始的消息签名作比较。
因为大多数蜂窝欺诈是基于某种程度的存储器操纵,所以联邦通信委员会(FCC)当前正在考虑针对蜂窝电话欺诈的这一方面的解决办法。这一解决办法被包含在所提议的FCC规则(在§22.219中指定的)。按照当前的写法,§22.919禁止移动电话操作软件为可更改的;要求ESN为工厂设定的而且不能以任何方式被更改、传送和去掉;而且要求在任何人(包括制造商)试图去掉、窜改或改变蜂窝电话的ESN、系统逻辑、或固件时该移动发射机便变成不能操作。
从消费者的角度看,制造商或其工厂授权的服务代表有能力对蜂窝电话编程,会使替换不正常工作的蜂窝电话容易实现。例如,如果一个用户的蜂窝电话不正常工作,该用户能从工厂授权代表那里得到一个新的单元并对它编程,  使其包含与旧单元相同的电子“个性(porsonality)”。一个蜂窝电话的电子个性不只包括ESN,而且还包括用户轮廓和由用户编程到该单元中的大量信息,如个人的和/或业务的电话号码。在不希望他们的用户因失效终端而造成不便的那些蜂窝服务提供者们的坚持下,已经发展了修理/替换程序和技术,以能快速和容易地对蜂窝电话改变ESN及其他存储器内容。
在FCC§22.919下,在上述场合的用户仍能得到一个新的移动单元,如果他们的旧单元失效的话。然而,因为该新单元将伴有新的固定的ESN,这新的ESN信息得要通告给该蜂窝运行者,它得要把这信息编程到他们的数据库。这将造成在很长一段时间内该用户不能得到服务。用户还得要把任何个人的或业务的电话号码重新编程到他们的蜂窝电话号。§22.919的一个更显著得多的问题是对蜂窝服务提供者通过对用户蜂窝电话进行编程或重新编程来向用户提供系统更新的这种能力的负面冲击。
§22.919可能对蜂窝工业的系统更新能力的实际冲击将在下文中说明。如在TIA/EIA/IS-136标准中指定的数字控制信道的使用,使蜂窝运行者能提供新的扩展服务,如短消息传送服务。如果运行者、制造商或被授权代理人被允许改变蜂窝电话的软件和/或固件,便能通过对终端的软件更新使用户快速和有效地得到这种服务。在§22.919(以它当前的形式)下,不论是制造商、制造商授权的服务代理或者蜂窝运行者,都不能进行这种软件改变。运行者能向用户提供系统增强能力的唯一办法将是要求用户购买一部新的蜂窝电话。
为了缓解§22.919对用户以及制造界的冲击FCC宣称将适用于那样一些蜂窝电话,对这些电话而言,初始类型接受申请是在1995年1月1日之后被受理的。其效果是,FCC存档在当前在运行的2千万部蜂窝电话,以及在1995年1月1日之后投入服务但基于1995年1月1日之前受理的类型接受申请的数百万部蜂窝电话。现在已经有如此多的蜂窝单元投入市场而它们的电子信息能被操纵以达到非法目的,这一事实表明,§22.919将对欺诈问题几乎没有什么冲击。那些借助非法窜改用ESNs,进行欺诈的组织能利用那不受§22.919限制的数百万个终端继续这样做。
从前述能够理解,提供具有安全存储器的蜂窝电话是特别希望的。当前看来还没有解决办法来改变蜂窝电话以使它们能抵御窜改。此外,看来还没有办法和装置能以一种只保证授权访问的方式提供对电子装置存储器的更新。
概述
防止蜂窝电话存储器被窜改(以及一般地说,防止电子存储器被窜改)的传统方法和所建议的解决方案有这些和那些缺点和局限,这些缺点和局限被本发明所克服。本发明的实施例防止电子存储器内容被未授权访问和操纵。
根据本发明的一个方面,通过周期性地审查电子装置中的内子存储器内容以保证其内容不被窜改,来实现其安全性。这种审查涉及对电子存储器的选定内容进行随机计算以提取这些内容的一个审查散列值(audit hash value)或称审查特征(audit signature)。这个审查散列值与先前从真实存储器内容导出的有效散列值进行比较。这个有效散列值最好是以密码形式存储在电子存储器内并只是为了进行比较才解密。审查散列值与有效散列值之间的不一致能表明存储器被窜改,于是可以使包含该电子存储器的电子装置不工作或作出警告指示。
根据本发明的另一方面,能由一个数据传送装置对电子存储器的内容(例如蜂窝电话存储器中包含的内容,包括蜂窝电话的ESN)进行更新,该数据传送装置在被允许访问存储器内容之前要受鉴别。数据传送装置的鉴别涉及使用一种公共/私人密钥鉴别方法。当数据传送装置与电子装置接口并请求访问时。该电子装置启动一个鉴别该数据传送装置的处理过程。这能涉及电子装置和数据传送装置之间交换一系列消息。在电子装置内保持一个公共密钥,它用于对编成密码的消息进行解密,或者以数据传送装置内保持的秘密的私人密钥来“签字”。再具体地说,当数据传送装置请求对电子装置执行程序时,一个鉴别过程被启动。电子装置的响应是向数据传送装置发出一个查询消息。该查询消息被数据传送装置中保持的私人密钥以数字签名形式签字。签字的查询信息被送回电子装置,它确认它使用公共密钥。一旦被确认,数据传送装置便被允许访问电话装置中的特权命令和能力。
在对电子存储器作任何再编程之后,该电子装置完成散列计算,以导出关于修改后的存储器内容的新的(有效的)散列值。这新的散列值被回送到电子装置用于以私人密钥进行数字签名。签名的新的散列值被回送到电子装置供存储。当电子装置完成下一次存储器审查时,所得到的审查散列值与这新的有效散列值进行比较。
图件简述
在结合图件阅读本说明之后便能更容易地理解本发明的前述和其他目的、特征和优点,其中:
图1描述一蜂窝通信系统的理想配置;
图2描述一流程图,说明为建立蜂窝呼叫所用的传统蜂窝认证方法;
图3描述一种传统的蜂窝电话处理器和存储器装置;
图4描述根据本发明的一个实施例的蜂窝电话处理器和存储器装置;
图5描述一个流程图,说明根据本发明的一个实施例的示例蜂窝电话的启动方法;
图6描述一个流程图,说明根据本发明的示例周期性存储有效性确认方法;
图7描述根据本发明的示例数据传送装置;
图8描述一个流程图,说明根据本发明的一个实施例的认证数据传送装置的示例方法;
图9描述一个流程图,说明根据本发明的一个实施例的把初如ESN送入蜂窝存储器的示例方法;
图10描述一个流程图,说明根据本发明重编程一个已建立的ESN的示例方法;以及
图11描述根据本发明的一个实施例的被保护的存储器装置;以及
图12描述根据本发明的一个实施例的示例蜂窝电话编程器。
详细描述
下面在蜂窝电话应用的内容范围内披露根据本发明的示例电子存储器涉及的装置和方法。下面描述的例子只是提供出来供说明包含本发明的一种理想应用。
参考图4,控制器400控制-蜂窝电话的操作(例如见图12中的参考号1204)。控制器400与一闪频程序存储器420、电子可擦可编程只读存储器(EEPROM)410、以及随机存取存储器(RAM)408结合操作。控制器400包含微处理器402和内部只读存储器(IROM)403。IROM403包含启动代码404、散列代码405、认证代码409、以及一公共的编密码用密钥406。控制器400还包括一个受保护的静态随机存取存储器(PSRAM)407,一个中断控制器421、以及一个基于硬件的计时器401用于启动由微处理器402对选定的存储器内容进行周期性散列计算。EEPROM410包含用户侧面数据412、ESN414、MIN416以及签字/未签字的有效散列值对418。蜂窝电话一般操作所涉及的指令代码保存在闪频程序存储器420中。RAM存储器408被用作为操作的暂存(scrachpad),这些操作是正常蜂窝电话呼叫处理的一部分。涉及敏感数据、散列值计算和认证处理的操作最好是与PSRAM 407结合进行。控制器400通过存储器总线424与闪频程序存储器420、RAM408及EEPROM 410通信。
根据本发明的一个实施例,用于图4所示系统的电话通电和存储器有效性确认的处理方法示于图5中。在蜂窝电话被接通电源后,在IROM403中的启动代码404被微处理器402执行以初始化控制器(方框500)。然后,在IROM403中包含的散列代码405被运行,以在快速程序存储器的选定内容和存储在EEPROM410中的ESN值414上完成审查散列值计算(方框502)。然后控制器认证存储在EEPROM410中的签字的有效散列值对418(方框504)。这可能涉及通过把签字的有效散列值以公共密钥406进行处理然后将结果与未签字散列值比较来认证签字的有效散列值。然后,被认证的散列值被存储在PSRAM407中(方框506)。然后把在方框502提取的审查散列值和在方框504提取的被认证散列值进行比较(方框508)。如果这两个散列值匹配,则一个微处理器程序计数器被设置到快速存储器420中的一个适当位置,并启动一个周期性的散列值计算过程(方框510),其后蜂窝电话开始正常操作(方框512)。如果在方框508处散列值不匹配,则该系统被置于无限循环(方框514),或者被关掉。前述过程防止一个克隆者在闪频存储器中替换一个被修改的程序或者在EEPROM410中替换一个被修改的ESM,因为这样做会造成散列值不匹配,从而使电话变成不可操作。
为了防止启动正常操作后由影子存储器422代替有效快速存储器420,最好是完成周期性的散列值处理。在正常电话操作过程中,能发生周期性散列值计算以响应计时器终止或响应其他系统事件。在图4所描述的实施例中,周期性散列计算被启动,以响应一个以硬件为基础的计时器401的终止,它引起一个不可屏蔽中断(NMI)的产生。一个NMI是一面向硬件的中断,它不能被软件过程屏蔽掉。因此,克隆者不能构成目的在于阻止NMI的影子代码。一个常规的中断也是一个硬件中断,它必须与其他来自正常蜂窝电话事件的常规中断竞争以得到对微处理器资源的访问。当一个常规中断变为有最高优先级的中断请求装置时,该常规中断被承认和被处理。
因为一个完整的散列值计算所占用的时间可能长于正常电话操作所能允许的时间,所以最好提供一种能力能在一段时间(例如几秒)分成的几段中完成以分段为基础的处理。根据最佳实施例的另一方面,基于硬件的计时器启动一个两步处理以完成一段散列值计算。首先,一个不可屏蔽中断(NMI)使微处理器立即提取按时间安排包括在周期性散列计算中的下一个快速或EEPROM存储器位置的内容,并把它存储在PSRAM中。该NMI最好是该中断的短的顶级优先级变体,它对于NMI发生时可能正在运行的微处理器任务造成的影响可以忽略,这保证克隆软件不能采取任何行动来避免受到散列计算的检测。第二个较低优先级的标准中断也由该基于硬件的计时器401产生,它请求服务以便基于先前被NMI例程捕获的存储器字节完成散列值计算的当前段。这个任务可以象为正常的呼叫处理任务所需要的那样,在硬件计时器终止和关闭电话机之前被延期一个预定的最长时间(T)。最长时间(T)的选择是要使任何合理的呼叫处理能够完成,该散列计算段能够结束,而且该硬件计时器能在它终止之前复位到它的递减计数循环的开始处。使用两类中断周期性完成一段散列值计算的策略避免了系统响应的任何降低,同时保证安全性检验不能被驻留在影子软件存储器中的克隆软件所旁路。
图6显示根据本发明周期性散列值计算方法的示例流程图。参考该图,当硬件计数器401中的T1计数器终止时(方框602),在方框604产生NMI和常规中断这两个中断。一旦NMI获得对微处理器的控制(方框604),系统使常规中断停止或排队等候短时间,期间把散列计算所需要的闪频或EEPROM存储器中的下一个字节复制到PSRAM中(方框606),然后控制返回到NMI发生时所执行的任务(方框608)。在正常情况下,在一个短时间内,来自基于硬件的计时器401的正常中断也得到服务(方框610),而且基于先前存储在PSRAM中的存储器字节进行的一段散列计算被完成(方框616)。如果散列值计算尚未完成,则基于硬件的计数器(T1和T2)401被复位到它们的初始值(方框624)并且正常的电话操作继续进行,直至计数器T1的下一次终止。如果在该常规中断被服务(方框610)之前计数器T2会终止(方框612),则电话被停止(方框614)。计数器T2的缺省终止(除非该常规中断被正确地服务)防止克隆者停止周期性散列计算。
散列值的这种周期性逐段计算继续下去,直至审查散列值计算完成为止(方框618)。然后从PSRAM中取出先前认证的散列值并与该审查散列值比较(方框620)。如果匹配,则基于硬件的计数器401被复位(方框624),电话继续正常操作(方框600)。如果不匹配,系统被停止(方框622),例如把微处理器402置于停止状态。
在其上完成散列计算的蜂窝电话存储器的选定内容最好包括取自快速存储器420的内容以及EEPROM 414内的ESN。这防止克隆者物理上移走或修改快速存储器或EEPROM以及用重编程的装置代替它们,这种重编程装置包含修改的ESN和/或为欺诈蜂窝电话而设计的程序代码。最好是所选择的存储器内容和所用的散列值计算能使电话由于散列值计算中包括的即使是一个存储器位的改变也会变成不可操作的。
根据本发明的另一方面,使用数据传送装置能以安全的方式对蜂窝电话编程。图7中显示根据本发明的一个数据传送装置示例。控制器400、它的内容、以及相关部件的参考号码都与图4中的图件参考号码完全相同。示例数据传送装置750包括一个安全的微处理器752,它包含一个私人密码密钥754,该密钥对应于控制器400中的IROM403中的公共密码密钥406,安全微处理器752经由接口758与蜂窝电话控制器400通信。接口758可以是一个有线串行连接,如RS-232链路,无线红外接口,或RF接口,如蜂窝电话的主天线(未画出),或在蜂窝电话内的另一天线。
只有在完成了严格的认证过程之后,才允许由数据传送装置750访问蜂窝电话存储器。更具体地说,只有在数据传送装置750经受了查询-响应过程以保证它的真实性之后,控制器400(及其相关的存储器部件)才能为了下载数据的目的而被访问。图8显示了根据本发明的一个实施例认证数据传送装置750的示例方法。作为第一步(方框800),最好是使用先前参考图5描述的防欺诈过程把电话带入操作状态。在建立了一个接口之后,安全处理器752把一编程请求消息和由安全微处理器752产生的一个随机数(Rand1)一起发送给控制器400(方框802)。作为响应,控制器400向安全微处理器752发送一个随机数查询代码(Rand2)(方框804)。然后,安全微处理器752根据Rand1、Rand2和私人密钥754产生一个查询响应(方框806)。然后查询响应被回送到控制器400(方框808)。控制器400使用Rand1、Rand2和公共密钥406对查询响应进行处理。然后通过把处理后的查询响应之值与Rand2进行比较来认证这处理后的查询响应(方框812)。如果查询响应被适当地解密(例如Rand2),则该数据传送装置的真实性被证实,于是电话进入一种编程方式(方框814)。其后数据传送装置750能访问蜂窝电话中的各种存储器和/或下载新的闪频存储器420的内容。
如果查询响应是无效的,则失败计数增1(方框816)。该失败计数被检验,看是否已达到一个预定数(maxcount)(方框818)。失效计数考虑到数据传送装置750可能在一个多噪声介质上与控制器400通信。任何造成的通信错误都可能造成认证失败。因此,最好是对数据传送装置750提供不只一次机会去把蜂窝电话置于编程方式。在本发明的一个实施例中,最大计数(maxcount)50被确定为是合适的。如果尚未达到预定次数,一个消息被送到数据传送装置750,指出已发生了认证失败(方框822)。一旦收到这一指示,认证过程在方框802重新开始。如果已经达到了预定的尝试次数,则该电话被置于不能操作状态,并能显示出一条消息,向用户指出该电话必须返回以得到被授权服务。
在数据传送装置750已经完成任何ESN重编程或下载到快速存储器420,在电话中的控制器400启动一次新的散列计算,它包括例如快速存储器420中修改过的内容以及ESN414。造成的散列值被送到数据传送装置750以得到使用私人密钥754给出的数字签名。然后,签字的散列值被送回控制器400,与同一散列值的未签字版本一起存储在EEPROM410中。
根据本发明,ESN能被重编程,但出于安全的原因,ESN编程最好是在工厂一级完成,而不是由被授权的工厂代理来完成。对ESN编程能在两种场合发生:在制造过程中的初始ESN编程和对现有的ESN重编程,初始ESN能使用与图7类似的数据传送装置来编程。下面参考图9描述初始ESN编程方法。
作为第一步(方框900),电话被带入操作状态(见图5)。在与该电话建立了一个接口之后,安全处理器752向控制器发送一个ESN编程请求消息以及一个随机数(Rand1)(方框902)。控制器400完成一种检验,以确定电话内的ESN是否为全零,新制造的电话总是这种情况(方框904)。如果ESN不是全零,ESN编程方式请求被拒绝(方框906)。如果ESN是全零,则启动一个查询-响应过程,该过程基本上类似于图8中步骤804至820中进行的过程(见方框908)。在成功地认证了数据传送装置750之后,一个新的ESN能被下载到EEPROM410中。
在数据传送装置750已经完成把ESN下载到EEPROM410之后,控制器400启动一个新的散列计算,它包括新的ESN414。造成的散列值被送到数据传送装置750,以得到用私人密钥754给出的数字签名。然后,签过字的散列值418被回送到控制器400,与这同一散列值的未签字版本一起存储在EEPROM410中。
在包含本发明的系统中也能对现有的ESN重编程。ESN重编程过程最好只在工厂完成,而不是由本地被授权工厂代理完成。利用只在工厂才能得到的一组微处理器指令,提供了附加的安全性,这组指令被加载到电话中,用于改变先前被编程到该电话中的ESN。这一过程能使用与图7所示类似的数据传送装置来完成,下面参考图10描述这一过程。
作为第一步(方框1000),根据图8所示方法,电话被置于常规编程方式。工厂数据传送装置750包含ESN重编程代码756,它能被下载到蜂窝电话的PSRAM存储器407中,以帮助ESN重编程。在把系统置于编程方式后,ESN重编程代码756被下载到PSRAM 407中(方框1002)。在执行ESN重编程代码756过程中,控制器400对现有ESN置零(方框1004)并启动该ESN重编程代码(方框1006)。
在数据传送装置750已完成了把新的ESN送入EEPROM410的过程之后,控制器400启动一次新的散列计算,它包括新的ESN414(方框1008)。造成的散列值被送到数据传送装置750,以得到用私人密钥754给出的数字签名(方框1010)。然后,签字的散列值418被回送到控制器,与同一散列值的未签字版本一起存储在EEPROM410中(方框1012)。
在本发明的实施例中,散列值计算和数字签名是使用单向散列函数和私人/公共密钥认证方案来完成的。使用单向散列函数来导出代表该蜂窝电话内存储器内容的散列值。公共/私人密钥系统被用于为存储于EEPROM中的有效散列值提供安全性,并认证试图操纵蜂窝电话中存储器的数据传送装置或编程器。单向散列计算对于精通专门技术的人们是公知的,它在例如授予Moore的美国专利5,343,527号中被描述。
单向散列函数是这样一个函数,它在沿向前的方向进行的计算是简单的,而在沿相反方向的计算是困难的。单向散列函数H(M)作用于一个任意长输入M,在本发明的实施例中它由选定的电子存储器内容构成。对M完成的散列函数返回一个固定长度的散列值h(见式1)。
h=H(M)                式1
有许多函数能取任意长输入和返回一个固定长度输出,但单向散列函数有如下附加特点:如果给定M,则容易计算h;如果给定h,则难于计算M;如果给定M,则难于找到另一消息M′,使得H(M)=H(M′)。
对单向散列的基本攻击是:如果给定存储器输入(被散列的内容)的散列值。克隆者将试图创建另一组存储器内容M′,使得H(M)=H(M′)。如果克隆者成功地这样做了,它就会削弱单向散列函数完全性的基础。单向散列的目的是提供M的唯一的签名或指纹。在本发明中,对蜂窝电话存储器的选定内容完成一个安全的单向散列函数,以产生一个审查散列值。该审查散列值与一有效散列值比较,该有效散列值是先前对来自已知为真实的存储器的选定存储器内容完成单向散列函数而产生的。
在一个最佳实施例中,一个消息摘要(digest)算法(例如MD5)被用于安全的单向散列计算。MD5算法产生输入消息(即选定的存储器内容)的N位散列,或称消息摘要。MD5算法是很敏感的,这在于所选定内容中单个位的改变在统计上会造成散列值的一半位发生变化。MD5算法还由于它的快速和简要而闻名。速度是一个重要的考虑,这在于对蜂窝电话微处理器的时间需求不能太大,以免对常规的系统处理过程造成不可接受的干扰。
MD5算法的适用性还因为它能在增量基础上完成,允许散列过程中断,从而在散列计算恢复之前常规的微处理器任务能被处理。此外,MD5算法能很好地适用于传统的微处理器结构。根据本发明的实施例能被使用的其他单向散列算法包括但不限于:Snerfu、H-散列、MD2、MD4、安全散列算法(SHA)、以及HAVAL。精通本门技术的人能容易地对微处理器编程来实现单向散列处理过程。
公共密钥算法使用两个密钥,一个是公共可用的,一个是私人密钥(秘密的)用于诸如对消息编密码和解密、消息认证、以及数字签名等任务。这些密钥能以不同方式使用以达到不同的目标,例如,如果目的是使一个消息保密,则私人密钥应由接收人保持其安全,从而使接收人能对消息解密,在这种情况中,加密用密钥能被公共知道,而且知道与特定的潜在接收人相关联。虽然能向发送者保证在这一过程中信息的保密性,但接收者不能被保证其发送者的真实性。如果一对密钥中的私人(秘密的)密钥能由发送者保持秘密供对消息编密码,则具有相应公共密钥的接收者能被保证其发送者的真实性,虽然没有关于保密性的保证。根据本发明,正是这后一种方案被用于认证数据传送装置。
公共密钥算法的操作是基于数学上的陷门(trapdoor)函数,它使得由公共密钥导出私人密钥在计算上是不可实现的。在公共的RAS(Rivest,Shamir和Adleman)算法的情况中,安全性取决于对两个大素数的乘积进行因式分解的困难性。密钥的选择始于选择两个大素数p和q,它们相乘在一起,产生出一个大数n。
n=pq                           式2
然后,编密码用密钥e的选择要使e和(p-1)(q-1)为相对的素数。最后,使用欧几里德算法计算解密码用密钥d,使得
F=(p-1)(q-1)                   式3
ed=1(模F)                      式4
数e和n是公共密钥;数d是私人密钥。式5给出RSA编密码过程,式6给出解密码过程。
C=Me(模n)                      式5
M=Cd(模n)                      式6
能分解n的对手会用式3确定模F,然后由式4确定私人密钥d,如果给定公共密钥e的话。尽管如此,如前文所指出的那样,n是如此之大,以致于对它进行因式分解是做不到的。关于RSA算法的更多细节能在授予Rivest等的美国专利4,405,829中找到。
在本发明的最佳实施例中,利用了Fiat-Shamir(FS)算法或它的变体(参考了美国专利4,748,668,它的内容被全部包括在这里作为参考)。FS算法适用于实现一种认证和数字签名方案,它很好地适用于典型蜂窝电话的有限计算能力。
FS算法与先前的方案(例如RSA)的不同之处在于FS算法使用的因子是基于寻找模n的二次余数(νi)的倒数的困难性。更具体地说,FS方案涉及选择一个数n,这是两个大素数(它们最好在512个和1064个二进制位长度之间)的乘积。公共密钥(ν):ν1,ν2…νk和私人密钥(S):S1,S2,…Sk是这样产生的:Si=Sqrt(1/νi)mod n。在前述等式的内容中找出倒数(1/νi)模n的困难性能被表现为等效于找出素数n的因子的困难性。在不牺牲安全性的情况下,该算法的执行比其他方案快得多。事实上,已发现FS方案比RSA方案的优越之处在于FS计算只需要为完全必要的认证计算所正常需要的模乘的1%到4%。这对应于签定散列值的认证速度比使用RSA方案完成同样任务的速度快两个数量级。结果,使用FS方案比使用RSA方案能显著地快得多地完成数据传送装置认证和周期性审查散列值比较。当在工厂一级对大量蜂窝电话或其他电子存储器编程时,使用FS算法通过更快地产生有效散列值的数字签名以供存储来减少了生产时间。其他能应用的算法包括但不限于ELGAMAL、DSA、以及Fiege-Fiat-Shamir。
根据本发明的另一方面,在蜂窝电话内的控制器硬件具有安全特性,它防止克隆者确定安全存储器的内容或者旁路掉先前描述的安全方案,图11描述了控制器硬件、外部存储器、以及存储器/地址总线结构的细节。除了芯片选择逻辑1122和安全逻辑1124之外,在控制器中各部件的功能和操作与图4中描述的相同。芯片选择逻辑1122对微处理器地址总线1102上的地址解码,以便为连到总线1102上的存储器部件和硬件装置提供硬件选择信号。例如,每当地址总线1102上出现一个地址被赋予IROM存储器403时,便有一个IROM芯片选择(CS)信号生效。
安全逻辑1124的功能是使用存储器装置中存储的而不是在IROM存储器403中存储的微处理器指令代码来检测访问PSRAM 407内容或对基于硬件的计时器401复位的企图。例如,位于快速存储器420中的带有PSRAM407中存储器位置目标地址的读或写指令能被检验为非法操作,任何非法的访问企图都会造成微处理器被迫进入停机状态,它要求对蜂窝电话完全的电源复位以恢复正常操作。
安全逻辑是如下逻辑式的实现:
逻辑式1                S=↑Supvr·B
逻辑式2                Halt=not S·(A+C)这里S=安全方式;
↑Supvr=微处理器向监督方式的转换;
A=PSRAM存储器用的芯片选择信号;
B=IROM存储器用的芯片选择信号;
C=硬件计时用的芯片选择信号;
Halt=输入到微处理器的一个硬件控制,使它进入无限循环或永久等待状态,直到对该电话去掉电源和再加电源。上述逻辑式1表明:每当微处理器过渡到监督方式(↑Supvr)而且同时IROM403芯片选择为有效(·B),则安全方式(S)被设定。上述逻辑式2表明:如果控制器400没有处在安全方式(not S)而且或者PSRAM407或者硬件计时器的芯片选择信号为有效的(·(A+C)),则停止微处理器的输入被激活。这个逻辑有效地防止由前述散列值比较和认证过程所提供的安全措施被旁路掉,因为对PSROM 407的合法访问和对硬件计时器401的复位命令最好是来自IROM 403中存储的代码。
位于IROM存储器403中的所有合法代码(启动代码、散列代码、公共密钥代码、以及认证代码)最好被这样一些指令括起来,这些指令在一例程开始时设置安全方式,而在离开例程时使安全方式被清除。在本发明的一个最佳实施例中,一个软件中断指令(通常在现代微处理器中是可以得到的)被放置在IROM403的每个例程的开头,以使微处理器402切换到一个监督方式和使微处理器硬件信号SPVR变为有效。因为在那时IROM403芯片选择信号将是有效的,安全方式S将被设定。在软件例程结尾执行一个返回指令将取消安全方式。
根据本发明的另一方面,数据传送装置包含一个由工厂提供的安全单元,它能与通用计算机结合使用。图12描述了一种示例结构安排。安全单元1200经由标准接头1206固定在PC 1202的I/O端口。PC 1202上的第二个端口与第二个标准接头1208(如RS-232、电缆或红外链路)以与一个蜂窝电话1204建立接口。利用图12所示结构安排,能完成图8中所示处理过程,以进行蜂窝电话重编程处理。具有标准PC和安全单元1200的被授权工厂服务代理被装备成可对电话重编程。
根据本发明的另一实施例,能对现有的蜂窝电话提供一种野外编程能力,它对于抵御不涉及获得对内部印刷电路卡集合的访问的那些攻击而言是安全的。这一级保护对于克隆攻击的最普通方法是很有效的,在这些攻击中使用通过外部电话连接器能访问的测试命令改变电话内部的存储器内容。通过在允许访问野外编程命令之前使用图8中描述的数据传送装置(DTD)认证来更新当前的蜂窝电话,便能实现这一点。认证软件代码和公共密钥都存储在现有的闪频存储器中,从而避免了对现有传统设计的任何改变。在把单向散列计算和密钥编密码系统应用于安全和编程一个蜂窝电话中的电子存储器的内容中已经描述了本发明的示例性应用。然而,精通本门技术的人们会容易地理解和承认,根据本发明,用于导出存储器内容的签名的任何适当的函数、计算、算法、方法或系统都能被采用。再有,已参考具体的实施例描述了本发明。然而,对于精通本门技术的人,将容易地看出,有可能以不同于前述最佳实施例的具体形式实现本发明。例如,有可能在任何电子存储器和/或电子存储器编程和访问装置中实现本发明而不偏离本发明的精神。此外,能在数字信号处理器、专用处理器、或任何其他类似处理器、或面向电子存储器的系统中应用和实现本发明。所以,这里描述的最佳实施例只是说明性的,不应被认为是任何方式的限制性的。本发明的范围由所附权利要求给出,而不是由前面的描述给出。

Claims (24)

1.一种电子装置,包括:
存储器(410,420);以及
控制器,它包括微处理器(402),该微处理器用于对真实的存储器内容完成散列计算,以产生一有效散列值,周期地对存储器(410,420)的内容执行散列计算以导出审查散列值,以及比较所述审查散列值和所述有效散列值,所述散列计算和比较是安全免受窜改的,其中所述控制器在所述审查散列值与所述有效散列值不匹配时禁止所述电子装置。
2.根据权利要求1的电子装置,这里微处理器(402)包含周期性地紧跟基于硬件的计时器的终止而导出散列值的装置。
3.根据权利要求1的电子装置,这里所述存储器包括快速存储器(420)和EEPROM(410)。
4.根据权利要求1的电子装置,还包括:
被保护的随机存取存储器,用于与微处理器(402)结合完成散列计算。
5.根据权利要求3的电子装置,这里微处理器包含根据快速存储器(420)和EEPROM(410)的选定内容导出审查散列值的装置。
6.根据权利要求5的电子装置,这里被选定的内容包括电子序列号。
7.根据权利要求5的电子装置,这里被选定的内容包括微处理器程序代码。
8.根据权利要求1的电子装置,这里微处理器(402)包含利用存储器(410,420)内存储的公共密钥认证有效散列值的装置。
9.根据权利要求1的电子装置,还包括在电子装置外部的安全处理器(752),它用私人密钥对有效散列值编密码以产生数字签名。
10.根据权利要求1的电子装置,这里微处理器(402)包含使用一组散列函数之一完成散列计算的装置,这组散列函数包括:Snerfu,H-散列,MD2,MD4,MD5,安全散列算法(SHA),以及HAVAL。
11.根据权利要求1的电子装置,其中微处理器(402)和安全处理器(752)用一组公共/私人密钥系统算法之一对散列值进行认证和编密码,这组算法包括:ELGAMAL,RSA,DSA,Fiege-Fiat-Shamir,以及Fiat-Shamir。
12.根据权利要求4的电子装置,还包含安全逻辑用于监督对被保护随机存取存储器的访问。
13.根据权利要求1的电子装置,这里所述电子装置是一个蜂窝电话。
14.根据权利要求5的电子装置,这里快速存储器的内容包括该电子装置所用操作指令,EEPROM的内容包括有效散列值,而且这里的微处理器包含对真实的快速存储器和EEPROM内容的选定部分完成单向散列计算以产生有效散列值的装置,通过对选定部分完成散列计算而周期性地产生审查散列值的装置,以及把审查散列值与有效散列值比较以评估是否快速和EEPROM存储器中至少有一个已被改变的装置。
15.根据权利要求14的电子装置,这里微处理器(402)包含使用一组散列函数之一进行单向散列计算的装置,这组函数包括:Snerfu,H-散列,MD2,MD4,MD5,安全散列算法(SHA),以及HAVAL。
16.根据权利要求9的电子装置,还包括在该电子装置外部的安全处理器(752),它以私人密钥对有效散列值编密码以产生所述数字签名。
17.一种检测电子装置中存储器被窜改的方法,该方法的包括步骤:
存储对存储器(410,420)的选定内容完成散列计算所产生的签字的有效散列值,该选定的存储器内容被认定为真实的;
周期性地对存储器(410,420)的选定内容执行散列计算来导出审查散列值;
把审查散列值与有效散列值比较,从而使审查散列值与有效散列值之间的差别能指出选定存储器内容的改变,这里的存储、产生和比较步骤是安全免受窜改的;以及
当审查散列值与有效散列值不匹配时禁止该电子装置。
18.根据权利要求17的方法,这里产生审查散列值的步骤是与被保护的随机存取存储器结合完成的。
19.根据权利要求18的方法,还包括步骤:
根据一私人密钥以一数字签名对有效散列值签字。
20.根据权利要求13的方法,这里产生审查散列值的步骤是紧跟基于硬件的计数器的终止而完成的。
21.根据权利要求13的方法,这里产生审查散列值的步骤涉及计算审查散列值段。
22.根据权利要求21的方法,这里对一个审查散列值段的计算能根据需要被延迟,而同时完成在该电子装置中发生的其他过程。
23.根据权利要求17的方法,这里有效散列值被给予一个数字签名,而且这里把审查散列值与有效散列值比较的步骤包括以签名认证有效散列值的步骤。
24.根据权利要求17的方法,这里的电子装置是一个蜂窝电话。
CN97199389A 1996-09-05 1997-09-05 防止电子存储器被窜改的电子装置以及方法 Expired - Lifetime CN1126398C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/706,574 US6026293A (en) 1996-09-05 1996-09-05 System for preventing electronic memory tampering
US08/706,574 1996-09-05

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN03102720A Division CN1446015A (zh) 1996-09-05 2003-01-17 防止电子存储器被窜改的系统

Publications (2)

Publication Number Publication Date
CN1235743A CN1235743A (zh) 1999-11-17
CN1126398C true CN1126398C (zh) 2003-10-29

Family

ID=24838185

Family Applications (2)

Application Number Title Priority Date Filing Date
CN97199389A Expired - Lifetime CN1126398C (zh) 1996-09-05 1997-09-05 防止电子存储器被窜改的电子装置以及方法
CN03102720A Pending CN1446015A (zh) 1996-09-05 2003-01-17 防止电子存储器被窜改的系统

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN03102720A Pending CN1446015A (zh) 1996-09-05 2003-01-17 防止电子存储器被窜改的系统

Country Status (13)

Country Link
US (1) US6026293A (zh)
EP (1) EP0923842B1 (zh)
JP (5) JP4050322B2 (zh)
KR (1) KR100492840B1 (zh)
CN (2) CN1126398C (zh)
AU (1) AU734212B2 (zh)
BR (1) BRPI9712007B1 (zh)
DE (1) DE69736065T2 (zh)
EE (1) EE9900084A (zh)
ES (1) ES2262189T3 (zh)
HK (1) HK1021104A1 (zh)
PL (1) PL332050A1 (zh)
WO (1) WO1998010611A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073824A (zh) * 2011-01-12 2011-05-25 深圳昂楷科技有限公司 一种加密文档唯一标识的生成和更新的方法

Families Citing this family (188)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7747243B2 (en) * 1992-03-24 2010-06-29 Boatwright John T Call security system
US5974311A (en) 1995-10-30 1999-10-26 At&T Wireless Services Inc. Method and apparatus for storing activation data in a cellular telephone
US6748209B2 (en) * 1995-10-30 2004-06-08 At&T Wireless Services, Inc. Method and apparatus for storing activation data in a cellular telephone
US6097939A (en) * 1997-07-11 2000-08-01 Compaq Computer Corporation Method and apparatus for event data maintenance per MIN/ESN pair in a mobile telephone system
GB2328843B (en) * 1997-08-29 2002-08-14 Nokia Mobile Phones Ltd A system for remotely accessing data stored in a radiotelephone
US6230002B1 (en) * 1997-11-19 2001-05-08 Telefonaktiebolaget L M Ericsson (Publ) Method, and associated apparatus, for selectively permitting access by a mobile terminal to a packet data network
US6182162B1 (en) * 1998-03-02 2001-01-30 Lexar Media, Inc. Externally coupled compact flash memory card that configures itself one of a plurality of appropriate operating protocol modes of a host computer
JP3714969B2 (ja) 1998-03-02 2005-11-09 レクサー・メディア・インコーポレイテッド 改良されたオペレーティングモード検出機能を備えたフラッシュメモリーカード及びユーザフレンドリなインターフェーシングシステム
US6223290B1 (en) * 1998-05-07 2001-04-24 Intel Corporation Method and apparatus for preventing the fraudulent use of a cellular telephone
US7756986B2 (en) * 1998-06-30 2010-07-13 Emc Corporation Method and apparatus for providing data management for a storage system coupled to a network
US6263445B1 (en) * 1998-06-30 2001-07-17 Emc Corporation Method and apparatus for authenticating connections to a storage system coupled to a network
US6665530B1 (en) * 1998-07-31 2003-12-16 Qualcomm Incorporated System and method for preventing replay attacks in wireless communication
US7110984B1 (en) * 1998-08-13 2006-09-19 International Business Machines Corporation Updating usage conditions in lieu of download digital rights management protected content
WO2000018162A1 (en) * 1998-09-18 2000-03-30 Qualcomm Incorporated Method and apparatus for authenticating embedded software in a remote unit over a communications channel
US6460138B1 (en) * 1998-10-05 2002-10-01 Flashpoint Technology, Inc. User authentication for portable electronic devices using asymmetrical cryptography
US6829712B1 (en) * 1998-10-27 2004-12-07 Sprint Communications Company L.P. Object-based security system
US6901457B1 (en) 1998-11-04 2005-05-31 Sandisk Corporation Multiple mode communications system
US6363396B1 (en) * 1998-12-21 2002-03-26 Oracle Corporation Object hashing with incremental changes
JP3219064B2 (ja) * 1998-12-28 2001-10-15 インターナショナル・ビジネス・マシーンズ・コーポレーション デジタルデータ認証システム
US6802006B1 (en) * 1999-01-15 2004-10-05 Macrovision Corporation System and method of verifying the authenticity of dynamically connectable executable images
KR20010101824A (ko) * 1999-02-09 2001-11-14 밀러 럿셀 비 특정 전화번호부 엔트리
US6370380B1 (en) * 1999-02-17 2002-04-09 Telefonaktiebolaget Lm Ericsson (Publ) Method for secure handover
DE19911221B4 (de) * 1999-03-12 2005-10-27 T-Mobile Deutschland Gmbh Verfahren zur Verteilung von Schlüsseln an Teilnehmer von Kommunikationsnetzen
US7103574B1 (en) * 1999-03-27 2006-09-05 Microsoft Corporation Enforcement architecture and method for digital rights management
FI991134A (fi) 1999-05-18 2000-11-19 Sonera Oyj Ohjelmiston testaus
US6502614B1 (en) * 1999-05-25 2003-01-07 Silverbrook Research Pty Ltd Printed media transverse binder
EP1063589A1 (en) * 1999-06-25 2000-12-27 TELEFONAKTIEBOLAGET L M ERICSSON (publ) Device for processing data and corresponding method
US7650504B2 (en) * 1999-07-22 2010-01-19 Macrovision Corporation System and method of verifying the authenticity of dynamically connectable executable images
US7343351B1 (en) * 1999-08-31 2008-03-11 American Express Travel Related Services Company, Inc. Methods and apparatus for conducting electronic transactions
US6708049B1 (en) 1999-09-28 2004-03-16 Nellcor Puritan Bennett Incorporated Sensor with signature of data relating to sensor
US6587680B1 (en) * 1999-11-23 2003-07-01 Nokia Corporation Transfer of security association during a mobile terminal handover
IL133584A (en) * 1999-12-19 2010-02-17 Enco Tone Ltd Method for the acoustic encodification of dynamic identification codes
US6973570B1 (en) * 1999-12-31 2005-12-06 Western Digital Ventures, Inc. Integrated circuit comprising encryption circuitry selectively enabled by verifying a device
MXPA02006775A (es) * 2000-01-24 2003-01-28 Micro Motion Inc Sistema que previene la manipulacion indebida de un acondicionador de senales remoto de un sistema anfitrion.
US6920454B1 (en) 2000-01-28 2005-07-19 Oracle International Corporation Techniques for DLM optimization with transferring lock information
US6751616B1 (en) 2000-01-28 2004-06-15 Oracle International Corp. Techniques for DLM optimization with re-mapping responsibility for lock management
US7246120B2 (en) 2000-01-28 2007-07-17 Oracle International Corporation Techniques for achieving higher availability of resources during reconfiguration of a cluster
US6529906B1 (en) 2000-01-28 2003-03-04 Oracle Corporation Techniques for DLM optimization with re-mastering events
US7751600B2 (en) * 2000-04-18 2010-07-06 Semiconductor Energy Laboratory Co., Ltd. System and method for identifying an individual
EP1150453B1 (en) * 2000-04-26 2006-02-15 Semiconductor Energy Laboratory Co., Ltd. A communication system and method for identifying an individual by means of biological information
EP3373568A3 (en) 2000-05-23 2018-11-07 IoT IP GmbH Programmable communicator
US6681304B1 (en) * 2000-06-30 2004-01-20 Intel Corporation Method and device for providing hidden storage in non-volatile memory
US6721843B1 (en) 2000-07-07 2004-04-13 Lexar Media, Inc. Flash memory architecture implementing simultaneously programmable multiple flash memory banks that are host compatible
JP3639194B2 (ja) * 2000-07-27 2005-04-20 富士通株式会社 機種変更装置および機種変更方法ならびに機種変更プログラムを記録した記録媒体
FR2812510B1 (fr) * 2000-07-28 2004-03-19 Sagem Procede d'exploitation d'un terminal de telephonie cellulaire et terminal pour la mise en oeuvre du procede
US7155559B1 (en) * 2000-08-25 2006-12-26 Lexar Media, Inc. Flash memory architecture with separate storage of overhead and user data
US6618584B1 (en) * 2000-08-30 2003-09-09 Telefonaktiebolaget Lm Ericsson (Publ) Terminal authentication procedure timing for data calls
US6772274B1 (en) 2000-09-13 2004-08-03 Lexar Media, Inc. Flash memory system and method implementing LBA to PBA correlation within flash memory array
US20030159047A1 (en) * 2000-09-26 2003-08-21 Telefonaktiebolaget L M Ericsson (Publ) Method of securing and exposing a logotype in an electronic device
US7043636B2 (en) * 2000-09-26 2006-05-09 Telefonaktiebolaget Lm Ericsson (Publ) Data integrity mechanisms for static and dynamic data
US7058806B2 (en) * 2000-10-17 2006-06-06 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for secure leveled access control
GB2369205B (en) * 2000-11-17 2005-02-02 Personal Data Prot System Ltd Personal data device and protection system and method for storing and protecting personal data
US7260636B2 (en) 2000-12-22 2007-08-21 Emc Corporation Method and apparatus for preventing unauthorized access by a network device
US7668315B2 (en) * 2001-01-05 2010-02-23 Qualcomm Incorporated Local authentication of mobile subscribers outside their home systems
US7036023B2 (en) * 2001-01-19 2006-04-25 Microsoft Corporation Systems and methods for detecting tampering of a computer system by calculating a boot signature
WO2002065258A2 (en) * 2001-02-13 2002-08-22 Qualcomm Incorporated Method and apparatus for authenticating embedded software in a remote unit over a communications channel
US7188243B2 (en) * 2001-02-16 2007-03-06 Microsoft Corporation System and method for over the air configuration security
US7047405B2 (en) * 2001-04-05 2006-05-16 Qualcomm, Inc. Method and apparatus for providing secure processing and data storage for a wireless communication device
CA2441010A1 (en) * 2001-03-16 2002-09-26 Qualcomm Incorporated Method and apparatus for providing secure processing and data storage for a wireless communication device
US6804752B2 (en) * 2001-04-02 2004-10-12 Delphi Technologies, Inc. Event data protection method for a flash programmable microprocessor-based control module
US20020147918A1 (en) * 2001-04-05 2002-10-10 Osthoff Harro R. System and method for securing information in memory
US7099663B2 (en) * 2001-05-31 2006-08-29 Qualcomm Inc. Safe application distribution and execution in a wireless environment
FI114416B (fi) * 2001-06-15 2004-10-15 Nokia Corp Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite
KR20030002376A (ko) * 2001-06-29 2003-01-09 세이프다임 주식회사 공개키 기반 인증을 위한 키관리 시스템
FI115356B (fi) * 2001-06-29 2005-04-15 Nokia Corp Menetelmä audiovisuaalisen informaation käsittelemiseksi elektroniikkalaitteessa, järjestelmä ja elektroniikkalaite
DE10131575A1 (de) * 2001-07-02 2003-01-16 Bosch Gmbh Robert Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation von in einer Speicheranordnung des Mikrorechner-Systems gespeicherten Daten
US7383432B1 (en) 2001-07-09 2008-06-03 Advanced Micro Devices, Inc. Software modem with hidden authentication commands
KR100813944B1 (ko) * 2001-07-11 2008-03-14 삼성전자주식회사 디지털 권리 운영을 수행하기 위하여 휴대용 기기와컴퓨터 사이의 통신을 제어하는 방법
FI115257B (fi) * 2001-08-07 2005-03-31 Nokia Corp Menetelmä informaation käsittelemiseksi elektroniikkalaitteessa, järjestelmä, elektroniikkalaite ja suoritinlohko
KR100401135B1 (ko) * 2001-09-13 2003-10-10 주식회사 한국전산개발 데이터 보안 시스템
US20030059049A1 (en) * 2001-09-24 2003-03-27 Mihm Thomas J. Method and apparatus for secure mobile transaction
US20030061488A1 (en) * 2001-09-25 2003-03-27 Michael Huebler Cloning protection for electronic equipment
US7404202B2 (en) * 2001-11-21 2008-07-22 Line 6, Inc. System, device, and method for providing secure electronic commerce transactions
JP2005518589A (ja) * 2002-02-22 2005-06-23 レクサー メディア,インク. インジケータライトが一体化されたリムーバブル記憶媒体
US20030182561A1 (en) * 2002-03-25 2003-09-25 International Business Machines Corporation Tamper detection mechanism for a personal computer and a method of use thereof
US7840803B2 (en) 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
US7338443B1 (en) 2002-04-29 2008-03-04 Tucker Peter L Secure patient data recorder for recording monitored vital sign data
US7054613B2 (en) * 2002-05-03 2006-05-30 Telefonaktiebolaget Lm Ericsson (Publ) SIM card to mobile device interface protection method and system
US11337047B1 (en) 2002-05-21 2022-05-17 M2M Solutions Llc System and method for remote asset management
GB0211644D0 (en) 2002-05-21 2002-07-03 Wesby Philip B System and method for remote asset management
GB0212318D0 (en) * 2002-05-28 2002-07-10 Symbian Ltd Tamper evident removable media storing executable code
US20030226040A1 (en) * 2002-06-03 2003-12-04 International Business Machines Corporation Controlling access to data stored on a storage device of a trusted computing platform system
US20040003265A1 (en) * 2002-06-26 2004-01-01 International Business Machines Corporation Secure method for BIOS flash data update
JP4576100B2 (ja) * 2002-07-30 2010-11-04 富士通株式会社 情報再生装置、セキュアモジュールおよび情報再生方法
EP1387238B1 (en) * 2002-07-30 2011-06-15 Fujitsu Limited Method and apparatus for reproducing information using a security module
US7320642B2 (en) * 2002-09-06 2008-01-22 Wms Gaming Inc. Security of gaming software
JP4488354B2 (ja) * 2002-09-16 2010-06-23 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 電子機器へのデータのローディング方法
US20040078536A1 (en) * 2002-10-22 2004-04-22 Tai-Ming Chen Authentication mechanism integrated with random access memory and method of use
DE60224590T2 (de) * 2002-11-08 2009-01-15 Nokia Corp. Software-integritätstest bei einem mobiltelefon
US7370212B2 (en) * 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
DE10311249A1 (de) * 2003-03-14 2004-09-23 Robert Bosch Gmbh Mikroprozessorsystem und Verfahren zum Erfassen des Austauschs von Bausteinen des Systems
KR100568228B1 (ko) * 2003-05-20 2006-04-07 삼성전자주식회사 고유번호를 이용한 프로그램 탬퍼 방지 방법과 난독처리된 프로그램 업그레이드 방법, 상기 방법을 위한 장치
CA2533302C (en) * 2003-07-25 2015-06-30 Futurelogic, Inc. Method and apparatus for changing firmware in a gaming printer
US7100205B2 (en) * 2003-10-22 2006-08-29 The United States Of America As Represented By The Secretary Of The Navy Secure attention instruction central processing unit and system architecture
US7379952B2 (en) * 2004-01-30 2008-05-27 Oracle International Corporation Techniques for multiple window resource remastering among nodes of a cluster
US7882361B2 (en) * 2004-02-05 2011-02-01 Oracle America, Inc. Method and system for accepting a pass code
US7401234B2 (en) * 2004-03-01 2008-07-15 Freescale Semiconductor, Inc. Autonomous memory checker for runtime security assurance and method therefore
KR100575767B1 (ko) 2004-03-05 2006-05-03 엘지전자 주식회사 이동 통신 단말기의 장치번호 저장 방법
US8548429B2 (en) 2004-03-08 2013-10-01 Rafi Nehushtan Cellular device security apparatus and method
US20060242406A1 (en) * 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
US7331063B2 (en) * 2004-04-30 2008-02-12 Microsoft Corporation Method and system for limiting software updates
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
US7584366B2 (en) * 2004-07-08 2009-09-01 At&T Intellectual Property I, L.P. Methods, systems and computer program products for detecting tampering of electronic equipment based on constrained time to obtain computational result
GB2416956B (en) * 2004-07-29 2007-09-19 Nec Technologies Method of testing integrity of a mobile radio communications device and related apparatus
US20060035631A1 (en) * 2004-08-13 2006-02-16 Christopher White Wireless device service activation from the wireless device
US7653802B2 (en) * 2004-08-27 2010-01-26 Microsoft Corporation System and method for using address lines to control memory usage
US7444523B2 (en) 2004-08-27 2008-10-28 Microsoft Corporation System and method for using address bits to signal security attributes of data in the address space
US7356668B2 (en) * 2004-08-27 2008-04-08 Microsoft Corporation System and method for using address bits to form an index into secure memory
US7734926B2 (en) * 2004-08-27 2010-06-08 Microsoft Corporation System and method for applying security to memory reads and writes
US7822993B2 (en) * 2004-08-27 2010-10-26 Microsoft Corporation System and method for using address bits to affect encryption
DE102004043211A1 (de) * 2004-09-03 2006-03-09 Biotronik Crm Patent Ag Vorrichtung und Verfahren zum Betreiben eines mobilen Kommunikationsgerätes
JP2006072935A (ja) * 2004-09-06 2006-03-16 Fujitsu Ltd 半導体装置及びデータ書き込み制御方法
US8627086B2 (en) * 2004-10-11 2014-01-07 Telefonaktiebolaget Lm Ericsson (Publ) Secure loading and storing of data in a data processing device
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
US20060089917A1 (en) * 2004-10-22 2006-04-27 Microsoft Corporation License synchronization
US7564345B2 (en) * 2004-11-12 2009-07-21 Verayo, Inc. Volatile device keys and applications thereof
US8176564B2 (en) * 2004-11-15 2012-05-08 Microsoft Corporation Special PC mode entered upon detection of undesired state
US8464348B2 (en) * 2004-11-15 2013-06-11 Microsoft Corporation Isolated computing environment anchored into CPU and motherboard
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
KR100654446B1 (ko) 2004-12-09 2006-12-06 삼성전자주식회사 보안 부팅 장치 및 방법
US20060200469A1 (en) * 2005-03-02 2006-09-07 Lakshminarayanan Chidambaran Global session identifiers in a multi-node system
US7822995B2 (en) * 2005-03-03 2010-10-26 Seagate Technology Llc Apparatus and method for protecting diagnostic ports of secure devices
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US7209990B2 (en) * 2005-04-05 2007-04-24 Oracle International Corporation Maintain fairness of resource allocation in a multi-node environment
US8725646B2 (en) * 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US9436804B2 (en) * 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
WO2006116871A2 (en) * 2005-05-05 2006-11-09 Certicom Corp. Retrofitting authentication onto firmware
US20060265758A1 (en) * 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
JP4891902B2 (ja) * 2005-06-01 2012-03-07 パナソニック株式会社 電子機器、更新サーバ装置、鍵更新装置
US8353046B2 (en) * 2005-06-08 2013-01-08 Microsoft Corporation System and method for delivery of a modular operating system
US7363564B2 (en) * 2005-07-15 2008-04-22 Seagate Technology Llc Method and apparatus for securing communications ports in an electronic device
JP4568196B2 (ja) * 2005-09-01 2010-10-27 株式会社東芝 プロセッサ、コンピュータシステムおよび認証方法
US20070050622A1 (en) * 2005-09-01 2007-03-01 Rager Kent D Method, system and apparatus for prevention of flash IC replacement hacking attack
KR100740658B1 (ko) * 2005-10-20 2007-07-19 프롬투정보통신(주) 다형성 및 탬퍼방지 지원 암호처리방법 및 암호모듈
US8914557B2 (en) 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
CN100437502C (zh) 2005-12-30 2008-11-26 联想(北京)有限公司 基于安全芯片的防病毒方法
DE602007013697D1 (zh) 2006-01-24 2011-05-19 Verayo Inc
US8126507B2 (en) 2006-03-22 2012-02-28 British Telecommunications Public Limited Company Communications device monitoring
US7957532B2 (en) * 2006-06-23 2011-06-07 Microsoft Corporation Data protection for a mobile device
WO2007148768A1 (en) * 2006-06-23 2007-12-27 Semiconductor Energy Laboratory Co., Ltd. Personal data management system and nonvolatile memory card
KR100800073B1 (ko) * 2006-07-10 2008-01-31 엘지전자 주식회사 이동통신 단말기 및 그 공개키 갱신방법
EP2053533A4 (en) 2006-11-09 2011-03-23 Panasonic Corp FAKE DETECTION SYSTEM, FAKE DETECTION METHOD, FAKE IDENTIFICATION PROGRAM, RECORDING MEDIUM, INTEGRATED CIRCUIT, DEVICE FOR GENERATING AUTHENTICATION INFORMATION AND FAKE DETECTION DEVICE
US8356178B2 (en) * 2006-11-13 2013-01-15 Seagate Technology Llc Method and apparatus for authenticated data storage
DE102007007481A1 (de) * 2007-02-15 2008-08-21 Giesecke & Devrient Gmbh Verfahren zur Analyse einer Softwarekonfiguration eines tragbaren Datenträgers
WO2008129701A1 (ja) * 2007-04-10 2008-10-30 Hitachi Software Engineering Co., Ltd. ファイル管理システム及び方法、並びに、携帯端末装置
CN101542496B (zh) * 2007-09-19 2012-09-05 美国威诚股份有限公司 利用物理不可克隆功能的身份验证
KR20090037712A (ko) * 2007-10-12 2009-04-16 삼성전자주식회사 보안 부트-업되는 전자 장치, 그것의 해쉬값 계산 방법 및부트-업 방법
US8468366B2 (en) * 2008-03-24 2013-06-18 Qualcomm Incorporated Method for securely storing a programmable identifier in a communication station
US9141776B2 (en) 2008-04-30 2015-09-22 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for secure hardware analysis
US9032151B2 (en) * 2008-09-15 2015-05-12 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US7953774B2 (en) 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store
TWI498827B (zh) * 2008-11-21 2015-09-01 Verayo Inc 非連網射頻辨識裝置物理不可複製功能之鑑認技術
US8401521B2 (en) * 2008-11-25 2013-03-19 Broadcom Corporation Enabling remote and anonymous control of mobile and portable multimedia devices for security, tracking and recovery
JP5208797B2 (ja) * 2009-02-12 2013-06-12 中国電力株式会社 整数の暗号化及び復号化方法
JP5208796B2 (ja) * 2009-02-12 2013-06-12 中国電力株式会社 整数の暗号化及び復号化方法
US8839458B2 (en) * 2009-05-12 2014-09-16 Nokia Corporation Method, apparatus, and computer program for providing application security
US8468186B2 (en) * 2009-08-05 2013-06-18 Verayo, Inc. Combination of values from a pseudo-random source
US8811615B2 (en) * 2009-08-05 2014-08-19 Verayo, Inc. Index-based coding with a pseudo-random source
CN101673250B (zh) * 2009-09-18 2012-02-08 中兴通讯股份有限公司 一种手机存储器中代码/数据的保护方法及装置
DE102010002472A1 (de) * 2010-03-01 2011-09-01 Robert Bosch Gmbh Verfahren zum Verifizieren eines Speicherblocks eines nicht-flüchtigen Speichers
US8484451B2 (en) * 2010-03-11 2013-07-09 St-Ericsson Sa Method and apparatus for software boot revocation
US9641606B2 (en) 2010-06-22 2017-05-02 Blackberry Limited Peer to peer secure synchronization between handheld devices
US9032186B2 (en) 2010-07-09 2015-05-12 Blackberry Limited Utilization of a microcode interpreter built in to a processor
WO2012003591A1 (en) * 2010-07-09 2012-01-12 Research In Motion Limited Microcode-based challenge/response process
TWI496161B (zh) * 2010-08-06 2015-08-11 Phison Electronics Corp 記憶體識別碼產生方法、管理方法、控制器與儲存系統
CN102375943B (zh) * 2010-08-16 2015-06-10 群联电子股份有限公司 识别码产生方法与存储器管理方法、控制器及储存系统
JP2012058991A (ja) * 2010-09-08 2012-03-22 Fujitsu Toshiba Mobile Communications Ltd 情報処理装置
US8630411B2 (en) * 2011-02-17 2014-01-14 Infineon Technologies Ag Systems and methods for device and data authentication
US8938621B2 (en) * 2011-11-18 2015-01-20 Qualcomm Incorporated Computing device integrity protection
KR101368949B1 (ko) * 2012-07-20 2014-03-03 주식회사 안랩 공격코드 실행 사전 차단 방법 및 공격코드 실행 사전 차단 장치
US20140043059A1 (en) * 2012-08-10 2014-02-13 Microsemi Soc Corp. Secure digest for pld configuration data
CN102880838A (zh) * 2012-09-04 2013-01-16 深圳市芯海科技有限公司 电子设备的检测方法及装置
US10032029B2 (en) * 2014-07-14 2018-07-24 Lenovo (Singapore) Pte. Ltd. Verifying integrity of backup file in a multiple operating system environment
EP3262782B1 (en) * 2015-02-25 2022-07-27 Private Machines Inc. Anti-tamper system
CN104866779B (zh) * 2015-04-07 2018-05-11 福建师范大学 一种控制电子文件生命周期及安全删除的方法及系统
EP3299986A4 (en) 2015-05-20 2018-05-16 Fujitsu Limited Program verification method, verification program, and information processing device
KR102316279B1 (ko) 2015-10-19 2021-10-22 삼성전자주식회사 비휘발성 메모리 장치 및 이를 포함하는 에스에스디
KR102466412B1 (ko) * 2016-01-14 2022-11-15 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
WO2018007015A1 (de) * 2016-07-04 2018-01-11 Sew-Eurodrive Gmbh & Co. Kg Sicherheitseinrichtung und verfahren zum betreiben eines systems
DE102017111939A1 (de) * 2017-05-31 2018-12-06 Krohne Messtechnik Gmbh Verfahren zur sicheren Kommunikation mit einem Feldgerät der Prozessmesstechnik und ein entsprechendes Feldmessgerät der Prozessmesstechnik
US10467439B2 (en) * 2017-07-05 2019-11-05 Dell Products, L.P. Detecting tampering of memory contents in an information handling system
US11074324B2 (en) 2018-09-05 2021-07-27 International Business Machines Corporation Preventing software application tampering
US11163912B2 (en) * 2019-03-25 2021-11-02 Micron Technology, Inc. Data attestation in memory
US11436315B2 (en) * 2019-08-15 2022-09-06 Nuvoton Technology Corporation Forced self authentication
CN111008389B (zh) * 2019-12-05 2020-10-20 成都星时代宇航科技有限公司 基于卫星中文件系统的数据处理方法及装置
US11520940B2 (en) 2020-06-21 2022-12-06 Nuvoton Technology Corporation Secured communication by monitoring bus transactions using selectively delayed clock signal

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4405829A (en) * 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
US4748668A (en) * 1986-07-09 1988-05-31 Yeda Research And Development Company Limited Method, apparatus and article for identification and signature
US5224160A (en) * 1987-02-23 1993-06-29 Siemens Nixdorf Informationssysteme Ag Process for securing and for checking the integrity of the secured programs
US4811377A (en) * 1987-07-31 1989-03-07 Motorola, Inc. Secure transfer of radio specific data
US5442645A (en) * 1989-06-06 1995-08-15 Bull Cp8 Method for checking the integrity of a program or data, and apparatus for implementing this method
JPH0388051A (ja) * 1989-08-31 1991-04-12 Nec Corp 主記憶監視方式
DK624489A (da) * 1989-12-11 1991-06-12 Cetelco As Sikkerhedskredsloeb til mobiltelefon samt en fremgangsmaade ved brug af kredsloebet
JPH03237253A (ja) * 1990-02-09 1991-10-23 Nippondenso Co Ltd 自動車用制御装置
JP2830302B2 (ja) * 1990-02-15 1998-12-02 株式会社デンソー 自動車用制御装置
US5390245A (en) * 1990-03-09 1995-02-14 Telefonaktiebolaget L M Ericsson Method of carrying out an authentication check between a base station and a mobile station in a mobile radio system
US5046082A (en) * 1990-05-02 1991-09-03 Gte Mobile Communications Service Corporation Remote accessing system for cellular telephones
US5142579A (en) * 1991-01-29 1992-08-25 Anderson Walter M Public key cryptographic system and method
US5237612A (en) * 1991-03-29 1993-08-17 Ericsson Ge Mobile Communications Inc. Cellular verification and validation system
JPH052535A (ja) * 1991-06-26 1993-01-08 Hitachi Ltd 半導体記憶装置
JPH0553919A (ja) * 1991-08-26 1993-03-05 Fujitsu Ltd メモリ異常アクセス防止方法
US5204902A (en) * 1991-09-13 1993-04-20 At&T Bell Laboratories Cellular telephony authentication arrangement
US5153919A (en) * 1991-09-13 1992-10-06 At&T Bell Laboratories Service provision authentication protocol
WO1993007565A1 (en) * 1991-10-01 1993-04-15 Motorola, Inc. Memory write protection method and apparatus
US5442706A (en) * 1992-02-27 1995-08-15 Hughes Aircraft Company Secure mobile storage
JPH05265866A (ja) * 1992-03-19 1993-10-15 Csk Corp 外部romのセキュリティシステム
JPH05327582A (ja) * 1992-05-19 1993-12-10 Fujitsu Ltd 携帯電話機のプログラムメモリ書き替え方式
JP2973723B2 (ja) * 1992-07-30 1999-11-08 日本電気株式会社 携帯電話機の加入者情報設定方式
JPH0697931A (ja) * 1992-09-14 1994-04-08 Fujitsu Ltd パーソナル通信端末登録制御方式
JPH06223041A (ja) * 1993-01-22 1994-08-12 Fujitsu Ltd 広域環境利用者認証方式
US5551073A (en) * 1993-02-25 1996-08-27 Ericsson Inc. Authentication key entry in cellular radio system
JP3115157B2 (ja) * 1993-06-29 2000-12-04 三菱電機株式会社 ソフトウェア配布サービス方式
US5384847A (en) * 1993-10-01 1995-01-24 Advanced Micro Devices, Inc. Method and apparatus for protecting cordless telephone account authentication information
US5343527A (en) * 1993-10-27 1994-08-30 International Business Machines Corporation Hybrid encryption method and system for protecting reusable software components
JP3052244B2 (ja) * 1993-11-10 2000-06-12 富士通株式会社 移動通信システムにおける移動機の登録方法とicカードの登録方法、及びそれらを実現するための移動機、icカード、及びicカード挿入型移動機
US5606315A (en) * 1994-12-12 1997-02-25 Delco Electronics Corp. Security method for protecting electronically stored data
KR100268693B1 (ko) * 1995-02-08 2000-10-16 이리마지리 쇼우이치로 보안 검사 기능을 갖는 정보 처리 장치 및 보안 검사 방법
US5737701A (en) * 1995-10-03 1998-04-07 At&T Corp. Automatic authentication system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073824A (zh) * 2011-01-12 2011-05-25 深圳昂楷科技有限公司 一种加密文档唯一标识的生成和更新的方法
CN102073824B (zh) * 2011-01-12 2014-06-04 深圳昂楷科技有限公司 一种加密文档唯一标识的生成和更新的方法

Also Published As

Publication number Publication date
CN1235743A (zh) 1999-11-17
JP2011238246A (ja) 2011-11-24
DE69736065T2 (de) 2007-01-04
BRPI9712007B1 (pt) 2017-06-06
CN1446015A (zh) 2003-10-01
JP4050322B2 (ja) 2008-02-20
JP2001500293A (ja) 2001-01-09
JP4917681B2 (ja) 2012-04-18
EE9900084A (et) 1999-10-15
HK1021104A1 (en) 2000-05-26
JP4955818B2 (ja) 2012-06-20
AU734212B2 (en) 2001-06-07
JP2011170841A (ja) 2011-09-01
JP4777957B2 (ja) 2011-09-21
PL332050A1 (en) 1999-08-16
JP2008112443A (ja) 2008-05-15
WO1998010611A2 (en) 1998-03-12
EP0923842B1 (en) 2006-06-07
EP0923842A2 (en) 1999-06-23
BR9712007A (pt) 1999-08-24
US6026293A (en) 2000-02-15
ES2262189T3 (es) 2006-11-16
DE69736065D1 (de) 2006-07-20
KR100492840B1 (ko) 2005-06-07
KR20000068467A (ko) 2000-11-25
JP2007293847A (ja) 2007-11-08
AU4172297A (en) 1998-03-26
WO1998010611A3 (en) 1998-07-09

Similar Documents

Publication Publication Date Title
CN1126398C (zh) 防止电子存储器被窜改的电子装置以及方法
CN100447763C (zh) 一种安全芯片及基于该芯片的信息安全处理设备和方法
US7243240B2 (en) System and method for firmware authentication
EP1415430B1 (en) A method and a system for processing information in an electronic device
CN108540457B (zh) 一种安全设备及其生物认证控制方法和装置
CN109035519B (zh) 一种生物特征识别装置及方法
KR20100080031A (ko) 펌웨어의 원격 업데이트 방법
CN101661599A (zh) 一种对设备系统自带的软件进行合法性认证的方法
JP4226556B2 (ja) プログラム実行制御装置、os、クライアント端末、サーバ、プログラム実行制御システム、プログラム実行制御方法、プログラム実行制御プログラム
CN101282220B (zh) 一种增强密钥使用安全性的信息安全装置及其实现方法
US7869793B2 (en) Method and apparatus for preventing unauthorized use of mobile terminal
CN105354500B (zh) 文件加密方法及装置
CN111898101A (zh) 一种应用的安全设备验证方法及装置
CN1360772A (zh) 保证一组数据的完整性和真实性的方法和设备
CN1705263A (zh) 移动终端用户的合法性验证方法及其移动终端
CN111131211A (zh) 一种面向共享洗衣机安全的防篡改方法
KR101624394B1 (ko) 패스워드 인증 장치 및 그 장치의 운용 방법
CN1570865A (zh) 将计算机数据下载至手机的方法
CN111758243A (zh) 移动存储设备、存储系统和存储方法
KR100530658B1 (ko) Cdma 단말기 복제 방지 시스템 및 방법
KR20050058653A (ko) 이동통신 단말기의 인증방법
CN101051338A (zh) 生产信息安全设备的方法和系统
JP2001125714A (ja) キーボード装置およびそれを用いたパスワード認証方法
CN111061490A (zh) 一种装载固件的方法、装置及电子设备
KR101669770B1 (ko) 패스워드 인증 장치 및 그 장치의 운용 방법

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
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20031029