CN1996837A - 微控制器和这些控制器之间的鉴别方法 - Google Patents

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

Info

Publication number
CN1996837A
CN1996837A CNA200610172481XA CN200610172481A CN1996837A CN 1996837 A CN1996837 A CN 1996837A CN A200610172481X A CNA200610172481X A CN A200610172481XA CN 200610172481 A CN200610172481 A CN 200610172481A CN 1996837 A CN1996837 A CN 1996837A
Authority
CN
China
Prior art keywords
microcontroller
encryption key
random number
program
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.)
Pending
Application number
CNA200610172481XA
Other languages
English (en)
Inventor
木村俊夫
小泽直史
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.)
NEC Electronics Corp
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of CN1996837A publication Critical patent/CN1996837A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2129Authenticate client device independently of the user

Landscapes

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

Abstract

本发明涉及一种微控制器和这些控制器之间的鉴别方法。所述微控制器包括:程序存储器,其被配置为存储程序组和第一加密密钥;CPU;以及标识(ID)存储部分,该标识存储部分被配置为对微控制器的用户所特有的标识数据进行存储。CPU根据所述标识数据和第一加密密钥执行程序组以生成第二加密密钥,并且利用第二加密密钥对随机数进行加密。

Description

微控制器和这些控制器之间的鉴别方法
技术领域
本发明涉及一种微控制器,具体来说,涉及通过使用加密后的随机数进行鉴别的微控制器。
现有技术
在使用可替换配件(例如移动式电话的电池和打印机的墨盒)的装置中,存在这样的情形:即使应该优选使用授权的配件,但是仍然使用了未被授权的配件和普通的配件。如上所述,为了避免使用除了授权配件之外的配件,存在这样一种情形,即,在主体和配件之间进行鉴别。作为与主体和配件之间的鉴别相关的其中一种技术,通过包括相同加密密钥的加密程序在鉴别侧和被鉴别侧之间对相同的随机数进行加密,并且进行比较从而确认一致性。
日本特开专利申请(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)步骤H101
CPU 110从ID存储部分120读取标识数据(ID)。
(2)步骤H102
CPU 110由程序存储器130中的加密密钥A提供程序131读取加密密钥A。
(3)步骤H103
CPU 110根据加密密钥A和该ID通过使用加密密钥B生成程序132生成加密密钥B。
(4)步骤F101
CPU 210从ID存储部分220读取标识数据(ID)。
(5)步骤F102
CPU 210由程序存储器230中的加密密钥A提供程序231读取加密密钥A。
(6)步骤F103
CPU 210根据加密密钥A和ID通过使用加密密钥B生成程序232生成加密密钥B。
(7)步骤H104
CPU 110生成随机数以输出给(通知)配件(第二微控制器200)。
(8)步骤H105
CPU 110通过使用加密程序133利用加密密钥B对该随机数进行加密,以生成第一加密随机数。
(9)步骤F104
CPU 210通过使用加密程序233利用加密密钥B对从主体(第一微控制器100)接收到的随机数进行加密,从而生成了第二加密随机数,随后将第二加密随机数发送给主体(第一微控制器100)。
(10)步骤H106
CPU 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对从主体接收到的随机数进行加密,并生成第二加密随机数,并将其传送给主体。主体对第一加密随机数和第二加密随机数进行比较,并输出比较结果。
当非法地获得了微控制器的程序时,即使使用了在其中将非法获得的程序写入到程序存储器的假冒产品,也能够阻止其正常操作。因此,可以消除通过简单地拷贝程序存储器的假冒配件。

Claims (18)

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的鉴别方法,进一步包括:
当包含所述第二微控制器的装置被安装到包含所述第一微控制器的装置时,向所述第一微控制器提供电能,
其中在向所述第一微控制器提供了电能之后再执行所述提供第一加密密钥的步骤。
CNA200610172481XA 2006-01-05 2006-12-31 微控制器和这些控制器之间的鉴别方法 Pending CN1996837A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006000919A JP4969106B2 (ja) 2006-01-05 2006-01-05 マイクロコントローラ
JP2006000919 2006-01-05

Publications (1)

Publication Number Publication Date
CN1996837A true CN1996837A (zh) 2007-07-11

Family

ID=38232763

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA200610172481XA Pending CN1996837A (zh) 2006-01-05 2006-12-31 微控制器和这些控制器之间的鉴别方法

Country Status (3)

Country Link
US (1) US7856103B2 (zh)
JP (1) JP4969106B2 (zh)
CN (1) CN1996837A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009103214A1 (zh) * 2008-02-20 2009-08-27 华为技术有限公司 网络认证通信方法及网状网络系统
CN102112960A (zh) * 2008-05-29 2011-06-29 惠普开发有限公司 对可更换打印机部件进行认证
CN104077537A (zh) * 2008-05-29 2014-10-01 惠普开发有限公司 提供与可更换打印机部件的认证通信
CN107431623A (zh) * 2015-02-06 2017-12-01 多佛欧洲有限责任公司 可消耗元件或可拆卸元件的先进保护系统
US9875365B2 (en) 2008-05-29 2018-01-23 Hewlett-Packard Development Company, L.P. Providing authenticated communications to a replaceable printer component
CN112448941A (zh) * 2019-09-05 2021-03-05 英飞凌科技股份有限公司 认证系统和用于认证微控制器的方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100997239B1 (ko) * 2008-03-03 2010-11-29 삼성전자주식회사 Crum 유닛, 교체가능유닛 및 이를 이용하는 화상형성장치와, 그 인증 및 암호화 데이터 통신 방법
TWI505686B (zh) * 2009-09-29 2015-10-21 Memjet Technology Ltd 具有有限加密鑰取回的通訊系統、方法及裝置
US8554090B2 (en) * 2009-10-30 2013-10-08 Ui Technologies, Inc. Replacement printer cartridge chip with a microcontroller with an encrypted memory device
JP5451445B2 (ja) * 2010-02-18 2014-03-26 株式会社東海理化電機製作所 認証システム及び認証方法
JP5737101B2 (ja) * 2011-09-15 2015-06-17 ブラザー工業株式会社 印刷装置および印刷装置の制御方法
US9967739B2 (en) * 2011-10-28 2018-05-08 Debiotech S.A. Mobile virtualization platform for the remote control of a medical device
JP6030925B2 (ja) * 2012-11-12 2016-11-24 ルネサスエレクトロニクス株式会社 半導体装置及び情報処理システム
JP6182371B2 (ja) 2013-06-28 2017-08-16 ルネサスエレクトロニクス株式会社 半導体集積回路を含むシステム
FR3076925B1 (fr) * 2018-01-16 2020-01-24 Proton World International N.V. Fonction cryptographique
WO2021148123A1 (de) * 2020-01-23 2021-07-29 Frank Schuhmacher Verfahren und vorrichtungen zum betreiben eines elektrischen oder elektronischen geräts

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0244389A (ja) * 1988-08-04 1990-02-14 Matsushita Electric Ind Co Ltd Icカード機器
JP3389186B2 (ja) * 1999-04-27 2003-03-24 松下電器産業株式会社 半導体メモリカード及び読み出し装置
JP2003318894A (ja) 2002-02-21 2003-11-07 Matsushita Electric Ind Co Ltd チャレンジ−レスポンス方式による機器間の認証処理方法
JP2004040717A (ja) * 2002-07-08 2004-02-05 Matsushita Electric Ind Co Ltd 機器認証システム
US7421742B2 (en) 2003-01-15 2008-09-02 Sony Corporation Signal processing system, recording method, program, recording medium, reproduction device and information processing device
JP4465998B2 (ja) * 2003-07-22 2010-05-26 トヨタ自動車株式会社 携帯端末及び車両遠隔制御システム
JP2005094128A (ja) * 2003-09-12 2005-04-07 Matsushita Electric Ind Co Ltd 認証システム
KR100982513B1 (ko) * 2003-11-12 2010-09-16 삼성전자주식회사 사용자 키를 이용한 저장 매체 디스크 사용 제한 방법 및장치
JP2005151368A (ja) * 2003-11-19 2005-06-09 Matsushita Electric Ind Co Ltd 認証システム
JP2005242621A (ja) * 2004-02-26 2005-09-08 Toshiba Lsi System Support Kk 半導体装置及びその割込み処理方法
JP2005260489A (ja) * 2004-03-10 2005-09-22 Murata Mach Ltd 電子機器装置
JP4608929B2 (ja) * 2004-04-09 2011-01-12 富士ゼロックス株式会社 認証システム、サーバ用認証プログラム、およびクライアント用認証プログラム
CN100501715C (zh) * 2004-05-13 2009-06-17 松下电器产业株式会社 信息处理设备、集成电路和数据传送控制方法
JP3765544B1 (ja) * 2004-11-26 2006-04-12 株式会社ソニー・コンピュータエンタテインメント バッテリ、及び認証要求装置

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009103214A1 (zh) * 2008-02-20 2009-08-27 华为技术有限公司 网络认证通信方法及网状网络系统
US9619663B2 (en) 2008-05-29 2017-04-11 Hewlett-Packard Development Company, L.P. Authenticating a replaceable printer component
CN104077537A (zh) * 2008-05-29 2014-10-01 惠普开发有限公司 提供与可更换打印机部件的认证通信
TWI459229B (zh) * 2008-05-29 2014-11-01 Hewlett Packard Development Co 可更換印表機構件之驗證技術
US9141816B2 (en) 2008-05-29 2015-09-22 Hewlett-Packard Development Company, L.P. Authenticating a replaceable printer component
US9495549B2 (en) 2008-05-29 2016-11-15 Hewlett-Packard Development Company, L.P. Authenticating a replaceable printer component
CN102112960A (zh) * 2008-05-29 2011-06-29 惠普开发有限公司 对可更换打印机部件进行认证
US9875365B2 (en) 2008-05-29 2018-01-23 Hewlett-Packard Development Company, L.P. Providing authenticated communications to a replaceable printer component
CN104077537B (zh) * 2008-05-29 2018-04-27 惠普开发有限公司 提供与可更换打印机部件的认证通信
CN107431623A (zh) * 2015-02-06 2017-12-01 多佛欧洲有限责任公司 可消耗元件或可拆卸元件的先进保护系统
CN107431623B (zh) * 2015-02-06 2021-05-11 多佛欧洲有限责任公司 可消耗元件或可拆卸元件的先进保护系统
CN112448941A (zh) * 2019-09-05 2021-03-05 英飞凌科技股份有限公司 认证系统和用于认证微控制器的方法
CN112448941B (zh) * 2019-09-05 2022-12-13 英飞凌科技股份有限公司 认证系统和用于认证微控制器的方法

Also Published As

Publication number Publication date
US20070160204A1 (en) 2007-07-12
US7856103B2 (en) 2010-12-21
JP2007184735A (ja) 2007-07-19
JP4969106B2 (ja) 2012-07-04

Similar Documents

Publication Publication Date Title
CN1996837A (zh) 微控制器和这些控制器之间的鉴别方法
CN107113171B (zh) 安全通信系统、方法及装置
US20190386990A1 (en) Global unique device identification code distribution method
US20060224889A1 (en) Methods for authenticating an identity of an article in electrical communication with a verifier system
CN113408017B (zh) 一种otp存储器内数据保护方法、装置、设备及存储介质
CN107315966B (zh) 固态硬盘数据加密方法及系统
CN107092833B (zh) 用于处理数据的组件和用于实施安全功能的方法
CN112100697B (zh) 带密码终止开关的存储器装置
CN108595128B (zh) 耗材芯片、耗材、耗材通信方法
US11516194B2 (en) Apparatus and method for in-vehicle network communication
CN111654503A (zh) 一种远程管控方法、装置、设备及存储介质
CN102982265B (zh) 存取基本输入输出系统设定的认证方法
JP2023542099A (ja) 無線端末、及び無線端末のUbootモードにおけるインタフェースアクセス認証方法
CN101753532B (zh) 一种存储设备、验证装置及存储装置的控制方法
EP3979113A1 (en) Secure startup method, controller, and control system
US11917059B2 (en) Batch transfer of control of memory devices over computer networks
CN116243952A (zh) 一种离线刷写方法、装置、设备及介质
KR20220158523A (ko) 차량 시스템, 서버 및 차량 통신 보안 방법
KR102289456B1 (ko) Plc용 펌웨어 무결성을 검증하기 위한 원격 보증증명 장치 및 방법
CN101447012B (zh) 一种电子设备和电子设备中固件的验证方法
EP3776318B1 (en) Tamper-resistant data encoding for mobile devices
US20150113243A1 (en) Method for backing up data outside a secure microcircuit
KR102648397B1 (ko) 플래쉬 메모리의 하드웨어 고유특성을 이용한 보안정보 생성장치 및 방법
JP7170588B2 (ja) データ処理方法及びデータ処理システム
CN117610089B (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
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20070711