CN104318182A - 一种基于处理器安全扩展的智能终端隔离***及方法 - Google Patents
一种基于处理器安全扩展的智能终端隔离***及方法 Download PDFInfo
- Publication number
- CN104318182A CN104318182A CN201410596688.4A CN201410596688A CN104318182A CN 104318182 A CN104318182 A CN 104318182A CN 201410596688 A CN201410596688 A CN 201410596688A CN 104318182 A CN104318182 A CN 104318182A
- Authority
- CN
- China
- Prior art keywords
- module
- security
- operating system
- secure
- trusted application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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
- G06F21/74—Protecting 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 operating in dual or compartmented mode, i.e. at least one secure mode
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/031—Protect user input by software means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/032—Protect output to user by software means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2113—Multi-level security, e.g. mandatory access control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2149—Restricted operating environment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
一种基于处理器安全扩展的智能终端隔离***及方法,包括安全启动模块、事务委托模块、通信代理模块、安全扩展抽象层、安全操作***、安全中间件、可信应用模块、普通应用模块。安全启动模块对智能终端硬件环境进行简单初始化,并认证和引导安全操作***。通信代理模块负责可信应用模块和普通应用模块的底层数据封装与通信。安全扩展抽象层将为安全操作***提供统一的调用接口。安全操作***将为整个安全域内可信应用模块提供相互独立的运行空间,并管理安全域内所有软硬件资源。安全中间件实现安全功能、事务委托相关的核心库,并为可信应用提供相关的功能接口。本发明目的在于为智能终端提供完整的安全隔离机制,提高软件运行环境的安全性。
Description
技术领域
本发明涉及一种基于处理器安全扩展的智能终端隔离***及方法,属于智能终端的安全领域。
背景技术
当前,整个信息产业经历从传统的互联网到移动互联网的转变,智能终端的功能和形态更加多样化,智能终端所实现的功能不仅是普罗大众的通信、社交以及娱乐方向,更加希望能够实现传统PC所拥有的企业办公、支付等高安全、高敏感业务需求的功能。
在智能终端实现高安全、高敏感业务场景时(如办公、支付),在终端运行环境方面有以下几个主要问题:(1)智能终端普通操作***容易受到攻击,智能终端整体运行环境无法达到足够的安全等级。现在市场上流行的安卓***,由于***的开放性、***自身设计的特点,再加上各个厂家的定制,导致操作***版本的碎片化。无法在智能终端操作***层面进行统一的安全机制和策略的管理。此外,对中国大陆市场而言,应用生命周期管理的也是极其混乱的,导致终端用户意外安装恶意木马与病毒的几率大大提升。智能终端整体运行环境以其中运行的应用程序,都可能遭受非法监听与窃取,安全性得不到有效保障。(2)由于上述问题的存在,导致展开企业办公、支付等业务的基本安全条件无法得到满足。
在办公、支付等高敏感业务场景下,基本安全条件涉及以下几个关键技术点:
(1)安全显示与安全输入
高安全、高敏感业务发起、执行、结束过程中,存在着许多与用户交互的场景。例如,终端用户输入登录账户信息、个人密码,智能终端需要显示相关敏感业务与数据的UI界面等。
这些基本需求在技术层面,要求智能终端有能力提供诸如显示屏安全锁定,显示数据安全缓存,输入事件安全响应等。由于问题一的存在,这些基本底层安全机制将无法得到保障,导致高敏感业务从发起阶段就已经失去了安全性。
(2)关键逻辑处理单元的高安全运行环境
高安全、高敏感业务的关键逻辑处理单元往往需要进行诸如关键数据与信息核对,关键认证以及关键数据结果运算等操作。关键逻辑处理单元可以按照进程的方式存在及运行,由于问题一的存在,智能终端的普通操作***无法提供可靠的运行环境,防止逻辑业务与数据被监听和篡改。
(3)敏感数据的安全存储
敏感数据包括用户的账户信息、个人隐私信息以及业务计算结果等。通常的方式是通过存储秘钥加密相关数据,并将加密数据保存在普通文件***介质中。然而,由于问题一的存在,对于存储密码进行相关软件的防护往往达不到应有的安全等级。这将导致敏感数据存在窃取的风险。此外,将敏感数据存储与普通文件***介质中也存在遭受非法破坏的风险。
综上,现在市场上大多数智能终端开展高敏感业务时,缺乏一个可信计算基作为技术支撑。
发明内容
本发明的技术解决问题:克服现有技术的不足,提供一种基于处理器安全扩展的智能终端隔离***及方法,能够在不影响用户体验的前提下,保证对普通操作***最小修改的情况下,为高敏感应用程序提供高安全级别的软件运行环境,促使应用程序的数据输入、处理以及输出处于一个隔离运行环境中,有效防止恶意软件的攻击。
本发明技术解决方案:一种基于处理器安全扩展的智能终端隔离***,包括安全启动模块、事务委托模块、通信代理模块、安全扩展抽象层、安全操作***、安全中间件、可信应用模块、普通应用模块;
安全启动模块对智能终端硬件环境进行简单初始化,并认证、引导安全操作***。通信代理模块负责可信应用模块和普通应用模块的底层数据封装与通信。安全扩展抽象层将为安全操作***提供统一的调用接口,隔离各个处理器安全扩展的具体差异。安全操作***将为整个安全域内可信应用模块提供相互独立的运行空间、任务调度与管理、内存管理、安全设备管理、安全中断管理。安全中间件实现安全功能、事务委托相关的核心库,并为可信应用提供相关的功能接口。普通应用模块完成不同应用程序的常规交互功能,并通过通信代理模块向可信应用模块发起安全请求。可信应用模块接受安全操作***的调度,并处理相关的安全请求。
安全扩展所述处理器安全扩展是一种芯片级的安全支撑技术,该安全扩展包括的功能有:(1)支持处理器运行在安全和非安全运行状态,两种运行环境相互独立、物理上隔离,关键寄存器在安全与非安全状态能够进行硬件级自动备份,安全状态下执行的代码、访问的数据和设备称为安全域,非安全状态下执行的代码、访问的数据和设备称为非安全域。(2)支持处理器地址空间的安全与非安全划分,当处理器处于安全状态时,能够访问所有的地址空间,当处理器处于非安全状态时,只能访问非安全地址空间。(3)当发生异常时,处理器可以根据当前运行状态,跳转到相应的(安全、非安全、守护态的)异常向量表执行异常处理代码。(4)支持处理器的守护状态(属于一种特殊的安全状态),该状态下的处理器可以同时访问安全、非安全状态下的各个寄存器值、存储空间以及外部设备。(5)IRQ以及FIQ可以进行安全、非安全的中断类型设置。现有技术中,如Trustzone技术即满足以上要求。
所述安全启动模块则由多级安全引导模块组成,包括上电初始化模块、认证模块、安全操作***引导模块。智能终端上电后,首先运行的是上电初始化模块,该模块将负责硬件的简单初始化,如时钟初始化、异常向量表设置以及处理器安全扩展模块初始化等。认证模块提供基础的加密、解密、认证功能,初始化模块通过调用认证模块,确保安全操作***引导模块的完整性、合法性。当安全操作***引导模块通过认证后,上电初始化模块将安全操作***引导模块加载到指定安全存储区运行。安全操作***引导模块将调用认证模块对安全操作***的完整性、合法性进行认证。如果通过认证,则安全启动过程完成,安全操作***引导模块将会引导、加载安全操作***,处理器执行权将交给安全操作***进行进一步初始化工作。如果未通过认证,则***挂起,安全启动失败。
所述通信代理模块包括普通应用通信模块、可信应用通信模块组成。普通应用通信代理模块接收来自普通应用模块的数据,进行格式化封装后,传递数据给可信应用通信模块。可信应用通信模块将接收的数据进行解析,传递给安全操作***的安全守护模块进行进一步处理。普通应用通信模块和可信应用通信模块分别运行在非安全和安全域。通信代理模块将作为普通应用模块和可信应用模块的底层通信机制。
所述安全操作***将作为整个隔离***的管理者,由内存管理模块、加密文件***、安全调度器、可信应用加载模块、***调用模块、安全设备与驱动管理模块、安全守护模块、安全中断管理模块、各类安全设备驱动程序组成。内存管理模块为安全设备与驱动管理模块、安全守护模块、可信应用加载模块、安全中断管理模块、进程调度模块的运行提供底层的内存分配与释放机制,并负责设置普通操作***以及安全操作***各自的物理内存区域,负责操作***之间共享内存块的分配与撤销。通过安全设备与驱动管理模块,加密文件***可以方便的操作各类存储设备,对文件进行读取和写回操作。安全中断管理模块为安全设备与驱动管理模块提供底层的中断响应机制。安全设备与驱动管理模块负责管理各类安全设备,如触摸屏、显示屏、特殊安全元件以及非易失性存储器(如Flash)等。各类安全设备驱动通过安全设备与驱动管理模块完成对安全设备的初始化以及各类请求响应。由于安全操作***运行在内核态,为了满足可信应用和安全操作***的交互需求,***调用模块提供一系列接口函数帮助用户态的可信应用获得安全操作***的功能支持。当可信应用模块需要运行时,由可信应用加载模块进行认证,确保可信应用的完整性、合法性,随后通过认证的可信应用模块将被加载到内存。安全调度器作为所有可信应用的调度器,负责从运行队列中挑选出合适的应用程序占有处理器,获得执行机会。
安全操作***各个模块之间启动及初始化过程如下所述:当安全操作***被引导到内存中运行后,内存管理模块通过调用安全扩展抽象层完成自身的初始化,并负责分配安全隔离的物理内存以及普通操作***所占用的物理内存,通过调用安全扩展抽象层,将安全操作***的物理内存设置为安全域,普通操作***的物理内存设置为非安全域。然后完成安全守护模块的初始化,该过程将设自自身的状态为守护态,初始化安全域以及守护态的异常向量表,并设置普通操作***初始化的执行点。然后通信代理模块中的可信应用通信模块也将被初始化。然后,安全中断管理模块以及加密文件***将会进行自身的初始化,将通过安全扩展抽象层设置处理器的安全中断与非安全中断。可信应用加载模块被初始化。随后安全设备与驱动管理模块将进行初始化,通过调用安全中断管理模块的相关功能完成各类安全设备驱动程序的初始化。随后,可信应用加载模块载入0号可信应用模块,作为安全操作***的守护进程,通过安全调度器获得处理器执行权。最后,该进程通过安全守护模块将处理器执行权交给普通操作***,完成非安全域的相关初始化工作。事务委托模块将会随着普通操作***的初始化而挂载运行起来。
与传统操作***以及微内核的不同之处,也是本发明的重要方面在于:安全操作***中加入了安全守护模块。安全守护模块运行在处理器守护态,功能主要包括:(1)负责安全操作***以及普通操作***之间的上下文切换与恢复;(2)负责普通应用模块与安全应用模块通信数据的安全性检查;(3)负责设备在安全与非安全运行状态切换下,设备上下文切换与恢复,数据切换与恢复(如果需要);(4)当中断发生时,负责捕获中断,并根据中断类型、中断策略,决定中断的响应机制。
安全扩展本发明一个重要方面在于,发明事务委托模块增强安全操作***本身的功能性。安全操作***本身因为关注安全方面,所以***代码必须受到限制,导致功能性方面不如普通操作***丰富。通过事务委托模块,安全操作***可以将低安全性的功能需求委托给普通操作***进行处理。
所述事务委托模块包括客户端服务接口层、可信应用事务委托接口层以及事务委托处理模块组成。该模块负责为普通应用模块提供安全请求接口,为可信应用提供事务委托接口,并负责安全操作***委托的相关事务的处理,如将加密后的文件回写普通文件***等。普通应用模块通过客户端服务接口层提供的接口发起安全请求,该请求将会被事务委托处理模块捕获,并通过通信代理模块转发给可信应用模块做进一步处理。当可信应用程序需要进行耗时、低安全性操作时,通过调用可信应用事务委托接口层发起事务委托请求,通过通信代理模块转发给事务委托处理模块并由事务委托处理模块进行请求处理。
本发明另一个重要方面在于,使用安全守护模块和安全设备与驱动管理模块共同管理各类安全设备。本发明所述的各类设备可以是智能终端产品中各种外设,如麦克风、扬声器、显示屏等,也可以是SoC(片上***)内联各种设备,如DMA(直接存储器存储)。当这些设备处于安全域运行时,则称为安全设备;当处于非安全域运行时,则称为非安全设备。如果处理器安全扩展模块支持动态改变设备运行状态(如将设备从安全状态转化为非安全状态,或者将设备从非安全状态转化为安全状态,这意味着同一个设备可以被安全域和非安全域所共享)。为了确保设备数据的隔离,安全守护模块将负责设备上下文的切换以及数据的切换与恢复。随后,调用安全设备与驱动管理模块转向各类安全设备驱动程序。如果处理器安全扩展模块不支持动态改变设备运行状态,则由安全设备与驱动管理模块初始化时直接设定各类设备是否属于安全域。
此外,本发明一个重要方面在于,使用安全守护模块和安全中断管理模块共同管理中断信号(包括异步和同步)。在智能终端设备上,异步中断信号可能随时发生,例如处理器正处在安全域,此时发生了一个安全中断信号,或者处理器运行在安全域,此时发生了一个非安全中断信号。为了防止非安全中断信号频繁打断安全域内运行的代码,本发明使用安全守护模块作为安全域内中断的入口,当中断发生时,负责捕获中断,并根据中断类型、中断策略,决定中断的响应机制。如果该中断是安全中断,则执行权直接交给安全中断管理模块;如果该中断是非安全中断,则判断当前是否允许该中断,如果不允许则直接返回被打断的程序,否则给事务委托模块发送中断相关信息,然后返回。
所述安全中间件包括密码算法库、安全图形界面库、安全C语言库、事务委托库以及算法构建库等。各类库共同为可信应用的开发提供底层功能支持(包括密码处理、安全界面等),并且运行在用户态。各类库的实现则依赖于安全操作***的***调用模块以及安全设备与驱动管理模块提供的基础功能支持。密码算法库为可信应用提供常用的对称、非对称密码算法、摘要算法(如SHA256、RSA算法等)。安全图形界面库为可信应用提供界面构建需要的基本接口。安全C语言库则为可信应用的开发提供必要的功能,如字符串操作、数据拷贝等。事务委托库提供可信应用模块发起事务委托的必要功能接口。算法构建库提供了大数的表示与运算的基本接口,用于可信应用构建自身特殊的密码算法需求。
本发明所述的可信应用模块(或者可信应用程序)是经过授权中心签名的,符合安全操作***特殊格式定义的、由安全操作***进行认证并载入的应用程序。可信应用模块运行在安全域中,可以通过安全操作***与普通操普通应用模块进行数据通信。开发者可以使用可信应用模块的方式将高敏感业务实现出来,保证自身业务逻辑的高安全性。可信应用相关功能性需求可以调用安全中间件来完成。
本发明所述的普通应用模块(或者非可信应用程序)是普通操作***中的应用程序,运行在非安全域中,符合普通操作***的相关规定,配合隔离***的通信代理模块可以与可信应用模块进行通信,完成高敏感业务的相关操作。
本发明所述的安全请求是普通应用向可信应用发起的远程调用,普通应用可以将高敏感业务封装在可信应用中,实现安全隔离。
当处理器模块处于安全状态时,可能处于下列三种运行态:
(1)处于可信应用的用户态,此时处理器能够访问的线性地址空间为该可信应用的线性地址空间,所能访问的物理地址空间受安全操作***控制。
(2)处于安全操作***的内核态,能够访问智能终端所有的线性地址空间与物理地址空间,包括普通操作***所占用的物理地址空间。
(3)处于守护态,该运行态表明,处理器正在进行运行模式的切换,产生原因可能是普通应用模块发起了一个安全请求,也可能是可信应用模块处理结束需要返回结果。
当处理器模块处于非安全状态时,处理器模块只能访问安全操作***为其配置的物理地址空间。
优选地,安全启动模块对于多级安全引导模块使用数字证书进行认证,各级引导模块的数字证书将有独立的授权中心进行签发。
优选地,所述上电初始化模块由处理器安全扩展模块支持,固化存储在特定的安全区域,只有特定权限的代码才能进行调用访问。
优选地,所述认证模块的存储由处理器安全扩展模块支持,固化存储在特定的安全区域,只有特定权限的代码才能进行调用访问。
优选地,认证模块将支持常用的对称密码算法(如AES算法)、摘要算法(如SHA256)以及非对称密码算法(如RSA算法),并且这些算法由处理器安全扩展模块提供基础的密码算法硬件引擎。
优选地,安全操作***引导模块经过加密,并存储在非易失性存储区域(如Flash存储器)。
优选地,客户端服务接口层(客户端服务接口层属于事务委托模块的一个部分)按照Linux共享库方式实现,事务委托处理模块按照Linux进程方式实现。
一种基于处理器安全扩展的智能终端隔离方法,其特点在于实现步骤如下;
(1)智能终端上电后运行上电初始化模块,该模块对智能终端硬件环境进行初始化,包括时钟、安全扩展等;
(2)上电初始化模块调用认证模块,对安全操作***引导模块进行解密、认证;
(3)通过认证后,上电初始化模块引导、加载安全操作***引导模块;
(4)安全操作***引导模块调用认证模块,对安全操作***进行解密、认证;
(5)通过认证后,安全操作***引导模块引导、加载安全操作***;
(6)安全操作***开始初始化过程,首先初始化内存管理模块,然后初始化安全守护模块,可信应用代理模块,然后初始化安全中断管理模块、加密文件***,随后初始化可信应用加载模块、安全设备与驱动管理模块,并初始化设备驱动程序;
(7)初始化完成后,调用安全守护模块返回普通操作***,进一步完成非安全域的初始化;
(8)事务委托模块、普通应用通信模块将会随着普通操作***的启动而挂载运行起来;
(9)普通应用模块通过调用客户端服务接口层发起安全请求;
(10)事务委托处理模块捕获该请求,并调用普通应用通信模块转发该请求;
(11)可信应用通信模块接受该请求,并转发给安全守护模块;
(12)安全守护模块经过安全检查,将处理器状态进行切换,保存相关数据,利用安全调度器,将其转发给可信应用模块;
(13)可信应用模块通过安全中间件提供的相关功能,处理响应的安全请求。
本发明与现有技术相比的优点在于:
(1)基于处理器安全扩展,本发明可以将普通操作***和安全操作***的运行环境安全隔离开来,即使普通操作***遭受攻击,仍然可以保证安全操作***的安全性。
(2)本发明对智能终端设备及相关中断进行严格管理,保证运行在安全域的可信应用模块对于数据的输入、处理以及输出得到完整保护,可以满足高敏感业务对于安全性的需求。
(3)本发明安全启动模块通过逐级认证,有效抵抗启动阶段的攻击行为。
(4)本发明保持对普通操作***的最小修改,具有良好的可移植性,同时保证良好的用户体验。
附图说明
图1为本发明的整体实施例示意图;
图2为本发明的安全启动流程图;
图3为本发明的安全操作***初始化流程图;
图4为本发明的普通应用模块发起安全请求的实施例原理图;
图5为本发明的可信应用模块发起事务委托的实施例原理图;
图6为本发明的安全设备与驱动管理实施例原理图;
图7为本发明的安全中断管理实施例的流程图。
具体实施方式
下面通过实施例对本发明进行进一步的说明与解释。
本发明将使用安卓***作为普通操作***102,结合Trustzone技术作为处理器安全扩展模块108,在智能手机上来描述具体实施方式。但是本发明的其他实施方式仍然可以使用到现有或者将来的普通操作***或内核上,也可以使用其他处理器安全扩展技术。此外,下文的特定实例中所描述的实施例中通过智能手机来实现,但是该发明的隔离***可以全部或者部分使用到诸如平板、数字电视机顶盒、智能电视等智能终端上。
参见图1,图中展示出了本发明各个组件之间的关系。Trustzone为一种处理器安全扩展模块108的实施例,处理器安全扩展模块108可以使得处理器运行在安全状态和非安全状态,相应的,各类软硬件将运行在安全域和非安全域。安全扩展抽象层107则用于处理器安全扩展模块108的底层软件和上层功能模块的解耦。安卓***作为开放的、容易遭受攻击的普通操作系102统运行在非安全域,事务委托模块104作为安卓***的一部分,也运行在非安全域。通信代理模块105作为普通应用模块100和可信应用模块101的底层通信机制,其中普通应用通信模块100运行在非安全域,可信应用通信模块101运行在安全域。安全操作***103作为整个隔离***的管理者,运行在安全域内。安全启动模块106负责***的上电初始化工作,运行在安全域内。安全中间件109负责为可信应用模块101提供功能调用,运行在安全域内。
参见图2,展示了隔离***安全启动的流程图。***上电,Trustzone处理器安全扩展模块108控制处理器进入安全状态运行200。首先执行的是上电初始化模块201,该模块通过调用认证模块,解密安全操作***引导模块202,并认证该模块,确保安全操作***引导模块的完整性、合法性;如果通过认证203,则加载运行安全操作***引导模块204,该模块将会同样调用认证模块,对安全操作***103的完整性、合法性进行认证。如果通过认证,则完成安全启动过程,将引导安全操作***103到内存,并将处理器模块110执行权交给安全操作***103。上述任何一步认证失败,将导致安全启动失败208,智能手机也将挂起。
参见图3,展示了本发明中安全操作***103的初始化过程。安全操作***103被加载到内存后300,将负责整个隔离***的进一步初始化过程。首先初始化的是内存管理模块301,该模块将为后续各个模块的载入以及使用的数据结构分配内存空间。另一重要方面在于,内存管理模块将负责安全操作***103以及安卓***各自使用的物理内存进行划分302,使得两个操作***在运行时不会出现相互干扰的现象,且调用安全扩展抽象层107,进而调用Trustzone技术中的TZASC(地址空间控制器),将安卓***的物理内存设置为非安全域,将安全操作***103的物理内存设置为安全域。此外,当两个***的应用程序(即普通应用模块100和可信应用模块101)需要通过共享内存交换数据时,内存管理模块将负责该物理内存的分配。
当内存管理模块404初始化完成后,安全守护模块407以及可信应用通信模块101将完成初始化303。安全守护模块407需要设置自身的状态为Trustzone Monitor(以下称为监控模式)作为本发明的守护态,并且负责初始化守护态、安全域的异常向量表,并且设置安卓***的初始化执行点。随后,可信应用通信模块101将会进行初始化。然后,安全中断管理模块、加密文件***将完成初始化。在安全中断管理模块初始化中,将通过安全扩展抽象层107调用Trustzone技术设置各类中断的安全类型,如将IRQ设置为非安全中断,将FIQ设置为安全中断等。加密文件***将调用内存管理模块,完成自身管理数据的初始化等工作。随后安全设备与驱动管理模块601将会进行初始化。该模块会调用安全中断管理模块,设置各类驱动程序对于中断的配置情况。接着,可信应用加载模块将被初始化,并加载、运行可信应用模块101。该模块将作为安全操作***103的守护进程。此后,该守护进程通过调用安全守护模块相关功能返回安卓***,完成安卓***的初始化过程。
在本实施例中,安卓***400的普通应用模块100(以下称为安卓Java程序)运行在非安全域。与之对应的可信应用模块101负责该程序的高敏感业务逻辑部分,运行在安全域。非安全域的代码无法访问安全域,只能通过发起安全请求,将相关高敏感业务逻辑在隔离环境中由对应可信程序进行处理。在本实施例中,事务委托模块104中客户端服务接口404可以通过Linux共享库方式实现,事务委托处理模块403则可以通过Linux进程方式实现,普通应用通信模块404则可以通过Linux驱动方式实现。
参见图4,展示了本发明的普通应用模块100发起安全请求的实施例原理图。下面将结合该图详细说明两者的交互过程以及涉及本发明的实施例中各个模块如何配合完成该过程。当安卓Java程序需要处理敏感数据和业务时(如输入用户名、密码),安卓Java程序通过JNI(Java本地接口)调用客户端服务接口402,从而发起安全请求(如打开安全输入界面,调出安全输入虚拟键盘等具体安全请求)。该请求将会被正在运行的事务委托处理模块403捕获,事务委托处理模块403通过调用普通应用通信模块404。普通应用通信模块404将对该请求进行数据格式化,并将该安全请求转发给可信应用通信模块405。这样的通信转发将是跨越非安全域和安全域的,这样的跨越需要调用安全扩展抽象层107得以完成。在本实施例中,Trustzone技术提供了SMC指令(安全监控指令)实现从非安全域陷入安全域的监控模式。
当可信应用通信模块404接受到该安全请求后,将解析相关的数据,并转发给安全守护模块407。安全守护模块407对该请求进行安全检查,若通过检查,则负责安卓***400和安全操作***103的上下文切换,并将该请求通过安全调度器408转发给对应可信程序101,由该程序作进一步处理。(如调用安全中间件109,打开安全输入界面,等待用户输入用户名、密码等)交互过程中安全操作***103内使用到的各类数据结构和内存将由内存管理模块404统一分配和管理。此外,当安卓Java程序400和对应可信程序101需要进行较大数据传递时,可以通过内存管理模块404为两者分配共享内存407。
参见图5,展示了本发明的可信应用模块101发起事务委托的实施例原理图。下面将结合该图详细说明两者的交互过程以及涉及本发明的实施例中各个模块如何配合完成该过程。当对应可信程序101需要完成更加丰富的功能且该处理并非敏感操作时,可以进行事务委托交由事务委托处理模块403(事务委托处理模块403是事务委托模块104的一个组成部分)进行处理。对应可信模块101通过调用安全中间件109的事务委托接口,触发***调用模块501事务委托相关接口。由于该交互涉及跨越安全域和非安全域,需要调用安全扩展抽象层107完成。在本实施例中,Trustzone技术提供了SMC指令(安全监控指令)实现从安全域陷入安全域的监控模式。安全守护模块407捕获该调用,完成安卓***400和安全操作***103的上下文切换,并将相关事务委托经过可信应用通信模块405封装,转发给普通应用通信模块404。事务委托处理模块403将通过普通应用通信模块404接受该事务请求。随后,事务委托处理模块403可以调用安卓功能组件500完成该事务(如文件读写等)。
参见图6,展示了本发明的安全设备与驱动管理实施例原理图。下面结合该图详细说明实施例中各个模块的协同工作。在本实施例中,各类安全设备可能是独占的(即只被安全域内代码所控制、访问,下文称为安全组件),也可能是共享的(即Trustzone技术可以动态改变设备运行状态,该设备可能被安全域内代码访问,也可能被非安全域内代码访问,下文称为共享组件)。当对应可信程序101需要操作安全设备时(如显示屏),通过调用***调用模块501将向安全设备与驱动管理模块601发起请求,安全设备与驱动管理模块601判断该设备的类型(安全组件或者共享组件)。如果是安全组件,则直接转发该请求,由各类安全设备驱动程序600中的对应程序进行处理;如果是共享组件,则调用安全守护模块407进行上下文切换和数据切换,随后转入各类安全设备驱动程序600中的对应程序进行处理。
通常的做法是将IRQ中断作为非安全中断、FIQ作为安全中断。安全操作***103只对安全中断进行响应。该方案的主要问题在于缺乏灵活性,例如,当***运行在安全状态时,由于屏蔽了IRQ中断,接听电话这样的中断将被丢失。
参见图7,展示了本发明的安全中断管理实施例的流程图。安全中断管理模块将中断分为安全中断和非安全中断。为了保证***的功能性同时兼顾安全性,本实施例使用安全守护模块作为安全域内中断的入口。步骤701,当中断发生时,通过Trustzone技术提供的中断机制首先进入安全守护模块407。步骤702,安全守护模块407将根据中断类型、中断策略,决定中断的响应机制。步骤703,如果该中断是安全中断,则执行权直接交给安全中断管理模块。步骤704,进入安全操作***中断处理程序;步骤705,如果该中断是非安全中断,则判断当前是否允许该中断。步骤708,如果不允许则恢复上下文,返回被打断的程序。步骤706,否则给事务委托模块104发送中断相关信息。步骤707,然恢复上下文。最后,步骤709,退出中断处理,返回被打断的程序。
提供以上实施例仅仅是为了描述本发明的目的,而并非要限制本发明的范围。本发明的范围由所附权利要求限定。不脱离本发明的精神和原理而做出的各种等同替换和修改,均应涵盖在本发明的范围之内。
Claims (9)
1.一种基于处理器安全扩展的智能终端隔离***,其特征在于包括:启动模块(106)、通信代理模块(105)、安全扩展抽象层(107)、安全操作***(103)、安全中间件(109)、普通操作***(102)、可信应用模块(101)、普通应用模块(100)和各个处理器安全扩展模块(108);事务委托模块(104)、其中普通应用模块(100)、普通操作***(102)和事务委托模块(104)运行在非安全域;可信应用模块(101)、安全中间件(109)、安全操作***(103)和启动模块(106)运行在安全域;所述安全域是指安全状态下执行的代码、访问的数据和设备;所述非安全域是指非安全状态下执行的代码、访问的数据和设备;其中:
安全启动模块(106),对智能终端硬件环境进行简单初始化,并认证、引导安全操作***(103);
通信代理模块(105),负责可信应用模块和普通应用模块的底层数据封装与通信;
安全扩展抽象层(107),为安全操作***(103)提供统一的调用接口,隔离各个处理器安全扩展模块(108)的具体差异,即具体各个处理器安全扩展模块(108)的底层软件、硬件和上层功能模块的解耦;
安全操作***(103),为整个安全域内可信应用模块(101)提供相互独立的运行空间、任务调度与管理、内存管理、安全设备管理、安全中断管理;
安全中间件(109),实现安全功能、事务委托相关的核心库,并为可信应用模块(101)提供相关的功能接口;
普通应用模块(100),完成不同应用程序的常规交互功能,并通过通信代理模(105)向可信应用模块(101)发起安全请求;所述的安全请求是普通应用模块(100)向可信应用模块(101)发起的远程调用,普通应用模块(100)将高敏感业务封装在可信应用模块101中,实现安全隔离;
可信应用模块(101),接受安全操作系(103)的调度,并处理普通应用模块(100)的安全请求;可信应用模块(101)功能通过调用安全中间件109来完成;
普通操作***(102),将实现智能终端设备常规操作***的任务,负责提供终端用户日常生活中低安全性要求的功能服务,安全操作***(103)与普通操作***(102)处于物理上相互隔离的***,通过通信代理模块(105)进行相互间的数据通信;
处理器安全扩展模块108是芯片级的安全支撑模块,包括的功能:(1)支持处理器运行在安全和非安全运行状态,两种运行环境相互独立、物理上隔离,关键寄存器在安全与非安全运行状态能够进行硬件级自动备份;(2)支持处理器地址空间的安全与非安全划分,当处理器处于安全状态时,能够访问所有的地址空间,当处理器处于非安全状态时,只能访问非安全地址空间;(3)当发生异常时,处理器根据当前运行状态,跳转到相应的安全、非安全或守护状态的异常向量表执行异常处理代码;(4)支持处理器的守护状态,所述守护状态属于一种特殊的安全状态,该状态下的处理器能够同时访问安全、非安全状态下的各个寄存器值、存储空间以及外部设备;(5)IRQ以及FIQ能够进行安全、非安全的中断类型设置;
事务委托模块(104),安全操作***(103)通过该事务委托模块(104)能够将低安全性的功能需求委托给普通操作***(102)进行处理。
2.根据权利要求1所述的一种基于处理器安全扩展的智能终端隔离***,其特征在于:所述安全启动模块(106)由多级安全引导模块组成,具体包括上电初始化模块、认证模块和安全操作***引导模块;智能终端上电后,首先运行的是上电初始化模块,上电初始化模块将负责硬件的简单初始化,包括时钟初始化、异常向量表设置以及处理器安全扩展模块初始化;认证模块提供基础的加密、解密和认证功能,上电初始化模块通过调用认证模块,确保安全操作***引导模块的完整性、合法性;当安全操作***引导模块通过认证后,上电初始化模块将安全操作***引导模块加载到指定安全存储区运行;安全操作***引导模块将调用认证模块对安全操作***的完整性、合法性进行认证;如果通过认证,则安全启动过程完成,安全操作***引导模块将会引导、加载安全操作***,处理器执行权将交给安全操作***进行进一步初始化工作;如果未通过认证,则***挂起,安全启动失败。
3.根据权利要求1所述的一种基于处理器安全扩展的智能终端隔离***,其特征在于:所述通信代理模块包括普通应用通信模块、可信应用通信模块;普通应用通信代理模块接收来自普通应用模块的数据,进行格式化封装后,传递数据给可信应用通信模块;可信应用通信模块将接收的数据进行解析,传递给安全操作***的安全守护模块进行进一步处理;普通应用通信模块和可信应用通信模块分别运行在非安全和安全域;通信代理模块将作为普通应用模块和可信应用模块的底层通信机制。
4.根据权利要求1所述的一种基于处理器安全扩展的智能终端隔离***,其特征在于:所述安全操作***将作为整个隔离***的管理者,由内存管理模块、加密文件***、安全调度器、可信应用加载模块、***调用模块、安全设备与驱动管理模块、安全守护模块、安全中断管理模块、各类安全设备驱动程序组成;内存管理模块为安全设备与驱动管理模块、安全守护模块、可信应用加载模块、安全中断管理模块、进程调度模块的运行提供底层的内存分配与释放机制,并负责设置普通操作***以及安全操作***各自的物理内存区域,负责操作***之间共享内存块的分配与撤销,通过安全设备与驱动管理模块,加密文件***可以方便的操作各类存储设备,对文件进行读取和写回操作;安全中断管理模块为安全设备与驱动管理模块提供底层的中断响应机制;安全设备与驱动管理模块负责管理各类安全设备;各类安全设备驱动通过安全设备与驱动管理模块完成对安全设备的初始化以及各类请求响应,由于安全操作***运行在内核态,为了满足可信应用和安全操作***的交互需求,***调用模块提供一系列接口函数帮助用户态的可信应用获得安全操作***的功能支持;当可信应用模块需要运行时,由可信应用加载模块进行认证,确保可信应用的完整性、合法性,随后通过认证的可信应用模块将被加载到内存;安全调度器作为所有可信应用的调度器,负责从运行队列中挑选出合适的应用程序占有处理器,获得执行机会;安全守护模块运行在处理器守护态,功能包括:(1)负责安全操作***以及普通操作***之间的上下文切换与恢复;(2)负责普通应用模块与安全应用模块通信数据的安全性检查;(3)和安全设备与驱动管理模块一起负责设备在安全与非安全运行状态切换下,设备上下文切换与恢复,数据切换与恢复;(4)和安全中断管理模块共同管理中断信号,所述中断信号类型包括异步和同步;当中断发生时,负责捕获中断,并根据中断类型、中断策略,决定中断的响应机制。
5.根据权利要求1所述的一种基于处理器安全扩展的智能终端隔离***,其特征在于:所述事务委托模块包括客户端服务接口层、可信应用事务委托接口层及事务委托处理模块;事务委托模块负责为普通应用模块提供安全请求接口,为可信应用提供事务委托接口,并负责安全操作***委托的相关事务的处理,如将加密后的文件回写普通文件***等;普通应用模块通过客户端服务接口层提供的接口发起安全请求,该请求将会被事务委托处理模块捕获,并通过通信代理模块转发给可信应用模块做进一步处理;当可信应用程序需要进行耗时、低安全性操作时,通过调用可信应用事务委托接口层发起事务委托请求,通过通信代理模块转发给事务委托处理模块并由事务委托处理模块进行请求处理。
6.根据权利要求4所述的一种基于处理器安全扩展的智能终端隔离***,其特征在于:所述安全守护模块中的和安全设备与驱动管理模块一起负责设备在安全与非安全运行状态切换下,设备上下文切换与恢复,数据切换与恢复具体实现为:当设备处于安全域运行时,则称为安全设备;当处于非安全域运行时,则称为非安全设备;如果处理器安全扩展模块支持动态改变设备运行状态,即将设备从安全状态转化为非安全状态,或者将设备从非安全状态转化为安全状态,这意味着同一个设备被安全域和非安全域所共享;为了确保设备数据的隔离,安全守护模块将负责设备上下文的切换以及数据的切换与恢复;随后调用安全设备与驱动管理模块转向各类安全设备驱动程序;如果处理器安全扩展模块不支持动态改变设备运行状态,则由安全设备与驱动管理模块初始化时直接设定各类设备是否属于安全域。
7.根据权利要求1所述的一种基于处理器安全扩展的智能终端隔离***,其特征在于:所述安全守护模块和安全中断管理模块共同管理中断信号实现为:在智能终端设备上,异步中断信号可能随时发生,包括处理器正处在安全域,此时发生了一个安全中断信号,或者处理器运行在安全域,此时发生了一个非安全中断信号;为了防止非安全中断信号频繁打断安全域内运行的代码,安全守护模块作为安全域内中断的入口,当中断发生时,负责捕获中断,并根据中断类型、中断策略,决定中断的响应机制;如果该中断是安全中断,则执行权直接交给安全中断管理模块;如果该中断是非安全中断,则判断当前是否允许该中断,如果不允许则直接返回被打断的程序,否则给事务委托模块发送中断相关信息,然后返回。
8.根据权利要求1所述的一种基于处理器安全扩展的智能终端隔离***,其特征在于:所述安全中间件包括密码算法库、安全图形界面库、安全C语言库、事务委托库以及算法构建库;上述各类库共同为可信应用的开发提供底层功能支持,包括密码处理、安全界面,并且运行在用户态,上述各类库的实现则依赖于安全操作***的***调用模块以及安全设备与驱动管理模块提供的基础功能支持;密码算法库为可信应用提供常用的对称、非对称密码算法、摘要算法;所述安全图形界面库为可信应用提供界面构建需要的基本接口;所述安全C语言库则为可信应用的开发提供必要的功能,包括字符串操作、数据拷贝;所述事务委托库提供可信应用模块发起事务委托的必要功能接口;所述算法构建库提供了大数的表示与运算的基本接口,用于可信应用构建自身特殊的密码算法需求。
9.一种基于处理器安全扩展的智能终端隔离方法,其特征在于实现步骤如下;
(1)智能终端上电后运行上电初始化模块,该模块对智能终端硬件环境进行初始化,包括时钟、安全扩展;
(2)上电初始化模块调用认证模块,对安全操作***引导模块进行解密、认证;
(3)通过认证后,上电初始化模块引导、加载安全操作***引导模块;
(4)安全操作***引导模块调用认证模块,对安全操作***进行解密、认证;
(5)通过认证后,安全操作***引导模块引导、加载安全操作***;
(6)安全操作***开始初始化过程,首先初始化内存管理模块,然后初始化安全守护模块,可信应用代理模块,然后初始化安全中断管理模块、加密文件***,随后初始化可信应用加载模块、安全设备与驱动管理模块,并初始化设备驱动程序;
(7)初始化完成后,调用安全守护模块返回普通操作***,进一步完成非安全域的初始化;
(8)事务委托模块、普通应用通信模块将会随着普通操作***的启动而挂载运行起来;
(9)普通应用模块通过调用客户端服务接口层发起安全请求;
(10)事务委托处理模块捕获该请求,并调用普通应用通信模块转发该请求;
(11)可信应用通信模块接受该请求,并转发给安全守护模块;
(12)安全守护模块经过安全检查,将处理器状态进行切换,保存相关数据,利用安全调度器,将其转发给可信应用模块;
(13)可信应用模块通过安全中间件提供的相关功能,处理响应的安全请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410596688.4A CN104318182B (zh) | 2014-10-29 | 2014-10-29 | 一种基于处理器安全扩展的智能终端隔离***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410596688.4A CN104318182B (zh) | 2014-10-29 | 2014-10-29 | 一种基于处理器安全扩展的智能终端隔离***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104318182A true CN104318182A (zh) | 2015-01-28 |
CN104318182B CN104318182B (zh) | 2017-09-12 |
Family
ID=52373413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410596688.4A Expired - Fee Related CN104318182B (zh) | 2014-10-29 | 2014-10-29 | 一种基于处理器安全扩展的智能终端隔离***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104318182B (zh) |
Cited By (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104853346A (zh) * | 2015-02-12 | 2015-08-19 | 数据通信科学技术研究所 | 一种实现移动终端数据流向不可旁路的方法及*** |
CN105224403A (zh) * | 2015-09-17 | 2016-01-06 | 华为技术有限公司 | 一种中断处理方法及装置 |
CN105260663A (zh) * | 2015-09-15 | 2016-01-20 | 中国科学院信息工程研究所 | 一种基于TrustZone技术的安全存储服务***及方法 |
CN105468980A (zh) * | 2015-11-16 | 2016-04-06 | 华为技术有限公司 | 一种安全管控的方法、装置及*** |
CN105488388A (zh) * | 2015-12-22 | 2016-04-13 | 中软信息***工程有限公司 | 一种基于cpu时空隔离机制实现应用软件行为监控***的方法 |
CN105528554A (zh) * | 2015-11-30 | 2016-04-27 | 华为技术有限公司 | 用户界面切换方法和终端 |
CN105825128A (zh) * | 2016-03-15 | 2016-08-03 | 华为技术有限公司 | 一种数据输入方法、装置及用户设备 |
CN106101129A (zh) * | 2016-07-06 | 2016-11-09 | 北京元心科技有限公司 | 一种存储装置和使用其保护数据安全的方法和*** |
CN106127054A (zh) * | 2016-08-22 | 2016-11-16 | 中国科学院信息工程研究所 | 一种面向智能设备控制指令的***级安全防护方法 |
CN106156618A (zh) * | 2015-04-17 | 2016-11-23 | 国民技术股份有限公司 | 一种安全芯片、移动终端和实现移动终端***安全的方法 |
CN106161028A (zh) * | 2015-04-17 | 2016-11-23 | 国民技术股份有限公司 | 安全芯片、移动通讯终端及提高通讯安全的方法 |
CN106372537A (zh) * | 2016-08-31 | 2017-02-01 | 宇龙计算机通信科技(深圳)有限公司 | 一种文档保护方法、装置及终端设备 |
CN106528276A (zh) * | 2015-09-10 | 2017-03-22 | 中国航空工业第六八研究所 | 一种基于任务调度的故障处理方法 |
CN106815494A (zh) * | 2016-12-28 | 2017-06-09 | 中软信息***工程有限公司 | 一种基于cpu时空隔离机制实现应用程序安全认证的方法 |
CN106934303A (zh) * | 2015-12-29 | 2017-07-07 | 大唐高鸿信安(浙江)信息科技有限公司 | 基于可信芯片的可信操作***创建可信进程的***及方法 |
CN107066331A (zh) * | 2016-12-20 | 2017-08-18 | 华为技术有限公司 | 一种基于TrustZone的资源分配方法及设备 |
CN107168747A (zh) * | 2017-05-27 | 2017-09-15 | 努比亚技术有限公司 | 移动终端配置的区分方法、装置及计算机可读存储介质 |
CN107194284A (zh) * | 2017-06-22 | 2017-09-22 | 济南浪潮高新科技投资发展有限公司 | 一种基于TrustZone隔离用户数据的方法及*** |
WO2017167166A1 (zh) * | 2016-04-01 | 2017-10-05 | ***股份有限公司 | 一种tee访问控制方法以及实现该方法的移动终端 |
CN107506667A (zh) * | 2017-09-04 | 2017-12-22 | 济南浪潮高新科技投资发展有限公司 | 一种多任务物理隔离终端以及方法 |
CN108052415A (zh) * | 2017-11-17 | 2018-05-18 | 中国科学院信息工程研究所 | 一种恶意软件检测平台快速恢复方法及*** |
WO2018090201A1 (zh) * | 2016-11-15 | 2018-05-24 | 华为技术有限公司 | 一种安全的处理器芯片及终端设备 |
CN108090376A (zh) * | 2016-11-23 | 2018-05-29 | 厦门雅迅网络股份有限公司 | 基于TrustZone的CAN总线数据防护方法及*** |
CN108491727A (zh) * | 2018-04-08 | 2018-09-04 | 成都三零嘉微电子有限公司 | 一种融合通用计算、可信计算、密码计算的安全处理器 |
CN108549812A (zh) * | 2018-03-12 | 2018-09-18 | 深圳市元征科技股份有限公司 | 基于Trustzone的安全隔离方法、安全隔离装置及车载终端 |
CN108595983A (zh) * | 2018-04-24 | 2018-09-28 | 许昌学院 | 一种基于硬件安全隔离执行环境的硬件架构、及应用上下文完整性度量方法 |
CN108647534A (zh) * | 2018-05-15 | 2018-10-12 | 中国科学院信息工程研究所 | 一种基于双隔离的安全显示***及方法 |
CN108885572A (zh) * | 2016-03-31 | 2018-11-23 | 微软技术许可有限责任公司 | 安全驱动程序平台 |
CN109426523A (zh) * | 2017-08-18 | 2019-03-05 | 厦门雅迅网络股份有限公司 | 双***启动方法及计算机可读存储介质 |
CN109522754A (zh) * | 2018-11-28 | 2019-03-26 | 中国科学院信息工程研究所 | 一种移动终端可信隔离环境核心控制方法 |
WO2019072158A1 (zh) * | 2017-10-13 | 2019-04-18 | 华为技术有限公司 | 安全控制方法及计算机*** |
CN109691075A (zh) * | 2016-09-13 | 2019-04-26 | 华为技术有限公司 | 一种移动终端防盗方法及装置 |
CN106101129B (zh) * | 2016-07-06 | 2019-07-16 | 北京元心科技有限公司 | 一种存储装置和使用其保护数据安全的方法和*** |
CN110362983A (zh) * | 2019-05-31 | 2019-10-22 | 北京中电飞华通信股份有限公司 | 一种保证双域***一致性的方法、装置及电子设备 |
CN110598412A (zh) * | 2018-06-12 | 2019-12-20 | 杨力祥 | 一种将权力信息隔离并依托它进行权力检查的方法及计算装置 |
CN110781528A (zh) * | 2019-09-26 | 2020-02-11 | 深圳金澜汉源科技有限公司 | 协同安全操作***架构、操作***和电子设备 |
CN110958218A (zh) * | 2019-10-16 | 2020-04-03 | 平安国际智慧城市科技股份有限公司 | 基于多网通信的数据传输方法及相关设备 |
CN111177701A (zh) * | 2019-12-11 | 2020-05-19 | 北京握奇智能科技有限公司 | 基于可信执行环境和安全芯片的密码功能服务实现方法和设备 |
CN111338995A (zh) * | 2018-12-19 | 2020-06-26 | 爱思开海力士有限公司 | 数据存储装置及操作数据存储装置的方法 |
CN111737771A (zh) * | 2020-06-17 | 2020-10-02 | 山东大学 | 一种基于安卓Android双***可信运行架构的监管场所警务终端*** |
CN112069506A (zh) * | 2020-09-16 | 2020-12-11 | 地平线(上海)人工智能技术有限公司 | 一种安全启动方法和装置 |
CN112446042A (zh) * | 2020-12-14 | 2021-03-05 | 中国科学院信息工程研究所 | 加密方法和装置、解密方法和装置、移动终端和存储介质 |
CN112511618A (zh) * | 2020-11-25 | 2021-03-16 | 全球能源互联网研究院有限公司 | 边缘物联代理防护方法及电力物联网动态安全可信*** |
CN112929392A (zh) * | 2021-03-19 | 2021-06-08 | 杭州市电力设计院有限公司余杭分公司 | 一种基于tee的电力物联网安全通信模组改进方法 |
CN113486411A (zh) * | 2021-07-19 | 2021-10-08 | 上海擎昆信息科技有限公司 | 一种安全芯片及其设计方法、初始化方法 |
CN113486356A (zh) * | 2021-06-30 | 2021-10-08 | 佛山职业技术学院 | 一种控制中断源的运行方法、装置、终端设备及存储介质 |
WO2021238294A1 (zh) * | 2020-05-27 | 2021-12-02 | 华为技术有限公司 | 数据处理方法及数据处理装置 |
WO2022141128A1 (zh) * | 2020-12-29 | 2022-07-07 | 华为技术有限公司 | 一种安全隔离装置和方法 |
CN115048679A (zh) * | 2022-08-15 | 2022-09-13 | 南方电网数字电网研究院有限公司 | 一种融合片内安全防护功能的多业务分区隔离芯片 |
CN116861445A (zh) * | 2023-09-04 | 2023-10-10 | 湖北芯擎科技有限公司 | 可信执行环境的实现方法、***级芯片及存储介质 |
CN117670348A (zh) * | 2024-01-29 | 2024-03-08 | 深圳市地铁集团有限公司 | 基于嵌入式架构的地铁支付设备终端操作*** |
EP4390739A1 (fr) * | 2022-12-22 | 2024-06-26 | STMicroelectronics (Rousset) SAS | Protection d'un dispositif électronique |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101488174A (zh) * | 2009-01-15 | 2009-07-22 | 北京交通大学 | 动态透明的虚拟可信平台模块的实现方法 |
CN101707653A (zh) * | 2009-11-25 | 2010-05-12 | 北京天碁科技有限公司 | 一种单处理器智能移动终端及其实现方法 |
US20120299814A1 (en) * | 2011-05-27 | 2012-11-29 | Yunmi Kwon | Mobile terminal and mode controlling method therein |
-
2014
- 2014-10-29 CN CN201410596688.4A patent/CN104318182B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101488174A (zh) * | 2009-01-15 | 2009-07-22 | 北京交通大学 | 动态透明的虚拟可信平台模块的实现方法 |
CN101707653A (zh) * | 2009-11-25 | 2010-05-12 | 北京天碁科技有限公司 | 一种单处理器智能移动终端及其实现方法 |
US20120299814A1 (en) * | 2011-05-27 | 2012-11-29 | Yunmi Kwon | Mobile terminal and mode controlling method therein |
Non-Patent Citations (1)
Title |
---|
王熙友: "《ARM+TrustZone安全隔离技术研究与应用》", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (87)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104853346B (zh) * | 2015-02-12 | 2018-10-19 | 数据通信科学技术研究所 | 一种实现移动终端数据流向不可旁路的方法及*** |
CN104853346A (zh) * | 2015-02-12 | 2015-08-19 | 数据通信科学技术研究所 | 一种实现移动终端数据流向不可旁路的方法及*** |
CN106156618A (zh) * | 2015-04-17 | 2016-11-23 | 国民技术股份有限公司 | 一种安全芯片、移动终端和实现移动终端***安全的方法 |
CN106161028A (zh) * | 2015-04-17 | 2016-11-23 | 国民技术股份有限公司 | 安全芯片、移动通讯终端及提高通讯安全的方法 |
CN106528276B (zh) * | 2015-09-10 | 2019-08-02 | 中国航空工业第六一八研究所 | 一种基于任务调度的故障处理方法 |
CN106528276A (zh) * | 2015-09-10 | 2017-03-22 | 中国航空工业第六八研究所 | 一种基于任务调度的故障处理方法 |
CN105260663A (zh) * | 2015-09-15 | 2016-01-20 | 中国科学院信息工程研究所 | 一种基于TrustZone技术的安全存储服务***及方法 |
CN105260663B (zh) * | 2015-09-15 | 2017-12-01 | 中国科学院信息工程研究所 | 一种基于TrustZone技术的安全存储服务***及方法 |
CN105224403B (zh) * | 2015-09-17 | 2018-09-28 | 华为技术有限公司 | 一种中断处理方法及装置 |
CN105224403A (zh) * | 2015-09-17 | 2016-01-06 | 华为技术有限公司 | 一种中断处理方法及装置 |
CN105468980B (zh) * | 2015-11-16 | 2018-07-03 | 华为技术有限公司 | 一种安全管控的方法、装置及*** |
CN105468980A (zh) * | 2015-11-16 | 2016-04-06 | 华为技术有限公司 | 一种安全管控的方法、装置及*** |
US11003745B2 (en) | 2015-11-30 | 2021-05-11 | Huawei Technologies Co., Ltd. | User interface switching method and terminal |
CN105528554A (zh) * | 2015-11-30 | 2016-04-27 | 华为技术有限公司 | 用户界面切换方法和终端 |
CN105528554B (zh) * | 2015-11-30 | 2019-04-05 | 华为技术有限公司 | 用户界面切换方法和终端 |
US11874903B2 (en) | 2015-11-30 | 2024-01-16 | Huawei Technologies Co., Ltd. | User interface switching method and terminal |
CN105488388A (zh) * | 2015-12-22 | 2016-04-13 | 中软信息***工程有限公司 | 一种基于cpu时空隔离机制实现应用软件行为监控***的方法 |
CN106934303A (zh) * | 2015-12-29 | 2017-07-07 | 大唐高鸿信安(浙江)信息科技有限公司 | 基于可信芯片的可信操作***创建可信进程的***及方法 |
CN105825128B (zh) * | 2016-03-15 | 2020-05-19 | 华为技术有限公司 | 一种数据输入方法、装置及用户设备 |
CN105825128A (zh) * | 2016-03-15 | 2016-08-03 | 华为技术有限公司 | 一种数据输入方法、装置及用户设备 |
US10831905B2 (en) | 2016-03-15 | 2020-11-10 | Huawei Technologies Co., Ltd. | Data input method and apparatus and user equipment |
US11574064B2 (en) | 2016-03-15 | 2023-02-07 | Huawei Technologies Co., Ltd. | Data input method and apparatus and user equipment |
CN108885572A (zh) * | 2016-03-31 | 2018-11-23 | 微软技术许可有限责任公司 | 安全驱动程序平台 |
WO2017167166A1 (zh) * | 2016-04-01 | 2017-10-05 | ***股份有限公司 | 一种tee访问控制方法以及实现该方法的移动终端 |
CN106101129B (zh) * | 2016-07-06 | 2019-07-16 | 北京元心科技有限公司 | 一种存储装置和使用其保护数据安全的方法和*** |
CN106101129A (zh) * | 2016-07-06 | 2016-11-09 | 北京元心科技有限公司 | 一种存储装置和使用其保护数据安全的方法和*** |
CN106127054A (zh) * | 2016-08-22 | 2016-11-16 | 中国科学院信息工程研究所 | 一种面向智能设备控制指令的***级安全防护方法 |
CN106127054B (zh) * | 2016-08-22 | 2019-01-29 | 中国科学院信息工程研究所 | 一种面向智能设备控制指令的***级安全防护方法 |
CN106372537A (zh) * | 2016-08-31 | 2017-02-01 | 宇龙计算机通信科技(深圳)有限公司 | 一种文档保护方法、装置及终端设备 |
CN106372537B (zh) * | 2016-08-31 | 2019-08-30 | 宇龙计算机通信科技(深圳)有限公司 | 一种文档保护方法、装置及终端设备 |
CN109691075B (zh) * | 2016-09-13 | 2021-05-07 | 华为技术有限公司 | 一种移动终端防盗方法及装置 |
CN109691075A (zh) * | 2016-09-13 | 2019-04-26 | 华为技术有限公司 | 一种移动终端防盗方法及装置 |
US11126753B2 (en) | 2016-11-15 | 2021-09-21 | Huawei Technologies Co., Ltd. | Secure processor chip and terminal device |
WO2018090201A1 (zh) * | 2016-11-15 | 2018-05-24 | 华为技术有限公司 | 一种安全的处理器芯片及终端设备 |
CN108090376B (zh) * | 2016-11-23 | 2021-01-12 | 厦门雅迅网络股份有限公司 | 基于TrustZone的CAN总线数据防护方法及*** |
CN108090376A (zh) * | 2016-11-23 | 2018-05-29 | 厦门雅迅网络股份有限公司 | 基于TrustZone的CAN总线数据防护方法及*** |
CN107066331B (zh) * | 2016-12-20 | 2021-05-18 | 华为技术有限公司 | 一种基于TrustZone的资源分配方法及设备 |
CN107066331A (zh) * | 2016-12-20 | 2017-08-18 | 华为技术有限公司 | 一种基于TrustZone的资源分配方法及设备 |
CN106815494B (zh) * | 2016-12-28 | 2020-02-07 | 中软信息***工程有限公司 | 一种基于cpu时空隔离机制实现应用程序安全认证的方法 |
CN106815494A (zh) * | 2016-12-28 | 2017-06-09 | 中软信息***工程有限公司 | 一种基于cpu时空隔离机制实现应用程序安全认证的方法 |
CN107168747B (zh) * | 2017-05-27 | 2020-12-29 | 努比亚技术有限公司 | 移动终端配置的区分方法、装置及计算机可读存储介质 |
CN107168747A (zh) * | 2017-05-27 | 2017-09-15 | 努比亚技术有限公司 | 移动终端配置的区分方法、装置及计算机可读存储介质 |
CN107194284A (zh) * | 2017-06-22 | 2017-09-22 | 济南浪潮高新科技投资发展有限公司 | 一种基于TrustZone隔离用户数据的方法及*** |
CN109426523B (zh) * | 2017-08-18 | 2022-12-06 | 厦门雅迅网络股份有限公司 | 基于trustzone技术的双***启动方法及计算机可读存储介质 |
CN109426523A (zh) * | 2017-08-18 | 2019-03-05 | 厦门雅迅网络股份有限公司 | 双***启动方法及计算机可读存储介质 |
CN107506667B (zh) * | 2017-09-04 | 2020-07-14 | 浪潮集团有限公司 | 一种多任务物理隔离终端以及方法 |
CN107506667A (zh) * | 2017-09-04 | 2017-12-22 | 济南浪潮高新科技投资发展有限公司 | 一种多任务物理隔离终端以及方法 |
US11687645B2 (en) | 2017-10-13 | 2023-06-27 | Huawei Technologies Co., Ltd. | Security control method and computer system |
WO2019072158A1 (zh) * | 2017-10-13 | 2019-04-18 | 华为技术有限公司 | 安全控制方法及计算机*** |
CN108052415B (zh) * | 2017-11-17 | 2022-01-04 | 中国科学院信息工程研究所 | 一种恶意软件检测平台快速恢复方法及*** |
CN108052415A (zh) * | 2017-11-17 | 2018-05-18 | 中国科学院信息工程研究所 | 一种恶意软件检测平台快速恢复方法及*** |
CN108549812A (zh) * | 2018-03-12 | 2018-09-18 | 深圳市元征科技股份有限公司 | 基于Trustzone的安全隔离方法、安全隔离装置及车载终端 |
CN108491727A (zh) * | 2018-04-08 | 2018-09-04 | 成都三零嘉微电子有限公司 | 一种融合通用计算、可信计算、密码计算的安全处理器 |
CN108595983A (zh) * | 2018-04-24 | 2018-09-28 | 许昌学院 | 一种基于硬件安全隔离执行环境的硬件架构、及应用上下文完整性度量方法 |
CN108647534B (zh) * | 2018-05-15 | 2020-08-18 | 中国科学院信息工程研究所 | 一种基于双隔离的安全显示***及方法 |
CN108647534A (zh) * | 2018-05-15 | 2018-10-12 | 中国科学院信息工程研究所 | 一种基于双隔离的安全显示***及方法 |
CN110598412A (zh) * | 2018-06-12 | 2019-12-20 | 杨力祥 | 一种将权力信息隔离并依托它进行权力检查的方法及计算装置 |
CN109522754B (zh) * | 2018-11-28 | 2021-11-19 | 中国科学院信息工程研究所 | 一种移动终端可信隔离环境核心控制方法 |
CN109522754A (zh) * | 2018-11-28 | 2019-03-26 | 中国科学院信息工程研究所 | 一种移动终端可信隔离环境核心控制方法 |
CN111338995B (zh) * | 2018-12-19 | 2023-08-18 | 爱思开海力士有限公司 | 数据存储装置及操作数据存储装置的方法 |
CN111338995A (zh) * | 2018-12-19 | 2020-06-26 | 爱思开海力士有限公司 | 数据存储装置及操作数据存储装置的方法 |
CN110362983A (zh) * | 2019-05-31 | 2019-10-22 | 北京中电飞华通信股份有限公司 | 一种保证双域***一致性的方法、装置及电子设备 |
CN110781528A (zh) * | 2019-09-26 | 2020-02-11 | 深圳金澜汉源科技有限公司 | 协同安全操作***架构、操作***和电子设备 |
CN110958218A (zh) * | 2019-10-16 | 2020-04-03 | 平安国际智慧城市科技股份有限公司 | 基于多网通信的数据传输方法及相关设备 |
CN111177701B (zh) * | 2019-12-11 | 2022-09-13 | 北京握奇智能科技有限公司 | 基于可信执行环境和安全芯片的密码功能服务实现方法和设备 |
CN111177701A (zh) * | 2019-12-11 | 2020-05-19 | 北京握奇智能科技有限公司 | 基于可信执行环境和安全芯片的密码功能服务实现方法和设备 |
WO2021238294A1 (zh) * | 2020-05-27 | 2021-12-02 | 华为技术有限公司 | 数据处理方法及数据处理装置 |
CN111737771A (zh) * | 2020-06-17 | 2020-10-02 | 山东大学 | 一种基于安卓Android双***可信运行架构的监管场所警务终端*** |
CN112069506B (zh) * | 2020-09-16 | 2024-02-23 | 地平线(上海)人工智能技术有限公司 | 一种安全启动方法和装置 |
CN112069506A (zh) * | 2020-09-16 | 2020-12-11 | 地平线(上海)人工智能技术有限公司 | 一种安全启动方法和装置 |
CN112511618A (zh) * | 2020-11-25 | 2021-03-16 | 全球能源互联网研究院有限公司 | 边缘物联代理防护方法及电力物联网动态安全可信*** |
CN112511618B (zh) * | 2020-11-25 | 2023-03-24 | 全球能源互联网研究院有限公司 | 边缘物联代理防护方法及电力物联网动态安全可信*** |
CN112446042A (zh) * | 2020-12-14 | 2021-03-05 | 中国科学院信息工程研究所 | 加密方法和装置、解密方法和装置、移动终端和存储介质 |
WO2022141128A1 (zh) * | 2020-12-29 | 2022-07-07 | 华为技术有限公司 | 一种安全隔离装置和方法 |
CN112929392A (zh) * | 2021-03-19 | 2021-06-08 | 杭州市电力设计院有限公司余杭分公司 | 一种基于tee的电力物联网安全通信模组改进方法 |
CN113486356A (zh) * | 2021-06-30 | 2021-10-08 | 佛山职业技术学院 | 一种控制中断源的运行方法、装置、终端设备及存储介质 |
CN113486356B (zh) * | 2021-06-30 | 2024-05-07 | 佛山职业技术学院 | 一种控制中断源的运行方法、装置、终端设备及存储介质 |
CN113486411A (zh) * | 2021-07-19 | 2021-10-08 | 上海擎昆信息科技有限公司 | 一种安全芯片及其设计方法、初始化方法 |
CN113486411B (zh) * | 2021-07-19 | 2024-05-14 | 上海擎昆信息科技有限公司 | 一种安全芯片及其设计方法、初始化方法 |
CN115048679B (zh) * | 2022-08-15 | 2022-12-27 | 南方电网数字电网研究院有限公司 | 一种融合片内安全防护功能的多业务分区隔离芯片 |
CN115048679A (zh) * | 2022-08-15 | 2022-09-13 | 南方电网数字电网研究院有限公司 | 一种融合片内安全防护功能的多业务分区隔离芯片 |
EP4390739A1 (fr) * | 2022-12-22 | 2024-06-26 | STMicroelectronics (Rousset) SAS | Protection d'un dispositif électronique |
FR3144338A1 (fr) * | 2022-12-22 | 2024-06-28 | Stmicroelectronics (Rousset) Sas | Protection d'un dispositif électronique |
CN116861445A (zh) * | 2023-09-04 | 2023-10-10 | 湖北芯擎科技有限公司 | 可信执行环境的实现方法、***级芯片及存储介质 |
CN116861445B (zh) * | 2023-09-04 | 2023-12-15 | 湖北芯擎科技有限公司 | 可信执行环境的实现方法、***级芯片及存储介质 |
CN117670348A (zh) * | 2024-01-29 | 2024-03-08 | 深圳市地铁集团有限公司 | 基于嵌入式架构的地铁支付设备终端操作*** |
CN117670348B (zh) * | 2024-01-29 | 2024-05-07 | 深圳市地铁集团有限公司 | 基于嵌入式架构的地铁支付设备终端操作*** |
Also Published As
Publication number | Publication date |
---|---|
CN104318182B (zh) | 2017-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104318182B (zh) | 一种基于处理器安全扩展的智能终端隔离***及方法 | |
Tiburski et al. | Lightweight security architecture based on embedded virtualization and trust mechanisms for IoT edge devices | |
US11416415B2 (en) | Technologies for secure device configuration and management | |
CN109086100B (zh) | 一种高安全可信移动终端安全体系架构及安全服务方法 | |
CN106605233B (zh) | 使用处理器提供可信执行环境 | |
EP3235161B1 (en) | Using trusted execution environments for security of code and data | |
US8856512B2 (en) | Method and system for enterprise network single-sign-on by a manageability engine | |
Vasudevan et al. | Trustworthy execution on mobile devices: What security properties can my mobile platform give me? | |
US8935746B2 (en) | System with a trusted execution environment component executed on a secure element | |
CN110414235B (zh) | 一种基于ARM TrustZone的主动免疫的双体系结构*** | |
EP2577449B1 (en) | Method and apparatus for trusted execution in infrastructure as a service cloud environments | |
US8220029B2 (en) | Method and system for enforcing trusted computing policies in a hypervisor security module architecture | |
Cho et al. | {Hardware-Assisted}{On-Demand} Hypervisor Activation for Efficient Security Critical Code Execution on Mobile Devices | |
US8874931B2 (en) | System and method for securing a user interface | |
CN104102876A (zh) | 保障客户端运行安全的装置 | |
Bouazzouni et al. | Trusted mobile computing: An overview of existing solutions | |
EP3961446B1 (en) | Method and apparatus for securely entering trusted execution environment in hyper-threading scenario | |
CN113139175A (zh) | 处理单元、电子设备以及安全控制方法 | |
CN114402295A (zh) | 安全运行时***和方法 | |
CN112182560B (zh) | 针对Intel SGX内部高效的隔离方法、***及介质 | |
Yang et al. | Trust-E: A trusted embedded operating system based on the ARM trustzone | |
CN117171733A (zh) | 数据使用方法、装置、电子设备及存储介质 | |
Park et al. | CAFE: A virtualization-based approach to protecting sensitive cloud application logic confidentiality | |
US10938857B2 (en) | Management of a distributed universally secure execution environment | |
Yan et al. | SplitDroid: isolated execution of sensitive components for mobile applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170912 Termination date: 20191029 |
|
CF01 | Termination of patent right due to non-payment of annual fee |