CN105608386B - 一种可信计算终端完整性度量、证明方法及装置 - Google Patents

一种可信计算终端完整性度量、证明方法及装置 Download PDF

Info

Publication number
CN105608386B
CN105608386B CN201610139135.5A CN201610139135A CN105608386B CN 105608386 B CN105608386 B CN 105608386B CN 201610139135 A CN201610139135 A CN 201610139135A CN 105608386 B CN105608386 B CN 105608386B
Authority
CN
China
Prior art keywords
integrity
measurement
value
credible
computing terminal
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.)
Active
Application number
CN201610139135.5A
Other languages
English (en)
Other versions
CN105608386A (zh
Inventor
李雨励
何卫国
李军
张文沛
方景杰
何涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHENGDU SANLINGJIA MICROELECTRONIC Co Ltd
Original Assignee
CHENGDU SANLINGJIA MICROELECTRONIC Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by CHENGDU SANLINGJIA MICROELECTRONIC Co Ltd filed Critical CHENGDU SANLINGJIA MICROELECTRONIC Co Ltd
Priority to CN201610139135.5A priority Critical patent/CN105608386B/zh
Publication of CN105608386A publication Critical patent/CN105608386A/zh
Application granted granted Critical
Publication of CN105608386B publication Critical patent/CN105608386B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及可信计算领域,尤其是一种基于可信计算的终端完整性检测及证明方法及装置。本发明针对现有技术存在的问题,提供一种基于可信计算的终端完整性检测及证明方法及装置,在不增加额外硬件要求和专用指令的情况下,为应用程序搭建了一个隔离安全的完整性动态度量环境,同时保证在度量过程中其他应用程序的并行无障碍运行。在完整性证明过程中隐藏了计算终端各部件的实际度量值,有效阻止黑客通过实际度量值破译终端的版本、配置和固件等信息。当可信计算终端进行完整性检测时,将储存于平台配置寄存器PCR中的扩展完整性度量值和总度量次数进行签名后发送给验证方,验证方通过执行杂凑运算即可检测该可信计算终端的完整性。

Description

一种可信计算终端完整性度量、证明方法及装置
技术领域
本发明涉及可信计算领域,尤其是一种可信计算终端完整性度量、证明方法及装置。
背景技术
随着云计算、物联网和移动互联等计算机网络技术的快速发展和深度应用,目前最突出的三大安全威胁是恶意代码攻击、信息非法窃取、数据和系统的非法破坏,其中,以用户私密信息为目标的恶意代码攻击超过传统病毒成为最大的安全威胁。
传统的防火墙、入侵检测、病毒防御和网络隔离等网络安全防护手段都侧重于被动的保护网络、服务器的信息安全。而相对脆弱的终端就越来越成为信息系统安全的薄弱环节。针对这些系统安全需求和各类攻击手段,可信计算从计算机体系结构着手,从硬件安全出发通过完整性度量主动地建立一种信任传递体系以保证终端可信。
在具体实现方面,可信计算组织TCG的可信计算思想是通过硬件平台上引入可信平台模块TPM(Trusted Platform Module)来提高计算机系统的安全性,这种思想得到了产业界的普遍认同。我国思路与TCG类似,以可信密码模块TCM为基础,通过主动完整性度量构建可传递信任链,保证整个计算机终端(PC、服务器、移动手持设备)各部件版本信息、配置参数、操作系统和程序等的完整性,确保计算机终端按照预期的行为执行。在保证计算终端可信的前提下,通过扩展远程证明技术(身份证明、完整性证明)和可信网络连接技术,进一步保证整个网络信息环境的可信。
目前,无论是TCG规范还是我国的可信计算规范,都只描述了可信终端平台启动期间的完整性度量方法,即从可信终端加电开始到操作系统启动之前静态代码和数据的度量,而对运行于操作系统之上的应用软件的完整性度量却没有给出明确指导。AMD、Intel等公司基于动态度量根DRTM技术,通过对需要度量的程序代码建立一个隔离的安全可执行环境,理论上可以实现任意时刻对任意代码(包括应用程序)的完整性度量。但隔离的安全可执行环境建立需要采用支持DRTM的CPU架构和专用指令,并需为内存提供专门的硬件级保护。同时,在进行代码度量时,禁止了页表机制和所有中断,导致其他应用程序无法运行。
在完整性证明过程中,目前通常采用:计算终端向验证方发送完整性度量PCR值的签名和相关完整性度量日志信息,验证方通过分析度量日志信息和PCR签名判断该PCR值是否来自真实TCM/TPM的正确度量过程。但是黑客可以通过截取度量日志信息中记录的实际度量值或计算终端开机启动后生成的第一次PCR的值,并结合穷举测试激励的方法破译终端的重要版本、配置和固件信息。
发明内容
本发明所要解决的技术问题是:针对现有技术存在的问题,提供一种可信计算终端完整性度量、证明方法及装置,在不增加额外硬件要求和专用指令的情况下,为应用程序搭建了一个隔离安全的完整性动态度量环境,同时保证在度量过程中其他应用程序的并行无障碍运行。在完整性证明过程中隐藏了计算终端各部件的实际度量值,有效阻止黑客通过实际度量值破译终端的版本、配置和固件等信息。
本发明采用的技术方案如下:
一种可信计算终端完整性度量、证明方法包括:
步骤1:将可信计算终端各部件的度量参考值和度量初始值注入可信密码模块TCM中;度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序;度量初始值指的是验证方与该可信计算终端的共享密钥;
步骤2:启动阶段,首先可信密码模块主动对计算机终端的BIOS进行完整性度量;当BIOS的完整性度量成功后,CPU启动,然后CPU调用可信密码模块依次对OS Loader、OS内核及应用程序进行完整性度量;当可信计算终端部件全部度量成功后,执行步骤3;否则,开机启动失败;
步骤3:可信计算终端运行阶段,应用程序在运行前将被加载到由MPU/MMU内存控制寄存器开辟的只读存储空间,同时度量代理模块调用可信密码模块对应用程序进行度量;当度量通过后,执行应用程序;
步骤4:当可信计算终端进行完整性证明时,将储存于平台配置寄存器中可信计算终端部件的扩展完整性度量值和总度量次数n进行签名后发送给验证方,验证方通过执行杂凑运算即可验证该可信计算终端的完整性;可信计算终端部件的扩展完整性度量值为HASH(度量n-1次后扩展的完整性度量值||第n次完整性度量值)= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||完整性度量值1)|| 完整性度量值2)…||完整性度量值i)…)完整性度量值n-1||完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,完整性度量值i表示第i次的完整性度量值。
进一步的,所述步骤1中的度量参考值和度量初始值只在可信计算终端交付或终端部件增加、更新时通过授权数据结合物理现场的方式注入到可信密码模块的非易失性存储器中;其中注入的度量初始值始终存储在可信密码模块内不能被读出,且每次可信计算终端开机启动时,度量初始值将被重新写入可信密码模块的平台配置寄存器中。
进一步的,所述步骤2具体包括以下步骤:
步骤21:可信计算终端上电后,可信密码模块先于CPU启动,可信密码模块主动读取并度量BIOS,并将得到的BIOS完整性度量值与存储于可信密码模块非易失性存储器中的BIOS度量参考值进行比较;若两值相等,则BIOS完整性度量成功,执行步骤22,并将得到的BIOS完整性度量值与度量初始值进行杂凑扩展得到的BIOS的新PCR值,将BIOS的新PCR值写入对应的平台配置寄存器中;否则,执行步骤23;其中BIOS的新PCR值=HASH(度量初始值||BIOS完整性度量值)=(度量初始值||BIOS度量参考值);BIOS度量参考值指的是BIOS没有被篡改时,对BIOS程序进行HSAH杂凑运算得到的值;BIOS完整性度量值指的是对该终端BIOS程序进行HSAH杂凑运算得到的值。
步骤22:CPU启动,依次执行嵌入于BIOS、OS Loader、OS内核中的度量程序,通过调用可信密码模块对OS Loader、OS内核及应用程序进行完整性度量,若完整性度量成功则终端启动度量完成,并将各度量值与度量初始值进行杂凑扩展后写入对应的平台配置寄存器中;若度量失败则执行步骤23;
步骤23:退出可信计算终端的启动度量,告警并申请可信计算终端所有者进一步授权操作。
进一步的,所述步骤3具体包括:
步骤31:位于OS内核的运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器将内存空间划分为多个固定大小的块空间,执行步骤32;
步骤32:调用钩子函数将待度量的应用程序映射到内存空间,执行步骤33。
步骤33:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为只读,执行步骤34。
步骤34:运行度量代理模块调用可信密码模块TCM对应用程序进行完整性度量;若完整性度量成功,则执行步骤35,并将得到的应用程序完整性度量值进行杂凑扩展得到应用程序新扩展完整性度量值,将该应用程序新扩展完整性度量值写入对应的平台配置寄存器中;否则,应用程序不能执行,运行度量代理告警并申请终端所有者进一步授权操作;其中应用程序新扩展完整性度量值= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(应用程序度量初始值||应用程序完整性度量值1)||应用程序完整性度量值2)…||应用程序完整性度量值i)…)应用程序完整性度量值n-1||应用程序完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,应用程序完整性度量值i表示第i次对该终端应用程序进行HSAH杂凑运算得到的值;度量初始值指的是验证方与该可信计算终端的共享密钥;
步骤35:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为可读写,执行步骤36;
步骤36:为应用程序建立上下文执行环境,并跳转到其main入口函数开始执行,执行步骤37;
步骤37:应用程序运行完毕后,需要定时释放所占据的内存空间,以便下次运行时重新加载。
进一步的,所述步骤4具体包括:
步骤41:当可信计算终端需要提供完整性证明时,只需将储存于配置寄存器PCR中的扩展完整性度量值和总度量次数进行签名后发送给验证方,完整性验证方验证PCR中的扩展完整性度量值和总度量次数的签名,若签名验证通过执行步骤42,否则执行步骤43。
步骤42:完整性验证方通过执行杂凑算法判断可信计算终端的完整性;判断依据为:平台配置寄存器的扩展完整性度量值是否等于HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||度量参考值)|| 度量参考值)…||度量参考值)…)度量参考值||度量参考值),其中n=总度量次数,HASHi表示第i次杂凑运算;若两个相等,则完整性验证成功;否则,执行步骤4.3;其中度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;完整性度量值指的是对可信计算终端部件进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序。
步骤43:完整性验证失败,验证方将失败结果告知可信计算终端。
一种可信计算终端完整性度量、证明装置包括:
可信密码模块,用于存储可信计算终端各部件的度量参考值和度量初始值;度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序;度量初始值指的是验证方与该可信计算终端的共享密钥;启动阶段,首先可信密码模块主动对计算机终端的BIOS进行完整性度量;当BIOS的完整性度量成功后,CPU启动,然后CPU调用可信密码模块依次对OS Loader、OS内核及应用程序进行完整性度量;当可信计算终端部件全部度量成功后,执行步骤3;否则,开机启动失败;
可信计算终端,当其运行阶段,应用程序在运行前将被加载到由MPU/MMU内存控制寄存器开辟的只读存储空间,同时度量代理模块调用可信密码模块对应用程序进行度量;当度量通过后,执行应用程序;当可信计算终端进行完整性证明时,将储存于平台配置寄存器中可信计算终端部件的扩展完整性度量值和总度量次数n进行签名后发送给验证方,验证方通过执行杂凑运算即可验证该可信计算终端的完整性;可信计算终端部件的扩展完整性度量值为HASH(度量n-1次后扩展的完整性度量值||第n次完整性度量值)= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||完整性度量值1)|| 完整性度量值2)…||完整性度量值i)…)完整性度量值n-1||完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,完整性度量值i表示第i次的完整性度量值。
进一步的,所述度量参考值和度量初始值只在可信计算终端交付或终端部件增加、更新时通过授权数据结合物理现场的方式注入到可信密码模块的非易失性存储器中;其中注入的度量初始值始终存储在可信密码模块内不能被读出,且每次可信计算终端开机启动时,度量初始值将被重新写入可信密码模块的平台配置寄存器中。
进一步的,启动阶段,首先可信密码模块主动对计算机终端的BIOS进行完整性度量;当BIOS的完整性度量成功后,CPU启动,然后CPU调用可信密码模块依次对OS Loader、OS内核及应用程序进行完整性度量;当可信计算终端部件全部度量成功后,执行步骤3;否则,开机启动失败具体过程包括:
步骤21:可信计算终端上电后,可信密码模块先于CPU启动,可信密码模块主动读取并度量BIOS,并将得到的BIOS完整性度量值与存储于可信密码模块非易失性存储器中的BIOS度量参考值进行比较;若两值相等,则BIOS完整性度量成功,执行步骤22,并将得到的BIOS完整性度量值与度量初始值进行杂凑扩展得到的BIOS的新PCR值,将BIOS的新PCR值写入对应的平台配置寄存器中;否则,执行步骤23;其中BIOS的新PCR值=HASH(度量初始值||BIOS完整性度量值)=(度量初始值||BIOS度量参考值);BIOS度量参考值指的是BIOS没有被篡改时,对BIOS程序进行HSAH杂凑运算得到的值;BIOS完整性度量值指的是对该终端BIOS程序进行HSAH杂凑运算得到的值。
步骤22:CPU启动,依次执行嵌入于BIOS、OS Loader、OS内核中的度量程序,通过调用可信密码模块对OS Loader、OS内核及应用程序进行完整性度量,若完整性度量成功则终端启动度量完成,并将各度量值与度量初始值进行杂凑扩展后写入对应的平台配置寄存器中;若度量失败则执行步骤23;
步骤23:退出可信计算终端的启动度量,告警并申请可信计算终端所有者进一步授权操作。
进一步的,所述可信计算终端运行阶段,应用程序在运行前将被加载到由MPU/MMU内存控制寄存器开辟的只读存储空间,同时度量代理模块调用可信密码模块对应用程序进行度量;当度量通过后,执行应用程序具体包括:
步骤31:位于OS内核的运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器将内存空间划分为多个固定大小的块空间,执行步骤32;
步骤32:调用钩子函数将待度量的应用程序映射到内存空间,执行步骤33。
步骤33:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为只读,执行步骤34。
步骤34:运行度量代理模块调用可信密码模块TCM对应用程序进行完整性度量;若完整性度量成功,则执行步骤35,并将得到的应用程序完整性度量值进行杂凑扩展得到应用程序新扩展完整性度量值,将该应用程序新扩展完整性度量值写入对应的平台配置寄存器中;否则,应用程序不能执行,运行度量代理告警并申请终端所有者进一步授权操作;其中应用程序新扩展完整性度量值= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(应用程序度量初始值||应用程序完整性度量值1)||应用程序完整性度量值2)…||应用程序完整性度量值i)…)应用程序完整性度量值n-1||应用程序完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,应用程序完整性度量值i表示第i次对该终端应用程序进行HSAH杂凑运算得到的值;度量初始值指的是验证方与该可信计算终端的共享密钥;
步骤35:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为可读写,执行步骤36;
步骤36:为应用程序建立上下文执行环境,并跳转到其main入口函数开始执行,执行步骤37;
步骤37:应用程序运行完毕后,需要定时释放所占据的内存空间,以便下次运行时重新加载。
进一步的,所述当可信计算终端进行完整性证明时,将储存于平台配置寄存器中可信计算终端部件的扩展完整性度量值和总度量次数n进行签名后发送给验证方,验证方通过执行杂凑运算即可检测该可信计算终端的完整性;可信计算终端部件的扩展完整性度量值为HASH(度量n-1次后扩展完整性度量值||第n次完整性度量值)= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||完整性度量值1)|| 完整性度量值2)…||完整性度量值i)…)完整性度量值n-1||完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,完整性度量值i表示第i次的完整性度量值具体包括:
步骤41:当可信计算终端需要提供完整性证明时,只需将储存于配置寄存器PCR中的扩展完整性度量值和总度量次数进行签名后发送给验证方,完整性验证方验证PCR中的扩展完整性度量值和总度量次数的签名,若签名验证通过执行步骤42,否则执行步骤43。
步骤42:完整性验证方通过执行杂凑算法判断可信计算终端的完整性;判断依据为:平台配置寄存器的扩展完整性度量值是否等于HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||度量参考值)|| 度量参考值)…||度量参考值)…)度量参考值||度量参考值),其中n=总度量次数,HASHi表示第i次杂凑运算;若两个相等,则完整性验证成功;否则,执行步骤4.3;其中度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;完整性度量值指的是对可信计算终端部件进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序。
步骤43:完整性验证失败,验证方将失败结果告知可信计算终端。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1、在不增加额外硬件要求和专用指令的情况下,为应用程序搭建了一个隔离安全的动态完整性度量环境。应用程序在被度量之前将被加载到由MPU/MMU内存控制寄存器开辟的安全只读存储空间,同时运行度量代理模块调用TCM对应用程序进行度量。当度量通过后,应用程序才可被执行。在度量的过程中其他已通过度量的应用程序可以并行运行,且无法更改只读存储空间的待度量应用程序,可抵抗TOCTOU(time of check to time of use)攻击。
2、在完整性证明过程中,引入度量初始值和度量计数,隐藏了计算终端各部件的实际度量值,可信计算终端只需将储存于平台配置寄存器PCR中的扩展完整性度量值和总度量次数进行签名后发送给验证方,即可实现完整性证明,有效阻止黑客通过实际度量值破译终端的版本、配置和固件等信息。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1为本发明中完整性度量及证明方法流程图;
图2为本发明可信计算终端运行度量流程图。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
本发明相关说明:
度量代理模块调用可信密码模块TCM对应用程序进行度量:度量代理模块是一段OS内核程序,该程序编写应当参照国家商密局的相关可信密码模块接口规范。
本发明包括:1)完整性度量(指的是步骤1、2、3)和证明阶段(指的是步骤4):
步骤1:将可信计算终端各部件的度量参考值和度量初始值注入可信密码模块TCM中;度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序;度量初始值指的是验证方与该可信计算终端的共享密钥;
步骤2:启动阶段,首先可信密码模块主动对计算机终端的BIOS进行完整性度量;当BIOS的完整性度量成功后,CPU启动,然后CPU调用可信密码模块依次对OS Loader、OS内核及应用程序进行完整性度量;当可信计算终端部件全部度量成功后,执行步骤3;否则,开机启动失败; 具体为:
步骤21:可信计算终端上电后,可信密码模块先于CPU启动,可信密码模块主动读取并度量BIOS,并将得到的BIOS完整性度量值与存储于可信密码模块非易失性存储器中的BIOS度量参考值进行比较;若两值相等,则BIOS完整性度量成功,执行步骤22,并将得到的BIOS完整性度量值与度量初始值进行杂凑扩展得到的BIOS的新PCR值,将BIOS的新PCR值写入对应的平台配置寄存器中;否则,执行步骤23;其中BIOS的新PCR值=HASH(度量初始值||BIOS完整性度量值)=(度量初始值||BIOS度量参考值);BIOS度量参考值指的是BIOS没有被篡改时,对BIOS程序进行HSAH杂凑运算得到的值;BIOS完整性度量值指的是对该终端BIOS程序进行HSAH杂凑运算得到的值。
步骤22:CPU启动,依次执行嵌入于BIOS、OS Loader、OS内核中的度量程序,通过调用可信密码模块对OS Loader、OS内核及应用程序进行完整性度量,若完整性度量成功则终端启动度量完成,并将各度量值与度量初始值进行杂凑扩展后写入对应的平台配置寄存器中;若度量失败则执行步骤23;
步骤23:退出可信计算终端的启动度量,告警并申请可信计算终端所有者进一步授权操作。
步骤3:可信计算终端运行阶段,应用程序在运行前将被加载到由MPU/MMU内存控制寄存器开辟的只读存储空间,同时度量代理模块调用可信密码模块对应用程序进行度量;当度量通过后,执行应用程序;具体为:
步骤31:位于OS内核的运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器将内存空间划分为多个固定大小的块空间,执行步骤32;
步骤32:调用钩子函数将待度量的应用程序映射到内存空间,执行步骤33。
步骤33:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为只读,执行步骤34。
步骤34:运行度量代理模块调用可信密码模块TCM对应用程序进行完整性度量;若完整性度量成功,则执行步骤35,并将得到的应用程序完整性度量值进行杂凑扩展得到应用程序新扩展完整性度量值,将该应用程序新扩展完整性度量值写入对应的平台配置寄存器中;否则,应用程序不能执行,运行度量代理告警并申请终端所有者进一步授权操作;其中应用程序新扩展完整性度量值= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(应用程序度量初始值||应用程序完整性度量值1)||应用程序完整性度量值2)…||应用程序完整性度量值i)…)应用程序完整性度量值n-1||应用程序完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,应用程序完整性度量值i表示第i次对该终端应用程序进行HSAH杂凑运算得到的值;度量初始值指的是验证方与该可信计算终端的共享密钥;
步骤35:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为可读写,执行步骤36;
步骤36:为应用程序建立上下文执行环境,并跳转到其main入口函数开始执行,执行步骤37;
步骤37:应用程序运行完毕后,需要定时释放所占据的内存空间,以便下次运行时重新加载。
步骤4:当可信计算终端进行完整性证明时,将储存于平台配置寄存器中可信计算终端部件的扩展完整性度量值和总度量次数n进行签名后发送给验证方,验证方通过执行杂凑运算即可验证该可信计算终端的完整性;可信计算终端部件的扩展完整性度量值为HASH(度量n-1次后扩展的完整性度量值||第n次完整性度量值)= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||完整性度量值1)|| 完整性度量值2)…||完整性度量值i)…)完整性度量值n-1||完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,完整性度量值i表示第i次的完整性度量值,具体为:
步骤41:当可信计算终端需要提供完整性证明时,只需将储存于配置寄存器PCR中的扩展完整性度量值和总度量次数进行签名后发送给验证方,完整性验证方验证PCR中的扩展完整性度量值和总度量次数的签名,若签名验证通过执行步骤42,否则执行步骤43。
步骤42:完整性验证方通过执行杂凑算法判断可信计算终端的完整性;判断依据为:平台配置寄存器的扩展完整性度量值是否等于HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||度量参考值)|| 度量参考值)…||度量参考值)…)度量参考值||度量参考值),其中n=总度量次数,HASHi表示第i次杂凑运算;若两个相等,则完整性验证成功;否则,执行步骤4.3;其中度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;完整性度量值指的是对可信计算终端部件进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序。
步骤43:完整性验证失败,验证方将失败结果告知可信计算终端。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。

Claims (10)

1.一种可信计算终端完整性度量、证明方法,其特征在于包括:
步骤1:将可信计算终端各部件的度量参考值和度量初始值注入可信密码模块TCM中;度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序;度量初始值指的是验证方与该可信计算终端的共享密钥;
步骤2:启动阶段,首先可信密码模块主动对计算机终端的BIOS进行完整性度量;当BIOS的完整性度量成功后,CPU启动,然后CPU调用可信密码模块依次对OS Loader、OS内核及应用程序进行完整性度量;当可信计算终端部件全部度量成功后,执行步骤3;否则,开机启动失败;
步骤3:可信计算终端运行阶段,应用程序在运行前将被加载到由MPU/MMU内存控制寄存器开辟的只读存储空间,同时度量代理模块调用可信密码模块对应用程序进行度量;当度量通过后,并将得到的应用程序完整性度量值进行杂凑扩展得到应用程序新扩展完整性度量值,将该应用程序新扩展完整性度量值写入对应的平台配置寄存器中;否则,应用程序不能执行,运行度量代理告警并申请终端所有者进一步授权操作;其中应用程序新扩展完整性度量值= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(应用程序度量初始值||应用程序完整性度量值1)||应用程序完整性度量值2)…||应用程序完整性度量值i)…)应用程序完整性度量值n-1||应用程序完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,应用程序完整性度量值i表示第i次对该终端应用程序进行HSAH杂凑运算得到的值;度量初始值指的是验证方与该可信计算终端的共享密钥,执行应用程序;
步骤4:当可信计算终端进行完整性证明时,将储存于平台配置寄存器中可信计算终端部件的扩展完整性度量值和总度量次数n进行签名后发送给验证方,验证方通过执行杂凑运算即可验证该可信计算终端的完整性;可信计算终端部件的扩展完整性度量值为HASH(度量n-1次后扩展的完整性度量值||第n次完整性度量值)= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||完整性度量值1)|| 完整性度量值2)…||完整性度量值i)…)完整性度量值n-1||完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,完整性度量值i表示第i次的完整性度量值。
2.根据权利要求1所述的一种可信计算终端完整性度量、证明方法,其特征在于所述步骤1中的度量参考值和度量初始值只在可信计算终端交付或终端部件增加、更新时通过授权数据结合物理现场的方式注入到可信密码模块的非易失性存储器中;其中注入的度量初始值始终存储在可信密码模块内不能被读出,且每次可信计算终端开机启动时,度量初始值将被重新写入可信密码模块的平台配置寄存器中。
3.根据权利要求1所述的一种可信计算终端完整性度量及证明方法,其特征在于所述步骤2具体包括以下步骤:
步骤21:可信计算终端上电后,可信密码模块先于CPU启动,可信密码模块主动读取并度量BIOS,并将得到的BIOS完整性度量值与存储于可信密码模块非易失性存储器中的BIOS度量参考值进行比较;若两值相等,则BIOS完整性度量成功,执行步骤22,并将得到的BIOS完整性度量值与度量初始值进行杂凑扩展得到的BIOS的新PCR值,将BIOS的新PCR值写入对应的平台配置寄存器中;否则,执行步骤23;其中BIOS的新PCR值=HASH(度量初始值||BIOS完整性度量值)=(度量初始值||BIOS度量参考值);BIOS度量参考值指的是BIOS没有被篡改时,对BIOS程序进行HSAH杂凑运算得到的值;BIOS完整性度量值指的是对该终端BIOS程序进行HSAH杂凑运算得到的值;
步骤22:CPU启动,依次执行嵌入于BIOS、OS Loader、OS内核中的度量程序,通过调用可信密码模块对OS Loader、OS内核及应用程序进行完整性度量,若完整性度量成功则终端启动度量完成,并将各度量值与度量初始值进行杂凑扩展后写入对应的平台配置寄存器中;若度量失败则执行步骤23;
步骤23:退出可信计算终端的启动度量,告警并申请可信计算终端所有者进一步授权操作。
4.根据权利要求1所述的一种可信计算终端完整性度量、证明方法,其特征在于所述步骤3具体包括:
步骤31:位于OS内核的运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器将内存空间划分为多个固定大小的块空间,执行步骤32;
步骤32:调用钩子函数将待度量的应用程序映射到内存空间,执行步骤33;
步骤33:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为只读,执行步骤34;
步骤34:运行度量代理模块调用可信密码模块TCM对应用程序进行完整性度量;若完整性度量成功,则执行步骤35;
步骤35:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为可读写,执行步骤36;
步骤36:为应用程序建立上下文执行环境,并跳转到其main入口函数开始执行,执行步骤37;
步骤37:应用程序运行完毕后,需要定时释放所占据的内存空间,以便下次运行时重新加载。
5.根据权利要求1所述的一种可信计算终端完整性度量、证明方法,其特征在于所述步骤4具体包括:
步骤41:当可信计算终端需要提供完整性证明时,只需将储存于配置寄存器PCR中的扩展完整性度量值和总度量次数进行签名后发送给验证方,完整性验证方验证PCR中的扩展完整性度量值和总度量次数的签名,若签名验证通过执行步骤42,否则执行步骤43;
步骤42:完整性验证方通过执行杂凑算法判断可信计算终端的完整性;判断依据为:平台配置寄存器的扩展完整性度量值是否等于HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||度量参考值)|| 度量参考值)…||度量参考值)…)度量参考值||度量参考值),其中n=总度量次数,HASHi表示第i次杂凑运算;若两个相等,则完整性验证成功;否则,执行步骤43;其中度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;完整性度量值指的是对可信计算终端部件进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序;
步骤43:完整性验证失败,验证方将失败结果告知可信计算终端。
6.一种可信计算终端完整性度量、证明装置,其特征在于包括:
可信密码模块,用于存储可信计算终端各部件的度量参考值和度量初始值;度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序;度量初始值指的是验证方与该可信计算终端的共享密钥;启动阶段,首先可信密码模块主动对计算机终端的BIOS进行完整性度量;当BIOS的完整性度量成功后,CPU启动,然后CPU调用可信密码模块依次对OS Loader、OS内核及应用程序进行完整性度量;当可信计算终端部件全部度量成功后,执行步骤3;否则,开机启动失败;
可信计算终端,当其运行阶段,应用程序在运行前将被加载到由MPU/MMU内存控制寄存器开辟的只读存储空间,同时度量代理模块调用可信密码模块对应用程序进行度量;当度量通过后,并将得到的应用程序完整性度量值进行杂凑扩展得到应用程序新扩展完整性度量值,将该应用程序新扩展完整性度量值写入对应的平台配置寄存器中;否则,应用程序不能执行,运行度量代理告警并申请终端所有者进一步授权操作;其中应用程序新扩展完整性度量值= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(应用程序度量初始值||应用程序完整性度量值1)||应用程序完整性度量值2)…||应用程序完整性度量值i)…)应用程序完整性度量值n-1||应用程序完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,应用程序完整性度量值i表示第i次对该终端应用程序进行HSAH杂凑运算得到的值;度量初始值指的是验证方与该可信计算终端的共享密钥,执行应用程序;当可信计算终端进行完整性证明时,将储存于平台配置寄存器中可信计算终端部件的扩展完整性度量值和总度量次数n进行签名后发送给验证方,验证方通过执行杂凑运算即可验证该可信计算终端的完整性;可信计算终端部件的扩展完整性度量值为HASH(度量n-1次后扩展的完整性度量值||第n次完整性度量值)= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||完整性度量值1)|| 完整性度量值2)…||完整性度量值i)…)完整性度量值n-1||完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,完整性度量值i表示第i次的完整性度量值。
7.根据权利要求6中所述一种可信计算终端完整性度量、证明装置,其特征在于所述度量参考值和度量初始值只在可信计算终端交付或终端部件增加、更新时通过授权数据结合物理现场的方式注入到可信密码模块的非易失性存储器中;其中注入的度量初始值始终存储在可信密码模块内不能被读出,且每次可信计算终端开机启动时,度量初始值将被重新写入可信密码模块的平台配置寄存器中。
8.根据权利要求6中所述一种可信计算终端完整性度量、证明装置,其特征在于启动阶段,首先可信密码模块主动对计算机终端的BIOS进行完整性度量;当BIOS的完整性度量成功后,CPU启动,然后CPU调用可信密码模块依次对OS Loader、OS内核及应用程序进行完整性度量;当可信计算终端部件全部度量成功后,执行步骤3;否则,开机启动失败具体过程包括:
步骤21:可信计算终端上电后,可信密码模块先于CPU启动,可信密码模块主动读取并度量BIOS,并将得到的BIOS完整性度量值与存储于可信密码模块非易失性存储器中的BIOS度量参考值进行比较;若两值相等,则BIOS完整性度量成功,执行步骤22,并将得到的BIOS完整性度量值与度量初始值进行杂凑扩展得到的BIOS的新PCR值,将BIOS的新PCR值写入对应的平台配置寄存器中;否则,执行步骤23;其中BIOS的新PCR值=HASH(度量初始值||BIOS完整性度量值)=(度量初始值||BIOS度量参考值);BIOS度量参考值指的是BIOS没有被篡改时,对BIOS程序进行HSAH杂凑运算得到的值;BIOS完整性度量值指的是对该终端BIOS程序进行HSAH杂凑运算得到的值;
步骤22:CPU启动,依次执行嵌入于BIOS、OS Loader、OS内核中的度量程序,通过调用可信密码模块对OS Loader、OS内核及应用程序进行完整性度量,若完整性度量成功则终端启动度量完成,并将各度量值与度量初始值进行杂凑扩展后写入对应的平台配置寄存器中;若度量失败则执行步骤23;
步骤23:退出可信计算终端的启动度量,告警并申请可信计算终端所有者进一步授权操作。
9.根据权利要求6中所述一种可信计算终端完整性度量、证明装置,其特征在于所述可信计算终端运行阶段,应用程序在运行前将被加载到由MPU/MMU内存控制寄存器开辟的只读存储空间,同时度量代理模块调用可信密码模块对应用程序进行度量;当度量通过后,执行应用程序具体包括:
步骤31:位于OS内核的运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器将内存空间划分为多个固定大小的块空间,执行步骤32;
步骤32:调用钩子函数将待度量的应用程序映射到内存空间,执行步骤33;
步骤33:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为只读,执行步骤34;
步骤34:运行度量代理模块调用可信密码模块TCM对应用程序进行完整性度量;若完整性度量成功,则执行步骤35,
步骤35:运行度量代理模块获得超级用户权限,设置MPU/MMU内存控制寄存器,将装载有待度量应用程序的块空间属性设置为可读写,执行步骤36;
步骤36:为应用程序建立上下文执行环境,并跳转到其main入口函数开始执行,执行步骤37;
步骤37:应用程序运行完毕后,需要定时释放所占据的内存空间,以便下次运行时重新加载。
10.根据权利要求6中所述一种可信计算终端完整性度量、证明装置,其特征在于所述当可信计算终端进行完整性证明时,将储存于平台配置寄存器中可信计算终端部件的扩展完整性度量值和总度量次数n进行签名后发送给验证方,验证方通过执行杂凑运算即可检测该可信计算终端的完整性;可信计算终端部件的扩展完整性度量值为HASH(度量n-1次后扩展完整性度量值||第n次完整性度量值)= HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||完整性度量值1)|| 完整性度量值2)…||度量完整性度量值i)…)完整性度量值n-1||完整性度量值n),其中n=总度量次数,HASHi表示第i次杂凑运算,完整性度量值i表示第i次的完整性度量值具体包括:
步骤41:当可信计算终端需要提供完整性证明时,只需将储存于配置寄存器PCR中的扩展完整性度量值和总度量次数进行签名后发送给验证方,完整性验证方验证PCR中的扩展完整性度量值和总度量次数的签名,若签名验证通过执行步骤42,否则执行步骤43;
步骤42:完整性验证方通过执行杂凑算法判断可信计算终端的完整性;判断依据为:平台配置寄存器的扩展完整性度量值是否等于HASHn(HASHn-1(…HASHi(…HASH2(HASH1(度量初始值||度量参考值)|| 度量参考值)…||度量参考值)…)度量参考值||度量参考值),其中n=总度量次数,HASHi表示第i次杂凑运算;若两个相等,则完整性验证成功;否则,执行步骤43;其中度量参考值指的是可信计算终端部件没有被篡改时,对其进行HSAH杂凑运算得到的值;完整性度量值指的是对可信计算终端部件进行HSAH杂凑运算得到的值;所述部件包括BIOS、OS Loader、OS内核以及应用程序;
步骤43:完整性验证失败,验证方将失败结果告知可信计算终端。
CN201610139135.5A 2016-03-11 2016-03-11 一种可信计算终端完整性度量、证明方法及装置 Active CN105608386B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610139135.5A CN105608386B (zh) 2016-03-11 2016-03-11 一种可信计算终端完整性度量、证明方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610139135.5A CN105608386B (zh) 2016-03-11 2016-03-11 一种可信计算终端完整性度量、证明方法及装置

Publications (2)

Publication Number Publication Date
CN105608386A CN105608386A (zh) 2016-05-25
CN105608386B true CN105608386B (zh) 2018-09-07

Family

ID=55988313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610139135.5A Active CN105608386B (zh) 2016-03-11 2016-03-11 一种可信计算终端完整性度量、证明方法及装置

Country Status (1)

Country Link
CN (1) CN105608386B (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106127056A (zh) * 2016-06-20 2016-11-16 浪潮电子信息产业股份有限公司 一种国产bmc芯片可信固件的设计方法
CN106127057A (zh) * 2016-06-23 2016-11-16 浪潮电子信息产业股份有限公司 一种基于tpm构建可信启动控制的方法
CN107665308B (zh) * 2016-07-28 2023-04-07 华大半导体有限公司 用于构建和保持可信运行环境的tpcm系统以及相应方法
CN106384052A (zh) * 2016-08-26 2017-02-08 浪潮电子信息产业股份有限公司 一种实现BMC U‑boot可信启动控制的方法
CN107346393A (zh) * 2017-06-30 2017-11-14 浪潮(北京)电子信息产业有限公司 一种基于tcm的系统启动方法及系统
US11050781B2 (en) * 2017-10-11 2021-06-29 Microsoft Technology Licensing, Llc Secure application monitoring
CN108154032B (zh) * 2017-11-16 2021-07-30 中国科学院软件研究所 具有内存完整性保障功能的计算机系统信任根构建方法
CN109951284A (zh) * 2017-12-20 2019-06-28 北京可信华泰信息技术有限公司 一种安全状态验证方法及终端
CN108446564B (zh) * 2018-02-22 2020-11-03 北京航空航天大学 基于tpm模块的虚拟化度量方法及装置
CN108683492B (zh) * 2018-04-28 2021-09-03 全球能源互联网研究院有限公司 一种可信无线传感器及控制方法
CN109543418A (zh) * 2018-11-28 2019-03-29 郑州云海信息技术有限公司 一种度量方法和装置
CN111258598B (zh) * 2018-11-30 2023-05-02 阿里巴巴集团控股有限公司 度量更新方法、装置、系统、存储介质及计算机设备
CN109462611B (zh) * 2018-12-27 2021-06-29 新华三技术有限公司 一种完整性证明方法及装置
CN110188530A (zh) * 2019-05-30 2019-08-30 苏州浪潮智能科技有限公司 一种安全认证方法、装置、设备及可读存储介质
CN110609536B (zh) * 2019-08-29 2020-11-10 青岛海尔科技有限公司 用于控制家电设备中模块上电的方法及装置、家电设备
CN114443147B (zh) * 2020-11-06 2023-02-03 北京航空航天大学 基于可信硬件技术的超级监控式无人飞行器可信检测方法
CN112769800B (zh) * 2020-12-31 2022-10-04 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 交换机的完整性验证方法、装置和计算机存储介质
CN114201747B (zh) * 2021-11-29 2022-12-13 海光信息技术股份有限公司 一种动态度量根实现方法、装置、系统及存储介质
TWI826048B (zh) * 2022-10-18 2023-12-11 信驊科技股份有限公司 資料安全性校驗方法及電子裝置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104038478A (zh) * 2014-05-19 2014-09-10 瑞达信息安全产业股份有限公司 一种嵌入式平台身份验证可信网络连接方法和系统
CN104506532A (zh) * 2014-12-24 2015-04-08 北京智捷伟讯科技有限公司 一种适用于紧急救援平台的远程证明方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104038478A (zh) * 2014-05-19 2014-09-10 瑞达信息安全产业股份有限公司 一种嵌入式平台身份验证可信网络连接方法和系统
CN104506532A (zh) * 2014-12-24 2015-04-08 北京智捷伟讯科技有限公司 一种适用于紧急救援平台的远程证明方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
基于TCM的安全Windows平台设计与实现;冯伟 等;《通信学报》;20150831;第36卷(第8期);第91-103页 *
基于TCM的嵌入式可信终端系统设计;李小将 等;《计算机工程与设计》;20100430;第31卷(第4期);第733-735页 *
基于可信平台控制模块的主动度量方法;郭颖 等;《清华大学学报(自然科学版)》;20121031;第52卷(第10期);第1465-1473 *

Also Published As

Publication number Publication date
CN105608386A (zh) 2016-05-25

Similar Documents

Publication Publication Date Title
CN105608386B (zh) 一种可信计算终端完整性度量、证明方法及装置
US9690498B2 (en) Protected mode for securing computing devices
Sabt et al. Trusted execution environment: What it is, and what it is not
JP6142027B2 (ja) ハイパーバイザ環境においてカーネルルートキットに対する保護を実行するシステムおよび方法
US8850212B2 (en) Extending an integrity measurement
CN109669734B (zh) 用于启动设备的方法和装置
US7953980B2 (en) Signed manifest for run-time verification of software program identity and integrity
US8364973B2 (en) Dynamic generation of integrity manifest for run-time verification of software program
US9514300B2 (en) Systems and methods for enhanced security in wireless communication
US8417962B2 (en) Device booting with an initial protection component
US20060112241A1 (en) System, method and apparatus of securing an operating system
US8689318B2 (en) Trusted computing entities
CN104751063B (zh) 一种基于实模式技术的操作系统可信引导方法
JP2014513348A (ja) 統合拡張ファームウェアインタフェース準拠計算装置内のシステムセキュリティデータベースおよびファームウェア格納部を変更する要求を処理するシステムおよび方法
Löhr et al. Patterns for secure boot and secure storage in computer systems
US20170255775A1 (en) Software verification systems with multiple verification paths
Suciu et al. Horizontal privilege escalation in trusted applications
Jin Towards hardware-assisted security for IoT systems
Resh et al. Preventing execution of unauthorized native-code software
CN115879099A (zh) 一种dcs控制器、操作处理方法和防护子系统
Morbitzer Scanclave: verifying application runtime integrity in untrusted environments
Min et al. Secure dynamic software loading and execution using cross component verification
Ugus et al. A smartphone security architecture for app verification and process authentication
Liu et al. Secure-Turtles: Building a Secure Execution Environment for Guest VMs on Turtles System.
Ling et al. Prison break of android reflection restriction and defense

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Li Yuli

Inventor after: He Weiguo

Inventor after: Li Jun

Inventor after: Zhang Wenpei

Inventor after: Fang Jingjie

Inventor after: He Tao

Inventor before: Li Yuli

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant