CN110688660A - 一种终端安全启动的方法及装置、存储介质 - Google Patents
一种终端安全启动的方法及装置、存储介质 Download PDFInfo
- Publication number
- CN110688660A CN110688660A CN201910931213.9A CN201910931213A CN110688660A CN 110688660 A CN110688660 A CN 110688660A CN 201910931213 A CN201910931213 A CN 201910931213A CN 110688660 A CN110688660 A CN 110688660A
- Authority
- CN
- China
- Prior art keywords
- file
- verification
- kernel
- bootstrap
- program
- 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
Images
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/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4403—Processor initialisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供一种终端安全启动的方法及装置、存储介质。其中,终端安全启动的方法,包括:在终端完成CPU及其硬件初始化后,读取引导程序文件,所述引导程序文件中包括第一阶段引导程序;检查所述第一阶段引导程序中的厂商标识是否和OTP中存储的厂商标识相同;若所述第一阶段引导程序中的厂商标识和所述OTP中存储的厂商标识不相同,确定所述第一阶段引导程序未通过验证,并提示验证失败。该终端安全启动的方法保证了终端系统的安全性。
Description
技术领域
本申请涉及电子领域,具体而言,涉及一种终端安全启动的方法及装置、存储介质。
背景技术
目前,随着宽带接入的普及,越来越多的网络终端设备被引入到家庭和企业网络中。当这些网络终端设备被恶意刷机时,很容易产生系统安全问题,如植入木马或收集用户敏感账号信息,最终导致用户经济损失或隐秘数据泄露。
现有技术中,为了提高系统的安全性,一般在终端启动的过程中对系统文件进行验证,然而,恶意刷机的方式越来越多,简单的对系统文件进行验证并不能保证系统的安全性。
发明内容
本申请实施例的目的在于提供一种终端安全启动的方法及装置、存储介质,用以保证终端系统的安全性。
第一方面,本申请实施例提供一种终端安全启动的方法,包括:
在终端完成CPU及其硬件初始化后,读取引导程序文件,所述引导程序文件中包括第一阶段引导程序;检查所述第一阶段引导程序中的厂商标识是否和OTP中存储的厂商标识相同;若所述第一阶段引导程序中的厂商标识和所述OTP中存储的厂商标识不相同,确定所述第一阶段引导程序未通过验证,并提示验证失败。
在本申请实施例中,在终端完成CPU及其硬件初始化后,先读取引导程序文件,根据引导程序文件中的厂商标识与终端系统主芯片OTP(One Time Programmable,一次性可编程)中存储的厂商标识进行比较,OTP是一种终端系统主芯片内的存储器类型,只能进行一次性可编程,当存储好后,将不可再次更改和清除。一方面,将第一阶段引导程序中的厂商标识与存储的不可更改的厂商标识进行比较验证,能够验证第一阶段引导程序是否被更改,若被更改了,则验证失败,是不能启动系统的,提高系统的安全性;另一方面,将厂商标识存储在OTP中,其不可修改和清除的特点可以避免恶意刷机中为了通过验证对存储的厂商标识进行修改的情况,进一步增强了系统的安全性。
在一种可能的实现方式中,所述CPU中存储有用于对所述第一阶段引导程序验证的第一公钥,所述方法还包括:若所述第一阶段引导程序中的厂商标识和所述OTP中存储的厂商标识相同,根据所述第一公钥对所述第一阶段引导程序进行验证。
在本申请实施例中,在第一阶段程序中的厂商标识通过验证后,还可以通过第一公钥对第一引导程序进行再次验证,以实现第一阶段程序的多方面验证,进而提高系统的安全性。
在一种可能的实现方式中,所述引导程序文件中还包括签名,根据所述第一公钥对所述第一阶段引导程序进行验证,包括:根据所述第一公钥对所述签名进行解密,得到第一哈希值,所述签名为基于所述引导程序文件计算出所述第一哈希值,并经私钥加密生成;基于所述引导程序文件,计算第二哈希值;将所述第一哈希值和所述第二哈希值进行比较,确定所述第一阶段引导程序是否通过验证。
在本申请实施例中,通过第一公钥对引导程序文件中存储的签名进行验证,来确定第一阶段引导程序是否通过验证,由于加密和解密采用的密钥是不同的密钥,为非对称的加密方式,非对称的加密方式的安全性更高,能进一步的保证系统安全。
在一种可能的实现方式中,在读取引导程序文件之前,所述方法还包括:生成第一阶段引导程序;将所述第一阶段引导程序发送给CA;接收所述CA发送的通过其私钥加密生成的所述签名;基于所述第一阶段引导程序和所述签名生成所述引导程序文件。
在本申请实施例中,将第一阶段程序发送给CA(Certificate Authority,电子服务认证机构),使CA产生私钥生成签名,CA是受信任的第三方,CA所给出的数字签名使得攻击者不能伪造和篡改,因而能够保证系统的安全性。
在一种可能的实现方式中,所述引导程序文件中还存储有用于对第二阶段引导程序进行验证的第二公钥,所述方法还包括:在确定所述第一阶段引导程序通过验证时,读取内存管理程序;根据所述第二公钥对所述内存管理程序进行验证;在所述内存管理程序通过验证时,运行所述内存管理程序,以执行内存和除所述CPU外的硬件初始化。
在本申请实施例中,在第一阶段引导程序通过验证时,继续对内存管理程序进行验证,在内存管理程序通过验证后,再运行内存管理程序,以执行相关操作,保证了内存和除CPU外的硬件初始化的安全性和可靠性。
在一种可能的实现方式中,所述引导程序文件中还存储有用于对第二阶段引导程序进行验证的第三公钥,在运行所述内存管理程序后,所述方法还包括:读取第二阶段引导程序;根据所述第三公钥对所述第二阶段引导程序进行验证;在所述第二阶段引导程序通过验证时,运行所述第二阶段引导程序,执行内核准备操作。
在本申请实施例中,在完成内存管理程序的验证和运行后,继续对第二阶段引导程序进行验证,在通过验证时,再运行第二阶段引导程序来执行内核准备操作,保证了内核准备操作的安全性和可靠性。
在一种可能的实现方式中,所述引导程序文件中还包括用于对内核文件进行验证的第四公钥,在运行所述第二阶段引导程序后,所述方法还包括:根据所述第四公钥对所述内核文件进行验证;在所述内核文件通过验证时,加载所述内核文件,以启动内核;在所述内核文件未通过验证时,不加载所述内核文件,并提示验证失败。
在本申请实施例中,在完成第二阶段引导程序的验证和运行后,继续对内核文件进行验证,在通过验证时,加载内核文件以启动内核,保证了启动内核的安全性和可靠性。
在一种可能的实现方式中,加载所述内核文件后,所述方法还包括:获取所述内核文件中用于对文件系统进行验证的第五公钥;根据所述第五公钥对所述文件系统进行验证;在所述文件系统通过验证时,挂载文件系统;在所述文件系统未通过验证时,停止挂载文件系统,并提示验证失败。
在本申请实施例中,在完成内核文件的验证和加载后,继续对文件系统进行验证,在通过验证时,挂载文件系统,保证了文件系统挂载的安全性和可靠性。
第二方面,本申请实施例还提供一种终端安全启动的方法,包括:
在完成内核准备操作时,读取引导程序文件;所述引导程序文件中包括的第一阶段引导程序已通过验证;获取所述引导程序文件中用于对内核文件进行验证的公钥;根据所述公钥对所述内核文件进行验证;在所述内核文件通过验证时,加载所述内核文件,以启动内核;在所述内核文件未通过验证时,不加载所述内核文件,并提示验证失败。
在本申请实施例中,在对内核文件进行验证时,利用已通过验证的引导程序文件中的公钥进行验证,能够保证对内核文件验证的可靠性,进而提高系统的安全性。
第三方面,本申请实施例还提供一种终端安全启动的方法,包括:
在完成启动内核时,获取已通过验证的用于启动内核的内核文件;根据所述内核文件中用于对文件系统进行验证的公钥对文件系统进行验证;在所述文件系统通过验证时,挂载所述文件系统;在所述文件系统未通过验证时,停止挂载所述文件系统,并提示验证失败。
在本申请实施例中,在对文件系统进行验证时,利用已通过验证的内核文件中的公钥进行验证,能够保证对文件系统验证的可靠性,进而提高系统的安全性。
第四方面,本申请实施例提供一种终端安全启动的装置,所述装置包括用于实现第一方面以及第一方面任意一种可能的实现方式中所述的方法的功能模块。
第五方面,本申请实施例提供一种终端安全启动的装置,所述装置包括用于实现第二方面所述的方法的功能模块。
第六方面,本申请实施例提供一种终端安全启动的装置,所述装置包括用于实现第三方面中所述的方法的功能模块。
第七方面,本申请实施例提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被计算机运行时执行如第一方面以及第一方面任意一种可能的实现方式、第二方面、第三方面中所述的方法的步骤。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的终端安全启动的方法的第一实施例流程图;
图2为本申请实施例提供的引导程序文件数据结构示意图;
图3为本申请实施例提供的终端安全启动的方法的第二实施例流程图;
图4为本申请实施例提供的终端安全启动的装置的功能结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请实施例所涉及的终端包括各种网络设备,网络设备是连接到网络中的物理实体设备,基本的网络设备例如:计算机(无论其为个人电脑或服务器)、集线器、交换机、网桥、路由器、网关、网络接口卡(NIC)、无线接入点(WAP)、打印机和调制解调器、光纤收发器、光缆等。
终端设备在上电后,即启动开启终端的开关后,电源为主板供电,先进行CPU(Central Processing Unit,中央处理器)及其硬件(基本硬件)的初始化,在完成CPU及其硬件的初始化后,CPU将存储的引导程序拷贝过来,运行引导程序,以执行内存和其他硬件的初始化、启动内核、挂载以及启动文件系统等,最终完成终端设备的启动。
基于各种网络设备的安全性以及终端设备的启动过程,接下来对本申请实施例提供的终端安全启动的方法作介绍。
请参照图1,图1为本申请实施例提供的终端安全启动的方法的流程图,如图1所示,该方法包括:
步骤101:在终端完成CPU及其硬件初始化后,读取引导程序文件。引导程序文件中包括第一阶段引导程序。
步骤102:检查第一阶段引导程序中的厂商标识是否和OTP中存储的厂商标识相同。
步骤103:若第一阶段引导程序中的厂商标识和OTP中存储的厂商标识不相同,确定第一阶段引导程序未通过验证,并提示验证失败。
在步骤101中,读取引导程序文件可以理解为将引导程序文件拷贝到终端CPU的internal memory(内置存储器)中。
在步骤102中,OTP(One Time Programable,一次性可编程)是一种终端系统主芯片内的存储器类型,只能进行一次性可编程,当存储好后,将不可再次更改和清除。在OTP中存储的厂商标识是不可更改的,具有较好的安全性。检查第一阶段引导程序中的厂商标识与OTP中存储的是否一致可以较准确的判断第一阶段引导程序是否有被修改。此外,将正确的厂商标识存储在OTP中,其不可修改和清除的特点可以避免恶意刷机中为了通过验证对存储的厂商标识进行修改的情况,进一步增强了系统的安全性。
在步骤103中,若第一阶段引导程序中的厂商标识和OTP中存储的厂商标识不相同,说明第一阶段程序有可能被更改,代表验证失败,不能继续完成系统的启动过程,而是提示验证失败。对于提示验证失败的实施方式,可以通过声音或者光等形式进行提示。例如,当验证失败时,闪烁LED灯;或者当验证失败时,发出警报声等。需要注意的是,当验证失败时,除了进行验证失败的提示,终端的后续启动过程是不能继续进行的,防止恶意刷机等情况出现,保证了终端在启动过程中的安全性。需要注意的是,在后面的实施例中,所涉及到的提示验证失败的方式与步骤103中涉及到的实施方式相同,在后面的实施例中将不再重复介绍。
此外,步骤101-步骤103的过程是对第一阶段引导程序进行一个初步的验证,在这个过程中只涉及到了第一阶段引导程序,因此,也只需要读取引导程序文件中的第一阶段引导程序,但实质上,引导程序文件中还存储有其他用于安全验证的数据或者程序等,而这些数据或者程序是在终端进行安全启动之前,通过前期准备工作生成并存储在引导程序文件中。为了使本申请实施例的技术方案更便于理解,本申请实施例将在介绍完各个验证过程后,再结合验证过程中涉及到数据或者程序等对前期准备工作以及引导程序文件的数据结构作进一步的介绍。
在执行步骤103后,还可以对第一阶段引导程序作进一步的验证,因此,终端安全启动的方法还包括:CPU中存储有用于对第一阶段引导程序验证的第一公钥,若第一阶段引导程序中的厂商标识和OTP中存储的厂商标识相同,根据第一公钥对第一阶段引导程序进行验证。
在本申请实施例中,对第一阶段引导程序进行验证的方式采用的是公钥,对应的,在引导程序文件中还包括有在对第一阶段引导程序通过私钥进行加密时生成的签名。通过对签名进行解密运算,以验证第一阶段引导程序。
在本申请实施例中,需要理解的是,所涉及的到加密和解密过程,详细来说,是利用密钥进行计算得到一个哈希值,如利用SHA256散列算法计算得到一个哈希值,并经私钥加密生成签名,视为一个利用私钥进行加密的过程;如利用公钥对通过私钥加密生成的签名进行验证,得到一个哈希值,视为一个利用公钥进行解密的过程。如果公钥和私钥相同,为对称的加密方式;如果公钥和私钥不相同,为非对称的加密方式。
在本申请实施例中,采用非对称的加密方式,即RSA加密算法,因此,根据第一公钥对第一阶段引导程序进行验证,包括:根据所述第一公钥对所述签名进行解密,得到第一哈希值,所述签名为基于所述引导程序文件计算出所述第一哈希值,并经私钥加密生成;基于所述引导程序文件,计算第二哈希值;将所述第一哈希值和所述第二哈希值进行比较,确定所述第一阶段引导程序是否通过验证。
作为一种可选的实施方式,签名可以基于除第一阶段引导程序签名外的引导程序文件,利用SHA256散列算法计算得到第一哈希值,并经私钥加密生成;终端系统基于拷贝至internal memory中除第一阶段引导程序签名外的引导程序文件,利用SHA256散列算法计算出第二哈希值;将第一哈希值和第二哈希值进行比较,确定第一阶段引导程序是否通过验证。
在这个验证过程中,终端采用第一公钥对签名进行解密,解密出原来利用SHA256散列算法计算,并经私钥加密生成的第一哈希值,同时终端系统基于拷贝至internalmemory中除第一阶段引导程序签名外的引导程序文件再次计算哈希值,得到第二哈希值,将第一哈希值与第二哈希值进行比较,可判断引导程序文件中的私钥是否正确,进而判断引导程序文件中包含的第一阶段引导程序以及存储的各个公钥是否被篡改,从而判断第一阶段引导程序是否通过验证。其中,引导程序文件中存储的各个公钥可以用于对其它程序或者文件进行验证。若解密得到的第一哈希值与再次计算得到的第二哈希值是一致的,说明引导程序文件中的私钥是正确的和第一引导程序以及存储的各个公钥没有被篡改,确定第一阶段引导程序通过验证;若第一哈希值和第二哈希值不一致,说明引导程序文件中的私钥或第一引导程序或各个公钥是错误的,确定第一阶段引导程序未通过验证。
通过非对称的加密方式,安全性更高,能进一步保证终端系统的安全性。
需要注意的是,在后面的实施例中,涉及到通过公钥对签名进行验证的实施过程与第一阶段引导程序的验证的实施过程相同,即都是利用非对称加密算法进行验证,因此,在后面的实施例中,不会再重复的介绍该验证过程。
此外,对于签名,本申请实施例提供一种可选的实施方式:在读取引导程序文件之前,该方法还包括:生成第一阶段引导程序;将第一阶段引导程序发送给CA;接收CA发送的通过CA私钥加密生成的签名;基于第一阶段引导程序和签名生成所述引导程序文件。
在CA加密生成签名的过程中,会产生公钥(第一公钥)和私钥(与第一公钥对应)对,在反馈加密生成的签名时,将产生的第一公钥一并反馈。进一步的,若确定第一阶段引导程序未通过验证,直接提示验证失败。若确定第一阶段引导程序通过验证,可以继续进行终端的安全启动。在引导程序文件中,还可以存储有用于对内存管理程序进行验证的第二公钥,终端安全启动的方法还包括:在确定第一阶段引导程序通过验证时,读取内存管理程序;根据第二公钥对内存管理程序进行验证;在内存管理程序通过验证时,运行内存管理程序,以执行内存和除所述CPU外的硬件初始化。
其中,内存管理程序的作用是进行内存和除CPU外的硬件初始化,用于建立终端的安全运行环境。在读取内存管理程序时,依然可以理解为将内存管理程序拷贝到internalmemory中。此外,第二公钥是存储在引导程序文件中的,在第一阶段引导程序通过验证后,相当于引导程序文件暂时是安全的,因此,第二公钥也相当于是通过验证的,能够保证验证的正确性。
其中,运行内存管理程序后,终端系统会做内存和其他硬件的初始化,这里的硬件包括内存、flash以及网口等,建立安全内存运行环境,并启动DDRScrambler算法,该算法基于硬件(包括内存、flash以及网口等)产生一个随机key(密码),用于对内存中数据内容加密。该key会随终端系统重启而重新产生并且每次生成key都是不一样的。
根据第二公钥对内存管理程序进行验证的实施过程也是采用非对称加密算法,即计算两次哈希值,通过比较两次哈希值确认是否通过验证。在内存管理程序未通过验证时,提示验证失败。
在第一阶段引导程序通过验证时,继续对内存管理程序进行验证,在内存管理程序通过验证后,再运行内存管理程序,以执行相关操作,保证了内存和除CPU外的硬件初始化的安全性和可靠性。
进一步的,引导程序文件中还存储有用于对第二阶段引导程序进行验证的第三公钥,若内存管理程序通过验证并运行后,可以继续对第二阶段引导程序进行验证,因此,该方法还包括:读取第二阶段引导程序;根据第三公钥对第二阶段引导程序进行验证;在第二阶段引导程序通过验证时,运行第二阶段引导程序,执行内核准备操作。
其中,第二阶段引导程序用于执行内核准备操作。读取第二阶段引导程序,可以理解为将第二阶段引导程序拷贝到DDR内存中。此外,第三公钥是存储在引导程序文件中的,在内存管理程序通过验证后,进一步说明引导程序文件安全的,因此,第三公钥也相当于是通过验证的,能够保证验证的正确性。其中,内核准备操作代表的是准确启动内核,并不代表启动内核。
根据第三公钥对第二阶段引导程序进行验证的实施过程也是采用非对称加密算法,即计算两次哈希值,通过比较两次哈希值确认是否通过验证。在第二阶段引导程序未通过验证时,提示验证失败。
在完成内存管理程序的验证和运行后,继续对第二阶段引导程序进行验证,在通过验证时,再运行第二阶段引导程序来执行内核准备操作,保证了内核准备操作的安全性和可靠性。
进一步的,在引导程序文件中还包括用于对内核文件进行验证的第四公钥,在对第二阶段引导程序进行验证和运行后,还可以对内核文件进行验证,因此,该方法还包括:根据第四公钥对内核文件进行验证;在内核文件通过验证时,加载内核文件,以启动内核;在内核文件未通过验证时,不加载所述内核文件,并提示验证失败。
在启动内核前,将内核文件拷贝到DDRSDRAM(Double Data Rate SDRAM,双倍速率同步动态随机存储器)中,通过第四公钥验证内核文件是否被更改或者是否安全。此外,第四公钥是存储在引导程序文件中的,在第二阶段引导程序通过验证后,进一步说明引导程序文件安全的,因此,第四公钥也相当于是通过验证的,能够保证验证的正确性。
根据第四公钥对内核文件进行验证的实施过程也是采用非对称加密算法,即计算两次哈希值,通过比较两次哈希值确认是否通过验证。在内核文件未通过验证时,提示验证失败,并且不会利用内核文件启动内核,即停止内核启动。
在完成第二阶段引导程序的验证和运行后,继续对内核文件进行验证,在通过验证时,加载内核文件以启动内核,保证了启动内核的安全性和可靠性。
进一步的,在对内核文件进行验证和加载后,还可以对文件系统进行验证,因此,该方法还包括:获取内核文件中用于对文件系统进行验证的第五公钥;根据第五公钥对文件系统进行验证;在文件系统通过验证时,挂载文件系统;在文件系统未通过验证时,停止挂载文件系统,并提示验证失败。
其中,挂载文件系统是指由操作系统使一个存储设备(诸如硬盘、CD-ROM或共享资源)上的文件和目录可供用户通过文件系统访问的一个过程。在挂载文件系统后,可运行终端上的相关应用程序。第五公钥是存储在内核文件中的,在内核文件通过验证后,说明内核文件是安全的,因此,第五公钥也相当于是通过验证的,能够保证验证的正确性。
根据第五公钥对文件系统进行验证的实施过程也是采用非对称加密算法,即计算两次哈希值,通过比较两次哈希值确认是否通过验证。在文件系统未通过验证时,提示验证失败,并且不会挂载文件系统。
在完成内核文件的验证和加载后,继续对文件系统进行验证,在通过验证时,挂载文件系统,保证了文件系统挂载的安全性和可靠性。
需要注意的是,在前述实施例中描述的是一个较完整的终端启动过程,各个数据或者文件的验证方式基本都是采用的非对称加密算法,在实际应用时,也可以不按照前述实施流程进行实施。
因此,基于同一发明构思,本申请实施例中还提供一种终端安全启动的方法,包括:在完成内核准备操作时,读取引导程序文件;引导程序文件中包括的第一阶段引导程序已通过验证;获取引导程序文件中用于对内核文件进行验证的公钥;根据公钥对内核文件进行验证;在内核文件通过验证时,加载内核文件,以启动内核;在内核文件未通过验证时,不加载内核文件,并提示验证失败。
在这种实施方式中,可以理解,在内核文件前的验证操作的验证方式不限,只需在对内核文件进行验证时,利用已通过验证的引导程序文件中的公钥进行验证,能够保证对内核文件验证的可靠性,进而提高系统的安全性。
基于同一发明构思,本申请实施例中还提供又一种终端安全启动的方法,包括:在完成启动内核时,获取已通过验证的用于启动内核的内核文件;根据内核文件中用于对文件系统进行验证的公钥对文件系统进行验证;在文件系统通过验证时,挂载文件系统;在文件系统未通过验证时,停止挂载文件系统,并提示验证失败。
在这种实施方式中,可以理解,在验证文件系统前的验证操作的验证方式不限,只需在对文件系统进行验证时,利用已通过验证的内核文件中的公钥进行验证,能够保证对文件系统验证的可靠性,进而提高系统的安全性。
接下来请参照图2,为本申请实施例提供的引导程序文件数据结构的实施方式,如图2所示,在引导程序文件中,存储有:第一阶段引导程序,用于对第一阶段引导程序进行验证的签名,用于对内存管理程序进行验证的第二公钥,用于对第二阶段引导程序进行验证的第三公钥,以及用于对内核文件进行验证的第四公钥。
为了得到图2所示的数据结构,在终端上,还需要进行一些前期准备工作,以实现在终端上电后的安全验证。接下来结合图3所示的数据结构对前期准备工作进行介绍。前期准备工作主要包括四步:
第一步:产生带安全验证的引导程序文件。包括:
(1)分别产生SSBL(第二阶段引导程序)和MEMSYS(内存管理程序)的RSA-2048公钥和私钥对。(2)将产生的SSBL和MEMSYS的RSA-2048的公钥(即第二公钥和第三公钥)填充到图3所示的数据结构中。(3)基于SSBL和MEMSYS分别利用SHA256散列算法计算产生哈希值,并分别用SSBL和MEMSYS对应的私钥进行加密生成各自对应的签名,附加至SSBL和MEMSYS中。(4)同时在代码中内置Vendor ID供安全检查确认,生成初始的引导程序文件。(5)将上述产生的初始引导程序文件,包括FSBL(第一阶段引导程序)、SSBL和MEMSYS,提供给CA(CertificateAuthority,电子认证)供授权签名。(6)CA提取FSBL和各个公钥利用SHA256散列算法产生哈希值,并用CA私钥加密生成FSBL对应的签名。(7)终端接收CA反馈的签名,并存储到引导程序文件中。(8)调用终端系统主芯片OTP接口,编程Vendor ID(厂商标识)并启用安全检查系统。
其中,CA私钥生成签名,CA是受信任的第三方,CA所给出的数字签名使得攻击者不能伪造和篡改,因而能够保证系统的安全性。此外,在步骤(1)-(8)的步骤中,省略了一部分步骤,例如生成引导程序,包括第一阶段引导程序和第二阶段引导程序,以及生成内存管理程序。再例如,CA除了反馈生成的签名,还反馈了与私钥对应的公钥,即第一公钥,但是第一公钥是存储在CPU中的。
此外,在各个程序对应的密钥中,只有第一阶段引导程序的公钥和私钥是由CA提供的,原因是第一阶段引导程序的验证是第一步且比较重要。在实际应用时,第二阶段引导程序和内存管理程序的密钥也可以由CA进行提供,当然第一阶段引导程序的密钥也可以自己产生,在此不作限定。
在自己产生密钥时,为了提高系统的安全性,一种可选的实施方式:先产生私有密钥(即私钥),并用DES3方法加密,并将对私钥进行加密的密钥进行存储。然后读取该加密的私钥,对私钥进行解密,然后生成公有密钥(即公钥),并用DES3方法加密新生成的公有密钥(公钥),并将对公钥进行加密的密钥进行存储。用私有密钥利用SHA256散列算法计算产生哈希值签名前,需要读取前述保存的私钥对应的加密的密钥,解密提取私钥,然后去对哈希值签名加密。对应的,当验证签名前,需要读取前述保存对公钥进行加密的密钥,解密提取出公钥,然后再用公钥实现前述实施例中的验证过程。在这种实施方式中,相当于对非对称加密中的密钥对即私钥和公钥分别都进行了加密,在使用私钥和公钥前,都需要进行对应的解密操作,进一步增强了系统的安全性。
第二步:通过OpenSSL(Open Secure Sockets Layer,开放式安全套接层协议)方法,产生RSA-2048公钥public A和私钥private A对,并将public A内置于引导程序文件中。该密钥对用于终端系统内核和文件系统安全验证。OpenSSL是一个开放源代码的软件库包,可以提供加密服务,因此可以产生密钥对。需要注意的是,SSBL和MEMSYS的公钥和私钥对也可以通过OpenSSL产生。
第三步:基于待发布的内核文件,利用SHA256散列算法计算产生哈希值,并用私钥private A签名加密,生成数字签名,附加至最终的内核文件中。这一步主要是用于对内核文件进行验证。
第四步:基于待发布的文件系统,利用SHA256散列算法计算产生哈希值,并用私钥private A签名加密,生成数字签名,附加至最终的文件系统中。这一步主要是用于对文件系统进行验证。
结合图2所示的数据结构的介绍,接下来再对完整的验证流程作一个总体介绍。请参照图3,为本申请实施例提供的终端安全启动的方法的一种可选的实施流程,在图3中,FSBL代表第一阶段引导程序,SSBL代表第二阶段引导程序,Vendor ID代表厂商标识,RSA-2048代表非对称加密算法,MEMSYS代表内存管理程序。实施流程包括:终端设备上电。初始化CPU及硬件资源。拷贝FSBL到CPU的内部存储器。验证FSBL和OTP中的厂商标识是否一致,若一致,授权验证FSBL,即利用非对称加密算法进行验证;若不一致,验证不通过。若FSBL验证通过,则拷贝MEMSYS到CPU的内部存储器,对MEMSYS进行授权验证。若MEMSYS验证通过,初始化DDR内存以及硬件资源,同时启用DDR Scramble安全算法。继续对SSBL进行验证,若SSBL验证通过,启动内核准备操作,并拷贝内核文件,对内核文件进行验证。若内核文件验证通过,启动内核,并拷贝文件系统,对文件系统及应用程序进行验证,若文件系统及应用程序通过验证,挂载文件系统及应用程序,终端系统启动完成。需要注意的是,在图3中,若验证不通过的情况,提示验证失败的方式是通过闪烁LED灯。
基于同一发明构思,接下来请参照图4,为本申请实施例提供的终端安全启动的装置200,包括:获取模块201和验证模块202。
获取模块201,用于在终端完成CPU及其硬件初始化后,读取引导程序文件,所述引导程序文件中包括第一阶段引导程序。验证模块202,用于检查所述第一阶段引导程序中的厂商标识是否和OTP中存储的厂商标识相同。验证模块202还用于:若所述第一阶段引导程序中的厂商标识和所述OTP中存储的厂商标识不相同,确定所述第一阶段引导程序未通过验证,并提示验证失败。
可选的,所述CPU中存储有用于对所述第一阶段引导程序验证的第一公钥,验证模块202还用于:若所述第一阶段引导程序中的厂商标识和所述OTP中存储的厂商标识相同,根据所述第一公钥对所述第一阶段引导程序进行验证。
可选的,所述引导程序文件中还包括签名,验证模块202还用于:根据所述第一公钥对所述签名进行解密,得到第一哈希值,所述签名为基于所述引导程序文件计算出所述第一哈希值,并经私钥加密生成;基于所述引导程序文件,计算第二哈希值;将所述第一哈希值和所述第二哈希值进行比较,确定所述第一阶段引导程序是否通过验证。
可选的,装置200还包括生成模块,生成模块用于:生成第一阶段引导程序;将所述第一阶段引导程序发送给CA;接收所述CA发送的通过私钥加密生成的所述签名;基于所述第一阶段引导程序和所述签名生成所述引导程序文件。
可选的,所述引导程序文件中还存储有用于对内存管理程序进行验证的第二公钥,获取模块201还用于:在确定所述第一阶段引导程序通过验证时,读取内存管理程序。装置200还包括运行模块,用于在所述内存管理程序通过验证时,运行所述内存管理程序,以执行内存和除所述CPU外的硬件初始化。
可选的,所述引导程序文件中还存储有用于对第二阶段引导程序进行验证的第三公钥。获取模块201还用于读取第二阶段引导程序。验证模块202还用于根据所述第三公钥对所述第二阶段引导程序进行验证。所述运行模块还用于在所述第二阶段引导程序通过验证时,运行所述第二阶段引导程序,执行内核准备操作。
可选的,所述引导程序文件中还包括用于对内核文件进行验证的第四公钥。验证模块202还用于根据所述第四公钥对所述内核文件进行验证。所述运行模块还用于:在所述内核文件通过验证时,加载所述内核文件,以启动内核;在所述内核文件未通过验证时,不加载所述内核文件,并提示验证失败。
可选的,获取模块201还用于获取所述内核文件中用于对文件系统进行验证的第五公钥。验证模块202还用于根据所述第五公钥对所述文件系统进行验证。运行模块还用于在所述文件系统通过验证时,挂载文件系统;在所述文件系统未通过验证时,停止挂载文件系统,并提示验证失败。
前述实施例中的终端安全启动的方法中的各实施方式和具体实例同样适用于图4的装置,通过前述对终端安全启动的方法的详细描述,本领域技术人员可以清楚的知道图4中的终端安全启动的装置的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本申请实施例还提供一种终端安全启动的装置,包括:获取模块,用于在完成内核准备操作时,读取引导程序文件;所述引导程序文件中包括的第一阶段引导程序已通过验证。所述获取模块还用于:获取所述引导程序文件中用于对内核文件进行验证的公钥;验证模块,用于根据所述公钥对所述内核文件进行验证。所述验证模块还用于:在所述内核文件通过验证时,加载所述内核文件,以启动内核;在所述内核文件未通过验证时,不加载所述内核文件,并提示验证失败。
基于同一发明构思,本申请实施例还提供一种终端安全启动的装置,包括:获取模块,用于在完成启动内核时,获取已通过验证的用于启动内核的内核文件。验证模块,用于根据所述内核文件中用于对文件系统进行验证的公钥对文件系统进行验证。所述验证模块还用于:在所述文件系统通过验证时,挂载所述文件系统;在所述文件系统未通过验证时,停止挂载所述文件系统,并提示验证失败。
基于同一发明构思,本申请实施例还提供了一种可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被计算机运行时执行上述任一实施方式的终端安全启动的方法中的步骤。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (14)
1.一种终端安全启动的方法,其特征在于,包括:
在终端完成CPU及其硬件初始化后,读取引导程序文件,所述引导程序文件中包括第一阶段引导程序;
检查所述第一阶段引导程序中的厂商标识是否和OTP中存储的厂商标识相同;
若所述第一阶段引导程序中的厂商标识和所述OTP中存储的厂商标识不相同,确定所述第一阶段引导程序未通过验证,并提示验证失败。
2.根据权利要求1所述的方法,其特征在于,所述CPU中存储有用于对所述第一阶段引导程序验证的第一公钥,所述方法还包括:
若所述第一阶段引导程序中的厂商标识和所述OTP中存储的厂商标识相同,根据所述第一公钥对所述第一阶段引导程序进行验证。
3.根据权利要求2所述的方法,其特征在于,所述引导程序文件中还包括签名,根据所述第一公钥对所述第一阶段引导程序进行验证,包括:
根据所述第一公钥对所述签名进行解密,得到第一哈希值,所述签名为基于所述引导程序文件计算出所述第一哈希值,并经私钥加密生成;
基于所述引导程序文件,计算第二哈希值;
将所述第一哈希值和所述第二哈希值进行比较,确定所述第一阶段引导程序是否通过验证。
4.根据权利要求3所述的方法,其特征在于,在读取引导程序文件之前,所述方法还包括:
生成第一阶段引导程序;
将所述第一阶段引导程序发送给CA;
接收所述CA发送的通过CA私钥加密生成的所述签名;
基于所述第一阶段引导程序和所述签名生成所述引导程序文件。
5.根据权利要求3所述的方法,其特征在于,所述引导程序文件中还存储有用于对内存管理程序进行验证的第二公钥,所述方法还包括:
在确定所述第一阶段引导程序通过验证时,读取内存管理程序;
根据所述第二公钥对所述内存管理程序进行验证;
在所述内存管理程序通过验证时,运行所述内存管理程序,以执行内存和除所述CPU外的硬件初始化。
6.根据权利要求5所述的方法,其特征在于,所述引导程序文件中还存储有用于对第二阶段引导程序进行验证的第三公钥,在运行所述内存管理程序后,所述方法还包括:
读取第二阶段引导程序;
根据所述第三公钥对所述第二阶段引导程序进行验证;
在所述第二阶段引导程序通过验证时,运行所述第二阶段引导程序,执行内核准备操作。
7.根据权利要求6所述的方法,其特征在于,所述引导程序文件中还包括用于对内核文件进行验证的第四公钥,在运行所述第二阶段引导程序后,所述方法还包括:
根据所述第四公钥对所述内核文件进行验证;
在所述内核文件通过验证时,加载所述内核文件,以启动内核;
在所述内核文件未通过验证时,不加载所述内核文件,并提示验证失败。
8.根据权利要求7所述的方法,其特征在于,加载所述内核文件后,所述方法还包括:
获取所述内核文件中用于对文件系统进行验证的第五公钥;
根据所述第五公钥对所述文件系统进行验证;
在所述文件系统通过验证时,挂载文件系统;
在所述文件系统未通过验证时,停止挂载文件系统,并提示验证失败。
9.一种终端安全启动的方法,其特征在于,包括:
在完成内核准备操作时,读取引导程序文件;所述引导程序文件中包括的第一阶段引导程序已通过验证;
获取所述引导程序文件中用于对内核文件进行验证的公钥;
根据所述公钥对所述内核文件进行验证;
在所述内核文件通过验证时,加载所述内核文件,以启动内核;
在所述内核文件未通过验证时,不加载所述内核文件,并提示验证失败。
10.一种终端安全启动的方法,其特征在于,包括:
在完成启动内核时,获取已通过验证的用于启动内核的内核文件;
根据所述内核文件中用于对文件系统进行验证的公钥对文件系统进行验证;
在所述文件系统通过验证时,挂载所述文件系统;
在所述文件系统未通过验证时,停止挂载所述文件系统,并提示验证失败。
11.一种终端安全启动的装置,其特征在于,包括:
获取模块,用于在终端完成CPU及其硬件初始化后,读取引导程序文件,所述引导程序文件中包括第一阶段引导程序;
验证模块,用于检查所述第一阶段引导程序中的厂商标识是否和OTP中存储的厂商标识相同;
所述验证模块还用于:若所述第一阶段引导程序中的厂商标识和所述OTP中存储的厂商标识不相同,确定所述第一阶段引导程序未通过验证,并提示验证失败。
12.一种终端安全启动的装置,其特征在于,包括:
获取模块,用于在完成内核准备操作时,读取引导程序文件;所述引导程序文件中包括的第一阶段引导程序已通过验证;
所述获取模块还用于:获取所述引导程序文件中用于对内核文件进行验证的公钥;
验证模块,用于根据所述公钥对所述内核文件进行验证;
所述验证模块还用于:在所述内核文件通过验证时,加载所述内核文件,以启动内核;在所述内核文件未通过验证时,不加载所述内核文件,并提示验证失败。
13.一种终端安全启动的装置,其特征在于,包括:
获取模块,用于在完成启动内核时,获取已通过验证的用于启动内核的内核文件;
验证模块,用于根据所述内核文件中用于对文件系统进行验证的公钥对文件系统进行验证;
所述验证模块还用于:在所述文件系统通过验证时,挂载所述文件系统;在所述文件系统未通过验证时,停止挂载所述文件系统,并提示验证失败。
14.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被计算机运行时执行如权利要求1-10任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910931213.9A CN110688660B (zh) | 2019-09-27 | 2019-09-27 | 一种终端安全启动的方法及装置、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910931213.9A CN110688660B (zh) | 2019-09-27 | 2019-09-27 | 一种终端安全启动的方法及装置、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110688660A true CN110688660A (zh) | 2020-01-14 |
CN110688660B CN110688660B (zh) | 2021-08-24 |
Family
ID=69110957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910931213.9A Active CN110688660B (zh) | 2019-09-27 | 2019-09-27 | 一种终端安全启动的方法及装置、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110688660B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309512A (zh) * | 2020-01-16 | 2020-06-19 | 广东九联科技股份有限公司 | 一种设备及其高安加密方法、存储介质 |
CN111523124A (zh) * | 2020-07-06 | 2020-08-11 | 飞天诚信科技股份有限公司 | 一种云音箱固件保护方法及系统 |
CN112769800A (zh) * | 2020-12-31 | 2021-05-07 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 交换机的完整性验证方法、装置和计算机存储介质 |
CN112926070A (zh) * | 2021-03-02 | 2021-06-08 | 浪潮云信息技术股份公司 | 一种基于国产cpu及操作系统的非涉密域与涉密域的公文交换方法及系统 |
CN113407943A (zh) * | 2021-05-28 | 2021-09-17 | 浪潮电子信息产业股份有限公司 | 一种服务器的开机方法、系统及存储介质 |
CN114417360A (zh) * | 2022-03-28 | 2022-04-29 | 青岛鼎信通讯股份有限公司 | 一种应用于嵌入式电力设备的系统安全启动方法 |
WO2023071040A1 (zh) * | 2021-10-29 | 2023-05-04 | 苏州浪潮智能科技有限公司 | 一种系统启动方法、系统启动装置、服务器以及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794393A (zh) * | 2015-04-24 | 2015-07-22 | 杭州字节信息技术有限公司 | 一种嵌入式分区映像安全认证及内核可信引导方法及其设备 |
CN108629206A (zh) * | 2017-12-13 | 2018-10-09 | 百富计算机技术(深圳)有限公司 | 一种安全加密方法、加密机及终端设备 |
CN109446815A (zh) * | 2018-09-30 | 2019-03-08 | 华为技术有限公司 | 基本输入输出系统固件的管理方法、装置和服务器 |
CN110188542A (zh) * | 2019-04-18 | 2019-08-30 | 华为技术有限公司 | 一种终端设备启动方法和装置 |
-
2019
- 2019-09-27 CN CN201910931213.9A patent/CN110688660B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794393A (zh) * | 2015-04-24 | 2015-07-22 | 杭州字节信息技术有限公司 | 一种嵌入式分区映像安全认证及内核可信引导方法及其设备 |
CN108629206A (zh) * | 2017-12-13 | 2018-10-09 | 百富计算机技术(深圳)有限公司 | 一种安全加密方法、加密机及终端设备 |
CN109446815A (zh) * | 2018-09-30 | 2019-03-08 | 华为技术有限公司 | 基本输入输出系统固件的管理方法、装置和服务器 |
CN110188542A (zh) * | 2019-04-18 | 2019-08-30 | 华为技术有限公司 | 一种终端设备启动方法和装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309512A (zh) * | 2020-01-16 | 2020-06-19 | 广东九联科技股份有限公司 | 一种设备及其高安加密方法、存储介质 |
CN111309512B (zh) * | 2020-01-16 | 2024-01-02 | 广东九联科技股份有限公司 | 一种物联网设备及其高安加密方法、存储介质 |
CN111523124A (zh) * | 2020-07-06 | 2020-08-11 | 飞天诚信科技股份有限公司 | 一种云音箱固件保护方法及系统 |
CN111523124B (zh) * | 2020-07-06 | 2020-10-13 | 飞天诚信科技股份有限公司 | 一种云音箱固件保护方法及系统 |
CN112769800A (zh) * | 2020-12-31 | 2021-05-07 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 交换机的完整性验证方法、装置和计算机存储介质 |
CN112769800B (zh) * | 2020-12-31 | 2022-10-04 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 交换机的完整性验证方法、装置和计算机存储介质 |
CN112926070A (zh) * | 2021-03-02 | 2021-06-08 | 浪潮云信息技术股份公司 | 一种基于国产cpu及操作系统的非涉密域与涉密域的公文交换方法及系统 |
CN113407943A (zh) * | 2021-05-28 | 2021-09-17 | 浪潮电子信息产业股份有限公司 | 一种服务器的开机方法、系统及存储介质 |
WO2023071040A1 (zh) * | 2021-10-29 | 2023-05-04 | 苏州浪潮智能科技有限公司 | 一种系统启动方法、系统启动装置、服务器以及可读存储介质 |
CN114417360A (zh) * | 2022-03-28 | 2022-04-29 | 青岛鼎信通讯股份有限公司 | 一种应用于嵌入式电力设备的系统安全启动方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110688660B (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110688660B (zh) | 一种终端安全启动的方法及装置、存储介质 | |
CN109313690B (zh) | 自包含的加密引导策略验证 | |
EP2659373B1 (en) | System and method for secure software update | |
US7506381B2 (en) | Method for securing an electronic device, a security system and an electronic device | |
JP5703391B2 (ja) | 耐タンパー性ブート処理のためのシステム及び方法 | |
US8504838B2 (en) | Integrity protected smart card transaction | |
Kim et al. | Predictability of android openssl's pseudo random number generator | |
US20150106618A1 (en) | Device Using Secure Processing Zone to Establish Trust for Digital Rights Management | |
CN107464109B (zh) | 可信移动支付装置、系统和方法 | |
JP2009175923A (ja) | プラットフォーム完全性検証システムおよび方法 | |
CN111401901B (zh) | 生物支付设备的认证方法、装置、计算机设备和存储介质 | |
WO2019051839A1 (zh) | 一种数据处理的方法及装置 | |
KR20130008939A (ko) | 휴대 단말기에서 단말 고유 정보의 복제를 방지하는 장치 및 방법 | |
US20060150246A1 (en) | Program execution control device, OS, client terminal, server, program execution control system, program execution control method and computer program execution control program | |
CN115859267A (zh) | 一种应用程序安全启动的方法、存储控制芯片和电子设备 | |
CN116070217A (zh) | 一种用于芯片模块的安全启动系统及其启动方法 | |
WO2019059148A1 (ja) | Bios管理装置、bios管理システム、bios管理方法、及び、bios管理プログラムが格納された記録媒体 | |
CN110445774B (zh) | IoT设备的安全防护方法、装置及设备 | |
CN116561734A (zh) | 一种验证方法、装置、计算机及计算机配置系统 | |
CN112861137A (zh) | 安全固件 | |
JP5049179B2 (ja) | 情報処理端末装置及びアプリケーションプログラムの起動認証方法 | |
CN109840409B (zh) | 核心板和核心板启动方法 | |
CN114650175B (zh) | 一种验证方法及装置 | |
CN109951319B (zh) | 备份加密机管理员锁的方法和加密机设备 | |
CN110048837B (zh) | 用于复制密码机设备的方法和系统及密码机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |