软件的正当性确认方法及执行软件的装置制造方法及图纸

技术编号:2859177 阅读:162 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供软件的正当性确认方法及执行软件的装置。在软件中包含用来确认该软件的正当性的正当性确认模块。提取该正当性确认模块,利用提取的正当性确认模块进行正当性的确认。于是,利用该确认结果,判断该软件的正当性。

【技术实现步骤摘要】

本专利技术涉及软件的正当性确认方法及执行软件的装置
技术介绍
以往,在预先将程序编入ROM(Read Only Memory只读存储器)等之中而构成的被称为编入装置的电子装置中,在改变出厂时安装的程序的情况下,必须更换ROM等来改变硬件。然而,近年来,即使是这种编入装置,也可以像通用计算机那样构成电子器件,以使在出厂后对程序等软件进行安装或置换以便使用的例子正在增加。因此,可以认为,在软件中,特别是在程序安装中,证明所安装的程序是正当程序,在将该程序安装到电子装置中之后执行时不会使该电子装置受到不良影响这一点是很重要的。在因特网领域中,用来证明经因特网安装的程序是正当程序的方法有数种。下面对其中之一的Java(注册商标)的代码签名方法予以说明(所谓Java(注册商标),是SUN Microsystems开发的编程语言,是SUN Microsystems的注册商标)。Java(注册商标)程序大多是以称为Jar文件的文件形式进行分发的。在Java(注册商标)中,在此Jar文件上签名。此处所说的所谓签名是数字签名,数字签名是根据在Jar文件中存放的内容数据和实体(公司或个人等等)持有的非公开密钥计算出的位串,内容数据不同时,数字签名的位串也不同。Java(注册商标)程序的开发者,为了证明签名是真实的,必须具有与非公开密钥成对的公开密钥和为证明该公开密钥由权威认证机构发行的证书。为了得到此证书,开发者要向认证机构提供用来确定开发者本身的个人信息等等。通过在Jar文件上实现这种签名,可以识别所安装的Java(注册商标)程序是可以信赖的代码,并且,可由签名者改变赋予程序的权限。另外,许可执行所安装的程序的方法,在US P5812980及特开平2-31227号公报及特开平10-187433号公报等中有记述。任何一种方法的构成都是当安装的程序及电子装置持有的特定信息及从外部给予的执行许可用的关键词等受到在电子装置中从最初就存在的程序(进行安装的安装程序等)或所安装的程序本身的确认,当其为正当时,才许可执行所安装的程序。另外,在US P5802275及特开2000-322254号公报中还记述了在所安装的程序本身经过加密,并在安装之际在使用电子装置可使用的译码用的密钥进行译码之后进行安装的方法。然而,作为在将程序安装到电子装置中之际作为用来证明该程序是正当程序的方法,在使用上述以往的代码签名方法的情况下,是可以确定进行了代码签名的签名者(程序开发者)的,但不能证明该签名者对于安装程序的电子装置来说是否可以信赖。所以,就存在在程序安装时,即使是不进行该程序的开发者对于上述电子装置是否是可以信赖的确认,通过只进行签名就信赖该开发者而必须进行安装的问题。此外,这就存在为了查清签名的可靠性,就必须访问因特网上存在的认证机构判明签名附带的证书是真实的,而在不能联网的状态下,即在离线时没有调查签名是否真实的办法的问题。另外存在,在上述US P5812980等之中公开的以往的程序执行许可机构中,在许可中使用的数据(上述特定的信息及上述关键词单等等)被固定,比如,即使是打算使用更强的密码算法也不能使用等等缺乏灵活性的问题。此外,如上述的US P5802275等之中所公开的,还存在在装载加密的程序时经过译码进行安装的方法中,由于会立即将包含不需要的程序模块的全部程序在安装时进行译码,而译码需要花费时间,会使安装时间增加的问题。
技术实现思路
本专利技术的目的是简单灵活地保证程序的可靠性。另外,本专利技术的另一目的是由电子装置的制造厂对安装于电子装置中的软件是对电子装置正常生成的这一点进行认证。本专利技术的另一目的是提供一种从软件中提取用于确认该软件的正当性的正当性确认模块;判断由上述提取步骤提取的正当性确认模块的确认结果的软件的正当性确认方法。本专利技术是一种具有存储软件的存储单元,以及执行存储于上述存储单元中的软件的执行单元;其中,上述执行单元,从存储于上述存储单元中的软件中,提取用于确认该软件的正当性的正当性确认模块;并判断所提取的正当性确认模块的确认结果的装置。另外,本专利技术的其他目的可由以下的实施例说明得到了解。附图说明图1为示出实施方式的信息处理系统的主要部分的结构框图。图2为示出在实施方式中使用的档案文件(ArchiveFile)的结构的示图。图3为示出实施方式1的处理的流程图。图4为示出实施方式2的处理的流程图。具体实施例方式图1为示出具有执行本专利技术的软件的装置的一个例子的电子装置的信息处理系统的主要部分的结构框图。在同图中,此信息处理系统是由执行所安装的程序的电子装置1010与连接到电子装置1010并指示程序安装的个人计算机(PC)1020经过网络1040相连接而构成的。在PC1020内,存放应该安装到电子装置1010中的程序文件1030。另外,在电子装置1010内,用于控制电子装置1010的控制部1050、存放由控制部1050所执行的程序的程序存储部1060及经网络1040与外部进行通信的通信部1070经由总线1080相连接。在控制部1050中用于解释执行Java(注册商标)程序的Java(注册商标)虚拟机进行(以下称其为JVM)工作,可执行Java(注册商标)程序。控制部1050是从程序存储部1060中读出存储于程序存储部1060中的程序并进行处理的计算机。电子装置1010一个例子是具有打印机功能和扫描仪功能的装置,但本专利技术并不限定于这种装置。程序安装以如下方式进行。即,PC1020经由通信部1070与控制部1050进行通信,将存在于PC1020中的程序文件1030发送到电子装置1010。于是,接受程序文件1030的数据(程序)的控制部1050,将该数据(程序)作为具有下面说明的在图2中所示的格式结构的程序文件存放于程序存储部1060。另外,此处说明的是经网络1040来安装程序的示例,但本专利技术并不限定于经过这种网络来安装程序的系统,也可以应用从CD-ROM或DVD-ROM等存储媒体来安装程序的系统。图2为示出在对图1所示的电子装置1010安装程序之际所使用的档案文件(ArchiveFile)的格式的示图。在同图中,2010是档案文件(ArchiveFile),文件元素(FileElement)1,2,...,N-2,N-1,N具有线性排列的形式。2020表示各文件元素1~N的内容。各文件元素1~N分别由表示文件元素的开始的文件元素识别信息(File Element Signature)21、表示数据区的长度的数据长度信息(Data Length)22、表示文件名的长度的文件名长度信息(File Name Length)23、存放文件名的文件名字段(File Name)24及存放文件数据的数据字段(Data)25构成。另外,图中的2030表示程序存放于数据字段中时的上述数据字段25的结构(内容)。此数据字段2030由存放在程序为明文时算出的消息摘要值的消息摘要值字段31和存放被加密的程序的程序字段32组成。另外,在本实施方式中,对加密程序的方式进行说明,但本专利技术,并不限定于这样的加密程序的方式,也可以不经过加密。在作为档案文件(ArchiveFile)2010的文件元素存放Java(注册商标)类的情况下,作为此档案文件(Arc本文档来自技高网
...

【技术保护点】
一种软件的正当性确认方法,其特征在于:从软件中提取用于确认该软件的正当性的正当性确认模块;判断由上述提取步骤判断的正当性确认模块的确认结果。

【技术特征摘要】
JP 2004-3-31 2004-1058761.一种软件的正当性确认方法,其特征在于从软件中提取用于确认该软件的正当性的正当性确认模块;判断由上述提取步骤判断的正当性确认模块的确认结果。2.根据权利要求1所述的方法,其特征在于还具有启动在上述提取步骤中正当性得到确认的软件的启动步骤。3.根据权利要求1所述的方法,其特征在于上述提取步骤提取具有规定名字的正当性确认模块。4.根据权利要求1所述的方法,其特征在于上述判断步骤还具有执行由上述提取步骤提取出的正当性确认模块的执行步骤。5.根据权利要求1所述的方法,其特征在于在上述判断步骤中,判断正当性确认模块对安装了软件的装置是否适合该软件进行了确认的结果。6.根据权利要求1所述的方法,其特征在于在上述判断步骤中,将正当性确认模块对确认结果进行了译码的结果和安装了软件的装置的制造厂的数字签名进行比较。7.根据权利要求1所述的方法,其特征在于在上述判断步骤中,正当性确认模块对成为软件的入口的模块进行...

【专利技术属性】
技术研发人员:牛久丰彦
申请(专利权)人:佳能株式会社
类型:发明
国别省市:JP[日本]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1