信息处理设备及其控制方法与流程

文档序号:18752584发布日期:2019-09-24 21:21阅读:176来源:国知局
信息处理设备及其控制方法与流程

本发明涉及一种信息处理设备和信息处理方法。



背景技术:

通过篡改程序来攻击计算机和多功能外围设备的方案已成为问题。

日本特开2005-148934讨论了用于判断程序的正当性(validity)的技术。

存在在不同电力状态下使用不同的程序的系统。在这种系统中,例如,如果在第二电力状态下运行的程序被篡改,则在第二电力状态下执行基于篡改后的程序的处理。



技术实现要素:

根据本发明的一个方面,一种信息处理设备,其被配置为在第一电力状态下操作以及在比所述第一电力状态节省更多电力的第二电力状态下操作,所述信息处理设备包括:第一处理器,其被配置为执行第一程序,所述第一程序用于控制在所述第一电力状态下操作的所述信息处理设备;以及第二处理器,其被配置为执行第二程序,所述第二程序用于在所述信息处理设备在所述第二电力状态下操作的情况下接收并处理用以将所述信息处理设备从所述第二电力状态改变成所述第一电力状态的指示,其中,所述信息处理设备验证所述第一处理器所要执行的所述第一程序以及第二处理器所要执行的所述第二程序。

根据本发明的一个方面,一种信息处理设备,包括:第一控制单元,其被配置为在第一电力状态下控制所述信息处理设备;以及第二控制单元,其被配置为在功耗小于所述第一电力状态下的功耗的第二电力状态下控制所述信息处理设备,其中,在所述第一控制单元接收到用以从所述第一电力状态转变成所述第二电力状态的指示的情况下,所述第一控制单元进行与所述第二控制单元的处理的执行有关的程序的验证,并且在所述验证失败的情况下,所述第一控制单元限制从所述第一电力状态向所述第二电力状态的转变。

根据本发明的一个方面,一种信息处理设备的控制方法,所述信息处理设备被配置为在第一电力状态下操作以及在比所述第一电力状态节省更多电力的第二电力状态下操作,所述控制方法包括:验证第一程序,所述第一程序用于控制处于所述第一电力状态的所述信息处理设备;验证第二程序,所述第二程序用于在所述信息处理设备在所述第二电力状态下操作的情况下接收并处理用以将所述信息处理设备从所述第二电力状态改变成所述第一电力状态的指示;执行验证后的第一程序,以控制在所述第一电力状态下操作的所述信息处理设备;以及在所述信息处理设备改变成所述第二电力状态之前,执行验证后的第二程序。

通过以下参考附图对典型实施例的说明,本发明的其它特征将变得明显。

附图说明

图1是示出图像形成设备的硬件结构的示例的框图。

图2是示出图像形成设备的功能结构的示例的框图。

图3a和3b是示意性示出启动序列的框图。

图4是在图像形成设备的启动时进行篡改检测的情况下所执行的流程图。

图5是在睡眠模式转变时进行篡改检测的情况下所执行的流程图。

图6a和6b是各自示出电力状态的示例的框图。

具体实施方式

下面将参考附图来描述本发明的实施例。

图1是示出图像形成设备10的硬件结构的示例的框图。图像形成设备10是信息处理设备的示例。

操作单元150包括用于操作图像形成设备10的数字小键盘、用于显示的液晶面板以及用于通过点亮/闪烁来通知图像形成设备10的状态的发光二极管(led)。

扫描器单元130从原稿光学地读取图像并将所读取的图像转换为数字图像。

打印机单元120是用于将数字图像输出到纸介质上的引擎。

控制器单元100控制各装置和各单元。控制器单元100是通用中央处理单元(cpu)系统。

cpu101控制整个图像形成设备10。cpu101是在第一电力状态下控制图像形成设备10的第一控制单元的示例。下面描述的图6a所示的电力状态是正常电力状态,其是第一电力状态的示例。

只读存储器(rom)103存储用于启动控制器单元100的引导程序和固定参数。

嵌入式控制器(ec)102验证引导rom程序的正当性。

cpu101使用随机存取存储器(ram)104作为工作存储器。

嵌入式多媒体卡(emmc)105存储要由cpu101执行的程序和各种数据。

emmc105用作cpu101的主存储器。

网络接口(i/f)106经由有线局域网(lan)或无线lan将图像形成设备10连接到外部网络。

传真单元160相对于诸如电话线等的线路来发送和接收数字图像。

电源单元140向图像形成设备10供给电力。

在图像形成设备10断电的情况下,通过电源开关148来切断交流(ac)电力。

在通过接通电源开关148来将ac电力供给至ac-dc转换器141的情况下,生成直流(dc)电力。

图像形成设备10基于cpu101的指示,针对整个图像形成设备10以三个独立模式来进行电源控制。

例如,控制器单元电源开关控制线142基于cpu101的指示来对控制器单元电力145(即,向控制器单元100的电力供给)进行off/on(断开/接通)控制。

类似地,基于cpu101的指示,打印机单元电源开关控制线143进行用于向打印机单元电力146的电力供给的off/on控制,并且扫描器单元电源开关控制线144进行用于向扫描器单元电力147的电力供给的off/on控制。

图1示出简化的结构。

例如,cpu101包括诸如芯片组、总线桥和时钟发生器等的cpu外围硬件组件。然而,这些cpu外围硬件组件对于描述并不重要。因此,以简化的方式示出cpu101。图1所示的结构并不意图限制本实施例。

将使用纸介质上的图像打印作为示例来描述控制器单元100的操作。

当用户经由i/f单元从诸如个人计算机(pc)和传真机等的外部设备或扫描器单元130提供用于进行图像打印的指示时,cpu101通过进行向ram104的直接存储器访问(dma)传输来临时保存数字图像数据。

在判断为在ram104中已经保存了预定量的数字图像数据或全部数字图像数据时,cpu101向打印机单元120提供图像输出指示。

cpu101通知ram104中的图像数据的位置。基于来自打印机单元120的同步信号,将ram104上的图像数据发送到打印机单元120,并且将数字图像数据在打印机单元120处打印在纸介质上。

在进行多份打印的情况下,cpu101将ram104上的图像数据存储到emmc105中。由此,cpu101可以将图像数据发送到打印机单元120以用于第二份及随后的份,而无需从外部设备请求图像数据。

图像形成设备10还包括仅在睡眠模式下操作的由cpu107用作工作存储器的静态随机存取存储器(sram)108。cpu107是第二控制单元的示例,该第二控制单元在功耗小于第一电力状态下的功耗的第二电力状态下控制图像形成设备10。(下面描述的)图6b所示的状态是省电状态,其是第二电力状态的示例。

cpu101基于rom103和ec102各自所存储的程序来执行处理,使得实现(下面描述的)图2中的引导程序206和睡眠模式程序211之外的功能。此外,cpu101基于rom103和ec102各自所存储的程序来执行处理,使得实现由(下面描述的)图4和图5各自所示的流程图表示的处理。cpu107基于sram108中所存储的程序来执行处理,使得实现(下面描述的)图2中的睡眠模式程序211的功能。此外,ec102基于rom103中所存储的程序来执行处理,使得实现(下面描述的)图2中的引导程序206的功能。

图2是示出包括图像形成设备10的功能结构的结构的示例的框图。

用户接口(ui)控制器212接收对操作单元150的输入,进行与该输入相对应的处理,并在操作单元150上显示画面。

引导程序206是当图像形成设备10通电时由ec102执行的程序。引导程序206进行与启动相关的处理,并且包括用于检测引导rom程序的篡改的引导rom篡改检测处理模块201。

引导rom程序207是在由此执行引导程序206之后由cpu101执行的程序。引导rom程序207进行与启动相关的处理,并且包括用于检测内核208的篡改的内核篡改检测处理模块202。

内核208是在引导rom程序207的处理完成之后由cpu101执行的程序。内核208进行与启动相关的处理,并且包括用于检测本地程序209的篡改的本地程序篡改检测处理模块203。

本地程序209是由cpu101执行的程序。本地程序209包括用于与图像形成设备10的程序210协作地提供各功能的多个程序。本地程序209包括用于控制扫描器单元130的程序和启动程序。内核208从本地程序209调用启动程序以执行启动处理。本地程序209还包括用于检测java程序210的篡改的java程序篡改检测处理模块204和用于检测睡眠模式程序211的篡改的睡眠模式程序篡改检测处理模块205。

java程序210是由cpu101执行的程序,并且与图像形成设备10的本地程序209协作地提供各功能(例如,用于在操作单元150显示画面的程序)。

睡眠模式程序211是cpu107在睡眠模式转变中执行的程序。睡眠模式程序211提供睡眠模式下的各功能(即,用于从网络i/f106或操作单元150输入的从睡眠恢复指示的处理)。

图3a是示出在启动时检测篡改的情况下所执行的启动序列的示意图。

引导程序206包括用于引导rom签名验证的公钥301。引导rom程序207包括引导rom签名302和用于内核验证的公钥303。内核208包括内核签名304和用于本地程序签名验证的公钥305。本地程序209包括本地程序签名306和用于java程序签名验证的公钥307。java程序210包括java程序签名308。

图3b是示出在进行睡眠模式转变中的篡改检测处理的情况下所执行的启动序列的示意图。

本地程序209包括用于睡眠模式程序签名验证的公钥310。睡眠模式程序211包括睡眠模式程序签名311。

检测处理模块201、202、203、204和205验证各程序,并且在未检测到篡改的情况下启动下一程序。因此,执行图像形成设备10的启动和睡眠模式转变。

检测处理模块的签名和公钥已经在图像形成设备10出厂之前添附到程序。

图4是示出用于启动时的篡改检测的信息处理的示例的流程图。

当图像形成设备10通电时,从rom103读出引导程序206,并且ec102执行引导程序206。包括在引导程序206中的引导rom篡改检测处理模块201从emmc105读取引导rom程序207以及用于内核验证的公钥303和引导rom签名302并存储在ram104中。

在步骤s401中,引导rom篡改检测处理模块201使用用于引导rom验证的公钥301来进行引导rom签名302的验证,并判断该验证是否成功。如果引导rom签名的验证失败(步骤s401中为“否”),则处理进入步骤s410。在步骤s410中,引导rom篡改检测处理模块201接通操作单元150的led,并且图4所示的流程图的处理结束。

在签名的验证成功的情况下(步骤s401中为“是”),引导rom篡改检测处理模块201解除cpu101的复位,并且引导程序206结束。

在解除cpu101的复位时,处理进入步骤s402。在步骤s402中,cpu101从emmc105读取引导rom程序207和用于内核验证的公钥303并存储在ram104中,并且启动引导rom程序207。

在启动时,引导rom程序207进行各种初始化处理。包括在引导rom程序207中的内核篡改检测处理模块202从emmc105读取内核208并将内核208存储到ram104中。

在步骤s403中,内核篡改检测处理模块202使用用于内核验证的公钥303来验证内核签名304,并判断该验证是否成功。

在签名的验证失败的情况下(步骤s403中为“否”),处理进入步骤s409。在步骤s409中,内核篡改检测处理模块202在操作单元150处显示错误消息,并且图4所示的流程图的处理结束。

在签名的验证成功的情况下(步骤s403中为“是”),内核篡改检测处理模块202结束处理,并且处理进入步骤s404。

当内核篡改检测处理模块202的处理结束时,处理进入步骤s404。在步骤s404中,引导rom程序207启动存储在ram104中的内核208。

在启动时,内核208进行各种初始化处理。

内核208中所包括的本地程序篡改检测处理模块203从emmc105读取本地程序209、用于java程序验证的公钥307以及本地程序签名306,并存储在ram104中。

在步骤s405中,本地程序篡改检测处理模块203使用用于本地程序验证的公钥305来进行本地程序签名306的验证,并判断该验证是否成功。

在签名的验证失败的情况下(步骤s405中为“否”),处理进入步骤s409。在步骤s409中,本地程序篡改检测处理模块203在操作单元150处显示错误消息,并且图4所示的流程图的处理结束。

在签名的验证成功的情况下(步骤s405中为“是”),本地程序篡改检测处理模块203结束篡改检测的处理,并且处理进入步骤s406。

在步骤s406中,本地程序篡改检测处理模块203启动本地程序209。

在本地程序209中,启动用于进行篡改检测的java程序篡改检测处理模块204。当java程序篡改检测处理模块204启动时,java程序篡改检测处理模块204从emmc105读取java程序210和java程序签名308并存储在ram104中。

在步骤s407中,java程序篡改检测处理模块204使用用于java程序验证的公钥307来进行java程序签名308的验证,并判断该验证是否成功。

如果签名的验证失败(步骤s407中为“否”),则处理进入步骤s409。在步骤s409中,java程序篡改检测处理模块204在操作单元150处显示错误消息,并且图4所示的流程图的处理结束。

如果签名的验证成功(步骤s407中为“是”),则java程序篡改检测处理模块204结束篡改检测的处理,并且处理进入步骤s408。

在步骤s408中,java程序篡改检测处理模块204启动java程序210。

图5是示出在睡眠模式转变时执行篡改检测的情况下的信息处理的示例的流程图。

由于图像形成设备10处于启动状态,因此如图6a所示,cpu107和sram108之外的组件被供给电力。

在步骤s501中,cpu101接收睡眠模式转变指示。

例如,在预定时间内安装在操作单元150上的睡眠模式改变按钮或装置未被使用的情况下,各程序和装置生成睡眠模式转变指示。

在本地程序209中,启动用于进行篡改检测的睡眠模式程序篡改检测处理模块205。当睡眠模式程序篡改检测处理模块205启动时,睡眠模式程序篡改检测处理模块205从emmc105读取睡眠模式程序211和睡眠模式程序签名311并存储在ram104中。

在步骤s502中,睡眠模式程序篡改检测处理模块205使用用于睡眠模式程序签名验证的公钥310来进行睡眠模式程序签名311的验证,并判断验证是否成功。

如果签名的验证失败(步骤s502中为“否”),则处理进入步骤s505。在步骤s505中,睡眠模式程序篡改检测处理模块205在操作单元150处显示错误消息,并且图5所示的处理结束。换句话说,在签名的验证失败的情况下,睡眠模式程序篡改检测处理模块205停止向睡眠状态的改变。在签名的验证失败的情况下,睡眠模式程序篡改检测处理模块205可以在保留向睡眠状态的改变的同时显示消息。之后,睡眠模式程序篡改检测处理模块205可以基于用户的指示来判断是否限制向睡眠状态的改变。“向睡眠状态的改变的限制”包括停止和保留向睡眠状态的改变。

在签名的验证成功的情况下(步骤s502中为“是”),处理进入步骤s503。在步骤s503中,睡眠模式程序篡改检测处理模块205结束检测处理。然后,cpu101解除cpu107的复位。

在步骤s504中,cpu107通过从sram108读取睡眠模式程序211来启动睡眠模式程序211,并且图像形成设备10转变成睡眠模式。

如图6b所示,在睡眠模式,向cpu107、sram108以及与从睡眠模式恢复相关的传真单元160和网络i/f106供给电力。

以上描述了本发明的实施例作为示例,但是本发明不限于该特定实施例。

使用仅在睡眠模式下运行的程序和cpu描述了本实施例,但是也可以采用其它程序。

尽管描述了rom103和emmc105以呈现为用于保存各种程序的位置,但是保存位置不限于这些示例并且也可以采用其它存储介质。

根据上述实施例,即使在睡眠模式转变时检测到篡改的情况下,也可以在不会影响正常功能的情况下防止篡改造成的损害。此外,即使在睡眠状态下运行的程序被篡改的情况下,也可以防止在睡眠状态下基于该程序执行处理。

其它实施例

本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(cpu)、微处理单元(mpu)读出并执行程序的方法。

尽管已经参考实施例说明了本发明,但是应该理解,本发明不局限于所公开的实施例。所附权利要求书的范围符合最宽的解释,以包含所有这类修改、等同结构和功能。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1