电子仪器、密钥生成程序、记录介质以及密钥生成方法

文档序号:7738899阅读:280来源:国知局
专利名称:电子仪器、密钥生成程序、记录介质以及密钥生成方法
技术领域
本发明涉及具有对电子仪器中内置的程序、参数的模仿以及非法的改写进行探测的功能的装置。
背景技术
嵌入了软件、参数的电子仪器一般被称为嵌入式仪器、或者嵌入式系统。嵌入式仪器在家电、汽车、铁路、工厂生产设备等的核心部分中,管理这些家电、汽车等的控制。根据近年来的移动化、信息化这样的动向,嵌入式仪器快速向网络化、高功能化、大规模化发展。 并且,支持社会的基本系统(basic system),另外嵌入式仪器的应用范围逐渐扩大。伴随这些状况的变化,针对嵌入式仪器的安全的意识快速提高。如果嵌入式仪器连接到网络,则受到经由网络的威胁。而且,作为嵌入式仪器的特性,嵌入式仪器还受到嵌入式仪器的持有者可能进行搭载软件、参数的非法提取、非法改写等这样的威胁。如果电子仪器(嵌入式仪器)的程序、参数被非法窜改,则会出现并非制造者意愿的举动。其结果,导致硬件超出容许界限。这样,窜改对电子仪器的可靠性、安全性造成大的影响。另外,嵌入式仪器的大部分功能通过内置的软件、参数来实现的情况较多。 这些程序等的内容还有通过逆向工程(reverse engineering)等而被泄漏这样的危险。为了防止针对电子仪器中嵌入的软件、参数进行的非法的改写(窜改)、模仿或者内容的泄漏(程序、参数的提取),以往采用了如下方法。(1)将带密钥的散列值(hash value)等用作校验码(防止窜改)。(2)对软件、参数进行加密并保存到电子仪器中,在执行时进行解密(防止窜改、 提取)。不论是哪种方法,都需要将带密钥的散列值、进行加密处理/解密处理时的密钥保存到仪器内或者保存到仪器外部,所以存在如下问题如果仪器被解析或者密钥信息泄漏,则上述(1)> (2)的对策变得无效。参照图8 图11,说明以往的校验码方式。图8、图9是以往的电子仪器10的框图。图10、图11是动作的流程图。图8、图9是说明利用带密钥的散列值得到的校验码13、 以及使用了加密处理的电子仪器内的程序、参数的窜改检测、模仿防止的图。使用了利用带密钥的散列值得到的校验码13的窜改检测是通过下面的过程(图10)进行的。首先,在非易失性存储器11中保存有电子仪器10的控制程序12。根据该控制程序12和校验码生成用密钥来计算带密钥的散列值HO (SOl),将它作为校验码13写入到非易失性存储器11中(S02)。校验码生成用密钥保存在电子仪器10内,或者,也可以经由I/O 14而从外部输入。到此为止的过程在工厂出货前等在安全的环境下事先安全地实施。接下来,CPU 16执行以下的处理。CPU 16确认电子仪器10内的控制程序12是否被窜改。如图9所示,在电源接通后或者任意的定时(timing),CPU 16根据控制程序12和校验码生成用密钥,计算带密钥的散列值Hl (Sll)。此时的校验码生成用密钥也保存在电子仪器10内,或者,也可以经由I/O 14而从外部输入。CPU 16将计算出的带密钥的散列值Hl与非易失性存储器11中保存的校验码13进行比较(S12)。比较的结果,如果一致,则在控制程序12中没有窜改,CPU 16执行控制程序12,由此,电子仪器10正常地动作(S13)。如果不一致,则是对控制程序12施加了窜改,CPU 16进行使电子仪器10的动作停止或者输出警报等适当的处理(S14)。接下来,参照图11,说明使用了利用带密钥的散列值得到的校验码13的窜改检测、以及使用了加密及解密处理的控制程序12的模仿防止。窜改检测方法如上所述。模仿防止是通过下面的过程进行的。非易失性存储器11中保存的控制程序12通过使用了加密密钥Kl的加密处理而被保存到非易失性存储器11中。此时,加密了的控制程序12 (加密程序12a)重写到控制程序12上。由此,导致控制程序12其本身不存在于电子仪器10内(S21)。进行加密处理时的加密密钥与校验码生成用密钥同样地,保存在电子仪器10内,或者,也可以经由I/O 14 而从外部输入。到此为止的过程在工厂出货前等在安全的环境下事先安全地实施。在使电子仪器10动作时,CPU 16利用解密密钥将加密控制程序1 解密为原来的控制程序12 (S2》并执行,由此进行电子仪器10的控制。此时的解密密钥保存在电子仪器10内,或者,也可以经由I/O 14而从外部输入。通过进行这样的过程,控制程序12通常以加密了的状态而被保存到电子仪器10中,所以只要没有取得加密密钥、解密密钥,就难以模仿。接下来,作为另一个以往例,参照图12、图13,说明日本特愿2001-96040号公报 (专利文献1)记载的“游戏机以及验证装置”。在专利文献1中,将利用保存用加密密钥进行了加密的保存用加密数据22(加密了的控制程序2 和保存用解密密钥23 (对加密了的控制程序22进行解密的密钥)存储到游戏机20内的保存用存储装置21中(S41)。在使游戏机20动作时(S42 “是”),利用保存用解密密钥23对保存用加密数据22进行解密,由此执行控制程序25 (S43)。加密/解密处理由非对称密码系统构成,加密密钥和解密密钥是分开的结构。通过这样的结构,由于在游戏机20内没有保存对控制程序25进行加密时的密钥,所以难以进行控制程序25的伪造或者窜改。另外,在专利文献1中,将游戏机20的保存用存储装置21中保存的保存用加密数据22以加密的状态传送到验证用装置30。然后,将保存用加密数据22与验证用装置30内预先存储的对照用数据32进行对照,验证真伪。此时,控制程序以加密的状态被处理,所以还可以防止程序内容的泄漏。专利文献1 日本特愿2001-96040号公报

发明内容
如上所述,在图8 图11的情况下,校验码生成用密钥、加密密钥、解密密钥平时存在于电子仪器10内或其外部。因此,存在如下问题通过拆解电子仪器10而窃取密钥信息,或者,由于在装置外部保管的密钥信息外流等而被第三人取得密钥信息并进行窜改、模仿。另外,关于专利文献1的“在游戏机20内不保存加密密钥,由此防止控制程序的伪造/窜改”这样的点,可以通过“将加密了的控制程序与解密密钥一起改写”来窜改。另外,关于使用了验证用装置30的窜改检测,也存在如下问题如果将验证用装置30内的验证数据改写为与游戏机20内的加密了的控制数据匹配的数据,则无法探测窜改。本发明的目的在于提供一种有效地防止程序、参数的非法的改写、非法的提取的内置了程序、参数的电子仪器。本发明的电子仪器执行表示使用了密钥的处理的密钥使用处理,该电子仪器的特征在于,具备物理量生成部,生成所述电子仪器固有的物理量,其中,该物理量的值针对所述电子仪器的每个个体不同,并且该物理量的值在每次生成时不同;密钥生成部,根据由所述物理量生成部生成的所述物理量,每当执行所述密钥使用处理时,在即将开始进行所述密钥使用处理之前,生成相同的所述密钥;密钥使用处理执行部,使用由所述密钥生成部生成的所述密钥来执行所述密钥使用处理;以及密钥删除部,每当所述密钥使用处理结束时,删除由所述密钥生成部生成的所述密钥。所述密钥使用处理执行部的特征在于,具备带密钥的散列值生成部,执行带密钥的散列值生成处理而作为所述密钥使用处理,其中,在该带密钥的散列值生成处理中,使用由所述密钥生成部生成的所述密钥,生成在规定的处理中使用且预先指定的信息的带密钥的散列值;校验码存储部,将由所述带密钥的散列值生成部过去生成的带密钥的散列值作为校验码进行存储;以及比较部,将所述校验码存储部中存储的所述校验码、与通过所述带密钥的散列值生成部的当前的所述带密钥的散列值生成处理而生成的带密钥的散列值进行比较,判定是
否一致,其中,所述电子仪器还具备一致信息执行部,该一致信息执行部仅在由所述比较部判定为一致的情况下,执行使用了所述预先指定的信息的所述规定的处理。所述密钥使用处理执行部的特征在于,具备加密处理部,作为所述密钥使用处理,使用由所述密钥生成部生成的所述密钥来执行加密处理;以及解密处理部,作为所述密钥使用处理,使用由所述密钥生成部生成的所述密钥对由所述加密处理部加密了的数据进行解密。所述密钥生成部的特征在于,通过使用物理上不可复制函数(PUFfhysical Unclonable Function)来生成所述密钥。本发明的密钥生成程序的特征在于,使计算机作为如下各部而发挥功能物理量生成部,生成所述电子仪器固有的物理量,其中,该物理量的值针对所述计算机的每个个体不同,并且该物理量的值在每次生成时不同;密钥生成部,根据由所述物理量生成部生成的所述物理量,每当执行表示使用了密钥的处理的密钥使用处理时,在即将开始进行所述密钥使用处理之前,生成相同的所述密钥;密钥使用处理执行部,使用由所述密钥生成部生成的所述密钥来执行所述密钥使
6用处理;以及密钥删除部,每当所述密钥使用处理结束时,删除由所述密钥生成部生成的所述密钥。本发明的密钥生成方法,是执行表示使用了密钥的处理的密钥使用处理的电子仪器进行的密钥生成方法,其特征在于,物理量生成部生成所述电子仪器固有的物理量,其中,该物理量的值针对所述电子仪器的每个个体不同,并且该物理量的值在每次生成时不同,密钥生成部根据由所述物理量生成部生成的所述物理量,每当执行所述密钥使用处理时,在即将开始进行所述密钥使用处理之前,生成相同的所述密钥,密钥使用处理执行部使用由所述密钥生成部生成的所述密钥来执行所述密钥使用处理,密钥删除部每当所述密钥使用处理结束时,删除由所述密钥生成部生成的所述密钥。通过本发明,可以提供有效地防止所保存的程序、参数的非法改写、非法提取的电子仪器。


图1是实施方式1的电子仪器的框图。图2是示出由实施方式1的密钥生成部140进行的密钥生成的图。图3是示出由实施方式1的环形振荡器190a产生的信号的图。图4是说明生成实施方式1的带密钥的散列值的情况的图。图5是示出实施方式1的明文程序和加密程序的保存状态的图。图6是说明实施方式1的程序的加密/解密处理的情况的图。图7是示出实施方式2的电子仪器的硬件结构的图。图8是示出以往技术的图。图9是示出以往技术的图。图10是示出以往技术的图。图11是示出以往技术的图。图12是示出以往技术的图。图13是示出以往技术的图。附图标记说明100 电子仪器;110 比较部;120 校验码存储部;130 带密钥的散列值生成部; 140 密钥生成部;150 软件/参数保存部;160 加密处理部;170 解密处理部;180 控制程序执行部;190 物理量生成部;190a 环形振荡器;1010 密钥使用处理执行部。
具体实施例方式实施方式1.参照图1 图6,说明实施方式1。图1是实施方式1的电子仪器100的框图。电子仪器100自己生成使用密钥的某些处理(称为密钥使用处理)中使用的密钥。并且,电子仪器100在即将执行密钥使用处理之前生成密钥,如果该密钥使用处理的执行结束,则删除密钥。该电子仪器100的特征特别是接下来的(a)、(b)。(a.根据特定的物理量生成密钥)由电子仪器100生成的密钥是,“根据如下物理量而生成即使同样地制造,值针对每个个体(电子仪器)也不同的物理量;并且,不仅值针对每个个体不同,而且即使是同一个体,每当生成时值也不同的物理量。并且,该密钥在个体彼此间是不同的值,且在同一个体中每当生成时作为固有的值(每当生成时相同的值)而生成”。即,第1特征点在于, 根据该个体特有的物理量,生成与其他个体的所生成的密钥不同的、该个体特有的密钥。并且,所生成的密钥在同一个体中每当生成时每次都相同。(b.密钥的生成和删除)第2特征点在于,“在电子仪器内、或者其他装置中不保管密钥。每当在电子仪器 100中执行密钥使用处理时在即将执行该密钥使用处理之前生成密钥,每当该密钥使用处理结束时删除密钥”。即,密钥仅在密钥使用处理的期间存在于电子仪器内,在其以外不存在。关于上述特征点(a),例如可以通过文献《P. Paillier and I. Verbauwhede (Eds.) =CHES 2007,LNCS4727,pp. 63-80,2007. "FPGA Intrinsic PUFs and Their Use for IP Protection”》中示出的 PUF(Physical Unclonable Function)的 PUF(Physical Unclonable Function,物理性复制困难的功能)来实现。根据这样的特征(a)、(b),在电子仪器外不存在密钥,另外,在电子仪器内也仅在微少的时间内存在密钥。因此,以由电子仪器的拆解所致的密钥信息的泄漏、在电子仪器外部保管的密钥信息的泄漏为原因的数据的窜改变得极其困难。在图1中,电子仪器100具备密钥生成部140、控制程序执行部180、物理量生成部 190、密钥使用处理执行部1010。密钥使用处理执行部1010具备比较部110、校验码存储部 120、带密钥的散列值生成部130、软件/参数保存部150、加密处理部160、解密处理部170。(1)物理量生成部190生成值针对电子仪器100的每个个体都不同、并且每当生成时值都不同的电子仪器固有的物理量。作为相应的物理量,例如是后述的环形振荡器所产生的信号、特定的电路的动作频率或振荡频率、或者电源接通时的SRAM (Static Random Access Memory,静态随机存取存储器)的状态(0、1的保存状态)等。在该情况下,物理量生成部190是环形振荡器、特定的电路、或者SRAM。(2)密钥生成部140根据由物理量生成部190所生成的物理量,每当执行密钥使用处理时,在即将开始密钥使用处理之前,生成相同密钥。即,密钥生成部140通过使用由物理量生成部190所生成的物理量,每当执行密钥使用处理时,在即将开始密钥使用处理之前,生成相同的密钥。(3)密钥使用处理执行部1010使用由密钥生成部140生成的密钥,执行密钥使用处理。(4)每当密钥使用处理结束时,控制程序执行部180执行由密钥生成部140生成的密钥的删除、其他处理。图2是示出由密钥生成部140进行的密钥生成的一个例子的图。在图2中,环形振荡器190a是物理量生成部190的一个例子。另外,图3是示出由环形振荡器190a产生
8的信号(物理量)与根据信号而生成的密钥之间的关系的图。电子仪器1的环形振荡器 (190a-l)生成信号191,电子仪器2的环形振荡器(190a-2)生成信号192。(1)由环形振荡器生成的信号针对电子仪器的每个个体都不同。(2)另外,关于该信号,即使是同一个体,每当生成时值也不同。例如,如信号191 那样,在电子仪器1(同一个体)中信号的值也随时间而变化。(3)但是,由环形振荡器(190a_l)、环形振荡器(190a_2)生成的信号191、192都是收敛于一定的范围Rl、R2的值。对于电子仪器1,密钥生成部140根据由环形振荡器(190a_l)生成的信号191, 每当执行密钥使用处理时,在即将开始密钥使用处理之前,生成相同的密钥K1。即,根据信号191,如果将每次生成的密钥中的最初生成的密钥设为Kl (0),并将之后生成的密钥设为 Kl (i) (i = 1,2,...),则每次生成的密钥都相同。即,Kl(O) = Kl(i) (i = 1,2,· · ·)。如果将针对电子仪器2生成的密钥设为K2,则对于电子仪器2也同样地,K2 (0)= K2(i) (i = 1,2,· · ·)。但是,如果个体不同,则即使是相同的产品,密钥也不同。即,对于电子仪器1和电子仪器2,Kl(O)兴K2(0)。如图2所示,密钥生成部140根据作为物理量生成部190的环形振荡器(190a-l) 的信号,生成密钥。密钥生成部140如图2所示,例如基于信号191,根据POW (Physical One way function,物理单向函数)和HDA (Helper Data Algorithm,辅助数据算法)生成密钥。 该 POW 和 HDA 构成 PUF。HDA 的一个例子是 ECC (Error Correcting Code,纠错码)。接下来,参照图4,说明使用了电子仪器100中的密钥生成功能的窜改检测。(带密钥的散列值的生成)图4所示的例子是如下情况事先计算带密钥的散列值,将它保存为校验码,并与再次计算出的带密钥的散列值进行比较来进行窜改检测。图4与图8 图11中叙述的情况大致相同,但差别在于,在图4中,电子仪器100根据上述特征(a)、(b),执行窜改检测。 成为窜改检测的对象的信息是软件/参数保存部150中存储的程序151、参数等的信息。以下,将程序151作为窜改检测的对象进行说明。(S101)在SlOl中,在电子仪器100中,在工厂生成软件/参数保存部150中保存的程序 151的带密钥的散列值H(O),并保存到校验码存储部120中。具体而言,首先,在软件/参数保存部150中保存程序151。密钥生成部140在即将进行带密钥的散列值的生成处理(密钥使用处理的一个例子)之前,根据由物理量生成部190生成的物理量,生成密钥K(O)。带密钥的散列值生成部130使用密钥K(O),生成程序151的带密钥的散列值H(O),在校验码存储部120中保存带密钥的散列值H(O)作为校验码。如果带密钥的散列值H(O)的生成处理结束,则控制程序执行部180(密钥删除部的一个例子)删除密钥K(O)。(S102)在S102中,用户购置了电子仪器100。(S103)在S103中,执行带密钥的散列值的生成处理。带密钥的散列值的生成处理是要求执行程序151的情况。在该情况下,在即将开始进行带密钥的散列值的生成处理之前,密钥生成部140生成密钥K(I)。密钥K(I)与在SlOl中生成的密钥K(O)相同(K(O) =K(D)0 带密钥的散列值生成部130与SlOl的情况同样地,使用密钥K(I)来生成程序151的带密钥的散列值H(I)。比较部110将带密钥的散列值H(I)、与校验码存储部120中保存的带密钥的散列值H(O)进行比较,判定是否一致。如果由比较部110判定为两方的散列值一致,则控制程序执行部180( —致信息执行部的一个例子)执行程序151的处理。如果由比较部 110判定为两方的散列值不一致,则控制程序执行部180发出警告(警告显示,警告音等), 并且不执行程序151。另外,如果带密钥的散列值H(I)的生成处理结束,则控制程序执行部 180(密钥删除部)删除密钥K(I)。以后,如图4的S104、S105所示,每当要求执行程序151时,执行与S103同样的处理。即,密钥生成部140每次生成密钥,带密钥的散列值生成部130利用所生成的密钥,根据程序151生成带密钥的散列值。然后,比较部110将校验码存储部120中存储的带密钥的散列值H(O)、与所生成的带密钥的散列值H(i) (i = 2,3,...)进行比较。如果比较结果一致,则控制程序执行部180执行程序151,如果不一致,则控制程序执行部180不执行程序 151。然后,如果本次的带密钥的散列值的生成处理结束,则控制程序执行部180删除本次生成的密钥。(加密/解密处理)接下来,参照图5、图6,说明使用了加密处理以及解密处理的程序、参数的内容的泄漏防止、模仿防止。对于加密、解密的对象,以程序151为例子进行说明。关于对控制程序、参数进行加密并保存、并在动作时进行解密来执行的这一点,与在背景技术中叙述的情况相同。不同点在于,与带密钥的散列值计算的情况同样地,在电子仪器100内以及外部装置中不保持密钥的生成方法和密钥。图5是示出明文程序和加密程序的保存状态的图。软件/参数保存部150例如使用闪存存储器。另外,解密处理部170例如使用RAM。如图5所示,平常在非易失性的闪存存储器中存在加密程序。于是,在要求执行程序的情况下,从闪存存储器读出加密程序,解密并执行。如果处理结束,则所解密的程序被删除。以下,参照图6来说明。(S201)图6是说明程序的加密/解密处理的情况的图。首先,在S201中,在电子仪器100 中,在工厂将明文的程序151保存到软件/参数保存部150中。如果保存了明文的程序151, 则由加密处理部160执行程序151的加密处理(密钥使用处理)。密钥生成部140在即将进行程序151的加密处理之前,根据由物理量生成部190所生成的物理量,生成密钥K(O)。 加密处理部160使用密钥K(O)对程序151进行加密,将加密后的程序151保存到软件/参数保存部150中。加密了的程序151在电子仪器100成为接下来的使用状态(例如,电源接通(ON)的情况)时,通过解密处理部170解密。(202)在步骤S202中,设用户购置了电子仪器100。(S203)在S203中,如果用户接通电子仪器100的电源,则解密处理部170读出软件/参数保存部150中保存的加密了的程序151,执行解密处理(密钥使用处理)。密钥生成部140在即将进行程序151的解密处理之前,根据由物理量生成部190生成的物理量,生成密钥K(l)。解密处理部170使用密钥K(I)对程序151进行解密,将解密了的程序151发送到控制程序执行部180。如果解密处理部170的解密处理结束,则控制程序执行部180删除所生成的密钥K(I)。另外,控制程序执行部180执行从解密处理部170接收到的程序151,当处理结束时删除。以下,在步骤S204、S205等中也同样地,每当电源接通时生成密钥Ι^2)、Κ(3)等 (S204、S205),如果本次的解密处理结束,则删除密钥1^2)、K (3)等。实施方式1的电子仪器100由于在密钥生成部140种安装了 PUF,所以可以根据针对每个个体(电子仪器)不同的物理量来生成该个体固有的密钥,而且每次可以生成相同的密钥。因此,通过如下(1)、O)、(3)等,具有可以与以往同样地进行使用了密钥的处理、 并且密钥流出的危险显著降低这样的效果,其中,所述(1)、O)、(3)为(1)无需在电子仪器内、外部装置中保持密钥;(2)即使存在多个相同的电子仪器(同一产品的序列号不同),针对每个个体(针对每个序列号)生成的密钥也不同;(3)在该个体中每次生成相同的密钥。在以上的实施方式1中,说明了如下电子仪器。即,一种电子仪器,通过内置的软件、参数对动作进行控制/设定,该电子仪器具备预先根据软件、参数来计算带密钥的散列值而生成校验码的功能;存储上述校验码的功能;以及在起动时或者任意的定时根据软件、参数再次计算带密钥的散列值,并与所存储的校验码进行比较由此探测窜改的功能。在该电子仪器中,计算上述带密钥的散列值时的密钥是根据如下物理量,作为针对同样的每个仪器是不同的值、并且在同一个体中是固有的值而生成的,其中,所述物理量为即使同样地制造,值针对每个个体也不同的物理量;并且,不仅是针对每个个体,而且即使是同一个体,每当生成时值也不同的物理量。另外,该密钥不保存在电子仪器内,在电子仪器的起动时或者任意的定时,每次通过电子仪器来生成。在以上的实施方式1中,说明了如下电子仪器。即,一种电子仪器,具备对内置的软件、参数进行加密处理的功能;保存加密了的软件、参数的功能;以及在进行处理时对上述加密了的软件、参数进行解密处理的功能。在加密、解密中与计算上述带密钥的散列值时的密钥相同地,该密钥是根据如下物理量,作为针对同样的每个仪器是不同的值、并且在同一个体中是固有的值而生成的,其中,所述物理量为即使同样地制造,值针对每个个体也不同的物理量;并且,不仅是针对每个个体,而且即使是同一个体,每当生成时值也不同的物理量。另外,该密钥不保存在电子仪器内,在电子仪器的起动时或者任意的定时,每次通过电子仪器来生成。在以上的实施方式1中,说明了如下电子仪器。即,说明了使用PUFO^hysical Unclonable Function,物理性复制困难的功能)来生成上述带密钥的散列值的计算中使用的密钥、进行加密处理或者解密处理时的密钥的电子仪器。实施方式2.接下来,参照图7,说明实施方式2。实施方式2是将电子仪器100的一连串的动作理解为方法、程序、记录了程序的计算机可读取的记录介质的情况下的实施方式。在以上的实施方式1中,说明了电子仪器100。作为实施方式1的电子仪器100的构成要素的各构成要素(“ 部”)的一连串的动作相互关联,也可以将该一连串的动作理解为电子仪器100进行的方法。另外,通过将这些一连串的动作理解为使计算机执行的处理,可以作为使计算机执行的程序来理解。另外,还可以理解为记录了程序的计算机可读取的记录介质。图7是示出作为计算机的电子仪器100的硬件资源的一个例子的图。在图7中, 电子仪器100具备执行程序的CPU 810 (Central Processing Unit,中央处理单元)。CPU 810 经由总线 825 而与 ROM 811 (Read Only Memory,只读存储器)、RAM 812 (Random Access Memory,随机存取存储器)、显示装置813、操作键814、通信板816、闪存存储器820等连接, 并控制这些硬件设备。代替闪存存储器,也可以是磁盘装置、光盘装置、存储卡读写装置等存储装置。RAM 812是易失性存储器的一个例子,ROM 811、闪存存储器820等存储介质是非易失性存储器的一个例子。它们是存储装置或者存储部、保存部的一个例子。通信板816在与其他装置之间进行通信。在闪存存储器820中,存储有操作系统821 (0S)、程序群823、文件群824。程序群 823的程序由CPU 810、操作系统821执行。在上述程序群823中,存储了执行在实施方式1的说明中叙述为“ 部”的功能的程序。程序由CPU 810读出并执行。在文件群824中,上述实施方式中叙述的物理上不可复制函数(PUF)、说明为“ 的判定结果”、“ 的生成结果”、“ 的抽出结果”、“ 的处理结果”的信息、数据、信号值、变量值、参数等,作为“ 文件”、“ 数据库”的各项目而被存储。“ 文件”、“ 数据库”存储在盘、存储器等记录介质中。盘、存储器等存储介质中存储的信息、数据、信号值、变量值、参数经由读写电路由CPU 810读出到主存储器、高速缓冲存储器中,并用于抽出、检索、参照、比较、运算、计算、处理、输出、显示等CPU的动作。在抽出、检索、参照、比较、运算、计算、处理、 输出、显示的CPU的动作的期间,信息、数据、信号值、变量值、参数临时存储在主存储器、高速缓冲存储器、缓冲存储器中。另外,在以上的实施方式1的说明中说明为“ 部”的部分既可以是“ 电路”、“ 装置”、“ 仪器”、“ 单元”,另外,也可以是“ 步骤”、“ 过程”、“ 处理”。即,说明为“ 部”的部分也可以通过ROM 811中存储的固件来实现。或者,也可以仅通过软件、或者仅通过元件、设备、基板、布线等硬件、或者通过软件与硬件的组合、或者通过进一步与固件的组合来实施。程序由CPU 810读出,并由CPU 810执行。即,程序使计算机作为以上的说明中叙述的“ 部”发挥功能。
权利要求
1.一种电子仪器,执行表示使用了密钥的处理的密钥使用处理,其特征在于,具备 物理量生成部,生成所述电子仪器固有的物理量,其中,该物理量的值针对所述电子仪器的每个个体不同,并且该物理量的值在每次生成时不同;密钥生成部,根据由所述物理量生成部生成的所述物理量,每当执行所述密钥使用处理时,在即将开始进行所述密钥使用处理之前,生成相同的所述密钥;密钥使用处理执行部,使用由所述密钥生成部生成的所述密钥来执行所述密钥使用处理;以及密钥删除部,每当所述密钥使用处理结束时,删除由所述密钥生成部生成的所述密钥。
2.根据权利要求1所述的电子仪器,其特征在于, 所述密钥使用处理执行部具备带密钥的散列值生成部,执行带密钥的散列值生成处理而作为所述密钥使用处理,其中,在该带密钥的散列值生成处理中,使用由所述密钥生成部生成的所述密钥,生成在规定的处理中使用且预先指定的信息的带密钥的散列值;校验码存储部,将由所述带密钥的散列值生成部过去生成的带密钥的散列值作为校验码进行存储;以及比较部,将所述校验码存储部中存储的所述校验码、与通过所述带密钥的散列值生成部的当前的所述带密钥的散列值生成处理而生成的带密钥的散列值进行比较,判定是否一致,其中,所述电子仪器还具备一致信息执行部,该一致信息执行部仅在由所述比较部判定为一致的情况下,执行使用了所述预先指定的信息的所述规定的处理。
3.根据权利要求1所述的电子仪器,其特征在于, 所述密钥使用处理执行部具备加密处理部,作为所述密钥使用处理,使用由所述密钥生成部生成的所述密钥来执行加密处理;以及解密处理部,作为所述密钥使用处理,使用由所述密钥生成部生成的所述密钥对由所述加密处理部加密了的数据进行解密。
4.根据权利要求1所述的电子仪器,其特征在于,所述密钥生成部通过使用物理上不可复制函数(PUF Physical Unclonable Function)来生成所述密钥。
5.一种密钥生成程序,使计算机作为如下各部而发挥功能物理量生成部,生成所述电子仪器固有的物理量,其中,该物理量的值针对所述计算机的每个个体不同,并且该物理量的值在每次生成时不同;密钥生成部,根据由所述物理量生成部生成的所述物理量,每当执行表示使用了密钥的处理的密钥使用处理时,在即将开始进行所述密钥使用处理之前,生成相同的所述密钥;密钥使用处理执行部,使用由所述密钥生成部生成的所述密钥来执行所述密钥使用处理;以及密钥删除部,每当所述密钥使用处理结束时,删除由所述密钥生成部生成的所述密钥。
6.一种计算机可读取的记录介质,记录了权利要求5所述的密钥生成程序。
7. —种密钥生成方法,是执行表示使用了密钥的处理的密钥使用处理的电子仪器进行的密钥生成方法,其特征在于,物理量生成部生成所述电子仪器固有的物理量,其中,该物理量的值针对所述电子仪器的每个个体不同,并且该物理量的值在每次生成时不同,密钥生成部根据由所述物理量生成部生成的所述物理量,每当执行所述密钥使用处理时,在即将开始进行所述密钥使用处理之前,生成相同的所述密钥,密钥使用处理执行部使用由所述密钥生成部生成的所述密钥来执行所述密钥使用处理,密钥删除部每当所述密钥使用处理结束时,删除由所述密钥生成部生成的所述密钥。
全文摘要
电子仪器(100)执行使用了密钥的密钥使用处理。物理量生成部(190)生成值针对电子仪器的每个个体不同且值在每次生成时不同的电子仪器固有的物理量。密钥生成部(140)根据由物理量生成部(190)生成的物理量,每当执行密钥使用处理时,在即将开始密钥使用处理之前每次生成相同的密钥。密钥使用处理执行部(1010)使用由密钥生成部(140)生成的密钥,执行带密钥的散列值的生成等密钥使用处理。控制程序执行部(180)每当密钥使用处理结束时,删除由密钥生成部(140)生成的密钥。
文档编号H04L9/14GK102439897SQ20098015941
公开日2012年5月2日 申请日期2009年5月22日 优先权日2009年5月22日
发明者粕谷智巳 申请人:三菱电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1