专利名称:处理数据的设备及其相应的方法
技术领域:
本发明有关一个处理数据的设备及控制这样一个设备的方法。
背景技术:
包含处理元件及存储元件的数据处理系统越来越广泛地用于各种不同的电子学领域。在通信领域中,多数通信设备包含有处理器,该处理器执行存储在一个合适的存储设备中的程序,从而处理存储在该同一存储设备或其它地方的数据。包含一个处理器(一般是一个微处理器控制器)和一个合适的存储芯片的一个通信设备的例子是一个移动电话。
数据处理系统所遇到的问题之一是数据安全性问题。例如,以上所述的移动电话可以包含不同类型独立于中央处理器的存储器,例如一个闪速存储器或一个EEPROM。一个EEPROM可以由一个闪速存储器仿效的,或者,它部分地是一个闪速存储器。一般,这类存储器必须防止非授权的访问,以保护该移动电话的正常操作。
当然,数据安全性问题出现在任何这类数据处理系统中,不只是在移动电话中。数据安全性问题的基本解决方法是提供一个保护软件,例如,一个算法,用于确认EEPROM或仿效EEPROM中的敏感数据。不过,这类软件解决方法遇到一些软件自身无法克服的问题,例如,存在跳过或改变该确认算法的可能性。有时,也可能通过使用老的,不包含确认例程但仍能提供对敏感数据的访问的软件,来回避一个确认例程。
发明概要本发明的目的是提供一个更好的数据处理设备,它能相当简单地实现并能解决上述问题。
这一目的是通过权利要求1中所述的设备和权利要求14中所述的方法来实现的。
按照本发明,在一个具有一个存储单元和一个处理单元的数据处理设备中,一方面,在一个数据处理设备的存储单元中提供了一个被保护部分,另一方面,在启动时,该处理单元必须执行一个存储在该存储单元的被保护部分中的程序例程。有了这一装置,专用的程序(例如与安全性相关的程序)可以被执行,非授权用户无法对所述程序进行改变,因为它们是被存储在存储单元的被保护部分中的。如以下将要详细介绍的,这类安全性程序可以被编程,以确认其它数据未被篡改。
本发明的一个重要方面是不需对处理器进行修改。换句话说,对上述问题的直接的解决方法包含有对处理单元的修改以使其包含安全机制,但是,这类对处理器的修改一般是复杂的、耗时的、昂贵的。相反的,本发明提供了一个非常简单的装置,其中,只需要一个改进的存储器,这相当简单。特别是,正在使用处理器可被保留,在这种情况下,必须以特定方式来管理存储器,即,所述处理器中固定的用于启动的地址(所谓的起始地址)指向该存储设备的被保护部分。或者,可以对存储器进行小小的改动,即改变该起始地址。尽管这是对处理器的修改,但它相当简单并且所需的花费很小。
在独立权利要求中描述了本发明的最佳实施例。
附图简述结合附图,通过以下对本发明实例的详细介绍,将会清楚本发明的各种优点和特性,其中,附图包括
图1描述了本发明的一个实例的基本结构;图2描述了本发明的另一个实例的结构;图3a和图3b显示了用于本发明数据处理系统的一个推荐存储设备;图4示出了将数据存入被保护部分从而保护所述数据的一个过程的流程图;图5是一个流程图,解释了本发明数据处理系统的基本操作;图6是一个存储单元的实例的一个框图。
实施例详述图1示出了本发明的一个实例。参考符号1指的是一个处理器,例如一个微处理器控制器。参考数字11表示所述处理器中的起始地址,其中,所述起始地址是不能被从外部改变的。换句话说,当处理器1启动时,它必须调用存储在存储部分11中的起始地址。
参考数字2是一个存储系统,包含一个第一部分21,它是被保护部分,和一个第二部分22,可以向其自由地写入数据。处理器1和存储器2通过地址线3和数据线4连接。符号CLK表示为该电路提供时钟信号,符号U表示为该电路提供工作电压。
被保护部分受到保护以防对其写入数据。这可通过任何适当的方法来实现。
被保护部分21最好以这样一种方式来组织,即,在对该部分存入初始数据之后,根本不可能再对其写入数据。换句话说,该存储器必须这样安排,即,最初可以将专用数据和程序例程存入被保护部分21,然后,必须使用一种机制,保证随后不可能向该区域再写入数据。在图4中示出了一个按这种方法实现的存储器的推荐实例。在这种情况下,在一个快速存储设备中提供一个所谓的一次性编程区域,该快速存储设备内有一种机制,使到该被保护部分的一个写入线无法通过(例如,通过将该写入线烧毁来破坏该线,即所谓的可熔断连接)。该存储器根据一个预定的信号,破坏该写入线。以这种方式,对于其中要内置本发明数据处理设备的装置(即移动电话),制造者可以将必要的程序和数据写入该被保护部分中(图4中的第S1步),随后,送入预定信号以熔断写入线(可熔断链路)。其结果是,随后不可能向该被保护部分写入数据。因此,这部分中的数据就不会被改变(图4中的第S2步)。
自然,这只是一个首选的实例,本发明可扩展到任何类型的存储设备,其中可能需要保护该存储器中一个指定部分以防止被写入。举例来说,已知存储器中有一些输入线,其中,只要某些预定信号(如地电压0或电源电压)出现在该输入线上,则存储器的某预定部分就被保护起来防止写入。
结合图6,介绍另一个例子,其中,一个存储器具有一个所谓的有限状态机FS。由于在本技术领域,有限状态机是已知的,所以此处只对其作简要介绍。所述的存储器1A有一条地址总线70,一条数据总线71,读/写(R/W)存取线72,和一条用于切换有限状态机(FS)状态的线73。NO代表正常操作,FSO代表有限状态操作。有限状态机基本上是一个被硬件实现在存储器1A中的程序,这样,就无法从外部将其改变,从而实现了基本的安全性要求。该硬件实现的程序是地址逻辑的一部分,该地址逻辑处理经地址总线送给存储器的地址。
举例来说,若线路73是高电平(即1),则存储器处于正常操作状态,数据总线71以常规方式用于传递数据。若线路73是低电平(即0),则数据总线71被用于控制有限状态机FS。
在本发明的应用中,有限状态机FS有两个状态,称为第一状态,其中,允许将数据写入存储器1A的预定部分中(即,该部分将是被保护部分),和一个第二状态,它是一个锁定状态,其中,不能向该预定部分写入数据。该有限状态机的安排是从第一状态向第二状态的转换是不可逆的,即,一旦该机被锁定,就不可能再转回第一状态,从而,再也不可能向该被保护部分写入。可以用已知的有限状态机以任何合适的方式来做到这一点。例如,可以挑选有限状态程序以使锁定状态受被保护部分中的一个专用值控制,因此,只要初始值在一个指定地址,则允许对被保护部分写入,而一旦该指定地址的值改变了(这就是状态转换),若试图对被保护部分的一个地址写入,则有限状态程序将陷入一个死循环或中止,并且,由于该指定地址是在被保护部分中的,所以,它不会被改变,因此,该锁定状态是永久的。
现在返回图1,系统的安排是,处理器1的部分11中包含的地址指向存储器2的被保护部分21中。换句话说,在启动时,处理器1将调用存储器2的被保护部分21中的一个或多个地址,随后,执行包含在其中的程序。这在图5的上部进行了解释,图5示出了按本发明的一个控制操作流程。在第一步S3,提供电源电压U和一个时钟信号CLK,启动存储器和处理器CP。然后,在第S4步,处理器CP调用指向存储器的被保护部分的起始地址。最后,在第S5步,处理器CP执行被保护部分中的程序。
应指出,不是必须在存储器2的被保护部分21中存入专用程序的,因为在处理器1已经被编程的情况下,处理器只需调用存储在该被保护部分21中的专用参数就足够了,这里,处理器1在随后的预编程例程中处理这些参数。
在启动时应执行的处理可根据给定应用中指定的要求和期望来选择。按推荐实例,启动时执行的例程是安全性例程,如图5流程图下部所示。更具体的,在图5的情况下,启动时执行的程序例程检查存储器2的未被保护部分22中的非授权改变。
例如,在本发明的数据处理设备用于移动电话的情况下,与所述移动电话的指定用户相关的某些参数(诸如业务,优先级等)可被存入所述未被保护部分22中,在处理器1执行例程期间,这些参数可能被改变。不过,也有可能一个未授权用户将访问这些参数并改变它们。要想检查这样一个未授权访问,可以与任何改变的参数一起,为所述未被保护部分22中的数据存储一个特性参数。这样一个特性参数的一个典型的例子是校验和。另一个例子是一个密码散列函数的计算结果。换句话说,授权企业(处理器)每次改变存储部分22中的数据,就存储一个相应改变的校验和。以这种方式,检验是否执行了未授权访问和改变的例程可以包括计算检验和并将其与所存储的值相比较的例程。若出现了偏差,则该例程确定,发生了一次未授权的数据改变。如图5的下部所示,若检测到一个未授权改变(在第S6步,yes),则该例程的反应是,调用任意类型的期望的安全性或急救过程(例如关掉该设备),或者,若未检测到改变,继续常规的操作。
尽管在图1中,存储器2是一个单独的单元,但这应该被理解为抽象的描述,即,所述存储器可以是一个单独的单元,也可以包含多个物理上独立的存储设备,如图2所示。在图2中,对在图1中已描述过的部件使用相同的参考符号。因此不需要重复介绍。如图2所示,存储器2包含多个存储设备,例如独立的存储芯片201,202,203…。存储设备或芯片的具体安排对本发明来说是不重要的。例如,图1中示为21的被保护部分可以由图2中的整个芯片201构成,即,芯片201没有写入访问。其余的芯片202,203…可以都是常规的EEPROMs,即,都是可以进行正常写入访问的芯片。很自然,也有可能每个芯片201,202,203…都有一个第一部分是被保护的,都有一个第二部分是不被保护的,这里,例如,处理器1的部分11中的地址指向芯片201的被保护部分中的一个地址,芯片201的这一被保护部分又指向其它芯片202,203…的其它被保护部分。在后一种情况下,芯片201,202,203…的所有被保护部分共同构成权利要求中所描述的存储单元的被保护部分。
可以指出,尽管上述实例有关一个系统,该系统中的存储器有一个被保护部分,不能向该部分写入数据,但仍有可能读出该被保护部分中的数据,即使是一个未授权用户。为使未授权用户难以读出保护区域内的数据,在图3a和3b中示出了本发明的数据处理设备中的存储器的一个推荐实例。图3a和3b中示出了一个存储芯片5,它有一个电触点51,与线路板6上的电子引线61焊接或连接。图3a示出了安装前的部件,图3b示出了将存储芯片5安装在线路板6上之后的装置,这里,电触点51和电子引线61已合并为触点71。应指出,图3b中的表示是放大了的,实际上,存储芯片5和线路板6间的间距特别小,在芯片5被安装在线路板6上之后,不可能对触点71操作。
因此,如图3所示,在芯片5被安装在线路板6上之后,由电触点51得到的最终的触点71完全被芯片5所覆盖,从外部根本不可能操作触点51。例如,触点51可以是按所谓的球格阵列组织的小的半球。
利用图3中的装置,在该芯片工作期间,可以防止未授权用户取得流经该触点的信号,因此,在该芯片工作期间,要想监测进入或流出该存储芯片5的信号,就必须从线路板上取下该芯片,然后,提供相应的替换连接。而这是一个繁琐而冗长的过程,足以使预期的未授权用户回避监测该存储器和其余的线路之间的信号。应指出,即使有可能在从线路板上拆除存储芯片5之后,从被保护部分读出数据,但要将该芯片再装回线路板上无疑是一个繁琐而冗长的过程,因为这种安装过程是在制造期间由高精度机械完成的,即,触点之间的间距一般都特别小。
很自然,该存储器与线路板上的处理器之间的连接也要以合适的方式隐藏起来,例如,要访问它们必须破坏线路板,并且,到处理器的电触点也必须是不可触及的,例如,可借助以上结合存储器所介绍的方式。
如以上已提到的,本发明提供了一种装置,其中可通过一种低廉的方式,获得相当高的数据安全性。本发明数据处理设备的一个推荐的应用是在通信设备中。这种通信设备可以是,例如,移动电话。该数据处理设备的一个特定的推荐应用是一个支持所谓的Bluetooth(兰牙)技术的通信设备。Bluetooth技术的设计目的是使用户能够通过不受视线限制的无线短程射频链路,将其便携式计算机,数字蜂窝电话,手持设备,网络接入点,和其它移动设备连接起来。由于不需要专有的电缆,并且不需要经IR链路的瞄准式通信来连接设备,因此,Bluetooth技术增加了无线连接的方便性和宽度。Bluetooth工作在2.45GHz的ISM“空闲波段”。该技术的细节可在例如http//www.bluetooth.com的网址找到。
以上已通过举例的方式介绍了本发明,当应该理解,这些例子只是为了使本技术专业人士清楚地理解本发明,它们不限制本发明的范围。本发明的范围由所附的权利要求确定。
权利要求
1.处理数据的设备,包括处理单元(1),用于执行程序例程,和存储单元(2),用于存储要由所述处理单元(1)执行的程序例程,这里至少所述存储单元(2)的一部分被安排为被保护部分(21),可以从该部分读出数据但不能向该部分写入数据,并且所述处理单元(1)在启动时,必须执行所述存储单元的被保护部分中存储的一个程序例程。
2.如权利要求1的设备,其中,所述处理单元(1)存储一些永久的起始地址(11),在所述处理单元(1)启动时必须调用该地址,这里,所述起始地址中至少有一个指向所述存储设备(2)的所述被保护部分(21)。
3.如权利要求1或2的设备,其中,所述存储设备(2)的所述被保护部分(21)是一个第一部分,所述存储单元还包含一个第二部分(22),可以向其中写入数据,这里,在所述处理设备(1)启动时执行的所述被保护部分(21)中的程序例程包括,检查包含在所述第二部分(22)中的至少一部分数据的变化。
4.如权利要求3的设备,其中,在所述处理设备(1)启动时执行的所述被保护部分(21)中的所述程序例程包括,为被检测到已改变的数据计算一个特性参数,并在将所述被检测改变的数据写入所述存储设备(2)的所述第二部分(22)中时,将所述特性参数与存储在所述存储设备(2)的所述第二部分(22)中的一个值比较。
5.如权利要求4的设备,其中,所述特性参数是一个校验和。
6.如权利要求1到5中的任一个的设备,其中,所述存储单元(2)包含多个存储设备(201,202,203),其中的一个(201)包含所述的被保护部分,其余的(202,203)可写入数据。
7.如前面权利要求中任一个的设备,其中,所述被保护区域(21)是这样安排的,提供一种机制,使得在最初将数据存入所述被保护区域(21)中之后,封锁对该区域的任何随后的写入。
8.如权利要求7的设备,其中,所述被保护区域(21)是这样安排的,向其中存入数据的进程包括通过一条写入线将数据写入所述被保护区域(21)(S1),并向所述被保护部分发送一个信号(S2),根据该信号,所述写入线被永久地中断。
9.如权利要求8的设备,其中,所述写入线是一个可熔断线。
10.如权利要求1到7中的任一个的设备,其中,所述存储单元(2)包含一个有限状态机,所述有限状态机定义一个状态,它保护所述被保护部分以防其被写入。
11.如前面权利要求中任一个的设备,其中,所述存储设备(2)包含一个或多个EEPROM,一个快速存储设备,和一个仿效一个EEPROM的快速存储设备。
12.如前面权利要求中任一个的设备,其中,所述存储设备(2)包含一个存储芯片(5),它有一个与线路板(6)相连的电触点(51),在所述存储芯片(5)被安装在所述线路板(6)上时,所述电触点(51)被所述存储芯片(5)盖住。
13.如权利要求12的设备,其中,所述的电触点(51)是按球格阵列的形式安排的。
14.通信设备包含一个按照权利要求1到13之一处理数据的设备。
15.如权利要求14的通信设备,其中,所述的通信设备是一个移动电话。
16.如权利要求14的通信设备,其中,所述的通信设备是一个兰牙通信设备。
17.控制一个数据处理设备的方法,该设备有一个处理单元(1),用于执行程序例程,和一个存储单元(2),用于存储要由所述处理单元(1)执行的程序例程,其中,所述存储单元(2)的至少一部分被安排为被保护部分(21),可从该部分读出数据但不能向其写入数据,该方法包括使所述处理单元(1)在启动(S3)时必须执行所述存储单元的所述被保护部分(21)中的一个程序例程(S4)。
18.如权利要求17的方法,其中的所述处理单元存储一些永久的起始地址,在所述处理单元启动时必须调用该地址,这里,至少所述起始地址之一指向所述存储单元的所述被保护部分。
19.如权利要求17或18之一的方法,其中,所述存储单元的所述被保护部分是一个第一部分,所述存储单元还包括一个第二部分,可以向该部分写入数据,其中,在所述处理设备启动时执行的所述被保护部分中的所述程序例程包括,检测所述第二部分中包含的至少部分数据的变化。
20.如权利要求19的方法,其中,在所述处理设备启动时执行的所述被保护部分中的所述程序例程包括,为检测到有变化的数据计算一个特性参数,并在将所述被检测改变的数据写入所述存储设备的所述第二部分中时,将所述特性参数与存储在所述存储设备的所述第二部分中的一个值比较。
21.如权利要求20的方法,其中,所述特性参数是一个校验和。
22.如权利要求17到21中的任一个的方法,其中,所述存储单元包含多个存储设备,其中的一个包含所述的被保护部分,其余的被安排为可写入数据。
23.如权利要求17到22中任一个的方法,其中,所述被保护区域是这样安排的,提供一种机制,使得在最初将数据存入所述被保护区域中之后,封锁对该被保护部分的任何随后的数据写入。
24.如权利要求23的方法,其中,所述被保护区域是这样安排的,向其中存入数据的进程包括通过一条写入线将数据写入所述被保护区域,并向所述被保护部分发送一个信号,根据该信号,所述写入线被永久地中断。
25.如权利要求24的方法,其中,所述写入线是一个可熔断连接。
26.如权利要求17到23中的任一个的方法,其中,所述存储设备(1)包含一个有限状态机,所述有限状态机定义一个状态,它保护所述被保护部分以防其被写入。
27.如前面权利要求17到26中任一个的方法,其中,所述存储设备包含一个或多个EEPROM,一个快速存储设备,和一个仿效一个EEPROM的快速存储设备。
28.如前面权利要求17到27中任一个的方法,其中,所述存储设备包含一个存储芯片,它有一个与线路板相连的电触点,在所述存储芯片被安装在所述线路板上时,所述电触点被所述存储芯片盖住。
29.如权利要求28的方法,其中,所述的电触点是按球格阵列的形式安排的。
30.一个可被一个数据处理设备读的介质,上面记录有一个程序,该程序使该数据处理设备执行权利要求17到29中任一个所描述的方法。
全文摘要
处理数据的设备,包含处理单元(1),用于执行程序例程,和存储单元(2),用于存储由所述处理单元(1)执行的程序例程,这里,至少所述存储单元(2)的一部分被安排为一个被保护部分(21),可从该部分读出数据但不能向其写入数据,并且,所述处理单元在启动时必须执行存储在所述被保护部分中的一个程序例程。
文档编号G06F21/79GK1359490SQ00808142
公开日2002年7月17日 申请日期2000年6月19日 优先权日1999年6月25日
发明者B·米勒, H·奥斯托夫, B·斯米特斯, K·F·普恩 申请人:艾利森电话股份有限公司