CN112434306A - 可信度量方法,装置,系统,电子设备及存储介质 - Google Patents

可信度量方法,装置,系统,电子设备及存储介质 Download PDF

Info

Publication number
CN112434306A
CN112434306A CN202011440052.2A CN202011440052A CN112434306A CN 112434306 A CN112434306 A CN 112434306A CN 202011440052 A CN202011440052 A CN 202011440052A CN 112434306 A CN112434306 A CN 112434306A
Authority
CN
China
Prior art keywords
value
execution environment
mobile terminal
trusted
integrity
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
Application number
CN202011440052.2A
Other languages
English (en)
Other versions
CN112434306B (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.)
Institute of Information Engineering of CAS
Original Assignee
Institute of Information Engineering of CAS
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 Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN202011440052.2A priority Critical patent/CN112434306B/zh
Publication of CN112434306A publication Critical patent/CN112434306A/zh
Application granted granted Critical
Publication of CN112434306B publication Critical patent/CN112434306B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06F21/577Assessing vulnerabilities and evaluating computer system security

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

本申请实施例中提供了一种可信度量方法,装置,系统,电子设备及存储介质,该方法包括:获取切换指令,切换所述移动终端的运行环境为可信执行环境;获取所述丰富执行环境的内存状态的完整性状态值;对所述丰富执行环境的内存状态进行度量得到当前值;在所述完整性状态值与所述当前值不一致时,进行告警。切入可信执行环境,在所述可信执行环境中对丰富执行环境的内存状态进行度量,保证度量的有效性,内存的完整性和安全性,从而有效保障了移动终端的系统和数据安全。

Description

可信度量方法,装置,系统,电子设备及存储介质
技术领域
本申请涉及移动终端安全领域,具体地,涉及一种可信度量方法,装置,系统,电子设备及存储介质。
背景技术
随着移动终端智能化程度越来越高,应用越来越丰富,越来越多涉及商业秘密或个人隐私的敏感信息面临严重的安全威胁。移动终端上各种应用不断涌现,若开发人员在开发这些应用时没有针对安全进行加固保护,则黑客可能会利用这些应用本身固有的安全漏洞获取移动终端操作系统的root权限,轻松截获用户的敏感数据。
因此,移动终端的安全保障变得越来越重要,亟需一种可以有效保护移动终端的系统和数据安全的方法。
发明内容
本申请实施例中提供了一种可信度量方法,装置,系统,电子设备及存储介质,可以有效解决移动终端的系统和数据不够安全的问题。
根据本申请实施例的第一个方面,提供了一种可信度量方法,应用于移动终端,所述移动终端的运行环境包括丰富执行环境和可信执行环境,该方法包括:获取切换指令,切换所述移动终端的运行环境为可信执行环境;获取所述丰富执行环境的内存状态的完整性状态值,所述完整性状态值在所述移动终端的系统非首次启动过程中获得;对所述丰富执行环境的内存状态进行度量得到当前值,所述当前值在所述移动终端的系统的运行过程中获得;在所述完整性状态值与所述当前值不一致时,进行告警。
根据本申请实施例的第二个方面,提供了一种可信度量系统,应用于移动终端,所述可信度量系统包括丰富执行环境和可信执行环境,所述丰富执行环境包括度量代理,所述可信执行环境包括可信模块;所述度量代理用于调用安全监控模式调用指令,切入可信执行环境;所述可信模块用于获取丰富执行环境的内存状态的完整性状态值,所述完整性状态值在所述移动终端的系统非首次启动时获得;所述可信模块还用于对所述丰富执行环境的内存状态进行度量得到当前值,所述当前值在所述移动终端的系统的运行过程中获得;所述可信模块还用于在所述完整性状态值与所述当前值不一致时,进行告警。
根据本申请实施例的第三个方面,提供了一种可信度量装置,应用于移动终端,所述移动终端的运行环境包括丰富执行环境和可信执行环境,该装置包括:指令获取模块,用于获取切换指令,切换所述移动终端的运行环境为可信执行环境;获取模块,用于获取所述丰富执行环境的内存状态的完整性状态值,所述完整性状态值在所述移动终端的系统非首次启动时获得;度量模块,用于对所述丰富执行环境的内存状态进行度量得到当前值,所述当前值在所述移动终端的系统的运行过程中获得;告警模块,用于在所述完整性状态值与所述当前值不一致时,进行告警。
根据本申请实施例的第四个方面,提供了一种电子设备,该电子设备包括一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如上述应用于电子设备的方法。
根据本申请实施例的第五个方面,本申请实施列提供一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码运行时执行上述的方法。
采用本申请实施例中提供的可信度量方法,获取切换指令,切换所述移动终端的运行环境为可信执行环境;获取所述丰富执行环境的内存状态的完整性状态值;对所述丰富执行环境的内存状态进行度量得到当前值;在所述完整性状态值与所述当前值不一致时,进行告警。切入可信执行环境,在所述可信执行环境中对丰富执行环境的内存状态进行度量,保证度量的有效性,内存的完整性和安全性,从而有效保障了移动终端的系统和数据安全。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的基于TrustZone的移动终端安全可信总体架构;
图2为本申请实施例提供的可信模块的功能模块图;
图3为本申请一个实施例提供的可信度量方法的流程图;
图4为本申请另一个实施例提供的可信度量方法的流程图;
图5为本申请再一个实施例提供的可信度量方法的流程图;
图6为本申请一个实施例提供的可信度量装置的功能模块图;
图7为本申请实施例提出的用于执行根据本申请实施例的可信度量方法的电子设备的结构框图。
具体实施方式
随着移动终端智能化程度越来越高,应用越来越丰富,越来越多涉及商业秘密或个人隐私的敏感信息面临严重的安全威胁。移动终端上各种应用不断涌现,若开发人员在开发这些应用时没有针对安全进行加固保护,则黑客可能会利用这些应用本身固有的安全漏洞获取移动终端操作系统的root权限,轻松截获用户的敏感数据。至此,如何保障移动终端的安全变得越来越重要。
为了给移动终端提供一个安全的运行环境,ARM从ARMv6的架构开始引入了TrustZone技术。TrustZone技术将中央处理器的工作状态分为了普通状态和安全状态。其中运行在安全状态中的环境为可信执行环境(Trusted Execution Environment,TEE),运行在普通状态中的环境为丰富执行环境(Rich Execution Environment,REE)。当处理器处于安全状态时只能运行TEE侧的代码,且具有REE侧地址空间的访问权限。系统通过调用安全监控模式调用(Secure Monitor Call,SMC)指令实现ARM核的安全状态和普通状态之间的切换。只有支持TrustZone技术的ARM核配合安全扩展组件,才能为整个系统提供芯片硬件级别的保护和隔离。通常,可以对移动终端的系统进行度量以确保系统运行环境安全可靠,然而,在现有的安全防护方式中,都难以对移动终端的系统和数据提供有效的保护。
针对上述问题,本申请实施例中提供了一种可信度量方法,获取切换指令,切换所述移动终端的运行环境为可信执行环境;获取所述丰富执行环境的内存状态的完整性状态值;对所述丰富执行环境的内存状态进行度量得到当前值;在所述完整性状态值与所述当前值不一致时,进行告警。切入可信执行环境,在所述可信执行环境中对丰富执行环境的内存状态进行度量,保证度量的有效性,内存的完整性和安全性,从而有效保障了移动终端的系统和数据安全。
本申请实施例中的方案可以采用各种计算机语言实现,例如,Java、C、JavaScript以及Python等。
为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本申请提供的可信度量方法,是在基于TrustZone的移动终端安全可信总体架构上提出的,请参阅图1,示出基于TrustZone的移动终端安全可信总体架构图。
在所述安全可信总体架构图中,存在两个运行环境,分别为丰富执行环境(RichExecution Environment,REE)和可信执行环境(Trusted Execution Environment,TEE)。在REE和TEE中,可以分为用户空间和内核空间。
在REE的用户空间中,可以包括多个的客户端应用(Client Application,CA),通常为上层应用。TEE Client API可供CA使用,可对TEE Driver进行操作。TSS是运行在REE用户空间中供CA调用可信模块的接口。由于TSS和可信模块分别部署在REE和TEE中,它们之间的通信需要先进行执行环境的切换,调用命令向下传递给REE内核空间中的TEE Driver,然后通过SMC调用切换到TEE。所述TEE Driver在所述REE的内核空间中,TEE Driver中包括度量代理。在TEE的用户空间中,包括多个可信应用(Trusted Application,TA),TEEInternal API是供TA调用资源的标准API。所述TEE的内核空间中具备可信模块。
所述REE中的度量代理可以通过安全监控模式调用(Secure Monitor Call,SMC)指令切入所述TEE中,所述TEE中的可信模块可以对REE中的内存空间进行度量,以保障移动终端的系统运行期间的内存完整性和安全性。所述REE和TEE均与存储模块连接。所述存储模块包括数据读请求和数据写请求模块。存储模块保存的是移动终端可信模块中的关键数据,如度量基准值和度量报告等数据信息,从而提高了系统的安全性。
请参阅图2,示出了可信模块100的功能模块图。本申请实施例提供的可信模块100可以包括度量单元101,加解密单元102,告警单元103,以及命令解析单元104。
所述度量单元101包括度量值处理子单元和平台配置寄存器(PlatformConfiguration Register,PCR),可以实现安全度量功能,是可信启动的重要基础。在系统启动过程中,度量值处理子单元针对需进行完整性度量的各个组件代码,计算出度量值保存在PCR中,即为当前平台的完整性状态值。在系统启动时需读取保存在存储模块的基准值,并将计算得到的度量值与其进行对比,判断启动序列上各组件的完整性是否遭到破坏,从而判断系统环境是否安全可信。在一些实施方式中,可以将每次的比对结果写入度量报告中。保存在PCR中的当前平台的完整性状态值会在关机后被清除,保证了平台完整性度量值不会被泄露。
所述加解密单元102,实现移动终端的系统首次启动时得到的度量基准值的签名和每次开机时对存储模块中存储的度量基准值验签的功能,以及移动终端的系统在运行的过程中度量得到的度量基准值和度量报告等数据信息的加解密处理。
告警单元103,实时监控度量报告是否被修改,若被修改则根据度量报告中新增的内容判断是否存在度量异常,若存在则告知用户,让用户进行相关处理。
命令解析单元104接收可信服务调用命令。根据命令格式解析出需要执行的功能、参数以及相关数据等内容,然后调用模块或单元以执行用户请求。从而通过所述可信模块100可以实现在TEE中对REE的内存状态进行度量,以确保系统的安全。在一些实施方式中,存储模块也可以集成在所述可信模块中。
请参阅图3,本申请实施例提供了一种可信度量方法,应用于移动终端,所述移动终端的运行环境包括丰富执行环境和可信执行环境,具体的该方法可以包括以下步骤。
步骤110,获取切换指令,切换所述移动终端的运行环境为可信执行环境。
所述移动终端可以运行在可信执行环境(Trusted Execution Environment,TEE),也可以运行在丰富执行环境(Rich Execution Environment,REE)中。基于图1的架构图可知,可以通过安全监控模式调用(Secure Monitor Call,SMC)指令实现在REE和TEE中切换。因此,REE的内核中的度量代理可以通过所述SMC指令切换至TEE中。那么,所述切换指令,即SMC指令,根据所述SMC指令,可以将所述移动终端的运行环境切换为可信执行环境。
在一些实施方式中,在所述移动终端的运行过程中,所述REE中的度量代理可以周期性的调用的所述SMC指令,从而可以周期性的获取到所述切换指令,切换所述移动终端的运行环境为TEE,在切入所述TEE后,进行后续操作。
步骤120,获取所述丰富执行环境的内存状态的完整性状态值。
在所述移动终端的运行环境切换为可信执行环境后,可以获取REE的内存状态的完整性状态值,其中,所述完整性状态值在所述移动终端的系统非首次启动过程中获得。其中,所述非首次启动,是指移动终端的系统在出厂后的非首次启动。也就是说,所述移动终端的系统在出厂后第一次启动之后的每一次启动均为非首次启动。
在获取所述完整性状态值之前,需要获取所述REE的内存状态的基准值,基于所述基准值可以获得所述完整性状态值。在一些实施方式中,所述基准值在所述移动终端的系统首次运行时获得,存储在存储模块中,在获取所述完整性状态值时,可以直接从所述存储模块中得到。其中,所述首次启动,是指移动终端的系统在出厂后的第一次启动,包括恢复出厂设置后的第一次启动。
具体的,所述基准值可以是在所述移动终端的系统首次启动过程中,通过所述可信执行环境的可信模块对所述丰富执行环境的内存状态进行度量得到度量值;对得到的所述度量值进行加密存储得到所述基准值。其中,所述首次启动是指所述移动终端的系统在出厂后的首次启动。可以理解的是,在利用TEE的可信模块对REE的内存状态进行度量得到度量值之前,REE的度量代理调用SMC指令切入TEE环境中,从而可以对REE的内存环境进行度量。
移动终端的系统的首次启动和非首次启动可以通过存储模块中的基准值是否为空,来确定是否是首次启动。也就是说,基准值是存储在存储模块中的,若所述存储模块中的基准值为空,表明为首次启动,若所述存储模块中的基准值不为空,表明为非首次启动。
在获取所述完整性状态值时,可以是通过所述可信执行环境的可信模块对丰富执行环境的内存状态进行计算得到计算值;比较所述计算值和所述基准值是否一致;若所述计算值和所述基准值一致,将所述计算值作为所述完整性状态值;若所述计算值和所述基准值不一致,获取不一致原因,并根据所述不一致原因获取所述完整性状态值。
在计算得到所述完整性状态值后,可以将所述完整性状态值保存在平台配置寄存器(Platform Configuration Register,PCR)中,以供后续使用。
步骤130,对所述丰富执行环境的内存状态进行度量得到当前值。
所述REE的内存状态的完整性状态值是在所述移动终端的系统非首次启动的过程中获得的,在所述移动终端的系统启动完毕之后,会进行运行。那么,在所述移动终端的系统运行的过程中,可以对所述REE的内存状态进行度量得到当前值。也就是说,所述当前值为在所述移动终端的系统运行的过程中得到的。
在所述移动终端的系统运行的过程中,用户可以执行各种操作,为了确保系统的安全,可以周期性的通过所述TEE的可信模块对REE的内存状态进行度量得到当前值。
步骤140,在所述完整性状态值与所述当前值不一致时,进行告警。
在得到所述当前值以及所述完整性状态值后,可以比较所述当前值以及所述完整性状态值,根据比较结果进行处理。在一些实施方式中,所述比较结果可以写入度量报告中。其中,若所述当前值与所述完整性状态值不一致,表明当前移动终端的系统已经遭到破坏,从而可以进行告警,以通知用户进行相应的处理。其中,用户可以进行关机,重启,断网,或上报技术部门等操作。若所述当前值与所述完整性状态值一致,表明当前移动终端的系统是安全的,保持所述移动终端的系统的运行。
本申请实施例提供的可信度量方法,获取切换指令,切换所述移动终端的运行环境为可信执行环境;获取所述丰富执行环境的内存状态的完整性状态值;对所述丰富执行环境的内存状态进行度量得到当前值;在所述完整性状态值与所述当前值不一致时,进行告警。切入可信执行环境,在所述可信执行环境中对丰富执行环境的内存状态进行度量,保证度量的有效性,内存的完整性和安全性,从而有效保障了移动终端的系统和数据安全。
请参阅图4,本申请另一实施例提供了一种可信度量方法,在前述实施例的基础上重点描述了获取所述丰富执行环境的内存状态的完整性状态值的过程,具体的该方法可包括以下步骤。
步骤210,获取切换指令,切换所述移动终端的运行环境为可信执行环境。
步骤210可参照前述实施例对应部分,在此不再赘述。
步骤220,获取所述丰富执行环境的内存状态的基准值。
所述基准值为所述移动终端的系统首次启动时获得。因此,在在所述移动终端的系统首次启动过程中,通过所述TEE的可信模块,对所述REE的内存状态进行度量得到度量值;对得到的所述度量值进行加密存储得到所述基准值。
也就是说,在所述移动终端的系统首次启动的过程中,REE的度量代理调用SMC指令切入TEE中,通过TEE中的可信模块对REE的内存状态进行度量,得到度量值,利用可信模块中的加解密单元将所述度量值进行加密,将加密后的度量值存储在存储模块中得到所述基准值。
步骤230,在所述移动终端的系统非首次启动过程中,通过所述可信执行环境的可信模块对丰富执行环境的内存状态进行计算得到计算值。
步骤240,判断所述计算值和所述基准值是否一致;若是,执行步骤250;若否,执行步骤260。
在所述移动终端的系统非首次启动过程中,REE的度量代理调用SMC指令切入TEE中,通过TEE中的可信模块对REE的内存状态进行度量,从而可以计算得到对应的计算值。所述计算值即为所述移动终端的系统在非首次启动过程中,REE的内存状态值。为了确保当前系统的安全性,可以将所述计算值与所述基准值进行的比较,判断是否一致。
在判断所述计算值与所述基准值是否一致之前,为了确保基准值的准确性,可以先判断所述基准值是否被修改,若没有被修改,表明所述基准值安全可靠。在判断所述基准值是否被修改时,可以在首次启动得到所述基准值时,采用哈希算法对所述基准值进行哈希计算,将得到的哈希值存入指定文件中。在非首次启动的过程中,可以再次采用哈希算法对所述基准值进行计算,得到哈希值,若当前计算得到的哈希值与存入指定文件中的哈希值不一致,表明基准值被修改;若当前计算得到的哈希值与存入指定文件中的哈希值一致,表明基准值未被修改。
确定所述基准值被修改时,表明系统已经遭到破坏,可以通过告警单元告通知用户,以提示用户进行关机,重启,断网或上报技术部门等。
确定所述基准值未被修改时,表明基准值安全可靠,可以判断所述计算值与所述基准值是否一致,在判断时,可以使用加解密单元对所述基准值进行解密得到解密后的基准值,比较所述解密后的基准值与所述计算值是否一致。若所述计算值与所述解密后的基准值一致,表明所述移动终端的系统安全可信,可以执行步骤250;若所述计算值与所述解密后的基准值不一致,表明当前移动终端的系统可能被破坏,可以执行步骤260。
步骤250,将所述计算值作为所述完整性状态值。
在判定所述计算值与所述基准值一致时,可以认为当前移动终端的系统安全可信,因此,可以将计算值存储在平台配置寄存器(Platform Configuration Register,PCR)中,作为完整性状态值,以供后续使用。
步骤260,获取不一致原因,并根据所述不一致原因获取所述完整性状态值。
在判定所述计算值与所述基准值不一致时,可以认为当前移动终端的系统可能被破坏或存在风险,因此,可以发送通知信息,以指示用户反馈不一致原因;若所述获取的所述不一致原因为预设原因,将所述计算值作为所述完整性状态值,并以所述计算值替换所述基准值。
在发送通知信息后,用户基于所述通知信息可以反馈不一致原因给移动终端,因此,可以获取到用户反馈的不一致原因,其中,用户反馈的不一致原因可以是自然损害,病毒感染或人为篡改导致系统被破坏,在接收到这些原因时,由用户进行处理,例如,进行关机,重启,断网或上报技术部门等。
若所述不一致原因为预设原因,表明基准值出现正常的变化,因此,可以将所述计算值作为所述完整性状态值,并以所述计算值替换所述基准值。其中,所述预设原因可是系统版本升级,导致的基准值发生变化,从而导致计算值和基准值不一致,从而,可以将所述基准值进行更新,将所述计算值存储在PCR中作为完整性状态值。当然,所述预设原因还可以是其他原因,可以根据实际的需要进行设置,在此不做具体限定。
步骤270,对所述丰富执行环境的内存状态进行度量得到当前值。
步骤280,在所述完整性状态值与所述当前值不一致时,进行告警。
可以理解的是,步骤250和步骤260择一执行,在执行步骤250之后,继续执行步骤270,在执行步骤260之后,继续执行步骤270。步骤270和步骤280可参照前述实施例对应部分,在此不再赘述。
本申请实施例提供的可信度量方法,在移动终端的系统的非首次启动过程中对REE的内存状态进行计算得到计算值,比较所述计算值与所述基准值是否一致,获取完整性状态值。通过与基准值进行比较确保系统启动过程中的安全性,并利用所述完整性状态值确保系统运行的安全,从而有效保障了移动终端的系统从启动到运行的安全。
请参阅图5,本申请再一实施例提供了一种可信度量方法,应用于移动终端的可信度量系统,所述可信度量系统包括丰富执行环境和可信执行环境,所述丰富执行环境包括度量代理,所述可信执行环境包括可信模块,其中,所述度量代理和所述可信模块可执行以下步骤。
步骤310,所述度量代理用于调用安全监控模式调用指令,切入可信执行环境。
步骤320,所述可信模块用于获取丰富执行环境的内存状态的完整性状态值。
步骤330,所述可信模块还用于对所述丰富执行环境的内存状态进行度量得到当前值。
步骤340,所述可信模块还用于在所述完整性状态值与所述当前值不一致时,进行告警。
在所述可信度量系统中,度量代理调用SMC指令切入TEE中,从而可以在TEE中对REE的内存状态进行度量得到当前值,获取REE的内存状态的完整性状态值;在所述当前值和完整性状态值不一致时,进行告警。如前述实施例所述,所述可信模块包括度量单元,加解密单元,告警单元以及命令解析单元。在所述度量代理调用SMC指令切入TEE中,可以是由命令解析单元接收到SMC指令,切入TEE中。在所述可信模块的度量单元可以获取REE的内存状态的完整性状态值,在获取所述完整性的过程中,可以利用加解密单元进行解密比较。所述度量单元还可以对当前的REE的内存状态进行度量,并比较所述完整性状态与所述当前值,在所述完整性状态值与所述当前值不一致时,通过告警单元进行告警,以通知用户进行相应处理。步骤310至步骤340的其余内容可参照前述实施例对应部分,在此不再赘述。
本申请实施例提供的可信度量系统,度量代理调用命令切入TEE中,TEE中的可信模块对REE的内存状态进行度量得到计算值,并读取存储在PCR中的完整性状态值,在计算值和完整性状态值不一致时,进行告警,以提示用户。切入TEE,在TEE中对REE的内存状态进行度量,保证度量的有效性,内存的完整性和安全性,从而有效保障了移动终端的系统和数据安全。
请参阅图6,本申请实施例提供了一种可信度量装置400,应用于移动终端,所述移动终端的运行环境包括丰富执行环境和可信执行环境,所述可信度量装置400包括指令获取模块410,获取模块420,度量模块430以及告警模块440。所述指令获取模块410,用于获取切换指令,切换所述移动终端的运行环境为可信执行环境;所述获取模块420,用于获取所述丰富执行环境的内存状态的完整性状态值,所述完整性状态值在所述移动终端的系统非首次启动时获得;所述度量模块430,用于对所述丰富执行环境的内存状态进行度量得到当前值,所述当前值在所述移动终端的系统的运行过程中获得;所述告警模块440,用于在所述完整性状态值与所述当前值不一致时,进行告警。
进一步的,获取所述丰富执行环境的内存状态的完整性状态值之前,所述获取模块420还用于获取所述丰富执行环境的内存状态的基准值,所述基准值为所述移动终端的系统首次启动时获得。
进一步的,所述获取模块420还用于在所述移动终端的系统首次启动过程中,通过所述可信执行环境的可信模块对所述丰富执行环境的内存状态进行度量得到度量值;对得到的所述度量值进行加密存储得到所述基准值。
进一步的,所述获取模块420还用于在所述移动终端的系统非首次启动过程中,通过所述可信执行环境的可信模块对丰富执行环境的内存状态进行度量得到计算值;判断所述计算值和所述基准值是否一致;若所述计算值和所述基准值一致,将所述计算值作为所述完整性状态值;若所述计算值和所述基准值不一致,获取不一致原因,并根据所述不一致原因获取所述完整性状态值。
进一步的,所述获取模块420还用于在所述基准值未被修改时,对所述基准值进行解密得到解密后基准值;比较所述解密后的基准值与所述当前值是否一致。
进一步的,所述告警模块440还用于发送通知信息,所述通知信息用于指示用户反馈不一致原因;所述获取模块420还用于若获取的所述不一致原因为预设原因,将所述计算值作为所述完整性状态值,并以所述计算值替换所述基准值。
进一步的,所述度量模块430还用于周期性的通过所述可信执行环境的可信模块对所述丰富执行环境的内存状态进行度量得到所述当前值。
本申请实施例提供的可信度量装置,获取切换指令,切换所述移动终端的运行环境为可信执行环境;获取所述丰富执行环境的内存状态的完整性状态值;对所述丰富执行环境的内存状态进行度量得到当前值;在所述完整性状态值与所述当前值不一致时,进行告警。切入可信执行环境,在所述可信执行环境中对丰富执行环境的内存状态进行度量,保证度量的有效性,内存的完整性和安全性,从而有效保障了移动终端的系统和数据安全。
要说明的是,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
请参阅图7,本申请实施例提供了一种电子设备的结构框图,该电子设备500包括处理器510以及存储器520以及一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器520中并被配置为由所述一个或多个处理器510执行,所述一个或多个程序配置用于执行上述可信度量的方法。
该电子设备500可以是智能手机、平板电脑、电子书等移动终端设备,还可以是服务器。本申请中的电子设备500可以包括一个或多个如下部件:处理器510、存储器520、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器520中并被配置为由一个或多个处理器510执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器510可以包括一个或者多个处理核。处理器510利用各种接口和线路连接整个电子设备500内的各个部分,通过运行或执行存储在存储器520内的指令、程序、代码集或指令集,以及调用存储在存储器520内的数据,执行电子设备500的各种功能和处理数据。可选地,处理器510可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器510可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器510中,单独通过一块通信芯片进行实现。
存储器520可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器520可用于存储指令、程序、代码、代码集或指令集。存储器520可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备500在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
本申请实施例提供的电子设备,获取切换指令,切换所述移动终端的运行环境为可信执行环境;获取所述丰富执行环境的内存状态的完整性状态值;对所述丰富执行环境的内存状态进行度量得到当前值;在所述完整性状态值与所述当前值不一致时,进行告警。切入可信执行环境,在所述可信执行环境中对丰富执行环境的内存状态进行度量,保证度量的有效性,内存的完整性和安全性,从而有效保障了移动终端的系统和数据安全。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (11)

1.一种可信度量方法,其特征在于,应用于移动终端,所述移动终端的运行环境包括丰富执行环境和可信执行环境,所述方法包括:
获取切换指令,切换所述移动终端的运行环境为可信执行环境;
获取所述丰富执行环境的内存状态的完整性状态值,所述完整性状态值在所述移动终端的系统非首次启动过程中获得;
对所述丰富执行环境的内存状态进行度量得到当前值,所述当前值在所述移动终端的系统的运行过程中获得;
在所述完整性状态值与所述当前值不一致时,进行告警。
2.根据权利要求1所述的方法,其特征在于,所述获取所述丰富执行环境的内存状态的完整性状态值之前,还包括:
获取所述丰富执行环境的内存状态的基准值,所述基准值为所述移动终端的系统首次启动时获得。
3.根据权利要求2所述的方法,其特征在于,所述获取所述丰富执行环境的内存状态的基准值,包括:
在所述移动终端的系统首次启动过程中,通过所述可信执行环境的可信模块对所述丰富执行环境的内存状态进行度量得到度量值;
对得到的所述度量值进行加密存储得到所述基准值。
4.根据权利要求2或3所述的方法,其特征在于,所述获取所述丰富执行环境的内存状态的完整性状态值,包括:
在所述移动终端的系统非首次启动过程中,通过所述可信执行环境的可信模块对丰富执行环境的内存状态进行度量得到计算值;
判断所述计算值和所述基准值是否一致;
若所述计算值和所述基准值一致,将所述计算值作为所述完整性状态值;
若所述计算值和所述基准值不一致,获取不一致原因,并根据所述不一致原因获取所述完整性状态值。
5.根据权利要求4所述的方法,其特征在于,所述判断所述计算值和所述基准值是否一致,包括:
在所述基准值未被修改时,对所述基准值进行解密得到解密后基准值;
比较所述解密后的基准值与所述当前值是否一致。
6.根据权利要求4所述的方法,其特征在于,所述若所述计算值和所述基准值不一致,获取不一致原因,并根据所述不一致原因获取所述完整性状态值,包括:
发送通知信息,所述通知信息用于指示用户反馈不一致原因;
若获取的所述不一致原因为预设原因,将所述计算值作为所述完整性状态值,并以所述计算值替换所述基准值。
7.根据权利要求1所述的方法,其特征在于,所述对所述丰富执行环境的内存状态进行度量得到当前值,包括:
周期性的通过所述可信执行环境的可信模块对所述丰富执行环境的内存状态进行度量得到所述当前值。
8.一种可信度量系统,其特征在于,应用于移动终端,所述可信度量系统包括丰富执行环境和可信执行环境,所述丰富执行环境包括度量代理,所述可信执行环境包括可信模块;
所述度量代理用于调用安全监控模式调用指令,切入可信执行环境;
所述可信模块用于获取丰富执行环境的内存状态的完整性状态值,所述完整性状态值在所述移动终端的系统非首次启动时获得;
所述可信模块还用于对所述丰富执行环境的内存状态进行度量得到当前值,所述当前值在所述移动终端的系统的运行过程中获得;
所述可信模块还用于在所述完整性状态值与所述当前值不一致时,进行告警。
9.一种可信度量装置,其特征在于,应用于移动终端,所述移动终端的运行环境包括丰富执行环境和可信执行环境,所述装置包括:
指令获取模块,用于获取切换指令,切换所述移动终端的运行环境为可信执行环境;
获取模块,用于获取所述丰富执行环境的内存状态的完整性状态值,所述完整性状态值在所述移动终端的系统非首次启动时获得;
度量模块,用于对所述丰富执行环境的内存状态进行度量得到当前值,所述当前值在所述移动终端的系统的运行过程中获得;
告警模块,用于在所述完整性状态值与所述当前值不一致时,进行告警。
10.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储器,与所述一个或多个处理器电连接;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于执行如权利要求1至7任一项所述的方法。
11.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1至7任一项所述的方法。
CN202011440052.2A 2020-12-11 2020-12-11 可信度量方法,装置,系统,电子设备及存储介质 Active CN112434306B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011440052.2A CN112434306B (zh) 2020-12-11 2020-12-11 可信度量方法,装置,系统,电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011440052.2A CN112434306B (zh) 2020-12-11 2020-12-11 可信度量方法,装置,系统,电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN112434306A true CN112434306A (zh) 2021-03-02
CN112434306B CN112434306B (zh) 2024-04-16

Family

ID=74692409

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011440052.2A Active CN112434306B (zh) 2020-12-11 2020-12-11 可信度量方法,装置,系统,电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112434306B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190831A (zh) * 2021-05-27 2021-07-30 中国人民解放军国防科技大学 一种基于tee的操作系统应用完整性度量方法及系统
CN113486353A (zh) * 2021-06-24 2021-10-08 邦彦技术股份有限公司 可信度量方法、系统、设备及存储介质
CN113591159A (zh) * 2021-07-30 2021-11-02 支付宝(杭州)信息技术有限公司 一种可信度量方法和可信计算节点
CN114462051A (zh) * 2022-04-12 2022-05-10 中电云数智科技有限公司 一种基于可信计算环境的可信计算系统及方法
CN116049866A (zh) * 2022-06-27 2023-05-02 荣耀终端有限公司 一种数据保护方法、电子设备及芯片系统
WO2023104013A1 (zh) * 2021-12-10 2023-06-15 华为技术有限公司 数据完整性保护方法及相关装置
WO2023184619A1 (zh) * 2022-03-29 2023-10-05 杭州安恒信息技术股份有限公司 通信方法、装置、计算机设备和可读存储介质
CN117093423A (zh) * 2023-10-18 2023-11-21 西安热工研究院有限公司 可信dcs终端间数据同步方法、系统、电子设备及存储介质
WO2024078159A1 (zh) * 2022-10-09 2024-04-18 华为技术有限公司 完整性度量方法及装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030226031A1 (en) * 2001-11-22 2003-12-04 Proudler Graeme John Apparatus and method for creating a trusted environment
US20130061056A1 (en) * 2010-05-21 2013-03-07 Graeme John Proudler Extending an integrity measurement
WO2015003943A1 (de) * 2013-07-08 2015-01-15 Siemens Aktiengesellschaft Hinterlegen mindestens eines berechenbaren integritätsmesswertes in einem speicherbereich eines speichers
EP2840492A1 (en) * 2013-08-23 2015-02-25 British Telecommunications public limited company Method and apparatus for modifying a computer program in a trusted manner
US20180034793A1 (en) * 2016-08-01 2018-02-01 The Aerospace Corporation High assurance configuration security processor (hacsp) for computing devices
CN107679393A (zh) * 2017-09-12 2018-02-09 中国科学院软件研究所 基于可信执行环境的Android完整性验证方法和装置
CN109840436A (zh) * 2017-11-29 2019-06-04 阿里巴巴集团控股有限公司 数据处理方法、可信用户界面资源数据的应用方法及装置
WO2019137614A1 (en) * 2018-01-12 2019-07-18 Huawei Technologies Co., Ltd. Apparatus and method for runtime integrity protection for execution environments
CN111382445A (zh) * 2020-03-03 2020-07-07 首都师范大学 利用可信执行环境系统提供可信服务的方法
CN111859394A (zh) * 2020-07-21 2020-10-30 中国人民解放军国防科技大学 基于tee的软件行为主动度量方法及系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030226031A1 (en) * 2001-11-22 2003-12-04 Proudler Graeme John Apparatus and method for creating a trusted environment
US20130061056A1 (en) * 2010-05-21 2013-03-07 Graeme John Proudler Extending an integrity measurement
WO2015003943A1 (de) * 2013-07-08 2015-01-15 Siemens Aktiengesellschaft Hinterlegen mindestens eines berechenbaren integritätsmesswertes in einem speicherbereich eines speichers
EP2840492A1 (en) * 2013-08-23 2015-02-25 British Telecommunications public limited company Method and apparatus for modifying a computer program in a trusted manner
US20180034793A1 (en) * 2016-08-01 2018-02-01 The Aerospace Corporation High assurance configuration security processor (hacsp) for computing devices
CN107679393A (zh) * 2017-09-12 2018-02-09 中国科学院软件研究所 基于可信执行环境的Android完整性验证方法和装置
CN109840436A (zh) * 2017-11-29 2019-06-04 阿里巴巴集团控股有限公司 数据处理方法、可信用户界面资源数据的应用方法及装置
WO2019137614A1 (en) * 2018-01-12 2019-07-18 Huawei Technologies Co., Ltd. Apparatus and method for runtime integrity protection for execution environments
CN111382445A (zh) * 2020-03-03 2020-07-07 首都师范大学 利用可信执行环境系统提供可信服务的方法
CN111859394A (zh) * 2020-07-21 2020-10-30 中国人民解放军国防科技大学 基于tee的软件行为主动度量方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
尹超;周霆;黄凡帆;: "一种基于TrustZone架构的主动可信度量机制设计", 信息通信, no. 09, 15 September 2020 (2020-09-15), pages 20 - 23 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190831A (zh) * 2021-05-27 2021-07-30 中国人民解放军国防科技大学 一种基于tee的操作系统应用完整性度量方法及系统
CN113486353A (zh) * 2021-06-24 2021-10-08 邦彦技术股份有限公司 可信度量方法、系统、设备及存储介质
CN113591159A (zh) * 2021-07-30 2021-11-02 支付宝(杭州)信息技术有限公司 一种可信度量方法和可信计算节点
WO2023104013A1 (zh) * 2021-12-10 2023-06-15 华为技术有限公司 数据完整性保护方法及相关装置
WO2023184619A1 (zh) * 2022-03-29 2023-10-05 杭州安恒信息技术股份有限公司 通信方法、装置、计算机设备和可读存储介质
CN114462051A (zh) * 2022-04-12 2022-05-10 中电云数智科技有限公司 一种基于可信计算环境的可信计算系统及方法
CN116049866A (zh) * 2022-06-27 2023-05-02 荣耀终端有限公司 一种数据保护方法、电子设备及芯片系统
WO2024078159A1 (zh) * 2022-10-09 2024-04-18 华为技术有限公司 完整性度量方法及装置
CN117093423A (zh) * 2023-10-18 2023-11-21 西安热工研究院有限公司 可信dcs终端间数据同步方法、系统、电子设备及存储介质
CN117093423B (zh) * 2023-10-18 2024-01-30 西安热工研究院有限公司 可信dcs终端间数据同步方法、系统、电子设备及存储介质

Also Published As

Publication number Publication date
CN112434306B (zh) 2024-04-16

Similar Documents

Publication Publication Date Title
CN112434306B (zh) 可信度量方法,装置,系统,电子设备及存储介质
TWI356298B (en) Projection of trustworthiness from a trusted envir
AU2012337403B2 (en) Cryptographic system and methodology for securing software cryptography
AU2007211962B2 (en) Information processing system, information processing method, information processing program, computer readable medium and computer data signal
CN111143869B (zh) 应用程序包处理方法、装置、电子设备及存储介质
CN107707981B (zh) 一种基于Trustzone技术的微码签名安全管理系统及方法
CN104462965A (zh) 应用程序完整性验证方法及网络设备
CN111193740B (zh) 加密方法、装置、解密方法、计算机设备和存储介质
CN109117643B (zh) 系统处理的方法以及相关设备
CN110245495B (zh) Bios校验方法、配置方法、设备及系统
CN113360913A (zh) 一种恶意程序检测方法、装置、电子设备及存储介质
JP4664055B2 (ja) プログラム分割装置、プログラム実行装置、プログラム分割方法及びプログラム実行方法
US20220083630A1 (en) Protecting an item of software
US20200244461A1 (en) Data Processing Method and Apparatus
CN111858114B (zh) 设备启动异常处理,设备启动控制方法、装置及系统
CN110362983B (zh) 一种保证双域系统一致性的方法、装置及电子设备
JP6284301B2 (ja) 保守作業判定装置および保守作業判定方法
WO2019137614A1 (en) Apparatus and method for runtime integrity protection for execution environments
CN113407434B (zh) 调试文件的处理方法、装置
CN114417320A (zh) 一种系统启动方法和装置
CN118260774A (zh) 服务器的启动方法及装置、存储介质及电子设备
CN117556418A (zh) 一种确定内核状态的方法和相关设备
CN115906056A (zh) 加载动态库的方法、系统、设备、存储介质及程序产品
CN117707586A (zh) Bios固件更新方法、装置、计算机设备及介质
KR20130030132A (ko) 컴퓨팅 시스템의 보안기능 제공장치 및 제공방법

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