安全启动装置及方法制造方法及图纸

技术编号:35587319 阅读:20 留言:0更新日期:2022-11-16 15:02
本申请提供了一种安全启动装置及方法,属于电子技术领域。该安全启动装置中的控制电路能够通过不可编程电路获取非易失性存储器中的启动代码,并采用信任根校验该启动代码。由此,即使处理器中未内置信任根,也能通过控制电路实现对启动代码的校验,从而有效降低了安全启动过程对处理器性能的依赖。并且,由于该不可编程电路能通过两种不同类型的接口分别与控制电路和非易失性存储器连接,因此有效降低了安全启动过程对控制电路的接口协议类型的要求,提高了安全启动方案的应用灵活性。又由于该不可编程电路不能够被编程,因此能确保通过该不可编程电路获取到的启动代码的可靠性。性。性。

【技术实现步骤摘要】
安全启动装置及方法
[0001]本申请要求于2021年5月12日提交的申请号为202110519403.7、专利技术名称为“一种系统启动的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。


[0002]本申请涉及电子
,特别涉及一种安全启动装置及方法。

技术介绍

[0003]为了实现电子设备的安全启动(secure boot),电子设备的处理器中一般内置有信任根(root of trust,ROT)。处理器上电后,可以采用该信任根对电子设备的闪存(flash)中存储的启动代码(也可以称为启动固件)进行校验,该启动代码可以为基本输入输出系统(basic input/output system,BIOS)。若该启动代码校验通过,则处理器可以正常加载该启动代码,以实现电子设备的安全启动;若该启动代码校验未通过,则处理器不会加载该启动代码,相应的,电子设备启动失败。
[0004]但是,上述安全启动的方法是基于处理器内置信任根的情况下,对处理器的性能的依赖性较高,若处理器中未内置信任根,则无法实现安全启动。

技术实现思路

[0005]本申请提供了一种安全启动装置及方法,可以解决安全启动方法对处理器的性能依赖性较高的技术问题,即在处理器未内置信任根的情况下,通过上述方法可以实现处理器的安全启动,有效降低了安全启动过程对处理器性能的依赖,提高了处理器启动的安全性。
[0006]一方面,提供了一种安全启动装置,该安全启动装置包括:控制电路和不可编程电路;该不可编程电路通过第一接口与控制电路连接,并通过第二接口与非易失性存储器连接;该控制电路中存储有信任根,该控制电路能够通过该不可编程电路获取非易失性存储器中存储的启动代码,并采用信任根校验该启动代码;其中,该第一接口和第二接口的接口协议类型不同。
[0007]基于本申请提供的安全启动装置,即使处理器中未内置信任根,也可以通过控制电路实现对启动代码的校验,有效降低了安全启动过程对处理器性能的依赖,提高了安全启动的灵活性。并且,由于不可编程电路能通过两种不同协议类型的接口分别与控制电路和非易失性存储器连接,因此即使控制电路不具备与非易失性存储器相匹配的接口,也能通过该不可编程电路获取到启动代码。由此,有效降低了安全启动过程对控制电路的接口协议类型的要求,进一步提高了安全启动方案的应用灵活性。又由于不可编程电路不能够被编程,因此通过上述不可编程电路获取的启动代码不能被修改,因此能确保通过该不可编程电路获取启动代码时的可靠性,进而确保校验过程的可信度较高。
[0008]可选地,该不可编程电路可以通过第一接口与控制电路的第三接口连接,并可以通过该第二接口与非易失性存储器的第四接口连接;其中,该第三接口的接口协议类型为
串行外设接口(serial peripheral interface,SPI),该第四接口的接口协议类型为局部总线(local bus,LBUS)接口。由此,采用SPI的控制电路即可通过不可编程电路获取到采用LBUS接口的非易失性存储器中的启动代码。
[0009]由于控制电路的尺寸通常较小,其所能设置的引脚数量有限,而SPI所需的引脚数量较少,因此控制电路采用SPI获取启动代码,可以有效节约控制电路的引脚资源。
[0010]可选地,该不可编程电路可以为联合测试工作组(joint test action group,JTAG)电路,该JTAG电路包括第一接口,且该第一接口的接口协议类型可以为JTAG。由于JTAG电路不可编程,因此可以采用该JTAG电路作为不可编程电路,以确保获取启动代码时的可靠性。
[0011]可选地,该JTAG电路可以集成在电子器件中。该电子器件可以为需要进行安全启动的设备中的电子器件。由于可以直接采用该电子器件中集成的JTAG电路作为不可编程电路,因此可以避免额外增设专用于进行接口转换的电路,从而有效降低了安全启动装置的成本和结构复杂度。
[0012]可选地,该电子器件可以包括复杂可编程逻辑器件(complex programmable logic device,CPLD)或第一处理器,且该电子器件包括第二接口。也即是,电子器件中集成的JTAG电路可以通过该电子器件的第二接口与非易失性存储器连接。
[0013]由于CPLD或第一处理器具有与非易失性存储器连接的第二接口,因此可以直接采用该CPLD或第一处理器中的JTAG电路作为不可编程电路。由此,可以有效减少对设备中原有器件的结构和连接关系的改动,进而降低该安全启动装置的实现成本。
[0014]可选地,通过该不可编程电路获取非易失性存储器中存储的启动代码的过程可以包括:控制该JTAG电路的工作模式为边界扫描模式,并获取该启动代码。
[0015]该JTAG电路处于边界扫描模式时,JTAG电路中与该第二接口连接的边界扫描单元可以将电子器件(例如CPLD或第一处理器)的第二接口与该电子器件的内部逻辑电路隔离,并可以获取该第二接口接收到的启动代码。由于第二接口与电子器件的内部逻辑电路隔离,因此控制电路通过该JTAG电路获取到的启动代码不会经过电子器件的内部逻辑电路,进而可以避免电子器件的内部逻辑电路被篡改而导致获取到的启动代码不可信的问题。
[0016]可选地,控制该JTAG电路的工作模式为边界扫描模式的过程可以包括:向该JTAG电路发送第一测试模式选择(test mode selection,TMS)信号,以控制该JTAG电路的状态为移位(shift)指令寄存器(instruction register,IR)状态;然后向该JTAG电路发送第一指令,以控制该JTAG电路的工作模式为边界扫描模式。
[0017]其中,JTAG电路的状态为移位IR状态时,控制电路发送的第一指令可以被写入至JTAG电路中的IR,从而控制该JTAG电路的工作模式为边界扫描模式。
[0018]可选地,控制电路获取启动代码的过程可以包括:向JTAG电路发送第二TMS信号,以控制该JTAG电路的状态为移位数据寄存器(data register,DR)状态;然后向JTAG电路发送地址信号和控制信号,该地址信号用于指示启动代码在非易失性存储器中的存储地址,该控制信号用于指示读取该非易失性存储器中的数据;之后向该JTAG电路发送移位数据,并获取启动代码。
[0019]JTAG电路的工作模式为边界扫描模式,且JTAG电路处于移位DR状态时,控制电路向JTAG电路发送地址信号和控制信号可以被加载至第二接口。非易失性存储器通过该第二
接口获取到地址信号和控制信号后,即可向该第二接口传输启动代码,JTAG电路中与该第二接口连接的边界扫描单元进而可以获取到该启动代码。控制电路向JTAG电路发送移位数据后,该移位数据可以被移入至与第二接口连接的边界扫描单元,进而使得该边界扫描单元将获取到的启动代码移出至控制电路。
[0020]可以理解的是,由于该移位数据是用于将启动代码从边界扫描单元中移出的数据,其数据内容没有本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种安全启动装置,其特征在于,所述安全启动装置包括:控制电路和不可编程电路;所述不可编程电路通过第一接口与所述控制电路连接,所述不可编程电路通过第二接口与非易失性存储器连接,所述第一接口和所述第二接口的接口协议类型不同;所述控制电路中存储有信任根,所述控制电路用于通过所述不可编程电路获取所述非易失性存储器中存储的启动代码,以及采用所述信任根校验所述启动代码。2.根据权利要求1所述的安全启动装置,其特征在于,所述不可编程电路通过所述第一接口与所述控制电路的第三接口连接,并通过所述第二接口与所述非易失性存储器的第四接口连接,所述第三接口的接口协议类型为串行外设接口SPI,所述第四接口的接口协议类型为局部总线LBUS。3.根据权利要求1或2所述的安全启动装置,其特征在于,所述不可编程电路为联合测试工作组JTAG电路,所述JTAG电路包括所述第一接口,且所述第一接口的接口协议类型为JTAG。4.根据权利要求3所述的安全启动装置,其特征在于,所述JTAG电路集成在电子器件中。5.根据权利要求4所述的安全启动装置,其特征在于,所述电子器件包括复杂可编程逻辑器件CPLD或第一处理器,所述电子器件包括所述第二接口。6.根据权利要求3至5任一所述的安全启动装置,其特征在于,所述通过所述不可编程电路获取所述非易失性存储器中存储的启动代码,包括:控制所述JTAG电路的工作模式为边界扫描模式;获取所述启动代码。7.根据权利要求6所述的安全启动装置,其特征在于,所述控制所述JTAG电路的工作模式为边界扫描模式,包括:向所述JTAG电路发送第一测试模式选择信号,以控制所述JTAG电路的状态为移位指令寄存器IR状态;向所述JTAG电路发送第一指令,以控制所述JTAG电路的工作模式为所述边界扫描模式。8.根据权利要求6或7所述的安全启动装置,其特征在于,所述获取所述启动代码,包括:向所述JTAG电路发送第二测试模式选择信号,以控制所述JTAG电路的状态为移位数据寄存器DR状态;向所述JTAG电路发送地址信号和控制信号,所述地址信号用于指示所述启动代码在所述非易失性存储器中的存储地址,所述控制信号用于指示读取所述非易失性存储器中的数据;向所述JTAG电路发送移位数据,获取所述启动代码。9.根据权利要求5至8任一所述的安全启动装置,其特征在于,所述JTAG电路集成在CPLD中,且所述安全启动装置还包括:第一多路选择器;所述控制电路分别与所述第一多路选择器的控制端和第一端连接,所述第一多路选择器的第二端与第二处理器的JTAG接口连接,所述第一多路选择器的第三端与所述JTAG电路
的所述第一接口连接;所述控制电路用于控制所述第一多路选择器的第三端与第一端导通,或者控制所述第一多路选择器的第三端与第二端导通;其中,所述第一多路选择器的第一端、第二端和第三端均为JTAG接口。10.根据权利要求5所述的安全启动装置,其特征在于,所述JTAG电路集成在所述第一处理器中,所述第一处理器中还集成有存储器控制器,所述存储器控制器包括所述第二接口;所述通过所述不可编程电路获取所述非易失性存储器中存储的启动代码,包括:控制所述JTAG电路的工作模式为控制器控制模式;获取所述启动代码。11.根据权利要求10所述的安全启动装置,其特征在于,所述控制所述JTAG电路的工作模式为控制器控制模式,包括:向所述JTAG电路发送第一测试模式选择信号,以控制所述JTAG电路的状态为移位IR状态;向所述JTAG电路发送第二指令,以控制所述JTAG电路的工作模式为所述控制器控制模式。12.根据权利要求10或11所述的安全启动装置,其特征在于,所述获取所述启动代码,包括:向所述JTAG电路发送第二测试模式选择信号,以控制所述JTAG电路的状态为移位DR状态;向所述JTAG电路发送地址信号和控制信号,所述地址信号用于指示所述启动代码在所述非易失性存储器中的存储地址,所述控制信号用于指示读取所述非易失性存储器中的数据;接收所述JTAG电路发送的所述启动代码,所述启动代码是所述JTAG电路通过所述存储器控制器的所述第二接口获取到的。13.根据权利要求3至12任一所述的安全启动装置,其特征在于,所述第一接口与所述控制电路的SPI连接;所述控制电路还用于实现所述SPI与所述第一接口的接口协议转换。14.根据权利要求13所述的安全启动装置,其特征在于,所述安全启动装置还包括:第二多路选择器;所述控制电路还具有第一IO引脚和第二IO引脚;所述SPI包括串行时钟SCK引脚、主发从收MOSI引脚以及主收从发MISO引脚;所述第一接口包括测试时钟TCK引脚、测试数据输入TDI引脚、测试数据输出TDO引脚以及测试模式选择TMS引脚;所述SCK引脚与所述TCK引脚连接,所述MISO引脚与所述TDO引脚连接,所述MOSI引脚与所述第二多路选择器的第一端连接,所述第二多路选择器的第二端与所述TMS引脚连接,所述第二多路选择器的第三端与所述TDI引脚连接,所述第二多路选择器的控制端与所述第一IO引脚连接,所述第二IO引脚与所述TDI引脚连接;所述控制电路用于通过所述第一IO引脚控制所述第二多路选择器的第一端与第三端导通;
或者,所述控制电路用于通过所述第一IO引脚控制所述第二多路选择器的第一端与第二端导通,并通过所述第二IO引脚向所述TDI引脚发送TDI信号。15.根据权利要求13所述的安全启动装置,其特征在于,所述控制电路还具有第一IO引脚;所述SPI包括SCK引脚、MOSI引脚以及MISO引脚;所述第一接口包括TCK引脚、TDI引脚、TDO引脚以及TMS引脚;所述TCK引脚与所述SCK引脚连接,所述TDO引脚与所述MISO引脚连接,所述TDI引脚和所述TMS引脚中的一个引脚与所述MOSI引脚连接,所述TDI引脚和所述TMS引脚中的另一个引脚与所述第一IO引脚连接。16.根据权利要求1或2所述的安全启动装置,其特征在于,所述不可编程电路为串并转换电路,所述串并转换电路具有所述第一接口和所述第二接口,且所述第一接口的接口协议类型为SPI,所述第二接口的接口协议类型为LBUS。17.根据权利要求1至16任一所述的安全启动装置,其特征在于,所述控制电路还用于基于所述启动代码校验未通过,通过所述不可编程电路将所述非易失性存储器中存储的所述启动代码擦除。18.根据权利要求1至17任一所述的安全启动装置,其特征在于,所述控制电路为微控制单元MCU。19.根据权利要求1至18任一所述的安全启动装置,其特征在于,所述安全启动装置还包括所述非易失性存储器。20.根据权利要求5,或者权利要求10至12任一所述的安全启动装置,其特征在于,所述安全启动装置还包括所述第一处理器,所述第一处理器与所述非易失性存储器连接。21.根据权利要求9所述的安全启动装置,其特征在于,所述安全启动装置还包括所述第二处理器,所述第二处理器与所述非易失性存储器连接。22.一种安全启动方法,其特征在于,应用于安全启动装置,所述安全启动装置包括控制电路和不可编程电路;所述不可编...

【专利技术属性】
技术研发人员:叶继龙乔立忠苟伟成唐甜郭志刚
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1