CN104794393A - 一种嵌入式分区映像安全认证及内核可信引导方法及其设备 - Google Patents
一种嵌入式分区映像安全认证及内核可信引导方法及其设备 Download PDFInfo
- Publication number
- CN104794393A CN104794393A CN201510208470.1A CN201510208470A CN104794393A CN 104794393 A CN104794393 A CN 104794393A CN 201510208470 A CN201510208470 A CN 201510208470A CN 104794393 A CN104794393 A CN 104794393A
- Authority
- CN
- China
- Prior art keywords
- kernel
- boot
- bootloader
- reflection
- embedded
- 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.)
- Granted
Links
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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
-
- 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/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种嵌入式分区映像安全认证及内核可信引导方法,基于Android系统的嵌入式设备平台,在系统上电、系统Bootloader引导及内核加载启动的安全可信上采取系统分区和内核验证相结合的方式对系统进行安全加固。该方法对系统上电、Bootloader及内核分区Layout及部分加载域等按照特定规则做了安全加固及重构。本发明提供了一套新的基于安全硬件的嵌入式系统分区映像安全认证和操作系统内核可信引导方法,对嵌入式系统的启动过程进行多层加固,防止对系统BOOTLOADER、操作系统内核、文件系统数据或应用程序数据等进行恶意的劫持、篡改,以保护嵌入式设备的使用安全。
Description
技术领域
本发明属于嵌入式系统安全领域,尤其涉及一种嵌入式分区映像安全认证及内核可信引导方法及其设备。
背景技术
嵌入式系统应用开发不同于PC机,其开发过程同时涉及软硬件,需要将硬件平台的设计、操作系统以及上层应用开发综合考虑。由于应用和成本约束,嵌入式系统的硬件平台需根据应用量身定制,通常所用的PMU、存储器、外围设备等有多种选择余地,而且软件调试技术特殊,使得嵌入式平台的操作系统多样化并且差异化比较大,但是各种嵌入式操作系统从上电到系统启动完成的整个过程即嵌入式系统的引导和启动过程基本是一致的,差别主要是体现在各个系统在这一系列过程中的具体操作,比如对某一硬件的初始化流程、对文件系统的操作方式等,而系统的装载、执行过程再无大的差别。对于嵌入式操作系统来说,如图-1,其启动过程大致可以划分成三个阶段,即系统引导过程、操作系统内核启动过程、文件系统加载过程。
嵌入式系统的引导程序通常称为Bootloader,类似于PC系统上的BIOS。嵌入式系统的Bootloader一般由两部分构成:第一部分是片上(SOC)及板级系统(BSP)初始化代码,主要功能是通过设置MCU功能寄存器初始化各硬件单元初始工作模式,如设置时钟、存储器访问时序、中断控制寄存器等,完成内存映射,初始化MMU/MPU,初始化系统中断向量表等;第二部分是加载嵌入式操作系统内核程序,其功能是将操作系统内核映像从只读存储器装载或拷贝到系统RAM中,并跳转到内核映像入口处继续执行然后将系统控制权交给操作系统。嵌入式操作系统是嵌入式系统加电运行后的资源管理(包括硬件及软件资源)及调度平台,负责嵌入式实时任务的管理。如图-1基于以上两部的引导和执行,完成了系统引导及系统内核加载运行(注:嵌入式操作系统执行环境的初始化代码主要由硬件抽象层HAL代码、设备驱动程序初始化代码和操作系统执行初始化代码三部分构成)。操作系统加载运行后,将启动文件系统加载,文件系统存储了系统配置文件、系统程序、用户应用程序和必需的驱动程序,文件系统和操作系统紧密相连,对文件系统的操作和管理都由操作系统来完成。如图-2所示,嵌入式系统引导启动是一个线性的过程,在这个过程中Bootloader扮演极其重要的角色,操作系统以及后面的应用程序都由他装载并获得执行。在加载操作系统内核时有两个必要条件,包括:操作系统内核入口地址;操作系统内核初始化参数。操作系统内核入口地址由Bootloader在装载内核映像文件时根据映像文件的描述信息查找到其入口位置并记录该位置相对起始的偏移量,然后在合适的时机直接跳转到内核入口处开始执行内核程序。Bootloader根据系统的启动模式加载与模式相匹配的环境配置文件,然后生成内核执行时所需要的初始化参数,在引导内核启动时传给操作系统内核。目前嵌入系统所使用的Bootloader不是由芯片厂商提供的就是使用开源的项目,正是由于Bootloader的开放性使得其很容易被有针对性地分析研究,也即如果没有安全机制的嵌入,则嵌入式系统或应用程序极有可能存在被恶意篡改、安装后门等风险,给用户的利益和安全带来极大危害。为了尽量避免这种安全风险,目前各大厂商为了获得独有的系统价值、系统的稳定运行、用户信息安全等,采取的主要措施是对系统Bootloader加锁。加锁的Bootloader仅能引导原厂提供的固件,对任何第三方固件都不予识别,加锁后的Bootloader虽然第三方不能更改Bootloader的行为,但是仍可以对系统的启动过程进行监听分析,然后绕过Bootloader威胁系统安全。
Android系统作为当前较为流行和普及的系统,其内含有的嵌入式系统启动的一般次序为:系统上电;Bootloader引导;Linux内核启动;Init初始化系统服务等。1、系统上电。Android系统的应用处理器上电复位后,将PC指针指向复位时的零地址(即启动地址),从该地址读出启动程序的可执行代码直接运行或者将可执行代码与数据载入CPU内置的RAM中再运行。2.Bootloader引导。上电初始,DMA默认设置将存储在NAND flash中第一页的数据搬运到内部RAM中,然后设置PC到内部RAM的开始处的地址,开始执行启动代码;在启动代码中设置中断向量、硬件配置等;将执行代码搬运到外部SDRAM或DDR-RAM,留出启动代码的位置;将启动代码搬运SDRAM或DDR-RAM首址;设置remap,将0地址重新映射到SDRAM或DDR-RAM首地址;设置PC指针,开始执行正式的执行代码。Bootloader引导主要任务就是对硬件设备进行初始化,建立内存空间映射图,从而将系统的软、硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好环境。3.linux内核启动。Bootloader启动后,系统启动的控制权移交给kernel。Kernel启动主要包括:初始化内核、初始化设备驱动、启动内核、挂载文件系统和启动用户空间进程。Kernel初始化是对系统各个硬件设备进行配置工作。主要包括:创建异常向量表和初始化中断处理函数;初始化系统核心进程调度器和时钟中断处理机制;初始化串口控制台;创建和初始化系统,cache为各内存调用机制提供缓存;初始化内存管理,检测内存大小及被内核占用的内存情况;初始化系统的进程间通信机制。设备初始化主要是加载设备驱动。设备驱动加载有两种方式:静态加载和动态加载。静态加载是将所有模块的程序编译到linux内核中,设备驱动在内核启动中自动加载。以静态方式工加载的设备驱动是无法卸载的。动态加载是指驱动作为模块形式加载,设备驱动可以在系统启动后任何时候通过命令加载或卸载。Kernel初始化及设备初始化完成后,会创建一个根设备,然后将根文件系统以只读的方式挂载。根设备创建成功后,释放未使用内存并转换到真正的根上去,同时运行/sbin/init程序启动系统第一个进程,此后系统启动的控制权移交给init进程。4.init初始化系统服务。Init进程首先进行一系列的硬件初始化,然后通过命令行传递过来的参数挂载根文件系统,最后init进程会执行用户定义的init启动脚本。Init是所有linux系统进程的父进程,其进程ID为1,它负责系统的初始和启动,创建并运行系统中的关键进程,比如shell、login等,zygote进程就是由它所创建。
如图3和4所示,目前的嵌入式系统分区一般包括:U-Boot、Boot、Ramdisk、Recovery、System、Userdata等,分区的内容仅包括对应的映像原始数据,无法对他们进行安全校验。
综合上述,在软件方面,目前嵌入式系统或产品为存在很多入侵风险。嵌入式产品有数十种软件体系结构和操作系统,而这些软件体系结构和操作系统的安全等级各小相同,用户在与某个安全的嵌入式系统交互之前,必须经过一个认证过程来核实使用者身份。认证方案可能包括BOOTLOADER可信引导、操作系统认证(包括口令、生理特征(如指纹)或安全设置(如智能卡或密钥等)等。
发明内容
本发明为了解决目前嵌入式系统引导和启动的过程所产生的潜在安全问题,提供了一套对嵌入式系统的启动过程进行多层加固,防止对系统BOOTLOADER、操作系统内核、文件系统数据或应用程序数据等进行恶意的劫持、篡改,以保护嵌入式设备的使用安全的基于安全硬件的全新嵌入式系统分区映像安全认证和操作系统内核可信引导方法。
本发明是技术方案:一种嵌入式分区映像安全认证及内核可信引导方法,基于Android系统的嵌入式设备平台,在系统上电、系统Bootloader引导及内核加载启动的安全可信上采取系统分区和内核验证相结合的方式对系统进行安全加固。
优选地,该方法对系统上电、Bootloader及内核分区Layout及部分加载域等按照特定规则做了安全加固及重构。
优选地,该方法具体包括下述步骤:
1)实现系统上电及初始化阶段,确保DMA/MMU/MPU/CACHE/DDR/JTAG系统存储、处理器缓存及片上调试系统的物理隔离、系统访问权限控制,避免入侵者通过物理技术在此阶段”旁路攻击”,总线探测,确保U-Boot分区不被恶意篡改;
2)实现U-Boot映像文件重新封装,新的映像Layout定义了映像数据头信息和数字签名信息;
3)实现系统内核分区重构,重构后的内核映像包括映像数据头、映像原始数据、加密后的部分映像加载域数据及数字签名;
4)实现映像分区重构、安全加密及数字签名等在映像分区往目标硬件烧录或下载的时候即完成封装、加固,同时通过硬件安全单元及安全存储芯片的物理技术配合;
5)实现在目标硬件映像烧录或下载时即完成Bootloader特殊加载域硬加密、修通内核加载域的安全硬数字签名关键安全流程。
优选地,系统上电启动时,首先由片上固化的PBL执行系统上电后的系统资源基本初始化,同时加载NAND/eMMC从Block0开始存储的Bootloader映像中的SPL加载域到SRAM中,并执行SPL流程。
优选地,SPL和U-Boot是Bootloader映像的两个加载域,也是其两个BOOT逻辑流程,分别有特定功能定义,SPL主要功能就是初始化DDR,时钟等最小系统,具体包括:
a.配置ARM核,包括:中断向量表,Cache,MMU等;
b.配置UART/I2C等串并行接口;
c.配置电源管理单元PMU
d.配置系统内存单元DDR;
e.配置系统TIMER、中断系统;
f.配置U-Boot运行相关的硬件资源;
完成上述处理器基本资源的初始化后,SPL会读取U-boot分区,并运行U-Boot流程。
优选地,U-Boot流程包括:读取U-Boot分区的映像文件头信息;通过映像文件头信息加载相关的头映像数据;对装载进来的U-Boot映像数据进行解密、完整性校验及验签;上述任何执行过程如果验证失败,则走异常处理流程,系统引导失败,如果失败则走异常处理流程,系统引导失败;成功则执行Bootloader的第二阶段引导,运行U-Boot。
一种嵌入式分区映像安全认证及内核可信引导设备,包括处理器、分别通过系统总线连接在处理器上的系统内存、电源管理模块、存储介质、显示系统、通过专用总线连接在处理器上的安全单元以及通过专用控制总线连接在处理器上的密钥存储器。
本发明针对目前嵌入式系统引导和启动的过程所产生的潜在安全问题,提供了一套新的基于安全硬件的嵌入式系统分区映像安全认证和操作系统内核可信引导方法,对嵌入式系统的启动过程进行多层加固,防止对系统BOOTLOADER、操作系统内核、文件系统数据或应用程序数据等进行恶意的劫持、篡改,以保护嵌入式设备的使用安全。
本发明相对现有技术的创新在于:
1、在系统上电阶段,实现对处理器系统DMA/MMU/MPU/CACHE(I-CACHE/D-CACHE)/DDR/JTAG等存储、处理器缓存及片上调试系统的物理隔离、系统访问权限控制;
2、避免入侵者通过物理技术在此阶段“旁路攻击”,总线探测等,确保U-Boot分区不被恶意篡改;
3、实现Bootloader映像分区、内核映像分区、Bootloader初始化流程(嵌入硬解密流程)及内核加载流程(嵌入验签流程)的逻辑重构及严格安全认证;
4、通过硬件安全单元(SE)及安全存储芯片的物理技术扩展,实现Bootloader特殊加载域的硬加密、内核加载域的硬加密及数字签名;
5、在目标映像在线编程或下载阶段对Bootloader及内核分区映像进行安全硬加密和数字签名,确保嵌入式设备片上NAND/eMMC的数据唯一性,
6、避免入侵者通过物理技术(如JTAG、CHIP-OFF)拷贝片上数据和代码进行设备克隆或逻辑分析的可能。
与目前现有嵌入式系统引导和启动方法相比较,本方案对嵌入式系统分区格式进行了调整,在Bootloader的第一阶段加入了对U-Boot分区完整性安全校验及数字签名认证,在Bootloader的第二阶段加入了对操作系统内核映像的完整性安全校验、数字签名以及数据的加解密处理。分区格式的变化在满足了引导启动阶段的可信处理的同时,能有效防止入侵者生成虚拟映像以代替烧录固话的合法分区映像;对映像数据的完整性安全校验则可以防止不完整的映像文件对系统造成的破坏,比如无法开机、开机死机、功能失效等后果,提高系统引导和启动的成功率;结合终端的数字签名保证了分区映像数据的完整性、真实性及身份的特殊匹配;对内核映像文件的加解密处理可以防止对数据的非法攻击或恶意的篡改。
本方法实现了物理技术与逻辑技术的高度结合,实现了对Bootloader流程、内核加载流程、Bootloader映像及内核映像的安全防护,本方法的应用能有效保障装载系统Bootloader、操作系统内核的可信、安全,通过安全引导映像及配套的安全引导流程保护嵌入式设备的启动安全,特别对于有特殊安全固化要求的行业设备有特殊意义和价值。
附图说明
图1为本发明背景技术中提到的现有嵌入系统启动过程框图;
图2为本发明背景技术中提到的现有嵌入式系统启动详细流程;
图3为本发明背景技术中提到的现有嵌入式系统映像分区Layout;
图4为本发明背景技术中提到的现有嵌入式系统Bootloader映像分区Layout;
图5为传统的U-Boot分区映像Layout;
图6为本发明中支持安全认证的U-Boot分区映像Layout;
图7为一般的内核(Boot)分区Layout;
图8为本发明中支持可信引导的内核(Boot)分区Layout;
图9为本发明中SPL对U-Boot的加载安全认证流程图;
图10为本发明中内核(Boot)加载可信引导流程图;
图11为本发明中设备硬件原理框图。
其中Layout为规划图或者分布图的意思。
具体实施方式
下面结合附图对本发明作进一步详细的说明,但并不是对本发明保护范围的限制。
本发明提供了一套新的嵌入式系统分区映像安全认证、操作系统内核可信引导机制,本技术方案基于Android系统的嵌入式设备平台进行设计;对系统上电、Bootloader及内核分区Layout及部分加载域等按照特定规则做了安全加固及重构,具体包括:实现系统上电及初始化阶段,确保DMA/MMU/MPU/CACHE(I-CACHE/D-CACHE)/DDR/JTAG等系统存储、处理器缓存及片上调试系统的物理隔离、系统访问权限控制等,避免入侵者通过物理技术在此阶段“旁路攻击”,总线探测等,确保U-Boot分区不被恶意篡改;实现U-Boot映像文件重新封装,新的映像Layout定义了映像数据头信息和数字签名信息,如图6所示;实现系统内核(Boot)分区重构,重构后的内核映像包括映像数据头、映像原始数据、加密后的部分映像加载域数据及数字签名,如图8所示;实现映像分区重构、安全加密及数字签名等在映像分区往目标硬件烧录或下载的时候即完成封装、加固,同时通过硬件安全单元(SE)及安全存储芯片的物理技术配合,实现在目标硬件映像烧录或下载时即完成Bootloader特殊加载域硬加密、修通内核加载域的安全硬数字签名等关键安全流程。
如图9所示,系统上电启动时,首先由片上固化的PBL执行系统上电后的系统资源基本初始化,同时加载NAND/eMMC从BlockO开始存储的Bootloader映像中的SPL加载域到SRAM中,并执行SPL流程。SPL和U-Boot是Bootloader映像的两个加载域,也是其两个BOOT逻辑流程,分别有特定功能定义。SPL主要功能就是初始化DDR,时钟等最小系统,具体包括:
a.配置ARM核,包括:中断向量表,Cache,MMU等;
b.配置UART/I2C等串并行接口;
c.配置电源管理单元PMU
d.配置系统内存单元DDR;
e.配置系统TIMER、中断系统;
f.配置U-Boot运行相关的硬件资源;
完成上述处理器基本资源的初始化后,SPL会读取U-boot分区,并运行U-Boot流程。本方案在此过程中加入了U-Boot的特殊代码段解密及数字签名等安全验证流程,包括:读取U-Boot分区的映像文件头信息(映像文件的头信息包括:魔数、原始数据偏移地址及长度信息、数字签名信息存放位置及长度信息、数据完整性校验值信息等);通过映像文件头信息加载相关的头映像数据;对装载进来的U-Boot映像数据进行解密、完整性校验及验签(注:所有安全验证都基于安全存储芯片及硬件安全单元(SE)的密钥引擎、算法引擎)。上述任何执行过程如果验证失败,则走异常处理流程,系统引导失败。如果失败则走异常处理流程,系统引导失败;成功则执行Bootloader的第二阶段引导,运行U-Boot。
如图10所示,U-Boot主要功能就是加载系统Kernel。和SPL类似,U-Boot需要加载下一阶段的运行的映像文件,同时,U-Boot也会根据运行环境的要求重新配置处理器及外设相关资源,包括在安全验证流程中需要用到的安全存储芯片及安全单元(SE)。完成配置后,U-Boot会启动系统启动模式的仲裁,确认是Recovery、Normal、FTM或其他Power On Status,如果是Normal模式,U-Boot引导系统会查找操作系统内核映像的存储位置并装载系统内核映像到DDR中,并记录内核的入口地址及kernel启动的相关参数,同时把控制权交给内核,开始执行Kernel初始化。如图-7所示,本方案在加载Kernel映像到DDR之前,U-Boot加载系统会先执行安全认证流程,主要包括:完成Kernel部分加载域的解密;完成Kernel映像数据完整性校验;完成Kernel分区验签。安全认证流程的详细过程:U-Boot读取Boot分区的Kernel映像文件头信息,通过此头信息加载Kernel和数字签名信息等相关数据;U-Boot对装载进来的内核映像数据部分加载域进行解密,并做完整性校验,如果此安全验证失败则走异常处理流程,系统引导失败。其中,从安全存储芯片获取ChipID通过硬件安全单元(SE)密钥算法生成数字签名私钥,然后使用所生成的私钥对Kernel映像数据进行解密和验签,如果此安全认证失败,则说明该内核映像文件为非法或被破坏,系统引导失败。
本嵌入式设备分区映像安全认证及内核可信引导方案采用物理及逻辑技术结合的方式对嵌入式系统启动引导过程进行安全加固,做到系统启动过程的可信、安全。本方法的软件安全引导映像集成在Bootloader引导代码和操作系统内核代码中;硬件系统的安全加固配套设计,需要增加:安全单元(SE),主要负责安全密钥存储及加解密安全算法引擎的运行;安全存储芯片,主要存储只写保密引擎和只读CHIP ID。如图11所示,一种嵌入式分区映像安全认证及内核可信引导设备,包括处理器、分别通过系统总线连接在处理器上的系统内存、电源管理模块、存储介质、显示系统、通过专用总线连接在处理器上的安全单元以及通过专用控制总线连接在处理器上的密钥存储器。
本发明中相关技术术语的名词解释如下:
Bootloader 嵌入式系统引导装载系统
HAL 硬件抽象层
Uboot 一种嵌入系统引导装载程序
ROM 只读存储器
RAM 随机存取储存器
SDRAM 同步动态随机存取内存
DDR 双倍速率同步动态随机存储器
MMU 存储管理单元
MPU 存储器保护单元
CACHE 电脑高速缓冲存储器
UART 通用非同步收发传输器
PMIC 电源管理集成电路
KERNEL 操作系统内核
JTAG 联合测试行为组织,主要表示芯片边界扫描
SE 安全单元
NAND 闪存
Emmc 嵌入式多媒体存储卡
ChipID 芯片唯一识别码
SPL 系统启动加载器
CACHE 缓冲存储器
D-CACHE 数据缓冲存储器
I-CACHE 指令缓冲存储器
CHIP-OFF 芯片摘取。
Claims (7)
1.一种嵌入式分区映像安全认证及内核可信引导方法,其特征在于:该方法基于Android系统的嵌入式设备平台,在系统上电、系统Bootloader引导及内核加载启动的安全可信上采取系统分区和内核验证相结合的方式对系统进行安全加固。
2.根据权利要求1所述的一种嵌入式分区映像安全认证及内核可信引导方法,其特征在于:该方法对系统上电、Bootloader及内核分区Layout及部分加载域等按照特定规则做了安全加固及重构。
3.根据权利要求2所述的一种嵌入式分区映像安全认证及内核可信引导方法,其特征在于:该方法具体包括下述步骤:
1)实现系统上电及初始化阶段,确保DMA/MMU/MPU/CACHE/DDR/JTAG系统存储、处理器缓存及片上调试系统的物理隔离、系统访问权限控制,避免入侵者通过物理技术在此阶段“旁路攻击”,总线探测,确保U-Boot分区不被篡改;
2)实现U-Boot映像文件重新封装,新的映像Layout定义了映像数据头信息和数字签名信息;
3)实现系统内核分区重构,重构后的内核映像包括映像数据头、映像原始数据、加密后的部分映像加载域数据及数字签名;
4)实现映像分区重构、安全加密及数字签名等在映像分区往目标硬件烧录或下载的时候即完成封装、加固,同时通过硬件安全单元及安全存储芯片的物理技术配合;
5)实现在目标硬件映像烧录或下载时即完成Bootloader特殊加载域硬加密、修通内核加载域的安全硬数字签名关键安全流程。
4.根据权利要求3所述的一种嵌入式分区映像安全认证及内核可信引导方法,其特征在于:系统上电启动时,首先由片上固化的PBL执行系统上电后的系统资源基本初始化,同时加载NAND/eMMC从Block0开始存储的Bootloader映像中的SPL加载域到SRAM中,并执行SPL流程。
5.根据权利要求4所述的一种嵌入式分区映像安全认证及内核可信引导方法,其特征在于:SPL和U-Boot是Bootloader映像的两个加载域,也是其两个BOOT逻辑流程,分别有特定功能定义,SPL主要功能就是初始化DDR,时钟等最小系统,具体包括:
a.配置ARM核,包括:中断向量表,Cache,MMU等;
b.配置UART/I2C等串并行接口;
c.配置电源管理单元PMU
d.配置系统内存单元DDR;
e.配置系统TIMER、中断系统;
f.配置U-Boot运行相关的硬件资源;
完成上述处理器基本资源的初始化后,SPL会读取U-boot分区,并运行U-Boot流程。
6.根据权利要求5所述的一种嵌入式分区映像安全认证及内核可信引导方法,其特征在于:U-Boot流程包括:读取U-Boot分区的映像文件头信息;通过映像文件头信息加载相关的头映像数据;对装载进来的U-Boot映像数据进行解密、完整性校验及验签;上述任何执行过程如果验证失败,则走异常处理流程,系统引导失败,如果失败则走异常处理流程,系统引导失败;成功则执行Bootloader的第二阶段引导,运行U-Boot。
7.根据权利要求6所述的一种嵌入式分区映像安全认证及内核可信引导设备,其特征在于:其包括处理器、分别通过系统总线连接在处理器上的系统内存、电源管理模块、存储介质、显示系统、通过专用总线连接在处理器上的安全单元以及通过专用控制总线连接在处理器上的密钥存储器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510208470.1A CN104794393B (zh) | 2015-04-24 | 2015-04-24 | 一种嵌入式分区映像安全认证及内核可信引导方法及其设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510208470.1A CN104794393B (zh) | 2015-04-24 | 2015-04-24 | 一种嵌入式分区映像安全认证及内核可信引导方法及其设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104794393A true CN104794393A (zh) | 2015-07-22 |
CN104794393B CN104794393B (zh) | 2017-11-10 |
Family
ID=53559182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510208470.1A Active CN104794393B (zh) | 2015-04-24 | 2015-04-24 | 一种嵌入式分区映像安全认证及内核可信引导方法及其设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104794393B (zh) |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775971A (zh) * | 2016-12-02 | 2017-05-31 | 杭州中天微系统有限公司 | 数据处理装置 |
CN106934289A (zh) * | 2015-12-30 | 2017-07-07 | 北京展讯高科通信技术有限公司 | 校验及形成签名映像的方法 |
CN108073816A (zh) * | 2016-11-17 | 2018-05-25 | 东芝存储器株式会社 | 信息处理装置 |
CN108255591A (zh) * | 2017-12-07 | 2018-07-06 | 中国航空工业集团公司西安航空计算技术研究所 | 一种分区操作系统的统一异常处理方法 |
CN108287999A (zh) * | 2017-01-10 | 2018-07-17 | 厦门雅迅网络股份有限公司 | 一种基于TrustZone的系统可信启动方法 |
CN108628641A (zh) * | 2018-04-26 | 2018-10-09 | 珠海亿智电子科技有限公司 | 一种基于嵌入式系统的快速启动方法 |
CN108959129A (zh) * | 2018-07-12 | 2018-12-07 | 北京航空航天大学 | 一种基于硬件的嵌入式系统机密性保护方法 |
CN108958761A (zh) * | 2017-05-25 | 2018-12-07 | 中兴通讯股份有限公司 | 一种设备程序的处理方法及装置 |
CN109445874A (zh) * | 2018-11-15 | 2019-03-08 | 济南浪潮高新科技投资发展有限公司 | 一种基于嵌入式Linux系统的带安全认证的多启动系统及方法 |
CN109614798A (zh) * | 2017-09-30 | 2019-04-12 | 华为技术有限公司 | 安全启动方法、装置及终端设备 |
CN109614366A (zh) * | 2018-11-15 | 2019-04-12 | 广东工贸职业技术学院 | 运动控制系统的可配置方法及装置 |
CN109684849A (zh) * | 2017-10-18 | 2019-04-26 | 佳能株式会社 | 信息处理装置、其控制方法和存储介质 |
CN109918124A (zh) * | 2019-03-15 | 2019-06-21 | 盛科网络(苏州)有限公司 | SOC启动早期载入用户配置的方法及系统、Bootloader镜像配置方法 |
CN110210210A (zh) * | 2019-05-27 | 2019-09-06 | 北京中电华大电子设计有限责任公司 | 一种终端设备的逻辑安全设计方法和物理安全设计结构 |
US10452561B2 (en) | 2016-08-08 | 2019-10-22 | Raytheon Company | Central processing unit architecture and methods for high availability systems |
CN110414216A (zh) * | 2019-07-29 | 2019-11-05 | 武汉光庭信息技术股份有限公司 | 一种车载T-Box程序代码的安全加载方法及系统 |
CN110688660A (zh) * | 2019-09-27 | 2020-01-14 | 深圳市共进电子股份有限公司 | 一种终端安全启动的方法及装置、存储介质 |
CN111443950A (zh) * | 2018-12-29 | 2020-07-24 | 北京奇虎科技有限公司 | 车载系统安全启动方法及车载系统 |
CN111597558A (zh) * | 2020-04-22 | 2020-08-28 | 国电南瑞科技股份有限公司 | 一种基于文件多镜像的嵌入式操作系统可信引导方法及系统 |
CN112260839A (zh) * | 2020-10-20 | 2021-01-22 | 河北素数信息安全有限公司 | 一种基于嵌入式技术的微型传输加密装置及其启动方法 |
CN112363752A (zh) * | 2020-11-11 | 2021-02-12 | 海光信息技术股份有限公司 | 基于可配置的操作系统的芯片验证方法及其设备 |
CN112379898A (zh) * | 2020-12-01 | 2021-02-19 | 上海爱信诺航芯电子科技有限公司 | 一种用于v2x设备的软件安全启动方法及系统 |
CN112417520A (zh) * | 2020-11-30 | 2021-02-26 | 中国航空工业集团公司西安航空计算技术研究所 | 一种分区操作系统的安全状态维护方法和装置 |
CN112437924A (zh) * | 2018-05-11 | 2021-03-02 | 美国莱迪思半导体公司 | 用于可编程逻辑器件的安全引导系统和方法 |
CN112631663A (zh) * | 2020-12-24 | 2021-04-09 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于ARMv7 SoC的一体化映像引导启动方法 |
CN112948086A (zh) * | 2021-03-04 | 2021-06-11 | 浙江中控研究院有限公司 | 一种可信plc控制系统 |
CN113064663A (zh) * | 2019-12-31 | 2021-07-02 | 新唐科技股份有限公司 | 电脑装置及基于信任链的权限管理方法 |
CN113114645A (zh) * | 2021-03-31 | 2021-07-13 | 武汉天喻信息产业股份有限公司 | 提高安全模组存储容量及运行安全性的方法、装置及设备 |
CN113238819A (zh) * | 2021-07-09 | 2021-08-10 | 成都菁蓉联创科技有限公司 | 一种适用于U-Boot的驱动文件动态加载方法及系统 |
CN113486411A (zh) * | 2021-07-19 | 2021-10-08 | 上海擎昆信息科技有限公司 | 一种安全芯片及其设计方法、初始化方法 |
CN113642006A (zh) * | 2021-08-30 | 2021-11-12 | 南方电网数字电网研究院有限公司 | 双核继电保护系统安全启动方法 |
WO2021262160A1 (en) * | 2020-06-24 | 2021-12-30 | Hewlett-Packard Development Company, L.P. | Bios backup |
CN113946375A (zh) * | 2021-10-19 | 2022-01-18 | 珠海全志科技股份有限公司 | 嵌入式系统快速安全启动方法、装置及电子设备 |
CN113961939A (zh) * | 2021-12-20 | 2022-01-21 | 北京智芯微电子科技有限公司 | 嵌入式操作系统安全的防护方法和系统 |
CN114237724A (zh) * | 2021-11-24 | 2022-03-25 | 珠海全视通信息技术有限公司 | 驱动动态加载方法 |
CN114647453A (zh) * | 2022-03-01 | 2022-06-21 | 芯原微电子(成都)有限公司 | 多处理器的可信动态启动方法、系统、存储介质及终端 |
CN114706620A (zh) * | 2022-02-25 | 2022-07-05 | 瑞芯微电子股份有限公司 | 参数配置方法和设备及计算机可读介质 |
US20230069485A1 (en) * | 2021-08-25 | 2023-03-02 | Microsoft Technology Licensing, Llc | Generating and distributing customized embedded operating systems |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1609788A (zh) * | 2004-11-24 | 2005-04-27 | 华南理工大学 | 一种嵌入式操作系统的驱动程序加固方法 |
CN101122936A (zh) * | 2007-09-21 | 2008-02-13 | 武汉大学 | 一种可信机制上的嵌入式平台引导 |
US20140281642A1 (en) * | 2013-03-13 | 2014-09-18 | Xiaoxiao Wang | Resolution programmable dynamic ir-drop sensor with peak ir-drop tracking abilities |
-
2015
- 2015-04-24 CN CN201510208470.1A patent/CN104794393B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1609788A (zh) * | 2004-11-24 | 2005-04-27 | 华南理工大学 | 一种嵌入式操作系统的驱动程序加固方法 |
CN101122936A (zh) * | 2007-09-21 | 2008-02-13 | 武汉大学 | 一种可信机制上的嵌入式平台引导 |
US20140281642A1 (en) * | 2013-03-13 | 2014-09-18 | Xiaoxiao Wang | Resolution programmable dynamic ir-drop sensor with peak ir-drop tracking abilities |
Cited By (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106934289A (zh) * | 2015-12-30 | 2017-07-07 | 北京展讯高科通信技术有限公司 | 校验及形成签名映像的方法 |
US10452561B2 (en) | 2016-08-08 | 2019-10-22 | Raytheon Company | Central processing unit architecture and methods for high availability systems |
CN108073816B (zh) * | 2016-11-17 | 2022-06-10 | 铠侠股份有限公司 | 信息处理装置 |
CN108073816A (zh) * | 2016-11-17 | 2018-05-25 | 东芝存储器株式会社 | 信息处理装置 |
CN106775971B (zh) * | 2016-12-02 | 2020-01-31 | 杭州中天微系统有限公司 | 数据处理装置 |
CN106775971A (zh) * | 2016-12-02 | 2017-05-31 | 杭州中天微系统有限公司 | 数据处理装置 |
CN108287999A (zh) * | 2017-01-10 | 2018-07-17 | 厦门雅迅网络股份有限公司 | 一种基于TrustZone的系统可信启动方法 |
CN108958761A (zh) * | 2017-05-25 | 2018-12-07 | 中兴通讯股份有限公司 | 一种设备程序的处理方法及装置 |
CN109614798B (zh) * | 2017-09-30 | 2022-12-27 | 华为技术有限公司 | 安全启动方法、装置及终端设备 |
CN109614798A (zh) * | 2017-09-30 | 2019-04-12 | 华为技术有限公司 | 安全启动方法、装置及终端设备 |
CN109684849B (zh) * | 2017-10-18 | 2023-06-27 | 佳能株式会社 | 信息处理装置、其控制方法和存储介质 |
CN109684849A (zh) * | 2017-10-18 | 2019-04-26 | 佳能株式会社 | 信息处理装置、其控制方法和存储介质 |
CN108255591B (zh) * | 2017-12-07 | 2021-10-15 | 中国航空工业集团公司西安航空计算技术研究所 | 一种分区操作系统的统一异常处理方法 |
CN108255591A (zh) * | 2017-12-07 | 2018-07-06 | 中国航空工业集团公司西安航空计算技术研究所 | 一种分区操作系统的统一异常处理方法 |
CN108628641A (zh) * | 2018-04-26 | 2018-10-09 | 珠海亿智电子科技有限公司 | 一种基于嵌入式系统的快速启动方法 |
CN112437924A (zh) * | 2018-05-11 | 2021-03-02 | 美国莱迪思半导体公司 | 用于可编程逻辑器件的安全引导系统和方法 |
CN108959129A (zh) * | 2018-07-12 | 2018-12-07 | 北京航空航天大学 | 一种基于硬件的嵌入式系统机密性保护方法 |
CN108959129B (zh) * | 2018-07-12 | 2021-08-24 | 北京航空航天大学 | 一种基于硬件的嵌入式系统机密性保护方法 |
CN109614366A (zh) * | 2018-11-15 | 2019-04-12 | 广东工贸职业技术学院 | 运动控制系统的可配置方法及装置 |
CN109614366B (zh) * | 2018-11-15 | 2023-06-06 | 广东工贸职业技术学院 | 运动控制系统的可配置方法及装置 |
CN109445874A (zh) * | 2018-11-15 | 2019-03-08 | 济南浪潮高新科技投资发展有限公司 | 一种基于嵌入式Linux系统的带安全认证的多启动系统及方法 |
CN111443950A (zh) * | 2018-12-29 | 2020-07-24 | 北京奇虎科技有限公司 | 车载系统安全启动方法及车载系统 |
CN109918124A (zh) * | 2019-03-15 | 2019-06-21 | 盛科网络(苏州)有限公司 | SOC启动早期载入用户配置的方法及系统、Bootloader镜像配置方法 |
CN110210210A (zh) * | 2019-05-27 | 2019-09-06 | 北京中电华大电子设计有限责任公司 | 一种终端设备的逻辑安全设计方法和物理安全设计结构 |
CN110414216A (zh) * | 2019-07-29 | 2019-11-05 | 武汉光庭信息技术股份有限公司 | 一种车载T-Box程序代码的安全加载方法及系统 |
CN110414216B (zh) * | 2019-07-29 | 2021-06-25 | 武汉光庭信息技术股份有限公司 | 一种车载T-Box程序代码的安全加载方法及系统 |
CN110688660A (zh) * | 2019-09-27 | 2020-01-14 | 深圳市共进电子股份有限公司 | 一种终端安全启动的方法及装置、存储介质 |
CN110688660B (zh) * | 2019-09-27 | 2021-08-24 | 深圳市共进电子股份有限公司 | 一种终端安全启动的方法及装置、存储介质 |
US11347863B2 (en) | 2019-12-31 | 2022-05-31 | Nuvoton Technology Corporation | Computer apparatus and authority management method based on trust chain |
CN113064663B (zh) * | 2019-12-31 | 2024-04-09 | 新唐科技股份有限公司 | 电脑装置及基于信任链的权限管理方法 |
CN113064663A (zh) * | 2019-12-31 | 2021-07-02 | 新唐科技股份有限公司 | 电脑装置及基于信任链的权限管理方法 |
TWI804703B (zh) * | 2019-12-31 | 2023-06-11 | 新唐科技股份有限公司 | 電腦裝置及基於信任鏈的權限管理方法 |
CN111597558A (zh) * | 2020-04-22 | 2020-08-28 | 国电南瑞科技股份有限公司 | 一种基于文件多镜像的嵌入式操作系统可信引导方法及系统 |
CN111597558B (zh) * | 2020-04-22 | 2022-09-23 | 国电南瑞科技股份有限公司 | 一种基于文件多镜像的嵌入式操作系统可信引导方法及系统 |
WO2021262160A1 (en) * | 2020-06-24 | 2021-12-30 | Hewlett-Packard Development Company, L.P. | Bios backup |
CN112260839B (zh) * | 2020-10-20 | 2022-11-22 | 河北素数信息安全有限公司 | 一种基于嵌入式技术的微型传输加密装置及其启动方法 |
CN112260839A (zh) * | 2020-10-20 | 2021-01-22 | 河北素数信息安全有限公司 | 一种基于嵌入式技术的微型传输加密装置及其启动方法 |
CN112363752B (zh) * | 2020-11-11 | 2023-11-03 | 海光信息技术股份有限公司 | 基于可配置的操作系统的芯片验证方法及其设备 |
CN112363752A (zh) * | 2020-11-11 | 2021-02-12 | 海光信息技术股份有限公司 | 基于可配置的操作系统的芯片验证方法及其设备 |
CN112417520B (zh) * | 2020-11-30 | 2023-09-05 | 中国航空工业集团公司西安航空计算技术研究所 | 一种分区操作系统的安全状态维护方法和装置 |
CN112417520A (zh) * | 2020-11-30 | 2021-02-26 | 中国航空工业集团公司西安航空计算技术研究所 | 一种分区操作系统的安全状态维护方法和装置 |
CN112379898B (zh) * | 2020-12-01 | 2022-08-09 | 上海爱信诺航芯电子科技有限公司 | 一种用于v2x设备的软件安全启动方法及系统 |
CN112379898A (zh) * | 2020-12-01 | 2021-02-19 | 上海爱信诺航芯电子科技有限公司 | 一种用于v2x设备的软件安全启动方法及系统 |
CN112631663A (zh) * | 2020-12-24 | 2021-04-09 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于ARMv7 SoC的一体化映像引导启动方法 |
CN112948086B (zh) * | 2021-03-04 | 2023-11-03 | 浙江中控研究院有限公司 | 一种可信plc控制系统 |
CN112948086A (zh) * | 2021-03-04 | 2021-06-11 | 浙江中控研究院有限公司 | 一种可信plc控制系统 |
CN113114645A (zh) * | 2021-03-31 | 2021-07-13 | 武汉天喻信息产业股份有限公司 | 提高安全模组存储容量及运行安全性的方法、装置及设备 |
CN113238819A (zh) * | 2021-07-09 | 2021-08-10 | 成都菁蓉联创科技有限公司 | 一种适用于U-Boot的驱动文件动态加载方法及系统 |
CN113238819B (zh) * | 2021-07-09 | 2021-09-21 | 成都菁蓉联创科技有限公司 | 一种适用于U-Boot的驱动文件动态加载方法及系统 |
CN113486411A (zh) * | 2021-07-19 | 2021-10-08 | 上海擎昆信息科技有限公司 | 一种安全芯片及其设计方法、初始化方法 |
CN113486411B (zh) * | 2021-07-19 | 2024-05-14 | 上海擎昆信息科技有限公司 | 一种安全芯片及其设计方法、初始化方法 |
US20230069485A1 (en) * | 2021-08-25 | 2023-03-02 | Microsoft Technology Licensing, Llc | Generating and distributing customized embedded operating systems |
US11809850B2 (en) * | 2021-08-25 | 2023-11-07 | Microsoft Technology Licensing, Llc | Generating and distributing customized embedded operating systems |
CN113642006A (zh) * | 2021-08-30 | 2021-11-12 | 南方电网数字电网研究院有限公司 | 双核继电保护系统安全启动方法 |
CN113946375A (zh) * | 2021-10-19 | 2022-01-18 | 珠海全志科技股份有限公司 | 嵌入式系统快速安全启动方法、装置及电子设备 |
CN114237724B (zh) * | 2021-11-24 | 2024-03-12 | 珠海全视通信息技术有限公司 | 驱动动态加载方法 |
CN114237724A (zh) * | 2021-11-24 | 2022-03-25 | 珠海全视通信息技术有限公司 | 驱动动态加载方法 |
CN113961939A (zh) * | 2021-12-20 | 2022-01-21 | 北京智芯微电子科技有限公司 | 嵌入式操作系统安全的防护方法和系统 |
CN113961939B (zh) * | 2021-12-20 | 2022-03-08 | 北京智芯微电子科技有限公司 | 嵌入式操作系统安全的防护方法和系统 |
CN114706620A (zh) * | 2022-02-25 | 2022-07-05 | 瑞芯微电子股份有限公司 | 参数配置方法和设备及计算机可读介质 |
CN114647453B (zh) * | 2022-03-01 | 2023-06-09 | 芯原微电子(成都)有限公司 | 多处理器的可信动态启动方法、系统、存储介质及终端 |
CN114647453A (zh) * | 2022-03-01 | 2022-06-21 | 芯原微电子(成都)有限公司 | 多处理器的可信动态启动方法、系统、存储介质及终端 |
Also Published As
Publication number | Publication date |
---|---|
CN104794393B (zh) | 2017-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104794393B (zh) | 一种嵌入式分区映像安全认证及内核可信引导方法及其设备 | |
US9489512B2 (en) | Trustzone-based integrity measurements and verification using a software-based trusted platform module | |
US10685143B2 (en) | Secure boot sequence for selectively disabling configurable communication paths of a multiprocessor fabric | |
US7937575B2 (en) | Information processing system, program product, and information processing method | |
US8296528B2 (en) | Methods and systems for microcode patching | |
KR20170095161A (ko) | 시큐어 시스템 온 칩 | |
US9990255B2 (en) | Repairing compromised system data in a non-volatile memory | |
CN107665308B (zh) | 用于构建和保持可信运行环境的tpcm系统以及相应方法 | |
CN103080904A (zh) | 提供多阶段锁步完整性报告机构 | |
Khattri et al. | Hsdl: A security development lifecycle for hardware technologies | |
CN102298529A (zh) | 为系统提供硅集成代码 | |
US8205197B2 (en) | Apparatus, system, and method for granting hypervisor privileges | |
US9367327B2 (en) | Method to ensure platform silicon configuration integrity | |
US8108905B2 (en) | System and method for an isolated process to control address translation | |
Yao et al. | Building secure firmware | |
Regenscheid | BIOS protection guidelines for servers | |
Zhao et al. | Gracewipe: Secure and Verifiable Deletion under Coercion. | |
US8429423B1 (en) | Trusted platform modules | |
CN103795905A (zh) | 一种网络摄像机可信启动方法 | |
González | Operating Security System Support for Run-Time Security with a Trusted Execution Environment | |
CN116956267A (zh) | 平台证书的基于管理控制器的验证 | |
Gu et al. | A secure bootstrap based on trusted computing | |
Haas et al. | The State of Boot Integrity on Linux-a Brief Review | |
Ma et al. | Booting IoT Terminal Device Securely with eMMC | |
EP4367593A1 (en) | Method and apparatus for securely backing up and restoring a computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: Embedded type partition image security certification and kernel trusted boot method and equipment thereof Effective date of registration: 20180611 Granted publication date: 20171110 Pledgee: Fuyang branch of the China Co truction Bank Corp Pledgor: Hangzhou byte information Technology Co., Ltd. Registration number: 2018330000145 |