微控制器和这些控制器之间的鉴别方法

文档序号:7975677阅读:194来源:国知局
专利名称:微控制器和这些控制器之间的鉴别方法
技术领域
本发明涉及一种微控制器,具体来说,涉及通过使用加密后的随机数进行鉴别的微控制器。
现有技术在使用可替换配件(例如移动式电话的电池和打印机的墨盒)的装置中,存在这样的情形即使应该优选使用授权的配件,但是仍然使用了未被授权的配件和普通的配件。如上所述,为了避免使用除了授权配件之外的配件,存在这样一种情形,即,在主体和配件之间进行鉴别。作为与主体和配件之间的鉴别相关的其中一种技术,通过包括相同加密密钥的加密程序在鉴别侧和被鉴别侧之间对相同的随机数进行加密,并且进行比较从而确认一致性。
日本特开专利申请(JP-P2003-318894A)中描述了对随机数进行加密的常规方法,其中在多个口令(challenge)装置和响应系统之间使用了鉴别方法。在该常规的鉴别方法中,从服务器向终端发送口令数据,以及从所述终端向服务器发送根据所述口令数据解密的响应数据。进一步,根据服务器中进行的加密来判断所述响应数据是否是根据所述口令数据解密后的数据。当判断结果是肯定的时,鉴别方法将用于加密和解密的参量更新为新的参量,该新参量被设置为用于下一次鉴别的参量。
如果将常规技术应用到其上安装有微控制器的应用系统,则由于用来对随机数进行加密的加密密钥被直接写在程序中或被存储为存储器(该存储器同时也被用于存储程序)中的数据,因此可以通过对其中存储有用户程序的程序存储器的全部数据进行拷贝,从而可以在除了授权配件之外的其他配件中进行加密。即,如果非法地获得了鉴别程序,且该程序被写入到微控制器的由闪存等构成的程序存储器中时,则即使在未被授权的配件中也可以执行操作,这将会导致检测不到假冒产品的问题。以这种方法,如果在仿造授权配件的假冒产品上安装了由相同的程序写过的微控制器,则将会表现出与授权配件相同的操作。

发明内容
因此,本发明的目的在于提供一种微控制器和鉴别方法,其具有能够阻止在假冒产品中的执行正常的操作。
此外,本发明的另一个目的在于提供一种微控制器和鉴别方法,其能够防止通过简单地拷贝程序存储器而生产假冒配件。
在本发明的一个方面中,微控制器包括程序存储器,其配置为存储程序组和第一加密密钥;CPU;以及标识(ID)存储部分,其被配置为存储微控制器的用户所特有的标识数据。CPU执行程序组以根据标识数据和第一加密密钥产生第二加密密钥,以及利用第二加密密钥对随机数进行加密。
这里,CPU可以执行程序组的随机数生成程序用以产生随机数。此外,微控制器可以进一步包括被配置用于产生随机数的随机数产生电路。此外,微控制器可以进一步包括被配置用于接收随机数的端口。
此外,CPU可以执行程序组,以将利用第二加密密钥所加密的随机数与从外部设备接收到的加密随机数进行比较,并输出比较结果。
此外,所述程序存储器和ID存储部分可以由非易失存储器构成。在这种情况下,微控制器可以进一步包括控制部分,其被配置为响应于向程序存储器的程序写入请求,对程序存储器执行擦除操作和写操作。当对程序存储器执行擦除操作时,控制部分可以从ID存储部分擦除该标识数据。
此外,程序组可以包括第一加密密钥提供程序,其用于提供第一加密密钥;第二加密密钥生成程序,其用于获得第一加密密钥和标识数据,并根据所述第一加密密钥和标识数据产生第二加密密钥;以及加密程序,其用于利用第二加密密钥对随机数进行加密。在这种情况下,程序组可以进一步包括比较程序,其用于将利用第二加密密钥所加密的随机数与从外部设备接收到的加密随机数进行比较,并输出比较结果。
在本发明的另一方面中,通过如下步骤实现一种第一和第二微控制器之间的鉴别方法,这些步骤包括通过执行存储在第一微控制器的第一程序存储器中的第一加密密钥提供程序来提供第一加密密钥;在第一微控制器的第一标识(ID)存储部分中保存(hold)第一微控制器所特有的第一标识数据;根据第一标识数据和第一加密密钥在第一微控制器中产生第二加密密钥;利用在第一微控制器中的第二加密密钥对随机数进行加密以产生第一加密随机数;从第二微控制器接收第二加密随机数;以及对第一加密随机数和第二加密随机数进行比较以便输出比较结果。
这里,通过进一步从第一程序存储器读取随机数来实现所述鉴别方法。在这种情况下,通过进一步产生随机数以存储在第一程序存储器中从而实现所述鉴别方法。通过执行存储在第一程序存储器中的随机数生成程序从而产生随机数,由此实现随机数的产生。
此外,程序存储器和ID存储部分由非易失存储器构成,以及可以通过进一步执行以下步骤从而实现所述微控制器,所述步骤是响应于向第一程序存储器的程序写入请求,对第一程序存储器执行擦除操作和写操作;以及响应于该写入请求对ID存储部分执行擦除操作。
此外,可以通过进一步执行以下步骤从而实现所述鉴别方法,这些步骤是通过执行存储在第二微控制器的第二程序存储器中的第二加密密钥提供程序从而提供第三加密密钥;在第二微控制器的第二标识(ID)存储部分中保存第二微控制器所特有的第二标识数据;根据第二标识数据和第三加密密钥,在第二微控制器中产生第四加密密钥;利用在第二微控制器中的第四加密密钥对来自第一微控制器的随机数进行加密,从而产生第二加密随机数;以及将第二加密随机数发送给第一微控制器。在这种情况下,当将包含第二微控制器的装置安装到包含第一微控制器的装置中时,可以通过进一步向第二微控制器提供电能从而实现所述鉴别方法。在向第二微控制器提供了电能之后再执行提供第三加密密钥的步骤。
此外,可以通过进一步执行以下步骤从而实现所述鉴别方法,这些步骤是通过执行存储在第二微控制器的第二程序存储器中的第二加密密钥提供程序从而提供第三加密密钥;在第二微控制器的第二标识(ID)存储部分中保存第二微控制器所特有的第二标识数据;根据第二标识数据和第三加密密钥,在第二微控制器中产生第四加密密钥;利用在第二微控制器中的第四加密密钥对来自第一微控制器的随机数进行加密,从而产生第二加密随机数;以及将第二加密随机数发送给第一微控制器。在这种情况下,当将包含第二微控制器的装置安装到包含第一微控制器的装置上时,可以通过进一步向第一微控制器提供电能从而实现所述鉴别方法。在向第一微控制器提供了电能之后再执行提供第一加密密钥的步骤。


图1示出了根据本发明的微控制器的结构框图;图2示出了主体(鉴别侧)和配件(被鉴别侧)的结构框图;图3示出了根据本发明的基本操作的流程图;图4示出了在打印机和墨盒情况下的鉴别操作的流程图;以及图5示出了在便携设备和电池情况下的鉴别操作的流程图。
具体实施例方式
以下,将参考附图具体描述本发明的微控制器。图1示出了根据本发明第一实施例的微控制器100的结构框图。参考图1,第一实施例的微控制器100包括CPU 110、ID存储部分120、程序存储器130和输入/输出端口140。
CPU 110控制微控制器100中的每个部分。CPU 110还在微控制器100中产生加密所需的随机数。此时,CPU 110通过执行存储在程序存储器130中的随机数生成程序(未示出)从而产生随机数。然而,对于实际应用来说,还可以通过使用如下方法来产生所述随机数,其中这些方法是通过CPU本身执行程序的随机数生成功能或通过例如随机数产生电路(未示出)的硬件功能。即,可以用任何方法来产生随机数。此外,可以从外部设备接收该随机数。所产生或接收的随机数可以被存储在程序存储器中。
ID存储部分120是配置在微控制器100中的存储区域,且通过微控制器中的电路或程序对其进行访问。ID存储部分120还存储有为各个客户所确定的固有的标识数据(ID)。在ID存储部分120中,对特定(或某个)客户写入目标客户固有ID(例如58679)并发货。在发给普通客户的产品的ID存储部分120中,写入了例如全部都是零的初始值。在程序存储器130中,ID存储部分120是可读的,但不可被任何程序重写。ID存储部分120仅在制造商的制造过程中的专用模式下才是可重写的。如果程序存储器130是非易失存储器且程序都是可重写的,则ID存储部分120是非易失存储器。
在程序存储器130中,在其中写入了用户程序。该程序包括加密密钥A提供程序131、加密密钥B生成程序132、加密程序133和比较程序134。然而,对于实际应用来说,加密密钥A提供程序131、加密密钥B生成程序132、加密程序133和比较程序134的功能还可以通过硬件电路来实现。此外,所述程序可以包括随机数生成程序。
加密密钥A提供程序131是这样一种程序,其用于提供第一加密密钥A并将它保存在程序存储器中。加密密钥B生成程序132是这样一种程序,其用于根据加密密钥A提供程序131提供的加密密钥A和存储在ID存储部分120中的固有标识数据(ID)重新产生加密密钥B。可以将加密密钥B的产生通知给外部设备。加密程序133是这样一种程序,其用于根据加密密钥B对随机数进行加密。比较程序134是这样一种程序,其用于将根据加密密钥B所加密的随机数(即,第一加密随机数)与从另一微控制器获得的一第二加密随机数进行比较,并输出比较结果。
程序存储器130是掩模ROM或非易失存储器。如果程序存储器130是例如闪存的非易失存储器,则ID存储部分120优选地是非易失存储器。这是由于当对程序存储器中的用户程序进行重写时,其使得可以对ID存储部分120执行擦除操作。以下将要更详细地进行描述。
如果程序存储器130是非易失存储器,则第一微控制器100进一步包括控制部分150。
控制部分150对程序存储器130进行写入/擦除控制。具体地,在写入操作中,控制部分150产生非易失存储器的写入操作所需的电压,并且根据写入地址和将被写入的数据执行写入控制。此外,控制部分150产生非易失存储器的擦除操作所需的电压并且执行擦除操作。如果为了重写程序存储器130的内容而从程序写入设备(未示出)向第一微控制器100提供重写请求,则在写入新的程序之前,控制部分150对程序存储器130和ID存储部分120的擦除操作进行控制。即,控制部分150响应于重写请求对程序存储器130进行擦除或写入,并同时对保存在ID存储部分120中的ID进行初始化,例如将零写入到全部地址中。
如果程序存储器130是掩模ROM,则不能改变程序。
输入/输出端口140是用于与外部设备进行通信的端口。输入/输出端口140用于获得由另一微控制器产生的加密随机数,并用于输出来自比较程序134的比较结果。如果没有在微控制器100内部产生用于加密的随机数,则使用输入/输出端口140从外部设备获得随机数。
如图2所示,使用本发明的微控制器的鉴别系统具有第一微控制器100和第二微控制器200。第一微控制器100通过通信线路连接到第二微控制器200。
在本发明的第一实施例中,如图2所示,将第一微控制器100视为主体(鉴别侧),而将第二微控制器200视为配件(被鉴别侧)。第一微控制器100和第二微控制器200都具有与图1所示的微控制器相同的配置和功能。为了识别第一微控制器100和第二微控制器200之间的配置,第二微控制器200包括CPU 210、ID存储部分220、程序存储器230和输入/输出端口240。即,在第二微控制器200中,图1中的CPU 110、ID存储部分120、程序存储器130和输入/输出端口140分别对应于CPU 210、ID存储部分220、程序存储器230和输入/输出端口240。
CPU 210控制微控制器中的各个部分。由于第二微控制器200从第一微控制器100获得随机数,因此CPU 210不产生随机数。
ID存储部分220存储有为各个客户确定的固有标识数据(ID)。该标识数据与存储在第一微控制器100的ID存储部分120中的标识数据相同。即,ID存储部分120和ID存储部分220存储有相同的标识数据。
在程序存储器230中,在其中写入了用户程序。该程序包括加密密钥A提供程序231、加密密钥B生成程序232、加密程序233和比较程序234。加密密钥A提供程序231、加密密钥B生成程序232和加密程序233分别与图1中的加密密钥A提供程序131、加密密钥B生成程序132和加密程序133相同。然而,对于实际应用来说,加密密钥A提供程序231、加密密钥B生成程序232、加密程序233和比较程序234也可以通过硬件电路来实现。
尽管比较程序234可以与图1中的比较程序134相同,但是如果在主体侧(鉴别侧)上对各个随机数进行比较,则比较程序234将由加密程序233加密的随机数(第二加密随机数)发送给第一微控制器100。如果第一微控制器100可以通过如下方式从第二微控制器200获得加密后的随机数,则可以省略比较程序234,所述方式是通过使用比较程序134获得第二加密随机数或通过使用加密程序233发送第二加密随机数。
如果程序存储器230是非易失存储器,则第二微控制器200进一步包括控制部分250。控制部分250与图1中的控制部分150相同。
输入/输出端口240是用于与外部设备进行通信的端口。输入/输出端口240用于从第一微控制器100获得随机数,并将第二加密随机数发送给第一微控制器100。
尽管在图2所示的本发明的第一实施例中,第一微控制器100是主体(鉴别侧)且第二微控制器200是配件(被鉴别侧),但是对于实际应用来说,配件也可以是鉴别侧,而主体也可以是被鉴别侧。这就是根据本发明第二实施例的鉴别系统。
在本发明的第三实施例中,还可以同时通过主体和配件进行鉴别。同时在主体和配件中进行的鉴别可以确保更可靠的保密性。在这种情况下,第一微控制器100和第二微控制器200执行相同的操作。即,第二微控制器中的CPU 210产生随机数。此时,CPU 210通过执行存储在程序存储器230中的随机数生成程序(未示出)从而产生随机数。然而,也可以通过CPU本身的随机数生成功能和硬件功能来产生随机数,所述硬件功能例如是随机数生成电路(未示出)。可以通过任何方法获得随机数。例如,在第一微控制器100和第二微控制器200中,可以从外部随机数生成设备(未示出)来获得随机数。在这种情况下,第一微控制器100和第二微控制器200具有多个输入/输出端口,所述输入/输出端口不仅用于相互通信而且也用于与外部随机数生成设备通信。
此外,第二微控制器200从第一微控制器100获得加密后的随机数(第一加密随机数),并通过比较程序234将对该加密的随机数进行解密后的随机数与在第二微控制器200中产生的随机数进行比较。
接下来,参考图3,以下将要描述根据本发明的鉴别系统的操作。作为例子,这里假定第一微控制器100是主体(鉴别侧),而第二微控制器200是配件(被鉴别侧)。
(1)步骤H101CPU 110从ID存储部分120读取标识数据(ID)。
(2)步骤H102CPU 110由程序存储器130中的加密密钥A提供程序131读取加密密钥A。
(3)步骤H103CPU 110根据加密密钥A和该ID通过使用加密密钥B生成程序132生成加密密钥B。
(4)步骤F101CPU 210从ID存储部分220读取标识数据(ID)。
(5)步骤F102CPU 210由程序存储器230中的加密密钥A提供程序231读取加密密钥A。
(6)步骤F103CPU 210根据加密密钥A和ID通过使用加密密钥B生成程序232生成加密密钥B。
(7)步骤H104CPU 110生成随机数以输出给(通知)配件(第二微控制器200)。
(8)步骤H105CPU 110通过使用加密程序133利用加密密钥B对该随机数进行加密,以生成第一加密随机数。
(9)步骤F104CPU 210通过使用加密程序233利用加密密钥B对从主体(第一微控制器100)接收到的随机数进行加密,从而生成了第二加密随机数,随后将第二加密随机数发送给主体(第一微控制器100)。
(10)步骤H106CPU 110通过使用比较程序134对第一加密随机数和第二加密随机数进行比较,从而输出该比较结果。
启动上述操作的时间(操作启动触发器)是启动主体和配件的时间(电源开启/关闭的时间)、将配件连接到主体的时间、从外部设备接收请求信号的时间、或是周期性的。配件可以在从主体接收到随机数之后再启动该操作。此外,在主体和配件中,当预先设置了标识数据(ID)和程序的时候,可以执行生成加密密钥B的操作。然而,实际应用不局限于上述实例。
接下来,以下将要描述第一实施例和第二实施例的两个实例。
参考图4,将要描述打印机(主体)和墨盒(配件)的第一实施例中的鉴别系统。
(1)步骤H201在打印机主体中开启电源。
(2)步骤H202主体侧的微控制器读取主体侧的标识数据(ID)。
(3)步骤H203主体侧的微控制器读取主体侧的加密密钥A。
(4)步骤H204主体侧的微控制器根据加密密钥A和标识数据(ID)生成加密密钥B。
(5)步骤H205此后,主体侧的微控制器对将要安装到主体上的墨盒进行识别,并向该墨盒提供电能。
(6)步骤F201当所提供的电能被接通时,墨盒侧的微控制器读取墨盒侧的标识数据(ID)。
(7)步骤F202墨盒侧上的微控制器读取墨盒侧的加密密钥A。
(8)步骤F203墨盒侧的微控制器根据加密密钥A和标识数据(ID)生成加密密钥B,随后将生成加密密钥B的通知发送给主体。
(9)步骤H206响应于生成加密密钥B的通知,主体侧的微控制器生成随机数并将它发送给墨盒。
(10)步骤F204墨盒侧的微控制器根据加密密钥B对从主体接收到的随机数进行加密,从而生成第二加密随机数,并将该第二加密随机数发送给主体。
(11)步骤H207主体侧的微控制器根据加密密钥B对随机数进行加密,从而获得第一加密随机数。
(12)步骤H208主体侧的微控制器对第一加密随机数和第二加密随机数进行比较。
(13)步骤H209如果结果表示(二者)相符合,则主体开始作为打印机操作。
(14)步骤H210如果结果表示(二者)不相符,则主体中止作为打印机的操作。
接下来,参考图5,将要描述便携式终端(主体)和电池(配件)情况下的第二实施例中的鉴别系统的操作。
(1)步骤F301将电池组连接到或安装在电池包中。
(2)步骤F302电池侧的微控制器读取电池侧的标识数据(ID)。
(3)步骤F303电池侧的微控制器读取电池侧的加密密钥A。
(4)步骤F304电池侧的微控制器根据加密密钥A和标识数据(ID)生成加密密钥B。
(5)步骤F305此后,将电池包安装在主体侧上,由此电池组向主体提供电能。
(6)步骤H301当电源导通时,主体侧的微控制器读取主体侧上的标识数据(ID)。
(7)步骤H302主体侧的微控制器读取主体侧上的加密密钥A。
(8)步骤H303主体侧的微控制器根据加密密钥A和标识数据(ID)生成加密密钥B。
(9)步骤H304
主体上的微控制器进一步生成随机数并将它发送给电池包。
(10)步骤F306电池侧的微控制器利用加密密钥B对从主体接收到的随机数进行加密,从而生成第二加密随机数,并将该第二加密随机数发送给主体。
(11)步骤H305主体通过利用加密密钥B对随机数进行加密,从而获得第一加密随机数。
(12)步骤H306主体对第一加密随机数和第二加密随机数进行比较。
(13)步骤H307如果结果表示(二者)相符合,则主体作为便携设备开始操作。
(14)步骤H308如果结果表示(二者)不相符,则主体中止作为便携设备的操作。
这里,将要描述非法地获得微控制器程序的情形。在这种情况下,写入到主体的ID存储部分中的ID是某个用户所固有的。
当已经在配件侧(客户限定的产品)将授权程序写入到微控制器中时,即,在通常使用的情况下,假定主体和配件使用根据第一加密密钥A和ID准备了相同的加密密钥B和相同的随机数,由此加密后的随机数仍保持相同。
然而,对于非特定用户的普通用户来说,如果在没有任何处理的情况下,将非法获得的程序拷贝到微控制器的程序存储器中,则安装在假冒产品上的微控制器的ID被初始化,例如全部设置为零,而与用户固有ID不同。由此,加密密钥B不同。结果,在主体和配件中加密的随机数彼此不同。由此,可以确认连接到主体的配件是假冒产品。
如果微控制器的程序存储器是非易失存储器,则考虑这样一种方式,即,通过编写和执行用于读取和输出ID的简单程序而恶意地获得了ID。然而,由于当数据或程序被写入非易失存储器时,对非易失存储器执行了擦除操作和写入操作,因此可以初始化在ID存储部分中保存的数据,这防止了使用上述方法。
如上所述,根据本发明的微控制器包括CPU,其用于通过执行随机数生成程序或硬件功能生成随机数;ID存储部分,其用于存储固有的标识数据,以及第一程序存储器,其用于存储第一加密密钥,并根据标识数据和第一加密密钥生成第二加密密钥,以便根据第二加密密钥存储用于对随机数进行加密的程序。
在本发明的使用微控制器的鉴别系统中,使用了主体(鉴别侧)的第一微控制器和配件(被鉴别侧)的第二微控制器。第一微控制器通过通信线路连接到第二微控制器。
第一微控制器包括程序存储器、ID存储部分和CPU。第二微控制器包括程序存储器和ID存储部分。如果各个微控制器中的ID存储部分都使用了非易失存储器,则进一步提供控制部分。
用户程序已经被写入到程序存储器中。更具体地,这些程序包括加密密钥A提供程序、加密密钥B生成程序、加密程序和比较程序(鉴别侧专用)。程序存储器被分为以下两种情形,即掩模ROM和非易失存储器。ID存储部分具有ID存储部分。对于特定用户,写入目标用户固有ID并发货。在发往普通客户的产品的ID存储部分中,写入了例如全部都是零的初始值。对于用户存储程序来说,ID存储部分是可读的但是不可重写的。如果程序存储器是非易失存储器且程序是可重写的,则ID存储部分是非易失存储器。加密密钥B生成程序根据加密密钥A和ID生成加密密钥B。CPU生成随机数。加密程序根据加密密钥B对随机数进行加密。比较程序对主体中产生的加密随机数和从配件提供的加密随机数进行比较,并输出比较结果。如果程序存储器是非易失存储器,则将控制部分配置为一个部件(或存在控制部)。控制部分响应于写入请求而对程序存储器进行擦除/写入。同时对保存在加密密钥A提供程序中的ID进行初始化,例如全部初始化为零。
以下将要描述本发明中的鉴别过程的流程。
起初,主体和配件利用加密密钥A和ID生成加密密钥B。主体生成随机数并输出给配件。主体根据加密密钥B对随机数进行加密,从而获得第一加密随机数。配件根据加密密钥B对从主体接收到的随机数进行加密,并生成第二加密随机数,并将其传送给主体。主体对第一加密随机数和第二加密随机数进行比较,并输出比较结果。
当非法地获得了微控制器的程序时,即使使用了在其中将非法获得的程序写入到程序存储器的假冒产品,也能够阻止其正常操作。因此,可以消除通过简单地拷贝程序存储器的假冒配件。
权利要求
1.一种微控制器,包括程序存储器,其被配置为存储程序组和第一加密密钥;CPU;以及标识(ID)存储部分,其被配置为存储所述微控制器的用户所特有的标识数据,其中所述CPU根据所述标识数据和所述第一加密密钥执行所述程序组以生成第二加密密钥,并利用所述第二加密密钥对随机数进行加密。
2.根据权利要求1的微控制器,其中所述CPU执行所述程序组的随机数生成程序从而生成所述随机数。
3.根据权利要求1的微控制器,进一步包括随机数生成电路,其被配置为生成所述随机数。
4.根据权利要求1的微控制器,进一步包括被配置为接收所述随机数的端口。
5.根据权利要求1到4任意一项的微控制器,其中所述CPU执行所述程序组,从而将利用所述第二加密密钥加密的所述随机数与从外部设备接收到的一加密的随机数进行比较,并输出该比较结果。
6.根据权利要求1到4任意一项的微控制器,其中所述程序存储器和ID存储部分是由非易失存储器构成的。
7.根据权利要求6的微控制器,进一步包括控制部分,其被配置为响应于向所述程序存储器的程序写入请求,对所述程序存储器执行擦除操作和写入操作,以及其中当对所述程序存储器执行所述擦除操作时,所述控制部分将所述标识数据从所述ID存储部分中擦除。
8.根据权利要求1到4任意一项的微控制器,其中所述程序组包括第一加密密钥提供程序,其用于提供所述第一加密密钥;第二加密密钥生成程序,其用于获得所述第一加密密钥和所述标识数据,并根据所述第一加密密钥和所述标识数据生成所述第二加密密钥;以及加密程序,其用于利用所述第二加密密钥对所述随机数进行加密。
9.根据权利要求8的微控制器,其中所述程序组进一步包括比较程序,其用于将利用所述第二加密密钥进行加密的所述随机数与从外部设备接收到的一加密的随机数进行比较,并输出比较结果。
10.一种第一和第二微控制器之间的鉴别方法,包括通过执行存储在所述第一微控制器的第一程序存储器中的第一加密密钥提供程序来提供第一加密密钥;在所述第一微控制器的第一标识(ID)存储部分中保存所述第一微控制器所特有的第一标识数据;根据所述第一标识数据和所述第一加密密钥,在所述第一微控制器中产生第二加密密钥;利用在所述第一微控制器中的所述第二加密密钥对随机数进行加密以产生第一加密随机数;从所述第二微控制器接收第二加密随机数;以及对所述第一加密随机数和所述第二加密随机数进行比较以便输出比较结果。
11.根据权利要求10的鉴别方法,进一步包括从所述第一程序存储器读取所述随机数。
12.根据权利要求11的鉴别方法,进一步包括生成所述随机数以存储在所述第一程序存储器中。
13.根据权利要求12的鉴别方法,其中所述生成所述随机数的步骤包括执行存储在所述第一程序存储器中的随机数生成程序从而生成所述随机数。
14.根据权利要求10的鉴别方法,其中所述程序存储器和所述ID存储部分是由非易失存储器构成的,以及所述微控制器进一步包括响应于向第一程序存储器的程序写入请求,对所述第一程序存储器执行擦除操作和写入操作;以及响应于该写入请求对所述ID存储部分执行所述擦除操作。
15.根据权利要求10到14任意一项的鉴别方法,进一步包括通过执行存储在所述第二微控制器的第二程序存储器中的第二加密密钥提供程序来提供第三加密密钥;在所述第二微控制器的第二标识(ID)存储部分中保存所述第二微控制器特有的第二标识数据;根据所述第二标识数据和所述第三加密密钥,在所述第二微控制器中产生第四加密密钥;利用在所述第二微控制器中的所述第四加密密钥,对来自所述第一微控制器的所述随机数进行加密,从而产生所述第二加密随机数;以及将所述第二加密随机数发送给所述第一微控制器。
16.根据权利要求15的鉴别方法,进一步包括当包含所述第二微控制器的装置被安装到包含所述第一微控制器的装置时向所述第二微控制器提供电能,其中在向所述第二微控制器提供了电能之后再执行所述提供第三加密密钥的步骤。
17.根据权利要求10到14任意一项的鉴别方法,进一步包括通过执行存储在所述第二微控制器的第二程序存储器中的第二加密密钥提供程序来提供第三加密密钥;在所述第二微控制器的第二标识(ID)存储部分中保存所述第二微控制器特有的第二标识数据;根据所述第二标识数据和所述第三加密密钥,在所述第二微控制器中产生第四加密密钥;利用在所述第二微控制器中的所述第四加密密钥对来自所述第一微控制器的所述随机数进行加密,从而产生所述第二加密随机数;以及将所述第二加密随机数发送给所述第一微控制器。
18.根据权利要求17的鉴别方法,进一步包括当包含所述第二微控制器的装置被安装到包含所述第一微控制器的装置时,向所述第一微控制器提供电能,其中在向所述第一微控制器提供了电能之后再执行所述提供第一加密密钥的步骤。
全文摘要
本发明涉及一种微控制器和这些控制器之间的鉴别方法。所述微控制器包括程序存储器,其被配置为存储程序组和第一加密密钥;CPU;以及标识(ID)存储部分,该标识存储部分被配置为对微控制器的用户所特有的标识数据进行存储。CPU根据所述标识数据和第一加密密钥执行程序组以生成第二加密密钥,并且利用第二加密密钥对随机数进行加密。
文档编号H04L9/14GK1996837SQ20061017248
公开日2007年7月11日 申请日期2006年12月31日 优先权日2006年1月5日
发明者木村俊夫, 小泽直史 申请人:恩益禧电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1