CN1323350C - 确保lsi中程序安全的方法、程序开发支持装置及其方法 - Google Patents

确保lsi中程序安全的方法、程序开发支持装置及其方法 Download PDF

Info

Publication number
CN1323350C
CN1323350C CNB031330525A CN03133052A CN1323350C CN 1323350 C CN1323350 C CN 1323350C CN B031330525 A CNB031330525 A CN B031330525A CN 03133052 A CN03133052 A CN 03133052A CN 1323350 C CN1323350 C CN 1323350C
Authority
CN
China
Prior art keywords
key
program
lsi
encryption
secret
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 - Fee Related
Application number
CNB031330525A
Other languages
English (en)
Other versions
CN1477495A (zh
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.)
Nuvoton Technology Corp Japan
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN1477495A publication Critical patent/CN1477495A/zh
Application granted granted Critical
Publication of CN1323350C publication Critical patent/CN1323350C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related 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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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/2105Dual mode as a secondary aspect

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种程序开发方法、程序开发支援装置及程序安装方法。对密钥安装系统提供一安全水平很高的开发环境。用一个其结构和拥有包括机密存储器的LSI系统中的LSI一样的LSI,将它设定在与商品操作模式不同的开发模式上,来进行该拥有包括机密存储器的LSI系统的程序的开发;还将它设定为管理模式而进行密钥生成程序的开发和加密;也将它设定为密钥生成模式,执行已加密的密钥生成程序而生成各种密钥。

Description

确保LSI中程序安全的方法、程序开发支持装置及其方法
技术领域
本发明涉及安装了密钥的系统、用于该系统的LSI的程序开发以及程序的安装这一技术。
对密钥的机密性和隐匿性很高的密钥安装系统而言,最大课题是,在如何维持它的程序开发和程序安装的安全性。
发明内容
本发明的目的,在于:对上述密钥安装系统提供安全水平很高的程序开发方法、程序开发环境及程序写入方法。
具体而言,本发明提供一种确保LSI中程序安全的方法,包括如下步骤:在所述LSI中设置CPU和机密存储器,和在预先决定的多个模式中的任何一个上设定所述LSI的模式定序器,该机密存储器具有不可改写区域;所述多个模式具有开发模式和商品操作模式,所述开发模式使所述CPU能够执行明文程序地设定LSI,所述商品操作模式使CPU不能执行明文程序地设定LSI,将所述不可改写区域中的模式ID设定在所述模式定序器内的规定的寄存器中的步骤,根据设定在所述规定的寄存器中的所述模式ID,所述模式定序器把其结构和所述LSI一样的LSI作开发用LSI,并将它设定在所述开发模式的步骤,通过使用设定在所述开发模式中的开发用LSI,开发所述程序的步骤。
根据本发明,安装到具有包括机密存储器的LSI的系统中的程序的开发,是在其结构和该LSI一样且被设定为和程序安装及产品工作时的商品操作模式不同的开发模式的开发用LSI中进行的。换句话说,因为可将拥有含不可改写区域的机密存储器且隐匿性高的LSI的操作模式从安装模式转换为开发模式,而将该LSI1作程序开发环境用,故能使程序开发环境的安全性比现有技术下的安全性高。
最好是,在所述本发明所涉及的程序开发方法中,限制LSI的操作,做到:当将它设定为开发模式时能执行明文程序,同时当将它设定为商品操作模式时则不能执行明文程序。
所述本发明所涉及的确保程序安全方法,最好是,包括:在所述开发用LSI上,对在所述程序开发步骤中开发的程序加密的加密步骤。
在所述本发明所涉及的确保程序安全方法中,最好是,限制LSI的操作,以做到:当将它设定为开发模式时,不会生成用以将明文程序加密的密钥。
所述本发明所涉及的确保程序安全方法,最好是,包括:以其结构与所述LSI一样的LSI作密钥生成用LSI,将它设定为与开发模式及商品操作模式不同的密钥生成模式的步骤;将加密后的密钥生成程序安装到所述密钥生成用LSI上并通过执行该密钥生成程序而生成密钥的步骤。而且,最好是,限定所述LSI的操作,做到:在将它设定为密钥生成模式的时候,不能执行明文程序。或者是,最好是,包括:以其结构与所述LSI一样的LSI作管理者用LSI,将它设定为与开发模式、商品操作模式及密钥生成模式不同的管理模式的步骤;在上述管理者用LSI上开发所述密钥生成程序并用任意密钥加密的步骤。
本发明提供一种支持加密程序的开发的程序开发支持装置,一种程序开发支持装置,它支持加密程序的开发,其中:包括:其结构与作为上述加密程序运作的商品的LSI一样的LSI和将明文程序存储起来的外部存储器;所述LSI包括:存储与未加密的共有密钥有关的共有密钥密钥信息的机密存储器;在包含开发模式的多个模式中的任何一个上设定所述LSI的模式定序器;通过所述模式定序器,当设定在所述开发模式时,从存储在所述机密存储器中的共有密钥密钥信息得到未加密的共有密钥的同时,用所述未加密的共有密钥将从所述外部存储器输入的明文程序加密的秘密密钥运算处理部分。
根据本发明,给出了其结构与成为开发对象的加密程序运作的LSI的结构一样的LSI作开发环境。在该LSI上,从存储在机密存储器中的共有密钥密钥信息得到原有的共有密钥,同时使用该原有的共有密钥对从外部存储器输入的明文程序加密。换句话说,可执行原有的共有密钥的解密和利用了该原有的共有密钥对明文程序的加密。因此,故可在原有的共有密钥不被程序开发者不得知的情况下,执行明文程序的加密。
根据本发明,通过在LSI上执行引导程序,从存储在机密存储器中的共有密钥密钥信息得到原有的共有密钥,同时使用该原有的共有密钥将从外部存储器输入的明文程序加密。换句话说,是通过引导程序执行原有的共有密钥的解密和利用了该原有的共有密钥的明文程序的加密,而不是利用来自外部的指示来执行原有的共有密钥的解密和利用了该原有的共有密钥的明文程序的加密。因此,故既确能防止原有的共有密钥被程序开发者得知,又能执行对明文程序的加密。
在所述本发明所涉及的程序开发支援装置中,最好是,所述共有密钥密钥信息包括:用原有的第1中间密钥对原有的共有密钥加密后而得到的加密共有密钥、和用原有的第2中间密钥将所述原有的第1中间密钥加密后而得到的加密第1中间密钥。所述第1步骤,最好是利用所述加密共有密钥、加密的第1中间密钥及程序加密种子对所述原有的共有密钥解密。
本发明提供一种将加密的程序写入到包括拥有机密存储器的LSI及外部存储器的密钥安装系统中的方法,该方法包括:一种将加密的程序写入到具有LSI及外部存储器的密钥安装系统中的方法,所述LSI具有存储引导程序的引导ROM和机密存储器,包括如下步骤:将与未加密的共有密钥有关的共有密钥密钥信息和与未加密的固有密钥有关的固有密钥密钥信息存储在所述机密存储器中的初始值设定处理,在所述LSI上,从存储在所述机密存储器中的共有密钥密钥信息得到未加密的共有密钥的第1步骤,在所述LSI上,用在所述第1步骤得到的未加密的共有密钥对从所述外部存储器施来的共有密钥加密程序解密的第2步骤,在所述LSI上,从存储在所述机密存储器中的固有密钥密钥信息得到未加密的固有密钥的第3步骤,在所述LSI上,用在所述第3步骤得到的未加密的固有密钥对在所述第2步骤得到的明文程序加密的第4步骤,以及仅在所述LSI第一次起动时,执行上述第1~第4步骤,将在所述第4步骤中得到的固有密钥加密程序写入到所述外部存储器中。根据本发明,用从存储在机密存储器中的共有密钥密钥信息得到的原有的共有密钥对施加给LSI的共有密钥加密程序解密。用从存储在机密存储器中的共有密钥密钥信息得到的原有的固有密钥对已解密的明文程序加密。换句话说,共有密钥加密程序是通过将加密的密钥从共有密钥变化为固有密钥而安装到系统中的。因此,在不同用户所持有的不同产品中,装上了由相互不同的固有密钥加密的程序,隐匿性提高。即使万一密码被破,受害产品也是有限的,故和现有技术下的安全性相比,这时的安全性提高了。
在所述本发明所涉及的程序安装方法中,最好是,LSI包括:存储引导程序的引导ROM,通过在所述LSI上执行存储在所述引导ROM中的引导程序来执行上述第1~第4步骤。
在所述本发明所涉及的程序安装方法中,最好是,将固有密钥密钥信息存储到所述机密存储器的不可改写区域。
在所述本发明所涉及的程序安装方法中,最好是,共有密钥密钥信息包括:用原有的第1中间密钥对原有的共有密钥加密后而得到的加密共有密钥、和用原有的第2中间密钥对所述原有的第1中间密钥加密后而得到的加密第1中间密钥。所述第1步骤,最好是,利用所述加密共有密钥、加密第1中间密钥和程序加密种子对所述原有的共有密钥解密。
在所述本发明所涉及的程序安装方法中,最好是,固有密钥密钥信息包括:用原有的第1中间密钥对原有的固有密钥加密后而得到的加密固有密钥、和用原有的第2中间密钥对所述原有的第1中间密钥加密后而得到的加密第1中间密钥。所述第3步骤,最好是,利用所述加密固有密钥、加密的第1中间密钥和程序加密种子对所述原有的固有密钥解密。
在所述本发明所涉及的程序安装方法中,最好是,固有密钥密钥信息为该LSI所固有的固有ID。
附图说明
图1为显示本发明的实施例所涉及的机密LSI的结构的方框图。
图2为显示使用了图1的机密LSI的开发及产品化的整个流程的图。
图3为显示引导程序的整个处理流程的流程图。
图4为前一个处理SZ2的数据流。
图5为密钥生成密钥的加密的数据流。
图6为程序加密处理SA2的流程图。
图7为程序加密处理SA2的数据流。
图8为密钥产生模式中的密钥生成器制造处理SB1的流程图。
图9和图10为密钥生成器制造处理SB1的数据流。
图11为密钥产生模式中密钥管理、发行处理SB2的流程图。
图12和图13为密钥管理、发行处理SB2的数据流。
图14为开发模式中的程序加密处理SC1的流程图。
图15为程序加密处理SC1的数据流。
图16为商品操作模式中的程序安装处理SD1的流程图。
图17和图18为程序安装处理SD1的数据流。
图19为商品操作模式中的通常引导处理SD2的流程图。
图20和图21为通常引导处理SD2的数据流。
图22为初始值设定处理SZ1的数据流。
具体实施方式
下面,参考附图,说明本发明的实施例。需提一下,在以下的说明中,用Enc(X,Y)表示用密钥Y将X(密钥或者程序)加密后而得到的加密密钥或者程序。
图1为表示本实施例所涉及的机密LSI的内部结构的方框图。图1中的结构是这样的,即机密LSI1可通过外部总线120和外部存储器(闪烁存储器)100、外部工具110等连接。而且,可通过加上模式ID来设定操作模式。
对本实施例所涉及的主要的结构要素进行简单的说明。
首先,机密LSI1包括:含不可改写区域11的机密存储器(保密Flash)10。该不可改写区域11中设有不可改写区域写入旗标12。一旦模式ID写到机密存储器10中,不可改写区域写入旗标12的旗标值就会从“可写入”变成“已经写完”,之后就不能向不可改写区域中写入了。需提一下,在本实施例中,机密存储器10及外部存储器100是由闪烁存储器构成的,但并不限于此,只要是非易失性存储器就行了。
还有,秘密密钥运算处理部分20,拥有:存储各种密钥及程序加密种子的寄存器,由它进行加密处理。密钥生成/更新定序器30,拥有模式ID存储寄存器31,该密钥生成/更新定序器30根据存储在该模式ID存储寄存器31中的模式ID,控制秘密密钥运算处理部分20的操作,换句话说,控制是否生成各种密钥。该密钥生成/更新定序器30,拥有:存储表示密钥或者程序由什么算法、密钥长加密的加密种类种类标识符的加密种类标识符存储寄存器32。还拥有程序加密种子33。
模式定序器40也拥有模式ID存储寄存器41。该模式定序器40根据存储在模式ID存储寄存器41中的模式ID和跳线43的值控制外部主接口(I/F)50的操作,换句话说,是控制通过哪一个主接口来将存储在外部存储器100中的程序、数据读进来。由此可控制是否可执行存储在外部存储器100中的明文程序。模式定序器40还拥有:存储了表示用什么方法将密钥加密的加密种类标识符的加密种类标识符存储寄存器42。
外部主接口50,在模式定序器40的控制下,通过程序处理部分51所拥有的通过部分52、延迟部分53及程序解密用加密引擎54、数据处理部分55所拥有的通过部分56及内容加密/解密用加密引擎57中之任一个,在外部存储器100、外部工具110之间进行程序、数据的输出入。
这里,除了后述的管理模式以外,通过通过部分52输入的程序不会在机密LSI1内部执行。换句话说,通过部分52,是一在明文程序的加密、或者是用其他的密钥对已经加密的程序再次加密时有效的部分。机密LSI1的结构是这样的,除了后述的管理模式以外,操作不会进入通过通过部分52输入的程序。因此,即使例如已经成为商品的机密LSI1通过通过部分52取入了明文程序,也不能执行该明文程序。需提一下,在执行明文程序的时候,机密LSI1通过延迟部分53将程序输到它的内部。
引导ROM60存储控制机密LSI1的启动操作的引导程序。HASH运算部分70,为验证读到机密LSI1的程序的正当性而计算HASH值。
还有,外部存储器100中存储了程序、内容。外部工具110中存储了一开始启动机密LSI1时存储在机密存储器10中的各种初始值。该初始值的种类随着所设定的操作模式的不同而不同。
图2为显示使用了图1中的机密LSI1的开发及产品化的整个流程的图。如图2所示,机密LSI1在管理模式(模式ID:00)、密钥生成模式(模式ID:01)、开发模式(模式ID:10)及商品操作模式(模式ID:11)这4种操作模式下操作。
首先,被设定为管理模式的机密LSI1作为管理者用LSI操作。在管理者用LSI中,开发密钥生成程序,而且使用任意的密钥生成密钥对该密钥生成程序加密。
被设定为密钥生成模式的机密LSI1作为密钥生成用LSI操作,在密钥生成用LSI中,安装了在管理者用LSI中生成、加密的密钥生成程序。执行该密钥生成程序以后,就生成了各种密钥。
被设定为开发模式的机密LSI1作为开发用LSI操作,在开发用LSI中,开发在实际的产品中执行的应用程序。而且,使用程序共有密钥对该应用程序加密。
被设定为商品操作模式的机密LSI1作为实际的商品LSI操作。在商品LSI中,安装了在开发用LSI中生成的由程序共有密钥加密的应用程序,在其内部,用程序固有密钥将所安装的应用程序变换成加密后的应用程序。需提一下,在开发用LSI中也可为调试应用程序来执行该变换处理。
下面,参考流程图及数据流,对每一个模式下的机密LSI1的操作进行详细的说明。机密LSI1,通过执行存储在引导ROM60中的引导程序而进行以下操作。
图3为显示引导程序的整个处理过程的流程图。一给机密LSI1通上电以后,就由CPU65来执行引导ROM60中所存储的引导程序。如图3所示,首先,将每一个硬件初始化(SZ0)。然后,从外部工具110读入各种各样的初始值,设定在机密存储器10中(SZ1)。
图22为初始值设定处理SZ1的流程图。首先,在跳线44,判断机密存储器10是否安装在LSI内。接着,判断不可改写区域写入旗标12是否为“已写完”,因为当为“已写完”时,初始值就已经设定在机密存储器10中,故让处理SZ1结束。当不可改写区域写入旗标12为“可写入”时,就将初始值写到机密存储器10中。不仅将模式ID写到机密存储器10的不可改写区域11中,还将加密的程序固有密钥、地址管理信息、数据固有密钥写到机密存储器10的不可改写区域11中。需提一下,在最开始的判断结果是,机密存储器10在LSI的外部的时候,就将模式ID写在表示商品操作模式的值上。这样以来,机密存储器10在LSI包外那样的欺诈产品,只可在商品操作模式下工作。
接着,将不可改写区域写入旗标12设定为“已写完”。这样以来,以后的不可改写区域11就不能改写了。而且,还将加密种类标识符及安装模式旗标写到通常区域13、14中。而且,当模式ID显示管理模式以外的模式的时候,除了将加密种类标识符及安装模式旗标写到通常区域13、14中以外,还将已加密的共有密钥/密钥生成密钥写到通常区域13、14中。
之后,执行前处理SZ2。图4为前处理SZ2的数据流。这里,设定在机密存储器10的不可改写区域11中的模式ID,被设定在密钥生成/更新定序器30的模式ID存储寄存器31及模式定序器40的模式ID存储寄存器41中;设定在机密存储器10的第1通常区域13中的加密种类标识符被设定在密钥生成/更新定序器30的加密种类标识符存储寄存器32及模式定序器40的加密种类标识符存储寄存器42中;机密存储器10的不可改写区域11中所存储的地址管理信息被设定在MEMC80的密码地址区分存储寄存器81中。到这里为止的操作,和图2中的初始值设定阶段PA0、PB0、PC0、PD0相对应。
之后,根据模式ID的值来进行每一个模式下的操作(SZ3)。
(管理模式)
当模式ID为“00”时,机密LSI1成为管理模式,根据跳线43的值(SA0)执行明文程序执行处理SA1或者是程序加密处理SA2。
在密钥生成程序开发阶段PA1,进行明文程序执行处理SA1,在这里生成密钥生成程序。该密钥生成程序存储在外部存储器100中。
在密钥生成程序加密阶段PA2,首先,如图5的数据流所示,通过执行密钥生成程序而对施来的任意密钥生成密钥加密。换句话说,在外部主接口50中,程序处理部分51的通过部分52在模式定序器40的作用下有效。外部存储器100中所存储的密钥生成程序通过通过部分52加到CPU65中而得以执行。执行了该密钥生成程序以后,外部存储器100中所存储的密钥生成密钥就由秘密密钥运算处理部分20利用装在密钥生成/更新定序器30中的程序加密种子加密。
需提一下,在本实施例中,密钥的加密是利用第1中间密钥和第2中间密钥来进行的。换句话说,加密的结果是,得到了明文密钥(这里为密钥生成密钥)由第1中间密钥(这里为MK1)加密后而得到的加密密钥(这里为Enc(密钥生成密钥,MK1))、和由第2中间密钥(这里为CK)将第1中间密钥加密后而得到的加密第1中间密钥(这里为Enc(MK1,CK)。当然,本发明并不限于这样的密钥加密方法。
之后,执行程序加密处理SA2。图6为该程序加密处理SA2的流程图,图7为数据流。首先,通过外部主接口50的通过部分52将存储在外部存储器100中的已加密的密钥生成密钥Enc(密钥生成密钥,MK1)、Enc(MK1,CK)设定在秘密密钥运算处理部分20中(SA21)。再用安装在密钥生成/更新定序器30中的程序加密种子将该加密后的密钥生成密钥解密,得到密钥生成密钥(SA22)。之后,取入存储在外部存储器100中的明文的密钥生成程序,再用已在SA22解密的密钥生成密钥对明文的密钥生成程序加密,写到外部存储器100中(SA23)。由HASH运算部分70对外部存储器100中的明文的密钥生成程序进行HASH运算,并将计算出的HASH值写到外部存储器100中(SA24)。
经过了这样的操作以后,在管理模式,生成由密钥生成密钥加密的密钥生成程序Enc(密钥生成程序,密钥生成密钥)、已加密的密钥生成密钥Enc(密钥生成密钥,MK1)、Enc(MK1,CK)、密钥生成程序的HASH值。
-密钥生成模式-
当模式ID为“01”时,机密LSI1成为密钥生成模式,根据安装模式旗标的值(SB0)来执行密钥生成器制造处理SB1或者是密钥管理/发行处理SB2。
在密钥生成器制造阶段PB1,执行密钥生成器制造处理SB1,图8为该处理SB1的流程图,图9及图10为数据流。这里,根据模式ID和安装模式旗标的值,在外部主接口50所拥有的程序处理部分51中通过部分52被设定为有效。
首先,将存储在机密LSI1的不可改写区域11中加密的程序固有密钥Enc(程序固有密钥,MK0)、Enc(MK0,CK)设定在秘密密钥运算处理部分20的加密密钥存储寄存器中(SB11)。再用安装在密钥生成/更新定序器30中的程序加密种子对已加密的程序固有密钥解密,得到程序固有密钥(SB12)。接着,将在初始值设定阶段PB0所设定的、被加密的密钥生成密钥Enc(密钥生成密钥,MK1)、Enc(MK1,CK)设定在秘密密钥运算处理部分20的加密密钥存储寄存器中(SB13),用安装在密钥生成/更新定序器30中的程序加密种子对该加密的密钥生成密钥解密,得到密钥生成密钥(SB14)。
之后,通过外部主接口50所拥有的程序处理部分51的通过部分52,将存储在外部存储器100中由密钥生成密钥加密的密钥生成程序Enc(密钥生成程序,密钥生成密钥)取到秘密密钥运算处理部分20中(SB15)。接着,用密钥生成密钥将所取入的加密密钥生成程序解密以后,再用程序固有密钥加密,得到加密的密钥生成程序Enc(密钥生成程序,程序固有密钥)(SB16)。写到外部存储器100中(SB17)。接着,再通过通过部分52将存储在外部存储器100中的HASH值设定在机密存储器10的通常区域13中(SB18)。
由CPU65将存储在机密存储器10的通常区域13中的安装模式旗标的值设定为“OFF”(SB19)。接着,消除存储在机密存储器10中的通常区域13中加密的密钥生成密钥Enc(密钥生成密钥,MK1)、Enc(MK1,CK)(SB1A),同时消除存储在外部存储器100中加密的密钥生成程序Enc(密钥生成密钥程序,密钥生成密钥)及HASH值(SB1B)。
在密钥管理/发行阶段PB2,执行密钥管理/发行程序SB2。图11为该处理SB2的流程图,图12及图13为数据流。这里,根据模式ID和安装模式旗标的值,将外部主接口50所拥有的程序解密用加密引擎54设定为有效。
首先,将存储在机密存储器10的不可改写区域11中且加密了的程序固有密钥Enc(程序固有密钥,MK0)、Enc(MK0,CK)设定在秘密密钥运算处理部分20的加密密钥存储寄存器中(SB21)。接着,用安装在密钥生成/更新定序器30中的程序加密种子对已加密了的程序固有密钥解密,得到程序固有密钥(SB22)。所得到的程序固有密钥被设定在外部主接口50的程序解密用加密引擎54的程序固有密钥存储寄存器中(SB23)。
之后,通过外部主接口50所拥有的程序处理部分51的程序解密用加密引擎54,对存储在外部存储器100中由程序固有密钥加密了的密钥生成程序Enc(密钥生成程序,程序固有密钥)解密并将它取到HASH运算部分70中,计算HASH值(SB24)。接着,对计算出的HASH值和存储在机密存储器10的通常区域13中的HASH值进行比较,检查密钥生成程序是否被窜改了(SB25)。当HASH值一致时(在SB26为No),处理将移到存储在外部存储器100的密钥生成程序Enc(密钥生成程序,程序固有密钥)中,执行密钥的生成(SB27)。另一方面,当HASH值不一致时(在SB26为Yes),就推测是有欺骗行为,而执行欺骗访问控制处理(SB28)。
在商品操作模式下,仅使通过部分52有效而输入程序,或者使程序解密用加密引擎54有效而将已加密的程序解密并将它输入,故机密LSI1的操作受到限制,结果是不能执行明文程序。
-开发模式-
当模式1D为“10”时,机密LSI1成为开发模式,根据跳线43的值(SC0)来执行程序加密处理SC1、明文程序执行处理SC2、程序安装处理SC3或者是加密程序执行处理SC4。
在应用程序开发阶段PC1,设延迟部分53有效,执行明文程序执行处理SC2,开发出应用程序。所开发的应用程序存储在外部存储器100中。
在应用程序加密阶段PC2,执行程序加密处理SC1。图14为该程序加密处理SC1的流程图,图15为数据流。首先,将存储在机密存储器10的通常区域14中的作为共有密钥密钥信息的加密的程序共有密钥Enc(程序共有密钥,MK2)、Enc(MK2,CK)设定在秘密密钥运算处理部分20中(SC11)。接着,用安装在密钥生成/更新定序器30中的程序加密种子对已加密的程序共有密钥解密,得到程序共有密钥(SC12)。之后,将存储在外部存储器100中的明文应用程序取进来,用在SC12解密的程序共有密钥对它加密,并写到外部存储器100中(SC13)。接着,再由HASH运算部分70对外部存储器100的明文应用程序进行HASH运算,将计算出的HASH值写入外部存储器100中(SC14)。
经过了这样的操作以后,生成了由程序共有密钥加密的应用程序Enc(应用程序,程序共有密钥)、应用程序的HASH值。
其次,在应用程序安装阶段PC3,执行程序安装处理SC3;在应用程序调试阶段PC4,执行加密程序执行处理SC4。因为这些处理和商品操作模式中的各个处理SD1,SD2一样,故详情省略不述。
就这样,因为可将拥有含不可改写区域11的机密存储器10且具有高隐匿性的LSI1的操作模式从安装模式转换为开发模式,而让该LSI1作程序开发环境用,故能使程序开发环境中的安全性比现在的安全性高。
因原有的共有密钥由存储在机密存储器10中的作为共有密钥密钥信息的已加密的共有密钥(共有密钥信息)解密,并用该原有的共有密钥对明文程序加密,故可在程序开发者不知道原有的共有密钥的情况下,对明文程序加密。
因为原有的共有密钥的解密、利用了该原有的共有密钥的明文程序的加密,是通过引导程序执行的,而不是通过接收来自外部的指示而执行的,故既确可防止程序开发者知道原有的共有密钥,又能执行明文程序的加密。
-商品操作模式-
当模式ID为“11”时,机密LSI1成为商品操作模式,根据安装模式旗标的值(SD0)来执行程序安装处理SD1或者通常引导处理SD2。
在商品安装阶段PD1,执行程序安装处理SD1。图16为该处理SD1的流程图,图17及图18为数据流。这里,根据模式ID和安装模式旗标的值,在外部主接口50所拥有的程序处理部分51中通过部分52被设定为有效。
首先,将存储在机密存储器10的不可改写区域11中作为固有密钥密钥信息的已加密的程序固有密钥(程序固有密钥,MK0)、Enc(MK0,CK)设定在秘密密钥运算处理部分20的加密密钥存储寄存器中(SD11)。接着,用安装在密钥生成/更新定序器30中的程序加密种子对已加密的程序固有密钥解密,得到程序固有密钥(SD12)。接着,将在初始值设定阶段PD0所设定的作为共有密钥密钥信息的已加密的程序共有密钥Enc(程序共有密钥,MK2)、Enc(MK2,CK)设定在秘密密钥运算处理部分20的加密密钥存储寄存器中(SD13),再使用安装在密钥生成/更新定序器30中的程序加密种子对该已加密的程序共有密钥解密,而得到程序共有密钥(SD14)。
之后,通过外部主接口50所拥有的程序处理部分51的通过部分52,将存储在外部存储器100中且由程序共有密钥加密的应用程序Enc(应用程序,程序共有密钥)取到秘密密钥运算处理部分20中(SD15)。接着,用程序共有密钥将所取入的加密了的应用程序解密以后,再用程序固有密钥对它加密,得到加密后的应用程序Enc(应用程序,程序固有密钥)(SD16),并写到外部存储器100中(SD17)。接着,再通过通过部分52将存储在外部存储器100中的HASH值设定在机密存储器10的通常区域13中(SD18)。
由CPU65将存储在机密存储器10的通常区域13中的安装模式旗标的值设定为“OFF”(SD19)。消除存储在机密存储器10的通常区域13中且已加密的程序共有密钥Enc(程序共有密钥,MK1)、Enc(MK1,CK)(SD1A),同时消除存储在外部存储器100中且已加密的应用程序Enc(应用程序,程序共有密钥)及HASH值(SD1B)。
换句话说,共有密钥加密程序,是通过让加密的密钥从共有密钥变换为固有密钥而安装到系统上的。因此,用户所持有的每一个产品就安装了分别由不同的固有密钥加密后而得到的程序,隐匿性提高。万一密码子遭到破坏,受害产品的数量也是有一定限度的,故和现有的技术相比,安全性得到了提高。
需提一下,可以以固有ID为本生成固有密钥。换句话说,对每一个机密LSI1而言,在它的机密存储器10中安装一个自己的固有ID作固有密钥密钥信息,在该产品安装阶段PD1,由引导程序从所安装的固有ID生成固有密钥。
在商品操作阶段PD2,执行通常引导处理SD2。图19为该处理SD2的流程图;图20及图21为数据流。这里,根据模式ID及安装模式旗标的值将外部主接口50所拥有的程序解密用加密引擎54设定为有效。
首先,将存储在机密存储器10的不可改写区域11中加密了的程序固有密钥Enc(程序固有密钥,MK0)、Enc(MK0,CK)设定在秘密密钥运算处理部分20的加密密钥存储寄存器中(SD21)。用安装在密钥生成/更新定序器30中的程序加密种子对该已加密的程序固有密钥解密,得到程序固有密钥(SD22)。所得到的程序固有密钥设定在外部主接口50的程序解密用加密引擎54的程序固有密钥存储寄存器中(SD23)。
之后,将存储在机密存储器10的不可改写区域11中的数据固有ID设定在秘密密钥运算处理部分20的固有ID存储寄存器中(SD24)。由CPU65产生随机数,并将它设定在秘密密钥运算处理部分20的随机数存储寄存器中(SD25)。由秘密密钥运算处理部分20从数据固有ID和随机数生成数据固有密钥(SD26)。
之后,通过外部主接口50所拥有的程序处理部分51的程序解密用加密引擎54,对存储在外部存储器100中且由程序固有密钥加密的应用程序Enc(应用程序,程序固有密钥)解密并将它取到HASH运算部分70中,计算HASH值(SD27)。接着,对该计算出的HASH值和存储在机密存储器10的通常区域13中的HASH值进行比较,检查应用程序是否被窜改(SD28)。当HASH值一致时(在SD29为No),处理将移到存储在外部存储器100的应用程序Enc(应用程序,程序固有密钥),执行应用(SD2A)。另一方面,当HASH值不一致时(在SD29为Yes),就推测是有不正行为,而执行不正访问控制处理(SD2B)。
在商品操作模式下,仅使通过部分52有效输入程序,或者仅使程序解密用加密引擎54有效而将已加密的程序解密并将它输入,故机密LSI1的操作受到了限制,结果是不能执行明文程序。
需提一下,在开发模式和商品操作模式下,即使从外部利用秘密密钥运算处理部分20执行生成密钥这样的处理,也能由密钥生成/更新定序器30判断出这一情况而不得执行产生密钥这样的处理。换句话说,密钥生成/更新定序器30,在开发模式及商品操作模式下,操作受限而只在启动时使用程序加密种子,除此以外的其他时候都不能使用程序加密种子。故不能执行生成密钥的处理。
需提一下,在本实施例中,程序、数据存储在外部存储器100中,安装在机密存储器10中的初始值存储在外部工具110中,将程序、数据及初始值安装在哪里都行。例如,可从外部工具110中读入程序、数据,再对它加密,是没有任何问题的。
需提一下,在本实施例中。由引导程序执行各种处理,本发明并不限于此,由其他手段来执行处理的一部分或者全部也是可以的。只不过是,由引导程序来执行处理时的安全性会比由来自外部的指示执行处理的安全性更高。
综上所述,根据本发明,因为可将拥有含不可改写区域的机密存储器且隐匿性高的LSI的操作模式从安装模式转换为开发模式,而让该LSI作程序开发环境用,故能使程序开发环境中的安全性比现在的安全性高。

Claims (9)

1、一种确保LSI中程序安全的方法,包括如下步骤:
在所述LSI中设置CPU和机密存储器,和在预先规定的多个模式中的任何一个上设定所述LSI的模式定序器,
该机密存储器具有不可改写区域;
所述多个模式具有开发模式和商品操作模式,所述开发模式使所述CPU能够执行明文程序地设定LSI,所述商品操作模式使CPU不能执行明文程序地设定LSI,
将所述不可改写区域中的模式ID设定在所述模式定序器内的规定的寄存器中的步骤,
根据设定在所述规定的寄存器中的所述模式ID,所述模式定序器把其结构和所述LSI一样的LSI作开发用LSI,并将它设定在所述开发模式的步骤,
通过使用设定在所述开发模式中的开发用LSI,开发所述程序的步骤。
2、根据权利要求1所述的确保LSI中程序安全的方法,其中包括:
在所述开发用LSI上,对在所述程序开发步骤中所开发的程序加密的加密步骤。
3、根据权利要求1所述的确保LSI中程序安全的方法,其中:
限制所述LSI的操作,做到:当将它设定为开发模式时,不会生成用以将明文程序加密的密钥。
4、根据权利要求1所述的确保LSI中程序安全的方法,其中包括:
以其结构与所述LSI一样的LSI作密钥生成用LSI,将它设定为与开发模式及商品操作模式不同的密钥生成模式的步骤;
将加密后的密钥生成程序安装到所述密钥生成用LSI上并通过执行该密钥生成程序而生成密钥的步骤。
5、根据权利要求4所述的确保LSI中程序安全的方法,其中:
限制所述LSI的操作,做到:在将它设定为密钥生成模式的时候,不能执行明文程序。
6、根据权利要求4所述的确保LSI中程序安全的方法,其中包括:
以其结构与所述LSI一样的LSI作管理者用LSI,将它设定为与开发模式、商品操作模式及密钥生成模式不同的管理模式的步骤;及
在上述管理者用LSI上开发所述密钥生成程序并用任意密钥加密的步骤。
7、一种程序开发支持装置,它支持加密程序的开发,其中:
包括:其结构与作为上述加密程序运作的商品的LSI一样的LSI和将明文程序存储起来的外部存储器;
所述LSI包括:
存储与未加密的共有密钥有关的共有密钥密钥信息的机密存储器;
在包含开发模式的多个模式中的任何一个上设定所述LSI的模式定序器;
通过所述模式定序器,当设定在所述开发模式时,从存储在所述机密存储器中的共有密钥密钥信息得到未加密的共有密钥的同时,用所述未加密的共有密钥将从所述外部存储器输入的明文程序加密的秘密密钥运算处理部分。
8、根据权利要求7所述的支持装置,其中:
所述LSI,还包括存储引导程序的引导ROM;且:
所述支持装置,通过执行存储在所述引导ROM中的引导程序,而执行从存储在所述机密存储器中的共有密钥密钥信息得到未加密的共有密钥,及用所述未加密的共有密钥对从所述外部存储器输入的明文程序加密。
9、根据权利要求7所述的支持装置,其中:
所述共有密钥密钥信息,包括:用未加密的第1中间密钥对未加密的共有密钥加密后而得到的加密共有密钥、和用未加密的第2中间密钥对所述未加密的第1中间密钥加密后而得到的加密第1中间密钥;
在执行从存储在所述机密存储器中的共有密钥密钥信息得到未加密的共有密钥时,利用所述加密共有密钥、加密第1中间密钥及程序加密种子对所述未加密的共有密钥解密。
CNB031330525A 2002-07-24 2003-07-23 确保lsi中程序安全的方法、程序开发支持装置及其方法 Expired - Fee Related CN1323350C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002215096 2002-07-24
JP2002215096A JP2004054834A (ja) 2002-07-24 2002-07-24 プログラム開発方法、プログラム開発支援装置およびプログラム実装方法
JP2002-215096 2002-07-24

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CNA2006101605473A Division CN1967482A (zh) 2002-07-24 2003-07-23 程序开发方法、程序开发支援装置及程序安装方法

Publications (2)

Publication Number Publication Date
CN1477495A CN1477495A (zh) 2004-02-25
CN1323350C true CN1323350C (zh) 2007-06-27

Family

ID=29997246

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB031330525A Expired - Fee Related CN1323350C (zh) 2002-07-24 2003-07-23 确保lsi中程序安全的方法、程序开发支持装置及其方法
CNA2006101605473A Pending CN1967482A (zh) 2002-07-24 2003-07-23 程序开发方法、程序开发支援装置及程序安装方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNA2006101605473A Pending CN1967482A (zh) 2002-07-24 2003-07-23 程序开发方法、程序开发支援装置及程序安装方法

Country Status (5)

Country Link
US (2) US7685435B2 (zh)
EP (4) EP2264637A3 (zh)
JP (1) JP2004054834A (zh)
CN (2) CN1323350C (zh)
TW (1) TWI242123B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004054834A (ja) 2002-07-24 2004-02-19 Matsushita Electric Ind Co Ltd プログラム開発方法、プログラム開発支援装置およびプログラム実装方法
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
JP3881942B2 (ja) 2002-09-04 2007-02-14 松下電器産業株式会社 暗号化部を有する半導体装置
JP4559794B2 (ja) 2004-06-24 2010-10-13 株式会社東芝 マイクロプロセッサ
JP4717398B2 (ja) * 2004-09-10 2011-07-06 キヤノン株式会社 データ処理装置の制御方法
US8842836B2 (en) * 2007-11-26 2014-09-23 Koolspan, Inc. System for and method of cryptographic provisioning
US9444622B2 (en) * 2008-09-15 2016-09-13 Hewlett Packard Enterprise Development Lp Computing platform with system key
WO2010116618A1 (ja) 2009-04-06 2010-10-14 パナソニック株式会社 鍵実装システム
JP2010033603A (ja) * 2009-11-09 2010-02-12 Panasonic Corp 情報処理装置
US9773431B2 (en) * 2009-11-10 2017-09-26 Maxim Integrated Products, Inc. Block encryption security for integrated microcontroller and external memory system
JP2010033613A (ja) * 2009-11-12 2010-02-12 Panasonic Corp 情報処理装置
GB2477774A (en) * 2010-02-12 2011-08-17 Icera Inc Overriding production processor authentication restrictions through remote security unit for development code testing
US8876108B2 (en) * 2011-12-26 2014-11-04 Canon Kabushiki Kaisha Sheet transport apparatus and image forming apparatus
AU2015374202B2 (en) 2014-12-29 2019-02-14 Visa International Service Association Over-the-air provisioning of application library

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1131992A (zh) * 1994-07-05 1996-09-25 株式会社前进 软件保护系统
US5982887A (en) * 1995-04-27 1999-11-09 Casio Computer Co., Ltd. Encrypted program executing apparatus
CN1279861A (zh) * 1997-09-25 2001-01-10 卡纳尔股份有限公司 记录加密数字数据的方法及装置
CN1302399A (zh) * 1999-02-22 2001-07-04 松下电器产业株式会社 计算机和程序记录媒体
CN1307284A (zh) * 2000-01-21 2001-08-08 日本胜利株式会社 内容信息的传送与记录方法、装置和媒体及解密方法与装置
CN1342007A (zh) * 2000-09-05 2002-03-27 深圳市中兴集成电路设计有限责任公司 一种新的加密装置
US6418225B2 (en) * 1998-04-23 2002-07-09 General Electric Company Method and apparatus for feature configuration in remotely located ultrasound imaging system

Family Cites Families (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US633983A (en) * 1898-09-19 1899-10-03 Francis Billingham Gas-lighting attachment.
US4218738A (en) * 1978-05-05 1980-08-19 International Business Machines Corporation Method for authenticating the identity of a user of an information system
US4864615A (en) * 1988-05-27 1989-09-05 General Instrument Corporation Reproduction of secure keys by using distributed key generation data
US4941176A (en) 1988-08-11 1990-07-10 International Business Machines Corporation Secure management of keys using control vectors
US4914176A (en) * 1989-03-17 1990-04-03 Shell Oil Company Poly(heterocyclic) polymers
US5029207A (en) * 1990-02-01 1991-07-02 Scientific-Atlanta, Inc. External security module for a television signal decoder
US5307497A (en) * 1990-06-25 1994-04-26 International Business Machines Corp. Disk operating system loadable from read only memory using installable file system interface
JP2627370B2 (ja) 1991-05-28 1997-07-02 三洋電機株式会社 開発支援システム
US5349643A (en) * 1993-05-10 1994-09-20 International Business Machines Corporation System and method for secure initial program load for diskless workstations
US5666411A (en) 1994-01-13 1997-09-09 Mccarty; Johnnie C. System for computer software protection
US5835911A (en) 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
US5892900A (en) 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US6577734B1 (en) 1995-10-31 2003-06-10 Lucent Technologies Inc. Data encryption key management system
US5999629A (en) 1995-10-31 1999-12-07 Lucent Technologies Inc. Data encryption security module
JP3627384B2 (ja) 1996-01-17 2005-03-09 富士ゼロックス株式会社 ソフトウェアの保護機能付き情報処理装置及びソフトウェアの保護機能付き情報処理方法
US5838911A (en) * 1996-05-23 1998-11-17 Electronic Data Systems Corporation Method and apparatus for obtaining network information by using a dynamic link library
US5778070A (en) * 1996-06-28 1998-07-07 Intel Corporation Method and apparatus for protecting flash memory
US5812671A (en) * 1996-07-17 1998-09-22 Xante Corporation Cryptographic communication system
US5771287A (en) * 1996-08-01 1998-06-23 Transcrypt International, Inc. Apparatus and method for secured control of feature set of a programmable device
US5937063A (en) * 1996-09-30 1999-08-10 Intel Corporation Secure boot
US6523119B2 (en) * 1996-12-04 2003-02-18 Rainbow Technologies, Inc. Software protection device and method
EP0878796B1 (en) 1997-05-13 2006-04-19 Kabushiki Kaisha Toshiba Information recording apparatus, information reproducing apparatus, and information distribution system
US6987854B2 (en) 1997-09-25 2006-01-17 Thomson Licensing S.A. Method and apparatus for recording of encrypted digital data
JP3272283B2 (ja) * 1997-11-14 2002-04-08 富士通株式会社 電子データ保管装置
US6333983B1 (en) 1997-12-16 2001-12-25 International Business Machines Corporation Method and apparatus for performing strong encryption or decryption data using special encryption functions
US6134659A (en) 1998-01-07 2000-10-17 Sprong; Katherine A. Controlled usage software
JP3724944B2 (ja) 1998-03-06 2005-12-07 株式会社ルネサステクノロジ 評価用モジュール、評価用マイクロコンピュータチップ、及びデバッグシステム
GB2336005A (en) 1998-03-28 1999-10-06 Motorola Ltd Maintaining security in development tools
JPH11282667A (ja) 1998-03-31 1999-10-15 Nakamichi Corp 多重鍵方式の暗号処理機能を有するマイクロプロセッサ
US6834111B1 (en) * 1998-04-01 2004-12-21 Matsushita Electric Industrial Co., Ltd. Data transmitting/receiving method, data transmitter, data receiver, data transmitting/receiving system, av content transmitting method, av content receiving method, av content transmitter, av content receiver, and program recording medium
JP3995338B2 (ja) 1998-05-27 2007-10-24 富士通株式会社 ネットワーク接続制御方法及びシステム
US6799277B2 (en) 1998-06-04 2004-09-28 Z4 Technologies, Inc. System and method for monitoring software
EP1014618A1 (en) 1998-07-30 2000-06-28 Sony Corporation Content processing system
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
US7110984B1 (en) 1998-08-13 2006-09-19 International Business Machines Corporation Updating usage conditions in lieu of download digital rights management protected content
US6385727B1 (en) 1998-09-25 2002-05-07 Hughes Electronics Corporation Apparatus for providing a secure processing environment
JP2000122931A (ja) 1998-10-15 2000-04-28 Toshiba Corp デジタル集積回路
AU3629400A (en) 1999-03-19 2000-10-09 Cybersource Corporation Method and apparatus for verifying address information
WO2000057290A1 (fr) 1999-03-19 2000-09-28 Hitachi, Ltd. Processeur d'informations
US6367019B1 (en) 1999-03-26 2002-04-02 Liquid Audio, Inc. Copy security for portable music players
JP2000347852A (ja) 1999-03-30 2000-12-15 Sony Corp 情報処理装置および方法、並びにプログラム格納媒体
JP2000347847A (ja) 1999-03-30 2000-12-15 Sony Corp 情報処理装置および方法、半導体ic、情報処理システム、並びにプログラム格納媒体
US6988199B2 (en) 2000-07-07 2006-01-17 Message Secure Secure and reliable document delivery
US6324647B1 (en) 1999-08-31 2001-11-27 Michel K. Bowman-Amuah System, method and article of manufacture for security management in a development architecture framework
AU1556301A (en) 1999-12-03 2001-06-12 Fujitsu Limited Data distribution system and recorder for use therein
JP2001211149A (ja) 2000-01-25 2001-08-03 Sony Corp データ処理装置およびデータ処理方法、並びにプログラム提供媒体
JP3888823B2 (ja) 2000-02-14 2007-03-07 松下電器産業株式会社 半導体集積回路
US7270193B2 (en) 2000-02-14 2007-09-18 Kabushiki Kaisha Toshiba Method and system for distributing programs using tamper resistant processor
US20020021804A1 (en) 2000-02-18 2002-02-21 Ledzius Robert C. System and method for data encryption
JP4622064B2 (ja) * 2000-04-06 2011-02-02 ソニー株式会社 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体
US7003107B2 (en) 2000-05-23 2006-02-21 Mainstream Encryption Hybrid stream cipher
JP3505482B2 (ja) 2000-07-12 2004-03-08 株式会社東芝 暗号化装置、復号装置及び拡大鍵生成装置、拡大鍵生成方法並びに記録媒体
US7051211B1 (en) 2000-08-21 2006-05-23 International Business Machines Corporation Secure software distribution and installation
JP4651790B2 (ja) * 2000-08-29 2011-03-16 株式会社ガイア・システム・ソリューション データ処理装置
US6857067B2 (en) 2000-09-01 2005-02-15 Martin S. Edelman System and method for preventing unauthorized access to electronic data
JP4153653B2 (ja) 2000-10-31 2008-09-24 株式会社東芝 マイクロプロセッサおよびデータ保護方法
US20020078380A1 (en) 2000-12-20 2002-06-20 Jyh-Han Lin Method for permitting debugging and testing of software on a mobile communication device in a secure environment
US6970565B1 (en) 2000-12-22 2005-11-29 Xm Satellite Radio Inc. Apparatus for and method of securely downloading and installing a program patch in a processing device
JP4710132B2 (ja) * 2000-12-26 2011-06-29 ソニー株式会社 情報処理システム、および情報処理方法、並びにプログラム記録媒体
US7174568B2 (en) 2001-01-31 2007-02-06 Sony Computer Entertainment America Inc. Method and system for securely distributing computer software products
JP2002230065A (ja) * 2001-02-02 2002-08-16 Toshiba Corp システムlsi開発装置およびシステムlsi開発方法
JP2002244989A (ja) 2001-02-20 2002-08-30 Nec Corp デバイスドライバ作動方法
JP2002251326A (ja) 2001-02-22 2002-09-06 Hitachi Ltd 耐タンパ計算機システム
JP3995894B2 (ja) 2001-03-16 2007-10-24 日本電信電話株式会社 アプリケーション又はデータ格納メモリを具えた装置の使用可能記憶容量増大方法
JP3918448B2 (ja) 2001-04-02 2007-05-23 日本ビクター株式会社 エージェントシステムにおける認証方法
US7299203B1 (en) * 2001-04-19 2007-11-20 Xilinx, Inc. Method for storing and shipping programmable ASSP devices
US20020174264A1 (en) 2001-05-17 2002-11-21 David Fuller System and method for obtaining driver software and documentation for a detected hardware and software configuration
US20020184512A1 (en) 2001-05-31 2002-12-05 Cardoso Augusto C. Method and apparatus for supporting remote configuration to facilitate subscriber management
US7237121B2 (en) 2001-09-17 2007-06-26 Texas Instruments Incorporated Secure bootloader for securing digital devices
US7367028B2 (en) * 2001-08-14 2008-04-29 National Instruments Corporation Graphically deploying programs on devices in a system
JP3773431B2 (ja) 2001-09-20 2006-05-10 松下電器産業株式会社 鍵実装システムおよびこれを実現するためのlsi、並びに鍵実装方法
US7117352B1 (en) * 2002-02-13 2006-10-03 Lsi Logic Corporation Debug port disable mechanism
JP3782361B2 (ja) * 2002-02-25 2006-06-07 沖電気工業株式会社 システムlsi
US6715085B2 (en) 2002-04-18 2004-03-30 International Business Machines Corporation Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function
US7146609B2 (en) * 2002-05-17 2006-12-05 Sun Microsystems, Inc. Method, system and article of manufacture for a firmware image
JP2004054834A (ja) 2002-07-24 2004-02-19 Matsushita Electric Ind Co Ltd プログラム開発方法、プログラム開発支援装置およびプログラム実装方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1131992A (zh) * 1994-07-05 1996-09-25 株式会社前进 软件保护系统
US5982887A (en) * 1995-04-27 1999-11-09 Casio Computer Co., Ltd. Encrypted program executing apparatus
CN1279861A (zh) * 1997-09-25 2001-01-10 卡纳尔股份有限公司 记录加密数字数据的方法及装置
US6418225B2 (en) * 1998-04-23 2002-07-09 General Electric Company Method and apparatus for feature configuration in remotely located ultrasound imaging system
CN1302399A (zh) * 1999-02-22 2001-07-04 松下电器产业株式会社 计算机和程序记录媒体
CN1307284A (zh) * 2000-01-21 2001-08-08 日本胜利株式会社 内容信息的传送与记录方法、装置和媒体及解密方法与装置
CN1342007A (zh) * 2000-09-05 2002-03-27 深圳市中兴集成电路设计有限责任公司 一种新的加密装置

Also Published As

Publication number Publication date
EP2028579B1 (en) 2017-09-13
EP2028579A3 (en) 2009-06-03
EP1385078A2 (en) 2004-01-28
JP2004054834A (ja) 2004-02-19
US20090037721A1 (en) 2009-02-05
US20040153657A1 (en) 2004-08-05
EP2163963A2 (en) 2010-03-17
EP1385078A3 (en) 2008-02-06
TWI242123B (en) 2005-10-21
EP2163963A3 (en) 2010-06-30
US7685435B2 (en) 2010-03-23
TW200401976A (en) 2004-02-01
CN1477495A (zh) 2004-02-25
EP2264637A3 (en) 2012-06-27
CN1967482A (zh) 2007-05-23
EP2028579A2 (en) 2009-02-25
EP2264637A2 (en) 2010-12-22
US8190912B2 (en) 2012-05-29

Similar Documents

Publication Publication Date Title
CN100377028C (zh) 有加密部分或外部接口的半导体器件及内容再生方法
US9842212B2 (en) System and method for a renewable secure boot
TWI460604B (zh) 安全微控制器、硬體加密器及用於保全一微控制器內之內容之方法
CN1323350C (zh) 确保lsi中程序安全的方法、程序开发支持装置及其方法
EP1785902B1 (en) Decryption key table access control on ASIC or ASSP
US20170046280A1 (en) Data processing device and method for protecting a data processing device against attacks
JP3982531B2 (ja) ソフトウェアの保護機能付き情報処理装置およびソフトウェアの保護機能付き情報処理方法
JP2005039864A (ja) ソフトウェアの保護機能付き情報処理装置およびソフトウェアの保護機能付き情報処理方法
Kumbhar et al. Hybrid Encryption for Securing SharedPreferences of Android Applications
JP2010033603A (ja) 情報処理装置
CN111291389B (zh) 一种计算机核心程序全生命周期的保护方法及系统
JP4580024B2 (ja) コンテンツ再生方法
US12045377B2 (en) Method and device for secured deciphering of ciphering data
JP4676547B2 (ja) 半導体装置およびそのブート方法
JP2007249996A (ja) プログラム開発支援装置およびプログラム実装方法
JP2009169989A (ja) プログラム実装方法および情報処理装置
JP4336690B2 (ja) 外部インターフェースを有する半導体装置
JPH11282756A (ja) 秘密デ−タ管理方法
JP2010033613A (ja) 情報処理装置
JP2010044792A (ja) セキュアデバイス、集積回路および暗号化方法

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200529

Address after: Kyoto Japan

Patentee after: Panasonic semiconductor solutions Co.,Ltd.

Address before: Osaka Japan

Patentee before: Panasonic Corp.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070627

Termination date: 20200723