CN117573275A - 一种基于TrustZone的可信容器应用安全读写方法和系统 - Google Patents
一种基于TrustZone的可信容器应用安全读写方法和系统 Download PDFInfo
- Publication number
- CN117573275A CN117573275A CN202311520015.6A CN202311520015A CN117573275A CN 117573275 A CN117573275 A CN 117573275A CN 202311520015 A CN202311520015 A CN 202311520015A CN 117573275 A CN117573275 A CN 117573275A
- Authority
- CN
- China
- Prior art keywords
- application
- security
- trusted
- container
- secure
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 52
- 238000012795 verification Methods 0.000 claims abstract description 45
- 238000004590 computer program Methods 0.000 claims description 5
- 238000002955 isolation Methods 0.000 abstract description 16
- 238000004891 communication Methods 0.000 description 18
- 238000005516 engineering process Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 3
- 241001026509 Kata Species 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009545 invasion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- 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
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45583—Memory management, e.g. access or allocation
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
Abstract
本发明涉及可信容器技术领域,提供一种基于TrustZone的可信容器应用安全读写和系统,包括:启动可信容器,通过为可信容器内的应用设置可信安全接口获得安全应用;启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密;根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。本发明基于TrustZone的可信容器应用安全读写和系统,在TrustZone可信执行环境中,通过使用不同的安全密钥为内存加密,为不同的容器应用提供安全隔离的内存环境,实现硬件级的容器内应用执行环境安全隔离,保障容器内应用的业务数据的安全性。
Description
技术领域
本发明涉及可信容器技术领域,尤其涉及一种基于TrustZone的可信容器应用安全读写方法和系统。
背景技术
随着互联网的快速发展,云原生容器技术是众多有高性能、弹性扩展、高可靠要求的应用的首选技术。容器技术可以创建轻量级的、独立的运行环境,使得应用程序可以在不同的环境中快速、可靠地运行,提高了开发、测试和生产环境的敏捷性。在提供高性能和高效率的同时,容器技术引入了新的安全性问题:容器技术通过共享使用宿主操作系统的系统内核、文件系统等基础组件,导致容器隔离性差,单个容器被入侵时更易发生容器逃逸,进而造成宿主系统的安全风险以及更容易遭受横向攻击。
当前主要有三种提高容器安全性的方案,可以一定程度提高容器的隔离性、安全性,但是在实际应用中存在一定的不足。方案一,在容器运行时进行安全检测,通过检测容器运行环境、运行状态识别风险、发现攻击。该方案为被动检测模式,发现攻击有滞后性,对于0day攻击等新型攻击通常没有有效识别手段;容器都是由镜像拉起,容器漏洞和风险通常固化在容器镜像中,安全检测发现安全风险只能告警,无法自动修复。方案二采用Kata容器,Kata容器具有独立的内核,可以提供网络、I/O、内存的隔离,是一种介于容器和虚拟机之间的虚拟化技术,性能和资源使用上优于虚拟机,安全隔离性上优于传统容器。但是Kata容器仍然无法解决宿主系统级别的资源隔离,一旦宿主系统被入侵,运行在该宿主系统上的所有容器数据仍然可能泄漏。方案三,基于Intel SGX可信执行环境提出的安全容器方案,为每个容器构建独立的安全加密的可信执行环境实例vSGX,保证每一个容器都有独立安全环境,不会因为其他容器或者宿主系统被入侵导致本容器数据泄露。SGX方案只能保证运行在IntelCPU硬件之上的容器安全和隔离,且隔离粒度最高只能做到容器级别,无法对容器内进程之间进行安全隔离,如果容器本身因为某个应用漏洞被入侵,本容器内数据仍然有可能泄漏。
因此,如何提供一种基于TrustZone可信执行环境,支持应用级别的数据可信隔离的安全容器,成为亟待解决的技术问题。
发明内容
有鉴于此,为了克服现有技术的不足,本发明旨在提供一种基于TrustZone的可信容器应用安全读写方法和系统。
根据本发明的第一方面,提供一种基于TrustZone的可信容器应用安全读写方法,包括:
启动可信容器,通过为可信容器内的应用设置可信安全接口获得安全应用;
启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密;
根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。
优选地,本发明的基于TrustZone的可信容器应用安全读写方法中,启动可信容器,通过为可信容器内的应用设置可信安全接口获得安全应用,包括:启动可信容器,通过操纵系统内核对启动的可信容器进行识别,将识别的可信容器中的应用的内存操作接口设置为可信执行环境管理服务提供的接口。
优选地,本发明的基于TrustZone的可信容器应用安全读写方法中,启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密,包括:
在可信容器内启动安全应用,识别启动的安全应用的所属可信容器ID,根据识别的可信容器ID记录对应安全应用的应用指纹;
为启动的安全应用分配独立的密钥,采用分配的密钥对安全应用在内存空间中对应的内存数据进行加密。
优选地,本发明的基于TrustZone的可信容器应用安全读写方法中,应用指纹包括安全应用的名称、存储路径和关键代码段信息。
优选地,本发明的基于TrustZone的可信容器应用安全读写方法中,根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写,包括:
在安全应用读写内存空间的内存数据前,对读写内存数据的安全应用进行身份识别和校验;
提取通过身份识别和校验的安全应用的密钥,采用提取的密钥对安全应用在内存空间中对应的加密内存数据进行解密,获得解密的内存数据;
采用安全应用读写内存空间中对应的解密的内存数据。
优选地,本发明的基于TrustZone的可信容器应用安全读写方法中,根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写,还包括:当读写内存数据的安全应用未通过身份识别和校验,终止所述安全应用的读取进程,记录所述安全的识别和校验日志。
根据本发明的第二方面,提供一种基于TrustZone的可信容器应用安全读写系统,该系统包括安全读写服务端,该安全读写服务端用于启动可信容器,通过为可信容器内的应用设置可信安全接口获得安全应用;启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密;根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。
优选地,本发明的基于TrustZone的可信容器应用安全读写系统中,该安全读写服务端包括:
多个可信容器,所述可信容器中设置多个安全应用;
可信执行环境管理服务模块,所述可信执行环境管理服务模块用于启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密;根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。
优选地,本发明的基于TrustZone的可信容器应用安全读写系统中,可信执行环境管理服务模块包括:
应用指纹管理单元,用于在可信容器内启动安全应用时,识别启动的安全应用的所属可信容器ID,根据识别的可信容器ID记录对应安全应用的应用指纹;在安全应用读写内存空间的内存数据前,对读写内存数据的安全应用进行身份识别和校验;
应用密钥管理单元,用于为启动的安全应用分配独立的密钥,提取通过身份识别和校验的安全应用的密钥;
加解密单元,用于采用分配的密钥对安全应用在内存空间中对应的内存数据进行加密;采用提取的密钥对安全应用在内存空间中对应的加密内存数据进行解密,获得解密的内存数据。
根据本发明的第三方面,提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明第一方面所述的方法。
本发明实施例的基于TrustZone的可信容器应用安全读写方法和系统,在TrustZone可信执行环境中,通过使用不同的安全密钥为内存加密,为不同的容器应用提供安全隔离的内存环境,实现硬件级的容器内应用执行环境安全隔离,保障容器内应用的业务数据的安全性,具有以下有益技术效果:
1.为容器内应用提供可信执行环境,当可信容器启动时,容器内所有应用将自动进入可信执行环境TrustZone,应用访问的内存都会被默认执行安全保护。该过程应用自身无需感知,通过内核切换内存操作接口,由可信执行环境管理服务模块自动执行应用校验识别和应用内存加解密。
2.通过对可信容器中的安全应用使用的内存执行加密存储,保证容器内安全应用程序的内存数据安全。即使宿主系统或者其他容器被入侵,攻击者使用内存dump工具获取到了硬件中记录的全量内存,也无法窃取到可信容器中安全应用的内存数据。
3.通过在可信执行环境为每个安全应用分配一套独立的密钥,通过应用指纹识别应用信息,可信执行环境管理服务通过动态校验安全应用指纹,确保安全应用可信,防止跨容器、跨应用的横向攻击导致数据泄露;安全应用使用自身密钥进行加解密,仅安全应用程序自己可以访问自己的加密内存,实现了安全应用之间的数据隔离,即使安全应用所在容器被入侵,黑客也无法读取程序数据。
4.所有安全应用的加解密密钥由ARM TrustZone可信执行环境管理,同时加解密操作在TrustZone内部完成,密钥本身不对应用开放,整体提供硬件级别的安全保障。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为一种适用于本发明实施例的基于TrustZone的可信容器应用安全读写方法的系统的示意图;
图2为根据本发明实施例的基于TrustZone的可信容器应用安全读写系统的安全读写服务端的架构示例图;
图3为根据本发明实施例的一种基于TrustZone的可信容器应用安全读写方法的步骤流程图;
图4为根据本发明实施例的一种基于TrustZone的可信容器应用安全读写方法执行流程示意图。
图5为本发明提供的设备的结构示意图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合;并且,基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
图1示出了一种适用于本发明实施例的基于TrustZone的可信容器应用安全读写方法的示例性系统。如图1所示,该系统可以包括安全读写服务端101、通信网络102和/或一个或多个安全读写客户端103,图1中示例为多个安全读写客户端103。
安全读写服务端101可以时用于存储信息、数据、程序和/或任何其他合适类型的内容的任何适当的服务器。在一些实施例中,安全读写服务端101可以执行适当的功能。例如,在一些实施例中,安全读写服务端101可以用于基于TrustZone对可信容器中的应用进行安全读写。作为可选的示例,在一些实施例中,安全读写服务端101可以被用于通过对安全应用进行身份识别和校验以及对内存数据进行加密,实现对可信容器中的应用进行安全读写。例如,安全读写服务端101可以用于启动可信容器,通过为可信容器内的应用设置可信安全接口获得安全应用;启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密;根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。
作为另一示例,在一些实施例中,安全读写服务端101可以根据安全读写客户端103的请求,将基于TrustZone的可信容器应用安全读写方法发送到安全读写客户端103供用户使用。
图2为根据本发明实施例的基于TrustZone的可信容器应用安全读写系统的安全读写服务端的架构示例图;如图2所示,本实施例基于TrustZone的可信容器应用安全读写系统的安全读写服务端包括:
多个可信容器,所述可信容器中设置多个安全应用;
可信执行环境管理服务模块,所述可信执行环境管理服务模块用于启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密;根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。
作为可选的示例,可信执行环境管理服务模块包括应用指纹管理单元、应用密钥管理单元和加解密单元,其中,应用指纹管理单元,用于在可信容器内启动安全应用时,识别启动的安全应用的所属可信容器ID,根据识别的可信容器ID记录对应安全应用的应用指纹;在安全应用读写内存空间的内存数据前,对读写内存数据的安全应用进行身份识别和校验;应用密钥管理单元,用于为启动的安全应用分配独立的密钥,提取通过身份识别和校验的安全应用的密钥;加解密单元,用于采用分配的密钥对安全应用在内存空间中对应的内存数据进行加密;采用提取的密钥对安全应用在内存空间中对应的加密内存数据进行解密,获得解密的内存数据。
作为可选的示例,在一些实施例中,安全读写客户端103用于提供可视化读写界面,该可视化读写界面用于接收用户对可信容器中的应用进行安全读写的选择输入操作,以及,用于响应于选择输入操作,从安全读写服务端101获取与选择输入操作所选择的选项所对应的读写界面并展示读写界面,读写界面中至少展示有对可信容器中的应用进行安全读写的信息以及针对对可信容器中的应用进行安全读写的信息的操作选项。
在一些实施例中,通信网络102可以是一个或多个有线和/或无线网络的任何适当的组合。例如,通信网络102能够包括以下各项中的任何一种或多种:互联网、内联网、广域网(WAN)、局域网(LAN)、无线网络、数字订户线路(DSL)网络、帧中继网络、异步转移模式(ATM)网络、虚拟专用网(VPN)和/或任何其它合适的通信网络。安全读写客户端103能够通过一个或多个通信链路(例如,通信链路104)连接到通信网络102,该通信网络102能够经由一个或多个通信链路(例如,通信链路105)被链接到安全读写服务端101。通信链路可以是适合于在安全读写客户端103和安全读写服务端101之间传送数据的任何通信链路,诸如网络链路、拨号链路、无线链路、硬连线链路、任何其它合适的通信链路或此类链路的任何合适的组合。
安全读写客户端103可以包括通过适当形式呈现与高速访问ORC外部表相关的界面,以供用户使用和操作的任何一个或多个客户端。在一些实施例中,安全读写客户端103可以包括任何合适类型的设备。例如,在一些实施例中,安全读写客户端103可以包括移动设备、平板计算机、膝上型计算机、台式计算机和/或任何其他合适类型的客户端设备。
尽管将安全读写服务端101图示为一个设备,但是在一些实施例中,可以使用任何适当数量的设备来执行由安全读写服务端101执行的功能。例如,在一些实施例中,可以使用多个设备来实现由安全读写服务端101执行的功能。或者,可使用云服务实现安全读写服务端101的功能。
基于上述系统,本发明实施例提供了一种基于TrustZone的可信容器应用安全读写方法,以下通过以下实施例进行说明。
参照图3,示出了根据本发明实施例的一种基于TrustZone的可信容器应用安全读写方法的步骤流程图。图4为根据本发明实施例的一种基于TrustZone的可信容器应用安全读写方法执行流程示意图。
本实施例的基于TrustZone的可信容器应用安全读写方法可在安全读写服务端执行,如图3和图4所示,该基于TrustZone的可信容器应用安全读写方法包括以下步骤:
步骤S201:启动可信容器,通过为可信容器内的应用设置可信安全接口获得安全应用。
本实施例方法中,启动可信容器,通过操纵系统内核对启动的可信容器进行识别,将识别的可信容器中的应用的内存操作接口设置为可信执行环境管理服务提供的接口。作为可选的示例,在可信容器启动时,操作系统内核调整可信容器内所有相关应用的内存操作接口,由通用内存管理接口调整为可信执行环境管理服务提供的接口,该调整由操作系统内核识别可信容器启动自动完成,无需上层应用感知。
步骤S202:启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密。
本发明实施例方法中,在可信容器内启动安全应用,识别启动的安全应用的所属可信容器ID,根据识别的可信容器ID记录对应安全应用的应用指纹,其中,本实施例方法中的应用指纹包括安全应用的名称、存储路径和关键代码段信息,本领域技术人员在实施本发明方法时,可以根据实际应用场景对应用指纹的内容进行具体自定义设置,本实施例方法对此不作限制。在完成应用指纹的记录后,本实施例方法还需要为启动的安全应用分配独立的密钥,采用分配的密钥对安全应用在内存空间中对应的内存数据进行加密。
作为可选的示例,本发明实施例方法中,可信容器内启动安全应用时,可信执行环境管理服务模块的应用指纹管理单元识别该安全应用所属可信容器ID,记录程序指纹(程序名称、路径、关键代码段等信息),作为后续安全应用获取应用加密密钥读写内存的身份依据。可信执行环境管理服务模块的应用密钥管理单元为该安全应用分配独立的密钥用于该应用内存的加解密。
步骤S203:根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。
本发明实施例方法在安全应用读写内存空间的内存数据前,对读写内存数据的安全应用进行身份识别和校验;在完成对安全应用进行身份识别和校验后,本实施例方法提取通过身份识别和校验的安全应用的密钥,采用提取的密钥对安全应用在内存空间中对应的加密内存数据进行解密,获得解密的内存数据;采用安全应用读写内存空间中对应的解密的内存数据。当读写内存数据的安全应用未通过身份识别和校验,终止所述安全应用的读取进程,记录所述安全的识别和校验日志。
作为可选的示例,本发明实施例方法中,安全应用读写内存前,可信执行环境管理服务模块的应用指纹管理单元识别和校验应用指纹,校验通过后提取应用密钥管理单元为该安全应用分配的密钥,通过可信执行环境管理服务模块的加解密单元执行加解密。
本发明实施例的基于TrustZone的可信容器应用安全读写方法和系统,在TrustZone可信执行环境中,通过使用不同的安全密钥为内存加密,为不同的容器应用提供安全隔离的内存环境,实现硬件级的容器内应用执行环境安全隔离,保障容器内应用的业务数据的安全性,具有以下有益技术效果:
1)为容器内应用提供可信执行环境,当可信容器启动时,容器内所有应用将自动进入可信执行环境TrustZone,应用访问的内存都会被默认执行安全保护。该过程应用自身无需感知,通过内核切换内存操作接口,由可信执行环境管理服务模块自动执行应用校验识别和应用内存加解密。
2)通过对可信容器中的安全应用使用的内存执行加密存储,保证容器内安全应用程序的内存数据安全。即使宿主系统或者其他容器被入侵,攻击者使用内存dump工具获取到了硬件中记录的全量内存,也无法窃取到可信容器中安全应用的内存数据。
3)通过在可信执行环境为每个安全应用分配一套独立的密钥,通过应用指纹识别应用信息,可信执行环境管理服务通过动态校验安全应用指纹,确保安全应用可信,防止跨容器、跨应用的横向攻击导致数据泄露;安全应用使用自身密钥进行加解密,仅安全应用程序自己可以访问自己的加密内存,实现了安全应用之间的数据隔离,即使安全应用所在容器被入侵,黑客也无法读取程序数据。
4)所有安全应用的加解密密钥由ARM TrustZone可信执行环境管理,同时加解密操作在TrustZone内部完成,密钥本身不对应用开放,整体提供硬件级别的安全保障。
如图5所示,本发明还提供了一种设备,包括处理器310、通信接口320、用于存储处理器可执行计算机程序的存储器330及通信总线340。其中,处理器310、通信接口320及存储器330通过通信总线340完成相互间的通信。处理器310通过运行可执行计算机程序以实现上述的基于TrustZone的可信容器应用安全读写方法。
其中,存储器330中的计算机程序可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以基于实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种基于TrustZone的可信容器应用安全读写方法,其特征在于,所述方法包括:
启动可信容器,通过为可信容器内的应用设置可信安全接口获得安全应用;
启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密;
根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。
2.根据权利要求1所述的基于TrustZone的可信容器应用安全读写方法,其特征在于,启动可信容器,通过为可信容器内的应用设置可信安全接口获得安全应用,包括:启动可信容器,通过操纵系统内核对启动的可信容器进行识别,将识别的可信容器中的应用的内存操作接口设置为可信执行环境管理服务提供的接口。
3.根据权利要求1所述的基于TrustZone的可信容器应用安全读写方法,其特征在于,启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密,包括:
在可信容器内启动安全应用,识别启动的安全应用的所属可信容器ID,根据识别的可信容器ID记录对应安全应用的应用指纹;
为启动的安全应用分配独立的密钥,采用分配的密钥对安全应用在内存空间中对应的内存数据进行加密。
4.根据权利要求1所述的基于TrustZone的可信容器应用安全读写方法,其特征在于,应用指纹包括安全应用的名称、存储路径和关键代码段信息。
5.根据权利要求1所述的基于TrustZone的可信容器应用安全读写方法,其特征在于,根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写,包括:
在安全应用读写内存空间的内存数据前,对读写内存数据的安全应用进行身份识别和校验;
提取通过身份识别和校验的安全应用的密钥,采用提取的密钥对安全应用在内存空间中对应的加密内存数据进行解密,获得解密的内存数据;
采用安全应用读写内存空间中对应的解密的内存数据。
6.根据权利要求5所述的基于TrustZone的可信容器应用安全读写方法,其特征在于,根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写,还包括:当读写内存数据的安全应用未通过身份识别和校验,终止所述安全应用的读取进程,记录所述安全的识别和校验日志。
7.一种基于TrustZone的可信容器应用安全读写系统,其特征在于,所述系统包括安全读写服务端,所述安全读写服务端用于启动可信容器,通过为可信容器内的应用设置可信安全接口获得安全应用;启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密;根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。
8.根据权利要求7所述的基于TrustZone的可信容器应用安全读写系统,其特征在于,所述安全读写服务端包括:
多个可信容器,所述可信容器中设置多个安全应用;
可信执行环境管理服务模块,所述可信执行环境管理服务模块用于启动安全应用,记录启动的安全应用的应用指纹,对安全应用对应的内存数据进行加密;根据应用指纹对安全应用进行身份识别和校验,采用通过身份识别和校验的安全应用对加密的内存数据进行读写。
9.根据权利要求8所述的基于TrustZone的可信容器应用安全读写系统,其特征在于,可信执行环境管理服务模块包括:
应用指纹管理单元,用于在可信容器内启动安全应用时,识别启动的安全应用的所属可信容器ID,根据识别的可信容器ID记录对应安全应用的应用指纹;在安全应用读写内存空间的内存数据前,对读写内存数据的安全应用进行身份识别和校验;
应用密钥管理单元,用于为启动的安全应用分配独立的密钥,提取通过身份识别和校验的安全应用的密钥;
加解密单元,用于采用分配的密钥对安全应用在内存空间中对应的内存数据进行加密;采用提取的密钥对安全应用在内存空间中对应的加密内存数据进行解密,获得解密的内存数据。
10.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1-6中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311520015.6A CN117573275A (zh) | 2023-11-14 | 2023-11-14 | 一种基于TrustZone的可信容器应用安全读写方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311520015.6A CN117573275A (zh) | 2023-11-14 | 2023-11-14 | 一种基于TrustZone的可信容器应用安全读写方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117573275A true CN117573275A (zh) | 2024-02-20 |
Family
ID=89885497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311520015.6A Pending CN117573275A (zh) | 2023-11-14 | 2023-11-14 | 一种基于TrustZone的可信容器应用安全读写方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117573275A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104903910A (zh) * | 2012-10-16 | 2015-09-09 | 思杰系统有限公司 | 控制移动装置对安全数据的访问 |
CN108733455A (zh) * | 2018-05-31 | 2018-11-02 | 上海交通大学 | 基于ARM TrustZone的容器隔离性增强系统 |
CN109726566A (zh) * | 2018-11-22 | 2019-05-07 | 成都海光集成电路设计有限公司 | 基于安全内存加密技术的加密系统和加密方法 |
CN113505372A (zh) * | 2021-06-24 | 2021-10-15 | 广东中星电子有限公司 | 一种符合高级安全标准的前端设备制造方法及系统 |
CN115344871A (zh) * | 2022-08-17 | 2022-11-15 | 上海交通大学 | 基于arm架构的机密计算环境构建方法和系统 |
CN116415247A (zh) * | 2021-12-31 | 2023-07-11 | 华为技术有限公司 | 一种容器安全校验的方法及装置 |
CN116528230A (zh) * | 2023-03-22 | 2023-08-01 | 无锡融卡科技有限公司 | 验证码处理方法、移动终端及可信服务系统 |
-
2023
- 2023-11-14 CN CN202311520015.6A patent/CN117573275A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104903910A (zh) * | 2012-10-16 | 2015-09-09 | 思杰系统有限公司 | 控制移动装置对安全数据的访问 |
CN108733455A (zh) * | 2018-05-31 | 2018-11-02 | 上海交通大学 | 基于ARM TrustZone的容器隔离性增强系统 |
CN109726566A (zh) * | 2018-11-22 | 2019-05-07 | 成都海光集成电路设计有限公司 | 基于安全内存加密技术的加密系统和加密方法 |
CN113505372A (zh) * | 2021-06-24 | 2021-10-15 | 广东中星电子有限公司 | 一种符合高级安全标准的前端设备制造方法及系统 |
CN116415247A (zh) * | 2021-12-31 | 2023-07-11 | 华为技术有限公司 | 一种容器安全校验的方法及装置 |
CN115344871A (zh) * | 2022-08-17 | 2022-11-15 | 上海交通大学 | 基于arm架构的机密计算环境构建方法和系统 |
CN116528230A (zh) * | 2023-03-22 | 2023-08-01 | 无锡融卡科技有限公司 | 验证码处理方法、移动终端及可信服务系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109923548B (zh) | 通过监管进程访问加密数据实现数据保护的方法、系统及计算机程序产品 | |
US10255444B2 (en) | Method and system for utilizing secure profiles in event detection | |
US10389709B2 (en) | Securing client-specified credentials at cryptographically attested resources | |
US20220006617A1 (en) | Method and apparatus for data storage and verification | |
EP1860590B1 (en) | Posture-based data protection | |
JP2020527791A (ja) | セキュア実行プラットフォームのクラスタ | |
EP2510442B1 (en) | System and method for secured backup of data | |
US20170277898A1 (en) | Key management for secure memory address spaces | |
US10726137B2 (en) | Copy protection for secured files | |
EP2973171B1 (en) | Context based switching to a secure operating system environment | |
KR20190063264A (ko) | 가상 트러스트 컴퓨팅 베이스를 이용한 기기 보안성 검증 방법 및 장치 | |
CN202795383U (zh) | 一种保护数据的设备和系统 | |
CN102884535A (zh) | 受保护装置管理 | |
US11755753B2 (en) | Mechanism to enable secure memory sharing between enclaves and I/O adapters | |
US9529733B1 (en) | Systems and methods for securely accessing encrypted data stores | |
EP3449607B1 (en) | Systems and methods for managing encryption keys for single-sign-on applications | |
CN110543775B (zh) | 一种基于超融合理念的数据安全防护方法及系统 | |
US10033732B1 (en) | Systems and methods for detecting cloning of security tokens | |
US10469457B1 (en) | Systems and methods for securely sharing cloud-service credentials within a network of computing devices | |
WO2021188716A1 (en) | Systems and methods for protecting a folder from unauthorized file modification | |
US10162962B1 (en) | Systems and methods for detecting credential theft | |
CN117573275A (zh) | 一种基于TrustZone的可信容器应用安全读写方法和系统 | |
US11438378B1 (en) | Systems and methods for protecting against password attacks by concealing the use of honeywords in password files | |
US11336639B1 (en) | Systems and methods for managing a need-to-know domain name system | |
Jayan et al. | An efficient approach to securing user data in android |
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 |