CN1967482A - 程序开发方法、程序开发支援装置及程序安装方法 - Google Patents
程序开发方法、程序开发支援装置及程序安装方法 Download PDFInfo
- Publication number
- CN1967482A CN1967482A CNA2006101605473A CN200610160547A CN1967482A CN 1967482 A CN1967482 A CN 1967482A CN A2006101605473 A CNA2006101605473 A CN A2006101605473A CN 200610160547 A CN200610160547 A CN 200610160547A CN 1967482 A CN1967482 A CN 1967482A
- Authority
- CN
- China
- Prior art keywords
- key
- program
- encryption
- secret
- lsi
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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/72—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2105—Dual mode as a secondary aspect
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (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作开发用LSI,并将它设定为与程序安装及产品工作时的商品操作模式不同的开发模式的步骤,及在所述开发用LSI上开发所述程序的步骤。
根据本发明,安装到具有包括机密存储器的LSI的系统中的程序的开发,是在其结构和该LSI一样且被设定为和程序安装及产品工作时的商品操作模式不同的开发模式的开发用LSI中进行的。换句话说,因为可将拥有含不可改写区域的机密存储器且隐匿性高的LSI的操作模式从安装模式转换为开发模式,而将该LSI1作程序开发环境用,故能使程序开发环境的安全性比现有技术下的安全性高。
最好是,在所述本发明所涉及的程序开发方法中,限制LSI的操作,做到:当将它设定为开发模式时能执行明文程序,同时当将它设定为商品操作模式时则不能执行明文程序。
所述本发明所涉及的程序开发方法,最好是,包括:在所述开发用LSI上,对在所述程序开发步骤中开发的程序加密的加密步骤。
在所述本发明所涉及的程序开发方法中,最好是,限制LSI的操作,以做到:当将它设定为开发模式时,不会生成用以将明文程序加密的密钥。
所述本发明所涉及的程序开发方法,最好是,包括:以其结构与所述LSI一样的LSI作密钥生成用LSI,将它设定为与开发模式及商品操作模式不同的密钥生成模式的步骤;将加密后的密钥生成程序安装到所述密钥生成用LSI上并通过执行该密钥生成程序而生成密钥的步骤。而且,最好是,限定所述LSI的操作,做到:在将它设定为密钥生成模式的时候,不能执行明文程序。或者是,最好是,包括:以其结构与所述LSI一样的LSI作管理者用LSI,将它设定为与开发模式、商品操作模式及密钥生成模式不同的管理模式的步骤;在上述管理者用LSI上开发所述密钥生成程序并用任意密钥加密的步骤。
本发明提供一种支援加密程序的开发的程序开发支援装置,它包括:其结构与上述加密程序运作的LSI一样的LSI和将明文程序存储起来的外部存储器;所述LSI又包括存储与原有的共有密钥有关的共有密钥密钥信息的机密存储器。而且,可执行从存储在所述机密存储器中的共有密钥密钥信息得到原有的共有密钥的第1步骤;及用所述原有的共有密钥将从所述外部存储器输入的明文程序加密的第2步骤。
根据本发明,给出了其结构与成为开发对象的加密程序运作的LSI的结构一样的LSI作开发环境。在该LSI上,从存储在机密存储器中的共有密钥密钥信息得到原有的共有密钥,同时使用该原有的共有密钥对从外部存储器输入的明文程序加密。换句话说,可执行原有的共有密钥的解密和利用了该原有的共有密钥对明文程序的加密。因此,故可在原有的共有密钥不被程序开发者不得知的情况下,执行明文程序的加密。
本发明提供了一种支援加密程序的开发的程序开发支援装置,它包括:LSI和将明文程序存储起来的外部存储器,所述LSI又包括:存储与原有的共有密钥有关的共有密钥密钥信息的机密存储器和存储引导程序的引导ROM。而且,包括:通过执行存储在所述引导ROM中的引导程序,而执行从存储在所述机密存储器中的共有密钥密钥信息得到原有的共有密钥的第1步骤,及用所述原有的共有密钥对从所述外部存储器输入的明文程序加密的第2步骤。
根据本发明,通过在LSI上执行引导程序,从存储在机密存储器中的共有密钥密钥信息得到原有的共有密钥,同时使用该原有的共有密钥将从外部存储器输入的明文程序加密。换句话说,是通过引导程序执行原有的共有密钥的解密和利用了该原有的共有密钥的明文程序的加密,而不是利用来自外部的指示来执行原有的共有密钥的解密和利用了该原有的共有密钥的明文程序的加密。因此,故既确能防止原有的共有密钥被程序开发者得知,又能执行对明文程序的加密。
在所述本发明所涉及的程序开发支援装置中,最好是,所述共有密钥密钥信息包括:用原有的第1中间密钥对原有的共有密钥加密后而得到的加密共有密钥、和用原有的第2中间密钥将所述原有的第1中间密钥加密后而得到的加密第1中间密钥。所述第1步骤,最好是利用所述加密共有密钥、加密的第1中间密钥及程序加密种子对所述原有的共有密钥解密。
本发明提供一种将加密的程序安装到包括拥有机密存储器的LSI及外部存储器的密钥安装系统中的方法,该方法包括:将与原有的共有密钥有关的共有密钥密钥信息和与原有的固有密钥有关的固有密钥密钥信息存储在所述机密存储器中的初始值设定处理;在所述LSI上,从存储在所述机密存储器中的共有密钥密钥信息得到原有的共有密钥的第1步骤;在所述LSI上,用在所述第1步骤得到的原有的共有密钥对从所述外部存储器施来的共有密钥加密程序解密的第2步骤;在所述LSI上,从存储在所述机密存储器中的固有密钥密钥信息得到原有的固有密钥的第3步骤;在所述LSI上,用在所述第3步骤得到的原有的固有密钥对在所述第2步骤得到的明文程序加密的第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的操作受到限制,结果是不能执行明文程序。
-开发模式-
当模式ID为“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 (5)
1、一种将加密的程序写入到具有LSI及外部存储器的密钥安装系统中的方法,所述LSI具有存储引导程序的引导ROM和机密存储器,包括如下步骤:
将与未加密的共有密钥有关的共有密钥密钥信息和与未加密的固有密钥有关的固有密钥密钥信息存储在所述机密存储器中的初始值设定处理,
在所述LSI上,从存储在所述机密存储器中的共有密钥密钥信息得到未加密的共有密钥的第1步骤,
在所述LSI上,用在所述第1步骤得到的未加密的共有密钥对从所述外部存储器施来的共有密钥加密程序解密的第2步骤,
在所述LSI上,从存储在所述机密存储器中的固有密钥密钥信息得到未加密的固有密钥的第3步骤,
在所述LSI上,用在所述第3步骤得到的未加密的固有密钥对在所述第2步骤得到的明文程序加密的第4步骤,以及
仅在所述LSI第一次起动时,执行上述第1~第4步骤,
将在所述第4步骤中得到的固有密钥加密程序写入到所述外部存储器中。
2、根据权利要求1所述的方法,其中:
将所述固有密钥密钥信息存储到所述机密存储器的不可改写区域。
3、根据权利要求1所述的方法,其中:
所述共有密钥密钥信息包括:用未加密的第1中间密钥对未加密的共有密钥加密后而得到的加密共有密钥、和用未加密的第2中间密钥对所述未加密的第1中间密钥加密后而得到的加密第1中间密钥;
在所述第1步骤中,利用所述加密共有密钥、加密第1中间密钥和程序加密种子对所述未加密的共有密钥解密。
4、根据权利要求1所述的方法,其中:
所述固有密钥密钥信息包括:用未加密的第1中间密钥对未加密的固有密钥加密后而得到的加密固有密钥、和用未加密的第2中间密钥对所述未加密的第1中间密钥加密后而得到的加密第1中间密钥;
在所述第3步骤中,利用所述加密固有密钥、加密第1中间密钥和程序加密种子对所述未加密的固有密钥解密。
5、根据权利要求1所述的方法,其中:
所述固有密钥密钥信息为该LSI所固有的固有ID。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002215096 | 2002-07-24 | ||
JP2002215096A JP2004054834A (ja) | 2002-07-24 | 2002-07-24 | プログラム開発方法、プログラム開発支援装置およびプログラム実装方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB031330525A Division CN1323350C (zh) | 2002-07-24 | 2003-07-23 | 确保lsi中程序安全的方法、程序开发支持装置及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1967482A true CN1967482A (zh) | 2007-05-23 |
Family
ID=29997246
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006101605473A Pending CN1967482A (zh) | 2002-07-24 | 2003-07-23 | 程序开发方法、程序开发支援装置及程序安装方法 |
CNB031330525A Expired - Fee Related CN1323350C (zh) | 2002-07-24 | 2003-07-23 | 确保lsi中程序安全的方法、程序开发支持装置及其方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB031330525A Expired - Fee Related CN1323350C (zh) | 2002-07-24 | 2003-07-23 | 确保lsi中程序安全的方法、程序开发支持装置及其方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US7685435B2 (zh) |
EP (4) | EP1385078A3 (zh) |
JP (1) | JP2004054834A (zh) |
CN (2) | CN1967482A (zh) |
TW (1) | TWI242123B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004054834A (ja) | 2002-07-24 | 2004-02-19 | Matsushita Electric Ind Co Ltd | プログラム開発方法、プログラム開発支援装置およびプログラム実装方法 |
EP1387238B1 (en) | 2002-07-30 | 2011-06-15 | Fujitsu Limited | Method and apparatus for reproducing information using a security module |
JP4576100B2 (ja) * | 2002-07-30 | 2010-11-04 | 富士通株式会社 | 情報再生装置、セキュアモジュールおよび情報再生方法 |
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 |
Family Cites Families (83)
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 |
JPH0822390A (ja) | 1994-07-05 | 1996-01-23 | Advance Co Ltd | ソフトウエア防衛方式 |
US5892900A (en) | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
JPH08305558A (ja) * | 1995-04-27 | 1996-11-22 | Casio Comput Co Ltd | 暗号化プログラム演算装置 |
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 |
EP1653463A1 (en) * | 1997-05-13 | 2006-05-03 | Kabushiki Kaisha Toshiba | License information copying method and apparatus, license information moving method |
EP0912052A1 (en) * | 1997-09-25 | 1999-04-28 | CANAL+ Société Anonyme | Method and apparatus for recording of encrypted digital data |
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 | 多重鍵方式の暗号処理機能を有するマイクロプロセッサ |
EP0994599A4 (en) * | 1998-04-01 | 2009-06-03 | Panasonic Corp | DATA TRANSMITTING / RECEIVING METHOD, DATA TRANSMITTER, DATA RECEIVER, DATA TRANSMITTING / RECEIVING SYSTEM, AUDIOVISUAL CONTENT TRANSMITTING METHOD, AUDIOVISUAL CONTENT RECEIVING METHOD, AUDIOVISUAL CONTENT TRANSMITTER, AUDIOVISUAL CONTENT RECEIVER , AND RECORD SUPPORT |
US6246770B1 (en) * | 1998-04-23 | 2001-06-12 | General Electric Company | Method and apparatus for feature configuration in remotely located ultrasound imaging system |
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 |
US7110984B1 (en) * | 1998-08-13 | 2006-09-19 | International Business Machines Corporation | Updating usage conditions in lieu of download digital rights management protected content |
US6226618B1 (en) * | 1998-08-13 | 2001-05-01 | International Business Machines Corporation | Electronic content delivery system |
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 | デジタル集積回路 |
JP3779837B2 (ja) * | 1999-02-22 | 2006-05-31 | 松下電器産業株式会社 | コンピュータ及びプログラム記録媒体 |
WO2000057290A1 (fr) | 1999-03-19 | 2000-09-28 | Hitachi, Ltd. | Processeur d'informations |
AU3629400A (en) | 1999-03-19 | 2000-10-09 | Cybersource Corporation | Method and apparatus for verifying address information |
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 |
JP3677001B2 (ja) * | 1999-12-03 | 2005-07-27 | 三洋電機株式会社 | データ配信システムおよびそれに用いられる記録装置 |
JP2001274786A (ja) * | 2000-01-21 | 2001-10-05 | Victor Co Of Japan Ltd | コンテンツ情報伝送方法、コンテンツ情報記録方法、コンテンツ情報伝送装置、コンテンツ情報記録装置、伝送媒体、及び記録媒体 |
JP2001211149A (ja) | 2000-01-25 | 2001-08-03 | Sony Corp | データ処理装置およびデータ処理方法、並びにプログラム提供媒体 |
US7270193B2 (en) | 2000-02-14 | 2007-09-18 | Kabushiki Kaisha Toshiba | Method and system for distributing programs using tamper resistant processor |
JP3888823B2 (ja) * | 2000-02-14 | 2007-03-07 | 松下電器産業株式会社 | 半導体集積回路 |
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 |
CN1219382C (zh) * | 2000-09-05 | 2005-09-14 | 中兴通讯股份有限公司 | 一种新的加密装置 |
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 |
US7627860B2 (en) * | 2001-08-14 | 2009-12-01 | National Instruments Corporation | Graphically deployment of a program with automatic conversion of program type |
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 | プログラム開発方法、プログラム開発支援装置およびプログラム実装方法 |
-
2002
- 2002-07-24 JP JP2002215096A patent/JP2004054834A/ja active Pending
-
2003
- 2003-07-23 CN CNA2006101605473A patent/CN1967482A/zh active Pending
- 2003-07-23 TW TW092120074A patent/TWI242123B/zh not_active IP Right Cessation
- 2003-07-23 CN CNB031330525A patent/CN1323350C/zh not_active Expired - Fee Related
- 2003-07-23 US US10/624,481 patent/US7685435B2/en active Active
- 2003-07-24 EP EP03016912A patent/EP1385078A3/en not_active Withdrawn
- 2003-07-24 EP EP09177740A patent/EP2163963A3/en not_active Withdrawn
- 2003-07-24 EP EP10183653A patent/EP2264637A3/en not_active Withdrawn
- 2003-07-24 EP EP08167396.4A patent/EP2028579B1/en not_active Expired - Lifetime
-
2008
- 2008-07-09 US US12/170,160 patent/US8190912B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8190912B2 (en) | 2012-05-29 |
EP1385078A3 (en) | 2008-02-06 |
TW200401976A (en) | 2004-02-01 |
US20090037721A1 (en) | 2009-02-05 |
US7685435B2 (en) | 2010-03-23 |
CN1323350C (zh) | 2007-06-27 |
EP2028579A2 (en) | 2009-02-25 |
JP2004054834A (ja) | 2004-02-19 |
CN1477495A (zh) | 2004-02-25 |
EP2163963A3 (en) | 2010-06-30 |
EP2163963A2 (en) | 2010-03-17 |
EP2264637A3 (en) | 2012-06-27 |
TWI242123B (en) | 2005-10-21 |
US20040153657A1 (en) | 2004-08-05 |
EP2028579A3 (en) | 2009-06-03 |
EP2264637A2 (en) | 2010-12-22 |
EP1385078A2 (en) | 2004-01-28 |
EP2028579B1 (en) | 2017-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1797267A (zh) | 有加密部分或外部接口的半导体器件及内容再生方法 | |
CN100350394C (zh) | 用于安全执行指令的方法、处理器和计算机系统 | |
US9842212B2 (en) | System and method for a renewable secure boot | |
CN1505311A (zh) | 程序更新方法及服务器 | |
CN1967482A (zh) | 程序开发方法、程序开发支援装置及程序安装方法 | |
CN1647443A (zh) | 初始化、维护、更新和恢复利用数据访问控制功能的集成系统中的安全操作 | |
US20120260106A1 (en) | System and method for binary layout randomization | |
US7970133B2 (en) | System and method for secure and flexible key schedule generation | |
US20170046280A1 (en) | Data processing device and method for protecting a data processing device against attacks | |
CN1771484A (zh) | 存储器信息保护系统、半导体存储器及存储器信息的保护方法 | |
CN1717639A (zh) | 芯片集成保护装置 | |
JP2010033603A (ja) | 情報処理装置 | |
CN111291389B (zh) | 一种计算机核心程序全生命周期的保护方法及系统 | |
JP2007249996A (ja) | プログラム開発支援装置およびプログラム実装方法 | |
JP2009169989A (ja) | プログラム実装方法および情報処理装置 | |
JP4580024B2 (ja) | コンテンツ再生方法 | |
JP4676547B2 (ja) | 半導体装置およびそのブート方法 | |
JP4336690B2 (ja) | 外部インターフェースを有する半導体装置 | |
CN1227605C (zh) | 具有解释功能的lsi和使用其的信息记录/再现设备 | |
JP2010033613A (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 | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20070523 |
|
C20 | Patent right or utility model deemed to be abandoned or is abandoned |