安全存储方法及设备的制造方法

文档序号:9687255阅读:201来源:国知局
安全存储方法及设备的制造方法
【专利说明】
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种安全存储方法及设备。
【【背景技术】】
[0002]由于安卓(android)操作系统的开放性,目前市场上大部分手机都采用安卓操作系统。安卓操作系统作为一个完整的应用程序模块,数据存储是必不可少的。在安卓操作系统中,所有应用程序模块的数据都是私有的,理论上任何其他应用程序模块无法访问、也不被允许访问。
[0003]但是,由于黑客经常通过应用程序模块、短信和网络浏览器等多种途径对手机进行攻击,因此一些私有数据,例如应用的配置信息、交易涉及的秘钥等有可能被未授权的应用读取,给用户带来不必要的麻烦。也就是说,目前使用安卓操作系统的手机在数据存储的安全性上较低。

【发明内容】

[0004]本发明的多个方面提供一种安全存储方法及设备,用以提高数据存储的安全性。
[0005]本发明的一方面,提供一种安全存储方法,适用于终端设备,所述终端设备支持富有执行环境REE和可信执行环境TEE,所述方法包括:
[0006]位于所述REE中的第一应用程序模块将待存储的第一数据发送给位于所述REE中的控制管理模块;
[0007]所述控制管理模块通过所述REE与所述TEE之间的数据通道,将所述第一数据发送给位于所述TEE中的可信应用模块;
[0008]所述可信应用模块将所述第一数据存储到所述TEE使用的文件系统中。
[0009]本发明的另一方面,提供一种终端设备,所述终端设备支持富有执行环境REE和可信执行环境TEE,所述终端设备包括:位于所述REE中的第一应用程序模块和控制管理模块,以及位于所述TEE中的可信应用模块;
[0010]所述第一应用程序模块,用于将待存储的第一数据发送给所述控制管理模块;
[0011]所述控制管理模块,用于通过所述REE与所述TEE之间的数据通道,将所述第一数据发送给所述可信应用模块;
[0012]所述可信应用模块,用于将所述第一数据存储到所述TEE使用的文件系统中。
[0013]本发明利用终端设备支持REE和TEE的特性,通过对REE和TEE进行开发,使得REE中的应用程序模块可以通过REE中的管理控制模块将REE中产生的数据传输给TEE中的可信应用模块,进而达到将REE中产生的数据存储到TEE使用的文件系统中的目的,利用TEE的可信性,提高了数据的安全性。
【【附图说明】】
[0014]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0015]图1为本发明一实施例提供的安全存储方法的流程示意图;
[0016]图2为本发明另一实施例提供的安全存储方法的流程示意图;
[0017]图3为本发明一实施例提供的数据提取方法的流程示意图;
[0018]图4为本发明一实施例提供一种更新TEE中白名单的方法的流程示意图;
[0019]图5为本发明一实施例提供的终端设备的结构示意图;
[0020]图6为本发明另一实施例提供的终端设备的结构示意图。
【【具体实施方式】】
[0021]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0022]图1为本发明一实施例提供的安全存储方法的流程示意图。本实施例提供的安全存储方法适用于终端设备,该终端设备支持富有执行环境(Rich Execut1n Environment,REE)和可信执行环境(Trusted Execut1n Environment,TEE)。其中,终端设备至少包括:位于REE中的第一应用程序模块和控制管理模块,以及位于TEE中的可信应用模块。如图1所示,该方法包括:
[0023]101、位于REE中的第一应用程序模块将待存储的第一数据发送给位于REE中的控制管理模块。
[0024]102、控制管理模块通过REE与TEE之间的数据通道,将第一数据发送给位于TEE中的可信应用模块。
[0025]103、可信应用模块将第一数据存储到TEE使用的文件系统中。
[0026]在一可选实施方式中,如图2所示,在步骤103之后,还包括:
[0027]104、可信应用模块通过REE与TEE之间的数据通道,将存储结果发送给控制管理模块。
[0028]105、控制管理模块将存储结果发送给第一应用程序模块。
[0029]第一应用程序模块可以是用于执行第三方应用的模块。例如,第三方应用需要存储第一数据。这里的第一数据可以是任何需要进行安全存储的数据,为便于描述和区分在前面冠以“第一”的字样。
[0030]举例说明,在支付场景下,第一应用程序模块可以是支付宝钱包或第三方安卓安装包(androidpackage,apk),在发生支付行为时会涉及用户密码、信用卡信息、电子银行凭证、网络账户等,这些数据对安全性要求较高,因此可以作为本实施例中的第一数据。又例如,在加密场景下,第一应用程序模块可以是加密模块,在发生加密行为时会涉及安全密钥等数据对安全性要求也较高,不希望被流氓软件等获取,因此也可以作为本实施例中的第一数据。又例如,在通信场景下,一些通话内容或短消息等可能涉及商业机密、个人隐私等,在有存储需求时这些数据对安全性的要求也较高,第一应用程序模块在对这些通话内容或短消息进行存储处理时需要考虑到这些数据对安全性的要求,可以将这些通话内容或短消息等作为本实施例的第一数据,以便将其存储到TEE中。
[0031]适用于本实施例方法的终端设备可以是手机、ipad等。本实施例中的REE可以基于安卓操作系统或塞班操作系统等实现。相应的,本实施例中的TEE可以基于安全操作系统(SecOS)实现。举例说明:本实施例提供的终端设备可以利用因特尔可信任执行技术(intel TXT)或AMD的安全虚拟机(Secure Virtual Machine, SVM)实现TEE,即基于处理器(Central Processing Unit, CPU)的特殊指令,提供动态信任根(DRTM)服务,为敏感或重要数据提供可信执行环境。又例如,本实施例提供的终端设备可以利用ARM TrustZone或TIM-Shield机制直接在CPU硬件上提供的安全区域/非安全区域隔离机制,为敏感或重要数据提供可信执行环境。再例如,本实施例提供的终端设备可以利用hypervisor/VMM虚拟化机制,提供安全应用/非安全应用之间的隔离,从而为安全应用或数据提供可信执行环境。
[0032]值得说明的是,三星、华为等产品也有使用TEE,但都仅仅实现了数据的存储,没有涉及数据的读取操作,因此这些产品只在TEE内部进行处理,并不涉及与REE之间的交互,所以在实现上和操作流程上均与本实施例不同。
[0033]上述TEE使用的文件系统可以位于TEE中且由TEE独享的整个文件系统。或者,上述TEE使用的文件系统可以是TEE和REE共享的文件系统中,对REE做了安全保护和隔离的那部分。由上述可见,TEE使用的文件系统相对REE来说是相互隔离的,安全性较高。
[0034]当位于REE中的第一应用程序模块需要存储第一数据时,可以将第一数据发送给位于REE中的控制管理模块。REE和TEE之间存在数据通道,控制管理模块可以使用REE和TEE之间的数据通道。控制管理模块接收到第一数据之后,通过REE和TEE之间的数据通道,将第一数据发送给位于TEE中的可信应用模块,进
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1