执行安全启动的片上系统、使用该片上系统的图像形成装置及其方法_6

文档序号:8548103阅读:来源:国知局
是存储设备,而控制器可以是CPU、处理器、集成电路、可编程逻辑器件、现场可编程门阵列和/或任何适当的控制器设备。通信单元可以是经由有线和/或无线通信链路接收和发送数据的任何设备。
[0239]存储装置2610可以存储密文。根据各种固件的版本,密文可以被单独地(即,与存储在存储装置2610中的其它数据分开地)存储在存储装置2610中。当存储装置2610连接到一个或多个设备(即,包括存储装置2610的主机设备2600经由通信单元2630通信地连接到一个或多个设备)时,包括每个设备的识别信息的密文可以被单独地存储,所述识别信息诸如型号名称、制造商名称、序号、固件名称、固件版本等。
[0240]当发生预定事件时,通信单元2630可以接收存储在图像形成装置中的密文。如上所述,预定事件可以包括检查密文是否是伪造的,通信单元向图像形成装置请求密文以及接收密文。这里,版本信息和识别信息以及密文可以被接收到。
[0241]控制器2620通过使用从图像形成装置1000接收的版本信息和识别信息等,读取存储在存储装置2610中的密文当中与图像形成装置1000的固件版本相对应的密文。控制器2620比较所读取的密文与接收到的密文。当两个密文彼此相同时,控制器2620确定密文不是伪造的,并且控制器2620控制图像形成装置1000处于打印的等待状态。当两个密文彼此不同时,控制器2620确定密文是伪造的,并且控制器2620阻止使用图像形成装置1000
[0242]图28和图29是图示出与彼此不同的版本相对应的明文和密文的本总体发明构思的示范性实施例的视图。在图28中,当在操作S2830,明文(版本1)2820根据版本I由密钥值2810加密时,密文(版本1)2840被生成。密文(版本I) 2840可以被存储在非易失性存储器中。如在以上公开的本总体发明构思的各种示范性实施例中,当启动被执行时,或者当各种操作必须被执行时,CPU 130读取存储在非易失性存储器(例如,非易失性存储器200)中的加密代码,或者,即,密文(版本I) 2840。在操作S2850,CPU 130通过使用密钥值2810解密密文(版本I) 2840,密钥值2810与在操作S2830的加密中使用的密钥值(例如,密钥2810)相同,并且生成明文(版本I) 2820,并使用明文(版本1)2820。
[0243]图29是根据版本2的明文和密文的示范性实施例。即使假设图29中的密钥值2810与版本I的密钥值2810相同,根据版本2的明文2920也不同于版本I的明文2820,从而,在于操作S2930的加密之后的密文2940也不同于版本I。在操作S2950,密文2940由CPU 130使用密钥值2810在操作S2950解密,以便生成明文2920的版本2,从而CPU 130可以使用明文(版本2) 2920。
[0244]同样地,根据装置的版本的密文被存储在每个图像形成装置中并被使用,但是与多个版本中的每一个相对应的多个密文可以被存储在主机设备2600中。
[0245]图30图示了密钥值被泄露且代码被攻击的状态。被攻击的代码的密文3020不是正式发布的版本,而是由攻击者修改原始文本以便生成新的明文3010而得到的密文3020,然后分别在加密的操作S2930和解密的操作S2950期间将(暴露和/或泄露的)密钥值2810应用到明文3010。也就是说,在操作S2930,使用密钥2810加密新的明文(即,被攻击的代码)3010以形成密文3020。在操作S2950,密文3020使用密钥2810进行解密以形成新的明文3010(即,被攻击的代码)。当这个密文3020被存储在非易失性存储器中时,CPU130必须按攻击者意图地执行启动,从而,难以正常地管理图像形成装置。然而,这里,主机设备2600没有在主机设备2600中注册,从而,主机设备2600可以通过检查密文来确定图像形成装置1000是处于正常状态还是处于被攻击的状态。
[0246]具体而言,当图像形成装置1000的版本信息不是预存储的版本信息时,或者即使其是预存储的版本信息,当与版本信息匹配的密文不同于图像形成装置1000的密文时,控制器2620确定信息处于被攻击的状态。因此,控制器2620阻止使用相应的图像形成装置1000
[0247]根据这个示范性实施例,即使当密钥值被暴露时,可以减少和/或防止固件被攻击者修改。
[0248]当图像形成装置执行启动时,包括片上系统100的主控制器可以通过控制各种可消耗单元(例如,图像形成装置1000中的可消耗单元)的操作来执行用户请求的作业。如图10中所描述的,可消耗单元1600-1到1600-n可以根据图像形成装置1000的类型而被不同地配备。可消耗单元1600-1到1600-n中的一个或多个可以包括CRUM芯片1610-1到1610-n。
[0249]CRUM芯片1610-1到1610_n可以执行主控制器1100 ( S卩,其包括片上系统100)之间的认证,并且当认证完成时,可以执行加密数据通信。可以用各种方法执行认证。
[0250]作为认证的过程的示范性实施例,如果主控制器(例如,主控制器1100)要执行认证,则对于认证的请求可被发送到CRUM芯片(例如,CRUM芯片1610-1到1610-n中的至少一个)。这里,主控制器可以将第一值发送到至少一个CRUM芯片。主控制器可以随机生成第一值,或者可以是预存储的固定值。当接收到对于认证的请求时,CRUM芯片生成第二值(例如,该值可以被随机生成),并且CRUM芯片通过使用第一值和第二值来生成会话密钥,然后,生成第一 MAC(Message Authenticat1n Code,消息认证代码)。CRUM芯片可以将所生成的第一 MAC与第二值一起发送到主控制器。第二值以及第一值可以是随机值和/或随机固定值。当接收到第二值时,主控制器通过使用由主控制器生成的第一值和第二值来生成会话密钥,并通过使用会话密钥来生成第二 MAC。主控制器将第二 MAC与第一 MAC进行比较,并且当它们相同时,确定对于CRUM芯片的认证完成。在这个过程中,主控制器检查存储在CRUM芯片中的电子签名信息,并执行认证。
[0251]当第一 MAC不同于第二 MAC时,主控制器(例如,在图10中图示的主控制器1100)确定认证失败,并再次执行认证。这里,执行认证的频率可以是有限的。可替换地,可以由主控制器周期性地执行认证。
[0252]图31是图示出根据示范性实施例的控制方法的流程图。如图31中所图示的,操作S3110确定CRUM芯片的认证是否成功。当CRUM芯片的认证失败时,在操作S3120,图像形成装置通过计算失败的次数来存储失败频率。也就是说,在操作S3120,可以计算和存储执行CRUM芯片的认证的次数(和失败认证的次数)。在操作S3130,主控制器(例如,在图10中图示的主控制器1100)或图像形成装置(例如,图像形成装置1000)的片上系统(例如,片上系统100)确定失败频率是否大于预定阈值频率。
[0253]当在操作S3130确定失败频率大于阈值频率时,在操作S3140执行惩罚功能。具体而言,可以输出指示认证已经失败的声音消息或视觉消息,或者图像形成装置可以被开启,或者改变为处于不可能打印的状态。相应的CRUM芯片和主控制器之间的连接可以被阻止,并且可以向外部主机设备或其它服务器设备通知认证失败。
[0254]当在操作S3130确定所述频率小于阈值频率时,在操作S3150,主控制器询问用户是否想要再次执行认证。因此,当用户再次请求认证时,在操作S3160,主控制器用上述方法执行认证。
[0255]当在操作S3110确定认证成功时,在操作S3170,主控制器与相应的CRUM芯片执行加密通信。例如,主控制器可以通过加密各种数据和命令来发送加密的通信消息,并且CRUM芯片可以回复加密的通信消息。MAC可用于加密的通信消息。例如,当生成将被发送到CRUM芯片的通信消息时,主控制器通过将密钥和加密算法应用到数据来生成第三MAC。通信消息可以通过第三MAC来添加,并且可以被发送到CRUM芯片。
[0256]CRUM芯片从接收到的通信消息中提取数据部分,并通过应用上述密钥和加密算法来生成第四MAC。CRUM芯片比较从所发送的通信消息读取的第三MAC与所生成的第四MAC。当确定第三MAC和第四MAC相同时,其被认为是合法的通信消息,并且执行与该消息相对应的操作。当确定第三MAC和第四MAC彼此不同时,其被认为是不合法的通信消息,从而可以被取消。
[0257]如上所述,根据本总体发明构思的各种示范性实施例,可以减少和/或防止对图像形成装置的攻击。在上述各种示范性实施例中,为了方便基于图像形成装置进行了解释,但是本总体发明构思的示范性实施例不限于图像形成装置的操作。也就是说,可以应用各种类型的电子设备、其它图像形成装置、上述各种示范性实施例的方法。
[0258]以上各种方法或操作可以由存储在非瞬时计算机可读介质中的程序来执行。非瞬时计算机可读介质是指半永久地存储数据的介质、而不是诸如寄存器、高速缓冲存储器以及存储器在很短的时间存储数据的介质,并且可由装置读取。更具体地,上述各种应用或程序可以被存储在非瞬时计算机可读介质中并且可以被提供,非瞬时计算机可读介质诸如致密盘(CD)、数字多功能盘(DVD)、硬盘、蓝光盘、通用串行总线(USB)存储棒、存储卡以及只读存储器(ROM)。
[0259]具体而言,存储程序代码的非瞬时计算机可读介质可以使用存储在片上系统的第一存储器中的初始化数据来执行初始化。当执行初始化时,可以执行使用存储在第一存储器中的多个加密密钥之一对存储在非易失性存储器中的加密的数据进行解密。解密的数据可以在片上系统的第二存储器中,并且可以按顺序使用存储在第二存储器中的数据执行启动操作。
[0260]虽然已经示出和描述了本总体发明构思的一些实施例,但是本领域技术人员将领会,在不脱离总体发明构思的原理和精神的情况下,可以在这些实施例中做出各种改变,总体发明构思的范围在所附权利要求及其等效物中定义。
【主权项】
1.一种片上系统,包括: 第一存储器,用于存储多个加密密钥; 第二存储器; 第三存储器,用于存储加密密钥设定值; 第一存储器控制器,用于控制对第一存储器的访问; 第二存储器控制器,用于控制对第二存储器的访问; 总线; CPU,用于使用所述多个加密密钥当中与所述加密密钥设定值相对应的加密密钥来解密存储在外部非易失性存储器中的加密的数据,将解密的数据存储在第二存储器中,并且使用存储在第二存储器中的数据执行启动;以及 开关单元,用于根据所述CPU的操作状态选择性地将第一存储器控制器和第二存储器控制器之一与所述总线连接。
2.如权利要求1所述的片上系统,其中,第一存储器控制器包括寄存器,其中寄存了关于第一存储器的访问控制值, 其中,所述开关单元根据所述访问控制值选择性地将第一存储器控制器和第二存储器控制器之一与所述总线连接, 其中,当所述CPU对第一存储器的使用完成时,所述CPU通过改变所述访问控制值来禁止对第一存储器的访问。
3.一种片上系统,包括: 第一存储器,用于存储多个加密密钥; 第二存储器; 第三存储器,用于存储加密密钥设定值; CPU,用于使用所述多个加密密钥当中与所述加密密钥设定值相对应的加密密钥来解密存储在外部非易失性存储器中的加密的数据,将解密的数据存储在第二存储器中,并且使用存储在第二存储器中的数据执行启动;以及 存储器控制器,其通信地耦合到所述CPU,包括用于选择与外部存储器的连接状态的至少一个开关, 其中,所述存储器控制器根据第一密钥值和第二密钥值之间的比较结果,选择性地将从所述CPU接收到的写信号输出到所述外部存储器。
4.如权利要求3所述的片上系统,其中,当第一密钥值和第二密钥值相同时,所述存储器控制器控制所述至少一个开关选择连接状态,以便将所述写信号输出到所述外部存储器。
5.如权利要求3所述的片上系统,其中,所述存储器控制器控制所述至少一个开关以便禁止到所述外部存储器的连接,从而防止所述写信号被输出到所述外部存储器。
6.如权利要求5所述的片上系统,其中,即使在所述存储器控制器防止所述写信号被输出到所述外部存储器时,所述存储器控制器也控制所述外部存储器的读操作。
7.如权利要求3所述的片上系统,其中,所述至少一个开关包括第一开关和第二开关,其中所述存储器控制器控制第一开关以便控制所述外部存储器的读操作,并且控制第二开关以控制与第二开关的连接以便控制所述写信号到所述外部存储器的输出。
8.一种片上系统,包括: 第一存储器,用于存储多个加密密钥; 第二存储器; 第三存储器,用于存储加密密钥设定值; CPU,用于使用所述多个加密密钥当中与所述加密密钥设定值相对应的加密密钥来解密存储在外部非易失性存储器中的加密的数据,将解密的数据存储在第二存储器中,并且使用存储在第二存储器中的数据执行启动;以及代码生成单元,用于生成软件代码, 其中,所述CPU通过使用所述软件代码来执行初始化。
9.如权利要求8所述的片上系统,其中,所述代码生成单元包括: 地址解码器,用于从所述CPU接收地址并解码所述地址; 多个寄存器;以及 复用器,用于通过根据在所述地址解码器中解码的地址选择性地读取存储在所述多个寄存器中的寄存器值、并且通过组合所述寄存器值来生成所述软件代码。
10.如权利要求8所述的片上系统,其中,所述代码生成单元包括: 地址解码器,用于从所述CPU接收地址并解码所述地址; 第一生成单元,用于从所述地址解码器中解码的地址生成指令地址; 多个指令寄存器,其被划分为多个组; 多个指令复用器,用于根据所述指令地址从所述多个指令寄存器中选择性地读取寄存器值; 代码格式化器,用于通过组合在所述多个指令复用器中读取的值来生成代码; 第二生成单元,用于从所述地址解码器中解码的地址生成数据地址; 多个数据寄存器; 数据复用器,用于根据所述数据地址从所述多个数据寄存器中选择性地读取寄存器值并组合所读取的值;以及 复用器,用于通过组合在所述代码格式化器中生成的代码与在第二复用器中组合的数据来生成所述软件代码。
11.一种主机设备,包括: 存储装置,用于存储与多个版本中的每一个相对应的多个密文; 通信单元,用于在发生预定事件时接收存储在图像形成装置中的密文; 控制器,用于当与所述图像形成装置的固件版本相对应的密文与接收到的密文相同时,控制所述图像形成装置处于打印的等待状态,并且当所述密文和所述固件版本彼此不同时,所述控制器阻止对所述图像形成装置的使用。
12.—种电子设备,包括: 存储器设备;以及 片上系统,包括: 中央处理单元(CPU);以及 存储器控制器,其通信地耦合到所述CPU和所述存储器设备,所述存储器控制器用于根据第一密钥值和第二密钥值之间的比较结果,向所述存储器设备选择性地输出从所述(PU接收到的写信号。
13.如权利要求12所述的电子设备,其中,当第一密钥值和第二密钥值相同时,所述存储器控制器控制至少一个开关选择连接状态以便向所述存储器设备输出所述写信号。
14.如权利要求13所述的电子设备,其中,所述存储器控制器控制所述至少一个开关以便禁止到所述存储器设备的连接,从而防止所述写信号被输出到所述存储器设备。
15.如权利要求14所述的电子设备,其中,即使当所述存储器控制器防止所述写信号被输出到所述存储器设备时,所述存储器控制器也控制所述存储器设备的读操作。
【专利摘要】提供了一种片上系统。该片上系统包括:第一存储器,用于存储多个加密密钥;第二存储器;第三存储器,用于存储加密密钥设定值;以及CPU,用于使用多个加密密钥当中与加密密钥设定值相对应的加密密钥来解密存储在外部非易失性存储器中的加密的数据,将解密的数据存储在第二存储器中,并且使用存储在第二存储器中的数据执行启动。因此,可以提高启动操作的安全性。
【IPC分类】G06F21-34, G06F9-44
【公开号】CN104871169
【申请号】CN201380064091
【发明人】张泰弘, 李钟胜, 全真辉
【申请人】三星电子株式会社
【公开日】2015年8月26日
【申请日】2013年11月15日
【公告号】EP2907068A1
当前第6页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1