CN105447406A - 一种用于访问存储空间的方法与装置 - Google Patents
一种用于访问存储空间的方法与装置 Download PDFInfo
- Publication number
- CN105447406A CN105447406A CN201510760585.1A CN201510760585A CN105447406A CN 105447406 A CN105447406 A CN 105447406A CN 201510760585 A CN201510760585 A CN 201510760585A CN 105447406 A CN105447406 A CN 105447406A
- Authority
- CN
- China
- Prior art keywords
- secure
- storage space
- environment
- access
- security
- 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
- 238000000034 method Methods 0.000 title claims abstract description 80
- 230000007717 exclusion Effects 0.000 claims description 26
- 238000012795 verification Methods 0.000 claims description 17
- 238000005192 partition Methods 0.000 description 52
- 230000006870 function Effects 0.000 description 10
- 238000013500 data storage Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000013475 authorization Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000013175 transesophageal echocardiography Methods 0.000 description 1
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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- 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/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Virology (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种用于访问存储空间的方法和装置,能够提高终端中隐私数据存储的安全性。该方法应用于配置有存储空间的终端中,该终端的操作系统的运行环境包括安全环境和非安全环境,该方法包括:根据存储空间中预存的指示信息,确定该存储空间为安全存储空间,该指示信息用于指示该存储空间的安全属性;禁止在该非安全环境的设备注册表中注册该安全存储空间;根据运行在该安全环境中的可信应用TA发送的访问请求,访问该安全存储空间。该装置包括确定模块、注册模块和访问模块,该确定模块、该注册模块和该访问模块用于执行上述方法。
Description
技术领域
本发明实施例涉及通信领域,并且更具体地,涉及一种用于访问存储空间的方法与装置。
背景技术
随着手机、平板电脑等移动终端的发展,例如指纹、支付宝等隐私数据的存储已经成为人们关心的重要问题。在移动终端中,用于存储安全信息的存储区都被暴露在移动终端的设备表里,因此,对该存储区的访问都是在不安全的运行环境中进行的,访问过程中所使用的密钥以及访问的隐私数据很容易被攻击者窃取或破坏,造成用户隐私数据的泄露,从而给用户带来极大的损失。
因此,在当前的移动终端中,存储空间的安全性亟待提高。
发明内容
本发明实施例提供了一种用于访问存储空间的方法和装置,能够提高终端中隐私数据存储的安全性。
第一方面,提供了一种用于访问存储空间的方法,该方法应用于配置有存储空间的终端中,该终端的操作系统的运行环境包括安全环境和非安全环境,该方法包括:根据该存储空间中预存的指示信息,确定该存储空间为安全存储空间,该指示信息用于指示该存储空间的安全属性;禁止在该非安全环境的设备注册表中注册该安全存储空间;根据运行在该安全环境中的可信应用TA发送的访问请求,访问该安全存储空间。
结合第一方面,在第一方面的第一种可能的实现方式中,根据运行在该安全环境中的TA发送的访问请求,从该安全环境中获取密钥参数;根据该密钥参数,在该安全环境中生成访问密钥;根据该访问密钥,在该安全环境中调用安全服务程序对该TA进行权限校验,以确定该TA是否具有访问该安全存储空间的权限;当确定该TA具有访问该安全存储空间的权限时,根据该访问请求,在该安全环境中调用该安全服务程序访问该安全存储空间。因此,通过安全服务程序在安全环境中获取访问密钥,并在安全环境中进行权限校验,将该访问密钥被泄露的可能性降到最低,从而进一步提高了该安全存储空间中隐私数据存储的安全性。
结合第一方面及其上述实现方式,在第一方面的第二种可能的实现方式中,该方法还包括:禁止在该非安全环境的系统目录下注册该安全存储空间的设备信息,该设备信息包括存储量信息或存储块数量信息。因此,使得该安全存储空间的设备信息在该非安全环境中无法被获取,从而进一步减小了安全存储空间被攻击者发现从而进行破坏的可能性,提高了该安全存储空间中隐私数据存储的安全性。
结合第一方面及其上述实现方式,在第一方面的第三种可能的实现方式中,该终端配置有存储芯片,该存储芯片包括该安全存储空间和注册在该非安全环境中的非安全存储空间,该非安全存储空间由非安全访问驱动程序在该非安全环境中访问,该方法还包括:为该非安全访问驱动程序分配第一互斥锁,该第一互斥锁用于在该非安全访问驱动程序访问该非安全存储空间时,拒绝该安全服务程序访问该安全存储空间;为该安全服务程序分配第二互斥锁,该第二互斥锁用于在该安全服务程序访问该安全存储空间时,拒绝该非安全访问驱动程序访问该非安全存储空间。
结合第一方面及其上述实现方式,在第一方面的第四种可能的实现方式中,安全环境包括可信执行环境或高级精简指令集机器可信固件,该非安全环境包括富执行环境。
第二方面,提供了一种用于访问存储空间的装置,该装置配置有存储空间,该装置的操作系统的运行环境包括安全环境和非安全环境,该装置包括:确定模块、注册模块和访问模块,该确定模块、该注册模块和该访问模块分别用于执行上述第一方面中的方法。
第三方面,提供了一种用于访问存储空间的设备,该设备配置有存储空间,该设备的操作系统的运行环境包括安全环境和非安全环境,该设备包括:接收器、处理器、发送器、存储器和总线系统。其中,该接收器、该处理器、该发送器和该存储器通过该总线系统相连,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制该接收器接收信号,并控制该发送器发送信号。该控制器具体用于执行第一方面中的方法。
本发明实施例的用于访问存储空间的方法和装置,根据该存储空间中预存的指示信息,确定该存储空间是否为安全存储空间,并禁止在非安全环境中注册安全存储空间,以使该安全存储空间在非安全环境中无法被访问,进而根据运行在安全环境中的可信应用发送的访问请求,在该安全环境中访问该安全存储空间,从而避免了攻击者在非安全环境中通过恶意软件访问该安全存储空间,而造成隐私数据的泄露或破坏,提高了终端中隐私数据存储的安全性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是适用于本发明实施例的一种用于访问存储空间的方法的场景示意图。
图2是根据本发明实施例的一种用于访问存储空间的方法的示意图。
图3是根据本发明实施例的一种用于访问存储空间的方法的另一示意性流程图。
图4是根据本发明实施例的一种用于访问存储空间的装置的示意性框图。
图5是根据本发明实施例的一种用于访问存储空间的设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应理解,在本发明实施例中,终端也可称之为用户设备(UserEquipment,简称为“UE”)、移动台(MobileStation,简称为“MS”)或移动终端(MobileTerminal)等,该终端可以经无线接入网(RadioAccessNetwork,简称为“RAN”)与一个或多个核心网进行通信,例如,终端可以是移动电话(或称为“蜂窝”电话、手机)或具有移动终端的计算机等,例如,终端还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语音和/或数据。
为了便于理解,下面结合图1,简单介绍适用于本发明实施例的用于访问存储空间的方法的应用场景。如图1所示,该终端10为支持高级精简指令集机器(AdvancedReducedInstructionSetComputerMachines,简称“ARM”)提供的可信区域(TrustZone)安全扩展技术的终端,该终端10中系统的运行环境包括可信执行环境(TrustedExecutionEnvironment,简称“TEE”)11和富执行环境(RichExecutionEnvironment,简称“REE”)12,该安全存储空间13可以暴露在该TEE11中或该REE12中,或者可以同时暴露在该TEE11和该REE12中。
需要说明的是,TrustZone技术通过对终端中的中央处理器(CentralProcessingUnit,简称“CPU”)和内存子系统的硬件设计升级,引入安全环境。安全环境与非安全环境硬件隔离,通过监控模式实现二者之间的通信。安全区域可以包含安全内存、加密块、键盘和屏幕灯外设免遭软件攻击。
在本发明实施例中,TEE为安全环境的一例,REE为非安全环境的一例。其中,TEE还可以称为“安全世界”或者安全操作系统(OperationSystem,简称“OS”),例如运行应用的环境等。对应地,REE可以称为“正常世界”或者非安全OS。TEE和REE为同时运行在同一个处理器上的两个运行环境。其中,REE内的信息或数据可能会受到攻击者的窃取或破坏,即REE内的信息和数据的安全性不高;相比于REE,TEE是一个可以独立的安全的运行环境,它在系统的后台运行,不会被普通用户看到,因此可以保护处于TEE中的资源不受到恶意软件的攻击,抵御多种类型的安全威胁。因此,TEE可以有效地保证信息和数据的安全性,TEE中的信息或数据将无法被攻击者获取或者篡改,此外,终端的硬件以及软件一同保证了TEE的安全。
应理解,以上列举的ARMTrustZone技术的终端、REE和TEE均为示例性说明,不应对本发明构成任何限定,本发明也不应限于此。所有具有安全环境和非安全环境这两种运行环境的操作系统的终端均适用于本发明的技术方案,所有利用本发明的用于访问存储空间的方法以提高安全存储空间的安全性的技术方案均落入本发明的保护范围内。
在本发明实施例中,该安全存储空间13用于存储系统中关键、敏感的数据,或者说,用户的隐私数据,例如,用户指纹、支付宝支付密码、微信支付密码、身份证号等信息。具体地,该安全存储空间13可以为一个独立的存储设备,也可以为存储设备中的一个存储空间,或者说,存储分区,例如,存储设备14包括该安全存储空间13和非安全存储空间15,且该安全存储空间13与非安全存储空间15可以相互独立。
作为示例而非限定,该安全存储空间13可以为回放保护存储块(ReplayProtectedMemoryBlock,简称“RPMB”),或者说,RPMB分区,该非安全存储空间15可以为用户(User)分区,该RPMB分区和User分区分别为嵌入式多媒体卡(EmbeddedMultiMediaCard,简称“EMMC”)中的两个相互独立的分区。
应理解,以上列举的EMMC芯片、RPMB分区、User分区仅为示例性说明,不应对比本发明构成任何限定,本发明也不应限于此,适用于本发明实施例的所有可配置于具有安全与非安全运行环境的终端中的存储空间均落入本发明的保护范围内。
还应理解,图1所示的场景是为了便于本领域的技术人员更好地理解本发明实施例,而不应对本发明构成任何限定,本发明也不应限于此。本领域的技术人员根据所给出的图1的例子,显然可以进行各种等价的修改或变化,这样的修改或变化也落入本发明实施例的范围内。
以下,为了便于理解,以REE和TEE两种运行环境和RPMB为例,结合图2至图4,详细说明根据本发明实施例的用于访问存储空间的方法。
图2示出了根据本发明实施例的用于访问存储空间的方法200的示意性流程图。该方法200可以由终端执行,如图2所示,该方法200包括:
S210,根据该存储空间中预存的指示信息,确定该存储空间为安全存储空间,该指示信息用于指示该存储空间的安全属性;
S220,禁止在非安全环境的设备注册表中注册该安全存储空间;
S230,根据运行在该安全环境中的可信应用TA发送的访问请求,访问该安全存储空间。
在本发明实施例中,该存储空间为配置在终端中的存储空间,该终端可以为图1中所示的终端10,该存储空间可以为图1中所示的安全存储空间13,该非安全环境可以为图1中所示的REE12。
在S210中,该终端可以根据预存在该存储空间中的指示信息,获取该存储空间的安全属性。具体地,由于该存储空间可以为一个独立的存储设备,或者为一个存储设备中的一个分区,在该存储设备的寄存器中,预存有该存储设备出厂时的设备信息,该设备信息包括该存储设备(包括该存车设备中的每个分区)的名称、容量、安全属性等信息。
在本发明实施例中,该指示信息可以承载在预存在该寄存器中的设备信息中。举例来说,该指示信息可以承载在某个预设的比特位上或某个预设的字段中,该指示信息可以用于指示该存储空间的安全属性。
例如,当该预设的比特位为“0”时,指示该存储空间为非安全属性;当该预设的比特位为“1”或者非“0”时,指示该存储空间为安全属性。
或者,可以通过该预设的字段所表示的安全存储的存储量大小来指示该存储空间的安全属性。例如,当该预设的比特位为“0”时,指示该存储空间的安全存储量为0,即,该存储空间具有非安全属性;当该预设的字段为非“0”时,指示该存储空间具有安全存储量,即,该存储空间具体安全属性。例如,当该预设的字段为“01”时,该安全存储空间为1024M。
又或者,该存储空间可以分成多个分区,例如,两个。该指示信息可以承载在该设备信息中的某个预设的字节中,例如,预设该字节中的第一个比特位或者字段用于指示第一分区的安全属性,第二个比特位或者字段用于指示第二分区的安全属性,以此类推,每个比特位或者字段用于指示一个存储分区的安全属性。因此,该终端可以根据该指示信息,确定该存储空间或者存储空间中的某个分区是否为安全存储空间。
在S220中,该终端确定该存储空间为安全存储空间后,禁止在非安全环境的设备注册表中注册该安全存储空间,以使该安全存储空间在该非安全环境中无法被访问。也就是说,普通用户无法在终端中看到或检测到该安全存储空间,换句话说,由于该安全存储空间的不可见性,避免了该安全存储空间被攻击者访问的危险。或者,也可以理解为将该存储空间注册在安全环境中,以使普通用户在系统运行的环境中无法看到该安全存储空间。
以Linux内核初始化阶段对RPMB(即,安全存储空间的一例)的注册为例,在Linux内核初始化阶段,会将该终端的硬件设备注册在设备注册表中,以方便用户查找和使用。例如,硬件设备可以保存在该REE中的设备注册表中,也就是说,设备被注册后,都会被暴露在REE中,因此很容易被查找和发现,同时也增加了隐私数据泄露的风险。
在本发明实施例中,在Linux内核初始化阶段,首先确定该RPMB是否为安全存储空间,当确定该RPMB为安全存储空间时,禁止在该终端的设备注册表中注册该RPMB,例如,在/dev/block/目录下不注册该RPMB分区(即,在/dev/block/看不到mmcblk0rpmb节点),以使得该RPMB在REE中无法被访问。
应理解,以上列举的Linux内核初始化对RPMB的注册过程仅为示例性说明,不应对本发明构成任何限定,本发明也不应限于此。
S230中,终端可以根据运行在该安全环境(例如,TEE)中的可信应用(TrustedApplication,简称“TA”)发送的访问请求,在该安全环境中对该安全存储空间(例如,RPMB)进行访问操作。其中,该访问请求可以是运行在该TEE(即,安全环境的一例)中的可信应用发送的访问请求,也可以是运行在非安全环境(例如,REE)中的客户应用(ClientApplication,简称“CA”)发起的访问请求,当该请求需要访问到存储在RPMB中的隐私数据时,该CA切换到TA,在TEE中发起对该RPMB(即,安全存储空间的一例)的访问请求。该终端可以在TEE中调用安全服务程序(例如,RPMB服务)直接访问该安全存储空间。
应理解,以上列举的TA、CA、RPMB服务以及安全服务程序仅为示例性说明,不应对本发明构成任何限定,本发明也不应限于此。其他应用于安全环境和非安全环境的应用程序,以及用于访问安全存储空间的驱动程序均落入本发明的保护范围内。
因此,本发明实施例的方法,根据该存储空间中预存的指示信息,确定该存储空区是否为安全存储空间,并禁止在非安全环境中注册安全存储空间,以使该安全存储空间在非安全环境中无法被访问,进而根据运行在安全环境中的可信应用TA发送的访问请求,在该安全环境中访问该安全存储空间,从而避免了攻击者在非安全环境中通过恶意软件访问该安全存储空间,而造成隐私数据的泄露或破坏,提高了隐私数据存储的安全性。
可选地,根据运行在该安全环境中的可信应用TA发送的访问请求,访问该安全存储空间,包括:
根据运行在该安全环境中的TA发送的访问请求,在该安全环境中调用安全服务程序访问该安全存储空间。
具体而言,当用户需要访问该安全存储空间时,需要通过运行在该安全环境中的应用程序(例如,TA)来发送访问请求,该访问请求用于请求调用安全服务程序访问该安全存储空间(例如,RPMB)。该访问请求中可以携带该TA请求访问的数据的数据信息,例如,当该TA请求读取该RPMB(即,安全存储空间的一例)中的隐私数据时,则该访问请求中可以携带该TA请求读取的文件名或者数据的类型、应用程序等信息;当该TA请求向该RPMB写入数据时,则该访问请求中可以携带该TA请求写入的数据。
其中,该TA可以为支付宝、微信支付等,这些应用程序在终端运行时,需要使用一些用户的隐私数据(例如,支付密码或者指纹等)。应理解,作为运行在TEE中的应用程序,TA仅为示例性说明,也可以称为安全应用程序等,本发明并未特别限定。还应理解,以上列举的TA的具体内容仅为示例性说明,不应对本发明构成任何限定,本发明也不应限于此,例如该TA还可以包括网银U盾等。
该安全服务程序根据该访问请求,对请求访问的数据作加解密处理,以便于该安全服务程序向该安全存储空间写入数据或者读取数据。
还需要说明的是,该安全服务程序可以理解为安全环境中用于提供对外接口的程序或者软件,该安全服务程序可以包含有安全访问驱动程序(例如,RPMB驱动),该安全访问驱动程序用于对存储空间进行访问。也就是说,当该安全服务程序接收到TA的访问请求时,可以调用该安全访问驱动程序在该安全环境中访问该安全存储空间。应理解,安全服务程序和安全访问驱动程序,作为实现具体功能的模块,可以为一个具有上述两种功能(权限校验和访问驱动)的模块,也可以为两个独立的功能模块,仅为示例性说明,不应对本发明构成任何限定。还应理解,该安全服务程序的功能不仅限于权限校验和访问驱动,所有用于提供对外接口的功能都可以通过安全服务程序来实现,本发明对此并未特别限定。
在本发明实施例中,可以通过TA请求调用该安全服务程序(或者安全访问驱动程序)来访问该安全存储空间,由于该TA是一个运行在TEE中的应用程序,也就是说,该TA在TEE中访问该安全存储空间时,其访问的隐私数据(包括读取的和写入的隐私数据)都不会被攻击者所窃取或破坏,访问过程中的所有信息都被存放在TEE中的寄存器中,或者在TEE中被丢弃,因此也不会被攻击者看到或者获取到。
与此相对,非安全存储空间(例如,图1中所示的非安全存储空间15)可以被任何程序访问,例如,可以通过客户应用(ClientApplication,简称“CA”)来访问。例如,该CA可以为地图、天气、浏览器等应用程序,用户在通过CA访问移动终端时,其访问的数据都暴露在REE中,REE对数据没有保护作用,即便CA在访问该非安全存储空间15时需要使用密码验证等安全的方式,但是第三方恶意程序可以通过dump内存的方式,获取到密码或者隐私数据,造成隐私数据被泄露或者篡改的风险,安全性较低。
举例来说,当用户需要通过支付宝付费时,首先打开支付宝应用程序,该支付宝应用程序在被访问的时候仍然是一个CA,当需要通过输入支付密码或者校验指纹付款时,即需要访问隐私数据时,该支付宝应用程序会在系统的后台自动切换到TA,从而切换到TEE中去运行,完成对该安全存储空间中预存的支付密码或者指纹的读取和比较,当用户输入的支付密码或指纹与该安全存储空间中预存的支付密码或指纹一致时,则完成支付,该支付宝应用程序又会从TA自动切换到CA,也就是从REE环境切换到REE环境中。在此过程中,用户能看到的界面只是运行在REE中的界面,而在后台运行的TEE是无法看到的,因此,读取隐私数据的过程也是不可见的,或者说,该隐私数据是无法被获知的。
需要说明的是,支付宝应用程序中的部分应用是通过CA来执行的,而涉及访问隐私数据的程序是通过TA来执行的,该CA与TA之间可以通过该应用程序中预先编写的代码实现自动切换,本发明对此并未特别限定。
因此,本发明实施例的方法,通过可信应用在安全环境中调用安全服务程序来访问安全存储空间,从而避免了访问过程中隐私数据的泄露,也避免了攻击者的恶意侵入可能造成的对隐私数据的破坏或篡改,提高了隐私数据存储的安全性。
可选地,根据运行在该安全环境中的TA发送的访问请求,访问该安全存储空间,包括:
根据运行在该安全环境中的TA发送的访问请求,从该安全环境中获取密钥参数;
根据该密钥参数,在该安全环境中生成访问密钥;
根据该访问密钥,在该安全环境中调用安全服务程序对该TA进行权限校验,以确定该TA是否具有访问该安全存储空间的权限;
当确定该TA具有访问该安全存储空间的权限时,根据该访问请求,在该安全环境中调用该安全服务程序访问该安全存储空间。
具体而言,在该安全服务程序接收到该TA的访问请求时,可以先对该TA进行权限校验,以确定该TA是否具有访问给安全存储空间的权限,该安全服务程序需要根据访问密钥,对该TA所携带的密钥进行校验,当两者一致时,该权限校验成功,该TA访问该安全存储空间的请求被接受。
在本发明实施例中,该访问密钥可以是哈希运算消息认证码(Hash-basedMessageAuthenticationCode,简称“HMAC”),该权限校验过程可以为哈希Hash校验。该Hash校验的密钥即为用于访问该RPMB的访问密钥。
应理解,Hash校验仅为示例性说明,不应对本发明构成任何限定,本发明也不应限于此,本发明实施例也可以通过其他方式来进行权限校验,以确定该TA是否具有对该安全存储空间的访问权限。
以下,分别以产线阶段和使用阶段中TA请求访问RPMB为例,对该安全服务程序获取该访问密钥的过程进行详细说明。
在本发明实施例中,在该终端的产线阶段,对该终端进行初始化时,可以将该初始化信息(包括设备信息和密钥信息)保存在系统中安全级别最高的执行环境中,例如,在ARMv8架构中的ARM可信固件(ARMTrustedFirmware,简称“ATF”),或者,ARMv7架构中的监视模式(monitor)等。以下为方便说明,将该ATF或monitor等系统中安全级别最高的执行环境简称为“安全执行环境”。应理解,该安全执行环境可以为该安全环境中的一部分,也可以为一个独立于上述安全环境和非安全环境之外的环境,本发明对此并未特别限定。
又例如,该密钥参数也可以存储在该TEE中,以便于运行在该TEE中的安全服务程序(例如,RPMB服务)直接从该TEE中获取,以生成该访问密钥。
该安全服务程序从该终端的安全环境中获取用于派生该权限校验的密钥参数后,再调用该TEE中的密钥派生软件根据该密钥参数,派生该访问密钥,并存储在RPMB寄存器中,在设备初始化结束后被丢弃。因此,预设密钥的派生过程,以及密钥参数的保存都是在非常安全的环境中进行的,减少了被攻击者窃取或破坏的可能性。
在用户使用期间,该RPMB服务(即,安全服务程序的一例)获取该访问密钥的过程同样也是在TEE中进行,用于派生该预设密钥的密钥参数也是保存在该安全环境中,例如,安全执行环境(包括上述ATF、monitor等)或者TEE中,并且该访问密钥和该预设密钥被使用后都会在该TEE中被丢弃,而不会被攻击者获取。
在本发明实施例中,该TA访问该RPMB,可以从该RPMB读取数据,或者向该RPMB写入数据。当该TA需要从该RPMB读取数据时,该TA可以先进行上述权限验证,验证通过后,该RPMB服务或者RPMB驱动(安全访问驱动的一例)可以先读取存储于该RPMB中的、该TA需要读取的隐私数据,该RPMB服务可以对给隐私数据进行解密处理,以便于该TA读取解密后的隐私数据;或者,当该TA需要向该RPMB写入数据时,该RPMB服务可以先将需要写入的数据进行加密处理,当该TA通过了上述权限验证后,即可通过该RPMB服务或者RPMB驱动直接将该加密后的数据写入该RPMB中。在该TEE中通过安全访问驱动程序访问该安全存储区。
需要说明的是,由于该RPMB服务为在TEE中运行的服务程序,通过该RPMB来获取访问密钥、进行权限校验等都在TEE中执行,因此该访问密钥从获取到校验的过程都只暴露在TEE中,而未暴露在REE中,不会被攻击者获取。
与此相对,在现有技术中,将该安全存储空间注册在REE中,则需要在REE中进行权限校验,就会使该访问密钥暴露在REE中,从而给攻击者以机会窃取该访问密钥,即便在校验过程未被窃取,在使用后在REE中被丢弃后,也可以通过dump内存的方式,获取到该访问密钥,从而增加了隐私数据被泄露或者篡改的风险。并且,在REE中访问安全存储器也需要调用REE中的访问驱动程序(即,非安全访问驱动程序)来实现,在读取或者写入隐私数据的过程中,该隐私数据都被暴露在REE中,即便给隐私数据被加密,仍然存在该隐私数据被破解和泄露的可能。
因此,本发明实施例的方法,通过安全服务程序在安全环境中获取访问密钥,并在安全环境中进行权限校验,将该访问密钥被泄露的可能性降到最低,从而进一步提高了该安全存储空间中隐私数据存储的安全性。
可选地,该方法200还包括:
禁止在该非安全环境的系统目录下注册该安全存储空间的设备信息,以使该设备信息在该非安全环境中无法被获取,该设备信息包括存储量信息或存储块数量信息。
在本发明实施例中,由于未在该REE的设备注册表中注册该安全存储空间,因此,可以进一步地,禁止在该REE的系统目录(例如,/sys/目录)下注册该安全存储空间的设备信息,包括存储量信息和存储块数量信息(例如,该安全存储空间中可写入的存储块最大数量信息)等,使得攻击者无法在该REE中获取到关于该安全存储空间的任何相关信息,进一步减小了该安全存储空间被攻击者发现从而进行破坏的可能性。换句话说,存储在该安全存储空间中的隐私数据被泄露或破坏的可能性大大减小,该存储区的安全性大大提高。
以Linux内核初始化对RPMB的注册过程为例,可以在该REE中的/sys/目录下不注册该RPMB的存储量大小信息和该RPMB中可写入存储块的最大数量信息等,以使得攻击者在无法从REE中看到该RPMB的情况下,也无法获取关于该RPMB的相关信息,例如,上述的存储量信息、存储块数量信息等。也就是说,该攻击者无法从REE中获取到关于该RPMB的任何信息。应理解,系统目录仅为示例性说明,所有在非安全环境中禁止注册该安全存储空间的设备信息的技术方案均落入本发明的保护范围内。
进一步地,该安全服务程序可以从该安全环境中获取该安全存储空间的设备信息。
在本发明实施例中,该RPMB服务还可以从ATF(即,安全环境的又一例)中获取RPMB的存储量信息、可以写入的最大的存储块数量信息等设备信息,该RPMB服务可以根据该设备信息,结合数据信息,为要写入的数据分配存储空间,或者查找要读取的数据的存储路径等。
应理解,以上列举的安全执行环境中所存储的设备信息的具体内容仅为示例性说明,不应对本发明构成任何限定,本发明也不应限于此。例如,该设备信息还可以包括该RPMB中剩余存储量等信息,本发明并未特别限定。
可选地,该终端配置有存储芯片,该存储芯片包括该安全存储空间和注册在该非安全环境中的非安全存储空间,该非安全存储空间由非安全访问驱动程序在该非安全环境中访问,该方法还包括:为该安全服务程序分配第一互斥锁,该第一互斥锁用于在该安全服务程序访问该安全存储空间时,拒绝该非安全访问驱动程序访问该非安全存储空间;或者,为该非安全访问驱动程序分配第二互斥锁,该第二互斥锁用于在该非安全访问驱动程序访问该非安全存储空间时,拒绝该安全服务程序访问该安全存储空间。
具体而言,该RPMB可以为配置于EMMC芯片(即,存储芯片的一例)上的一个分区,该EMMC芯片配置于该终端中。该EMMC芯片可以分为User分区(即,非安全存储空间的一例)和RPMB分区。由于User分区可以被用户随意访问,被注册在REE中的设备注册表里,需要通过REE中的EMMC驱动(即,非安全访问驱动程序的一例,以下为方便说明,简称第一EMMC驱动)来访问。而位于该EMMC芯片中的RPMB分区除了需要在TEE中通过RPMB驱动来访问,也需要通过TEE中的EMMC驱动(即,安全访问驱动程序的又一例,以下为方便说明,简称第二EMMC驱动)来访问。也就是说,访问RPMB分区首先需要第二EMMC驱动访问EMMC芯片,然后通过RPMB驱动访问该RPMB分区。换句话说,访问EMMC芯片是访问RPMB分区的基础。
因此,在该终端中就会存在两个驱动程序在两个运行环境中同时访问该EMMC芯片的并发问题。鉴于此,可以在该REE中的EMMC驱动程序分配互斥锁。例如,为该非安全访问驱动程序(例如,第一EMMC驱动)分配第一互斥锁,该第一互斥锁用于在该非安全访问驱动程序访问该非安全存储空间时,拒绝该安全服务程序访问该安全存储空间;或者,为该安全服务程序(例如,第二EMMC驱动)分配第二互斥锁,该第二互斥锁用于在该安全服务程序(或者说,安全访问驱动程序)访问该安全存储空间时,拒绝该非安全访问驱动程序访问该非安全存储空间。也就是说,该第一EMMC驱动只有在获取对该User分区的访问权限(即,上述第一互斥锁)时,才能访问该User分区中的数据,而该第二EMMC驱动只有在获取对该RPMB分区的访问权限(即,上述第二互斥锁)时,才能访问该RPMB分区中的数据,由此,可以避免该EMMC芯片同时被两个驱动访问。
需要说明的是,该第一互斥锁和第二互斥锁分别为在不同的时间段用于访问EMMC芯片的不同分区的互斥锁,可以为同一互斥锁,当该互斥锁在该第一EMMC驱动中时,该第一EMMC获取到对该User分区的访问权限,此时该第二EMMC驱动无法访问该RPMB分区;当该互斥锁在该第二EMMC驱动中时,该第二EMMC获取到对该RPMB分区的访问权限,此时该第一EMMC驱动无法访问该User分区。
进一步地,还可以为该互斥锁(包括第一互斥锁和第二互斥锁)分配优先级,将对User分区的访问设置为较高优先级的访问,即,将该互斥锁保存在该第一EMMC驱动中,当需要发起对RPMB分区的访问且该第一EMMC在此时不访问User分区时,再将该互斥锁发送到第二EMMC驱动中,以便于该第二EMMC驱动访问该RPMB分区。应理解,以上所述的为互斥锁分配优先级的方法仅为示例性说明,不应对本发明构成任何限定,本发明也不应限于此。该互斥锁也可以独立地存在于该安全环境中,在需要访问该存储芯片(例如,EMMC芯片)中的某一分区时,再将其分配到相应的驱动程序中去,本发明对此并未特别限定。
需要说明的是,上述的非安全访问驱动程序(例如,第一EMMC驱动)运行在非安全环境中访问普通存储分区(例如,上述User分区);与此相对,安全访问驱动程序(例如,第二EMMC驱动)运行在安全环境中,用于访问安全存储分区(例如,上述RPMB分区),非安全访问驱动和安全访问驱动程序分别为运行在两种不同的运行环境中的两个相互独立的驱动程序,或者,可以理解为两个相互独立的功能模块,其功能相似,但运行环境不同。
更进一步地,可以通过修改代码,删除该第一EMMC驱动中对RPMB分区的访问权限,来避免攻击者伪装TA,利用第一EMMC来冒充第二EMMC访问TEE中的RPMB分区,从而保护TEE中的安全存储空间中的隐私数据被窃取或破坏。
因此,本发明实施例的方法,通过在两种不同的运行环境中利用两个驱动来访问存储空间中的不同分区,并通过互斥锁防止同时访问的并发问题的发生,提高了终端的安全性,并且在现有的技术中进行改进,易于实现。
可选地,该安全环境包括可信执行环境或高级精简指令集机器可信固件,该非安全环境包括富执行环境。
在本发明实施例中,该RPMB可以暴露在TEE中,也可以暴露在安全级别更高的执行环境中,设备参数和密钥参数可以保存在安全执行环境中,也可以保存在TEE中。换句话说,存储区的注册以及参数的保存位置可以根据终端中各运行环境的实际情况而定,本发明对此不作特别限定。
因此,本发明实施例的方法,通过根据该存储空间中预存的指示信息,确定该存储空间是否为安全存储空间,并禁止在非安全环境中注册安全存储空间,进而根据运行在安全环境中的可信应用发送的访问请求,在该安全环境中访问该安全存储空间,从而避免了攻击者在非安全环境中通过恶意软件访问该安全存储空间,而造成隐私数据的泄露或破坏,提高了隐私数据存储的安全性。
以上结合图2,从终端的角度详细说明了本发明实施例的用于访问存储空间的方法200。以下结合图3,以TA访问EMMC芯片上的RPMB分区为例,详细说明本发明实施例的用于访问存储空间的方法300。
如图3所示,该方法300包括:
S301,TA向RPMB服务发送访问请求,请求RPMB服务向RPMB分区写入数据或者读取数据,该访问请求携带所述TA请求访问(包括读取或写入)的数据的数据信息;
S302,该RPMB服务对该TA请求读取或写入的数据进行加解密处理;
S303,该RPMB访问根据TA的访问请求,从ATF获取用于派生访问密钥的密钥参数和RPMB分区信息;
S304,该RPMB服务根据密钥参数,获取访问密钥,以进行权限校验;
S305,该RPMB服务向RPMB驱动发送该TA请求访问的数据信息;
S306,该RPMB驱动向该RPMB写入加密数据,或者,从该RPMB分区读取加密数据。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。例如在本发明实施例中,若TA向该RPMB分区写入数据,则在S303之前执行S302;若TA从该RPMB分区读取数据,则在S304之后执行S302。
因此,本发明实施例的方法,通过在TEE中接收TA的访问请求,在该TEE中获取用于访问该安全存储空间的访问密钥,并根据该访问密钥,在该TEE中通过安全访问驱动程序访问该安全存储空间,以使整个访问的过程都在TEE中执行,从而避免了在访问过程中所使用的密钥被窃取或破坏,减少了该安全存储空间中的隐私数据泄露的可能性,提高了该移动终端的安全性。
以上,结合图2和图3,详细说明了本发明实施例的用于访问存储空间的方法,以下,结合图4和图5,详细说明本发明实施例的用于访问存储空间的装置和设备。
图4示出了本发明实施例的用于访问存储空间的装置600的示意性框图。该装置600配置有存储空间,该装置600的操作系统的运行环境包括安全环境和非安全环境,如图4所示,该装置600包括:
确定模块610,用于根据该存储空间中预存的指示信息,确定该存储空间为安全存储空间,该指示信息用于指示该存储空间的安全属性;
注册模块620,用于禁止在该非安全环境的设备注册表中注册该安全存储空间;
访问模块630,用于根据运行在该安全环境中的可信应用TA发送的访问请求,访问该安全存储空间。
可选地,该装置600还包括获取模块和生成模块,其中,
该获取模块用于根据该访问请求,从该安全环境中获取密钥参数;
该生成模块用于根据该密钥参数,在该安全环境中生成访问密钥;
该确定模块610还用于根据该访问密钥,在该安全环境中调用该安全服务程序对该TA进行权限校验,以确定该TA是否具有访问该安全存储空间的权限;
该访问模块630具体用于在该确定模块610确定该TA具有访问该安全存储空间的权限时,根据该访问请求,在该安全环境中调用该安全服务程序访问该安全存储空间。
可选地,该注册模块620还用于禁止在该非安全环境的系统目录下注册该安全存储空间的设备信息,该设备信息包括存储量信息或存储块数量信息。
可选地,该装置600配置有存储芯片,该存储芯片包括该安全存储空间和注册在该非安全环境中的非安全存储空间,该非安全存储空间由非安全访问驱动程序在该非安全环境中访问,该装置600还包括分配模块,用于为该安全服务程序分配第一互斥锁,该第一互斥锁用于在该安全服务程序访问该安全存储空间时,拒绝该非安全访问驱动程序访问该非安全存储空间;或者,为该非安全访问驱动程序分配第二互斥锁,该第二互斥锁用于在该非安全访问驱动程序访问该非安全存储空间时,拒绝该安全服务程序访问该安全存储空间。
可选地,该安全环境包括可信执行环境或高级精简指令集机器可信固件,该非安全环境包括富执行环境。
根据本发明实施例的装置600可对应于本发明实施例的用于访问存储空间的方法中的终端,并且,该装置600中的各模块和上述其他操作和/或功能分别为了实现图2和图3中的各个方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的装置,根据该存储空间中预存的指示信息,确定该存储空间是否为安全存储空间,并禁止在非安全环境中注册安全存储空间,以使该安全存储空间在非安全环境中无法被访问,进而根据运行在安全环境中的可信应用发送的访问请求,在该安全环境中访问该安全存储空间,从而避免了攻击者在非安全环境中通过恶意软件访问该安全存储空间,而造成隐私数据的泄露或破坏,提高了隐私数据存储的安全性。
图5示出了本发明实施例的用于访问存储空间的设备700的示意性框图。该设备700配置有存储空间,该设备700的操作系统的运行环境包括安全环境和非安全环境,如图5所示,该设备700包括:接收器710、处理器720、发送器730、存储器740和总线系统750。其中,接收器710、处理器720、发送器730和存储器740通过总线系统750相连,该存储器740用于存储指令,该处理器720用于执行该存储器740存储的指令,以控制接收器710接收信号,并控制发送器730发送信号。
其中,该处理器720用于根据存储空间中预存的指示信息,确定该存储空间为安全存储空间,该指示信息用于指示该存储空间的安全属性;
该处理器720还用于禁止在该非安全环境的设备注册表中注册该安全存储空间;
该处理器720还用于根据运行在该安全环境中的可信应用TA发送的访问请求,访问该安全存储空间。
可选地,该处理器720还用于根据该访问请求,从该安全环境中获取密钥参数,根据该密钥参数,在该安全环境中生成访问密钥;并根据该访问密钥,在该安全环境中调用安全服务程序对该TA进行权限校验,以确定该TA是否具有访问该安全存储空间的权限;当确定该TA具有访问该安全存储空间的权限时,根据该访问请求,在该安全环境中调用该安全服务程序访问该安全存储空间。
可选地,该处理器720还用于禁止在该非安全环境的系统目录下注册该安全存储空间的设备信息,该设备信息包括存储量信息或存储块数量信息。
可选地,该设备700配置有存储芯片,该存储芯片包括该安全存储空间和注册在该非安全环境中的非安全存储空间,该非安全存储空间由非安全访问驱动程序在该非安全环境中访问,该处理器720还用于,为该安全服务程序分配第一互斥锁,该第一互斥锁用于在该安全服务程序访问该安全存储空间时,拒绝该非安全访问驱动程序访问该非安全存储空间;或者,为该非安全访问驱动程序分配第二互斥锁,该第二互斥锁用于在该非安全访问驱动程序访问该非安全存储空间时,拒绝该安全服务程序访问该安全存储空间。
可选地,该安全环境包括可信执行环境或高级精简指令集机器可信固件,该非安全环境包括富执行环境。
根据本发明实施例的设备700可对应于本发明实施例的用于访问存储空间的方法中的终端,并且,该设备700中的各模块和上述其他操作和/或功能分别为了实现图2和图3中的各个方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的设备,根据该存储空间中预存的指示信息,确定该存储空间是否为安全存储空间,并禁止在非安全环境中注册安全存储空间,以使该安全存储空间在非安全环境中无法被访问,进而根据运行在安全环境中的可信应用发送的访问请求,在该安全环境中访问该安全存储空间,从而避免了攻击者在非安全环境中通过恶意软件访问该安全存储空间,而造成隐私数据的泄露或破坏,提高了隐私数据存储的安全性。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种用于访问存储空间的方法,其特征在于,所述方法应用于配置有存储空间的终端中,所述终端的操作系统的运行环境包括安全环境和非安全环境,所述方法包括:
根据所述存储空间中预存的指示信息,确定所述存储空间为安全存储空间,所述指示信息用于指示所述存储空间的安全属性;
禁止在所述非安全环境的设备注册表中注册所述安全存储空间;
根据运行在所述安全环境中的可信应用TA发送的访问请求,访问所述安全存储空间。
2.根据权利要求1所述的方法,其特征在于,所述根据运行在所述安全环境中的TA发送的访问请求,访问所述安全存储空间,包括:
根据运行在所述安全环境中的TA发送的访问请求,从所述安全环境中获取密钥参数;
根据所述密钥参数,在所述安全环境中生成访问密钥;
根据所述访问密钥,在所述安全环境中调用安全服务程序对所述TA进行权限校验,以确定所述TA是否具有访问所述安全存储空间的权限;
当确定所述TA具有访问所述安全存储空间的权限时,根据所述访问请求,在所述安全环境中调用所述安全服务程序访问所述安全存储空间。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
禁止在所述非安全环境的系统目录下注册所述安全存储空间的设备信息,所述设备信息包括存储量信息或存储块数量信息。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述终端配置有存储芯片,所述存储芯片包括所述安全存储空间和注册在所述非安全环境中的非安全存储空间,所述非安全存储空间由非安全访问驱动程序在所述非安全环境中访问,所述方法还包括:
为所述非安全访问驱动程序分配第一互斥锁,所述第一互斥锁用于在所述非安全访问驱动程序访问所述非安全存储空间时,拒绝所述安全服务程序访问所述安全存储空间;或者,
为所述安全服务程序分配第二互斥锁,所述第二互斥锁用于在所述安全服务程序访问所述安全存储空间时,拒绝所述非安全访问驱动程序访问所述非安全存储空间。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述安全环境包括可信执行环境或高级精简指令集机器可信固件,所述非安全环境包括富执行环境。
6.一种用于访问存储空间的装置,其特征在于,所述装置配置有存储空间,所述装置的操作系统的运行环境包括安全环境和非安全环境,所述装置包括:
确定模块,用于根据所述存储空间中预存的指示信息,确定所述存储空间为安全存储空间,所述指示信息用于指示所述存储空间的安全属性;
注册模块,用于禁止在所述非安全环境的设备注册表中注册所述安全存储空间;
访问模块,用于根据运行在所述安全环境中的可信应用TA发送的访问请求,访问所述安全存储空间。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
获取模块,用于根据所述访问请求,从所述安全环境中获取密钥参数;
生成模块,用于根据所述密钥参数,在所述安全环境中生成访问密钥;
所述确定模块还用于根据所述访问密钥,在所述安全环境中调用安全服务程序对所述TA进行权限校验,以确定所述TA是否具有访问所述安全存储空间的权限;
所述访问模块具体用于在所述确定模块确定所述TA具有访问所述安全存储空间的权限时,根据所述访问请求,在所述安全环境中调用所述安全服务程序访问所述安全存储空间。
8.根据权利要求6或7所述的装置,其特征在于,所述注册模块还用于禁止在所述非安全环境的系统目录下注册所述安全存储空间的设备信息,所述设备信息包括存储量信息或存储块数量信息。
9.根据权利要求6至8中任一项所述的装置,其特征在于,所述装置配置有存储芯片,所述存储芯片包括所述安全存储空间和注册在所述非安全环境中的非安全存储空间,所述非安全存储空间由非安全访问驱动程序在所述非安全环境中访问,所述装置还包括:
分配模块,用于为所述安全服务程序分配第一互斥锁,所述第一互斥锁用于在所述安全服务程序访问所述安全存储空间时,拒绝所述非安全访问驱动程序访问所述非安全存储空间;或者,为所述非安全访问驱动程序分配第二互斥锁,所述第二互斥锁用于在所述非安全访问驱动程序访问所述非安全存储空间时,拒绝所述安全服务程序访问所述安全存储空间。
10.根据权利要求6至9中任一项所述的装置,其特征在于,所述安全环境包括可信执行环境或高级精简指令集机器可信固件,所述非安全环境包括富执行环境。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510760585.1A CN105447406B (zh) | 2015-11-10 | 2015-11-10 | 一种用于访问存储空间的方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510760585.1A CN105447406B (zh) | 2015-11-10 | 2015-11-10 | 一种用于访问存储空间的方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105447406A true CN105447406A (zh) | 2016-03-30 |
CN105447406B CN105447406B (zh) | 2018-10-19 |
Family
ID=55557569
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510760585.1A Active CN105447406B (zh) | 2015-11-10 | 2015-11-10 | 一种用于访问存储空间的方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105447406B (zh) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106534065A (zh) * | 2016-09-29 | 2017-03-22 | 宇龙计算机通信科技(深圳)有限公司 | 资源访问控制方法及系统 |
CN106657551A (zh) * | 2016-12-05 | 2017-05-10 | 惠州Tcl移动通信有限公司 | 一种防止移动终端解锁的方法及系统 |
CN106790128A (zh) * | 2016-12-27 | 2017-05-31 | 宇龙计算机通信科技(深圳)有限公司 | 一种资源共享方法以及装置 |
CN107240157A (zh) * | 2017-05-12 | 2017-10-10 | 努比亚技术有限公司 | 近场通信安全控制方法、移动终端及计算机可读存储介质 |
CN107644173A (zh) * | 2016-07-20 | 2018-01-30 | 澜起科技(上海)有限公司 | 用于控制应用程序访问存储器的方法和装置 |
CN107665175A (zh) * | 2016-07-27 | 2018-02-06 | 展讯通信(上海)有限公司 | 存储器分区隔离的方法、装置及电子设备 |
CN107908957A (zh) * | 2017-11-03 | 2018-04-13 | 北京邮电大学 | 一种智能终端的安全运行管理方法及系统 |
CN108288004A (zh) * | 2017-12-07 | 2018-07-17 | 深圳市中易通安全芯科技有限公司 | 一种加密芯片在ree和tee环境共存系统及方法 |
CN108885572A (zh) * | 2016-03-31 | 2018-11-23 | 微软技术许可有限责任公司 | 安全驱动程序平台 |
WO2018233638A1 (zh) * | 2017-06-22 | 2018-12-27 | 华为技术有限公司 | Ai软件系统安全状态的确定方法及装置 |
CN109446815A (zh) * | 2018-09-30 | 2019-03-08 | 华为技术有限公司 | 基本输入输出系统固件的管理方法、装置和服务器 |
CN109446847A (zh) * | 2017-08-31 | 2019-03-08 | 厦门雅迅网络股份有限公司 | 双系统外设资源的配置方法、终端设备及存储介质 |
CN109522722A (zh) * | 2018-10-17 | 2019-03-26 | 联想(北京)有限公司 | 系统安全处理方法和装置 |
US10339333B2 (en) | 2016-07-20 | 2019-07-02 | Montage Technology Co., Ltd. | Method and apparatus for controlling application to access memory |
CN110609799A (zh) * | 2019-09-11 | 2019-12-24 | 天津飞腾信息技术有限公司 | 一种面向片外非易失性存储的安全防护方法 |
CN110968901A (zh) * | 2018-10-01 | 2020-04-07 | 意法半导体(大西部)公司 | Dvfs功率管理的方法及对应的系统 |
CN111328070A (zh) * | 2020-01-21 | 2020-06-23 | 中国银联股份有限公司 | 数据处理方法、装置、设备及介质 |
CN111459869A (zh) * | 2020-04-14 | 2020-07-28 | 中国长城科技集团股份有限公司 | 一种数据访问的方法、装置、设备及存储介质 |
CN111538995A (zh) * | 2020-04-26 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 一种数据存储方法、装置及电子设备 |
CN111712815A (zh) * | 2018-08-14 | 2020-09-25 | 华为技术有限公司 | 人工智能ai处理方法和ai处理装置 |
US20210049286A1 (en) * | 2016-03-15 | 2021-02-18 | Huawei Technologies Co., Ltd. | Data Input Method And Apparatus And User Equipment |
WO2021135999A1 (zh) * | 2019-12-31 | 2021-07-08 | 华为技术有限公司 | V2x通信方法、装置及车辆 |
CN114239050A (zh) * | 2021-11-12 | 2022-03-25 | 希姆通信息技术(上海)有限公司 | 基于Android系统秘钥文件安全存储的方法及系统 |
CN114257877A (zh) * | 2021-12-02 | 2022-03-29 | 展讯通信(上海)有限公司 | 宽带数字视频保护hdcp的秘钥部署及使用方法以及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004046924A1 (en) * | 2002-11-18 | 2004-06-03 | Arm Limited | Processor switching between secure and non-secure modes |
CN101452514A (zh) * | 2007-12-06 | 2009-06-10 | 中国长城计算机深圳股份有限公司 | 一种安全计算机的用户数据保护方法 |
CN102004886A (zh) * | 2010-11-15 | 2011-04-06 | 上海安纵信息科技有限公司 | 一种基于操作系统虚拟化原理的数据防泄漏方法 |
US20130159729A1 (en) * | 2011-07-29 | 2013-06-20 | Microsoft Corporation | Software-based trusted platform module |
CN104091135A (zh) * | 2014-02-24 | 2014-10-08 | 电子科技大学 | 一种智能终端安全系统及安全存储方法 |
CN104392188A (zh) * | 2014-11-06 | 2015-03-04 | 三星电子(中国)研发中心 | 一种安全数据存储方法和系统 |
CN104765612A (zh) * | 2015-04-10 | 2015-07-08 | 武汉天喻信息产业股份有限公司 | 一种访问可信执行环境、可信应用的系统及方法 |
-
2015
- 2015-11-10 CN CN201510760585.1A patent/CN105447406B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004046924A1 (en) * | 2002-11-18 | 2004-06-03 | Arm Limited | Processor switching between secure and non-secure modes |
CN101452514A (zh) * | 2007-12-06 | 2009-06-10 | 中国长城计算机深圳股份有限公司 | 一种安全计算机的用户数据保护方法 |
CN102004886A (zh) * | 2010-11-15 | 2011-04-06 | 上海安纵信息科技有限公司 | 一种基于操作系统虚拟化原理的数据防泄漏方法 |
US20130159729A1 (en) * | 2011-07-29 | 2013-06-20 | Microsoft Corporation | Software-based trusted platform module |
CN104091135A (zh) * | 2014-02-24 | 2014-10-08 | 电子科技大学 | 一种智能终端安全系统及安全存储方法 |
CN104392188A (zh) * | 2014-11-06 | 2015-03-04 | 三星电子(中国)研发中心 | 一种安全数据存储方法和系统 |
CN104765612A (zh) * | 2015-04-10 | 2015-07-08 | 武汉天喻信息产业股份有限公司 | 一种访问可信执行环境、可信应用的系统及方法 |
Non-Patent Citations (1)
Title |
---|
ARM LIMITED: ""Building a Secure System using TrustZone Technology"", 《ARM SECURITY TECHNOLOGY》 * |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11574064B2 (en) * | 2016-03-15 | 2023-02-07 | Huawei Technologies Co., Ltd. | Data input method and apparatus and user equipment |
US20210049286A1 (en) * | 2016-03-15 | 2021-02-18 | Huawei Technologies Co., Ltd. | Data Input Method And Apparatus And User Equipment |
CN108885572A (zh) * | 2016-03-31 | 2018-11-23 | 微软技术许可有限责任公司 | 安全驱动程序平台 |
CN107644173A (zh) * | 2016-07-20 | 2018-01-30 | 澜起科技(上海)有限公司 | 用于控制应用程序访问存储器的方法和装置 |
CN107644173B (zh) * | 2016-07-20 | 2019-10-11 | 澜起科技股份有限公司 | 用于控制应用程序访问存储器的方法和装置 |
US10339333B2 (en) | 2016-07-20 | 2019-07-02 | Montage Technology Co., Ltd. | Method and apparatus for controlling application to access memory |
CN107665175A (zh) * | 2016-07-27 | 2018-02-06 | 展讯通信(上海)有限公司 | 存储器分区隔离的方法、装置及电子设备 |
CN106534065A (zh) * | 2016-09-29 | 2017-03-22 | 宇龙计算机通信科技(深圳)有限公司 | 资源访问控制方法及系统 |
CN106657551A (zh) * | 2016-12-05 | 2017-05-10 | 惠州Tcl移动通信有限公司 | 一种防止移动终端解锁的方法及系统 |
CN106790128A (zh) * | 2016-12-27 | 2017-05-31 | 宇龙计算机通信科技(深圳)有限公司 | 一种资源共享方法以及装置 |
CN107240157A (zh) * | 2017-05-12 | 2017-10-10 | 努比亚技术有限公司 | 近场通信安全控制方法、移动终端及计算机可读存储介质 |
WO2018233638A1 (zh) * | 2017-06-22 | 2018-12-27 | 华为技术有限公司 | Ai软件系统安全状态的确定方法及装置 |
CN109446847A (zh) * | 2017-08-31 | 2019-03-08 | 厦门雅迅网络股份有限公司 | 双系统外设资源的配置方法、终端设备及存储介质 |
CN107908957B (zh) * | 2017-11-03 | 2021-09-17 | 北京邮电大学 | 一种智能终端的安全运行管理方法及系统 |
CN107908957A (zh) * | 2017-11-03 | 2018-04-13 | 北京邮电大学 | 一种智能终端的安全运行管理方法及系统 |
CN108288004A (zh) * | 2017-12-07 | 2018-07-17 | 深圳市中易通安全芯科技有限公司 | 一种加密芯片在ree和tee环境共存系统及方法 |
US11954204B2 (en) | 2018-08-14 | 2024-04-09 | Huawei Technologies Co., Ltd. | Artificial intelligence AI processing method and AI processing apparatus |
CN111712815A (zh) * | 2018-08-14 | 2020-09-25 | 华为技术有限公司 | 人工智能ai处理方法和ai处理装置 |
WO2020063001A1 (zh) * | 2018-09-30 | 2020-04-02 | 华为技术有限公司 | 基本输入输出系统固件的管理方法、装置和服务器 |
CN109446815A (zh) * | 2018-09-30 | 2019-03-08 | 华为技术有限公司 | 基本输入输出系统固件的管理方法、装置和服务器 |
CN109446815B (zh) * | 2018-09-30 | 2020-12-25 | 华为技术有限公司 | 基本输入输出系统固件的管理方法、装置和服务器 |
CN110968901A (zh) * | 2018-10-01 | 2020-04-07 | 意法半导体(大西部)公司 | Dvfs功率管理的方法及对应的系统 |
CN109522722A (zh) * | 2018-10-17 | 2019-03-26 | 联想(北京)有限公司 | 系统安全处理方法和装置 |
CN110609799A (zh) * | 2019-09-11 | 2019-12-24 | 天津飞腾信息技术有限公司 | 一种面向片外非易失性存储的安全防护方法 |
WO2021135999A1 (zh) * | 2019-12-31 | 2021-07-08 | 华为技术有限公司 | V2x通信方法、装置及车辆 |
CN111328070A (zh) * | 2020-01-21 | 2020-06-23 | 中国银联股份有限公司 | 数据处理方法、装置、设备及介质 |
CN111328070B (zh) * | 2020-01-21 | 2024-08-23 | 中国银联股份有限公司 | 数据处理方法、装置、设备及介质 |
CN111459869A (zh) * | 2020-04-14 | 2020-07-28 | 中国长城科技集团股份有限公司 | 一种数据访问的方法、装置、设备及存储介质 |
CN111459869B (zh) * | 2020-04-14 | 2022-04-29 | 中国长城科技集团股份有限公司 | 一种数据访问的方法、装置、设备及存储介质 |
CN111538995A (zh) * | 2020-04-26 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 一种数据存储方法、装置及电子设备 |
CN114239050A (zh) * | 2021-11-12 | 2022-03-25 | 希姆通信息技术(上海)有限公司 | 基于Android系统秘钥文件安全存储的方法及系统 |
CN114257877A (zh) * | 2021-12-02 | 2022-03-29 | 展讯通信(上海)有限公司 | 宽带数字视频保护hdcp的秘钥部署及使用方法以及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105447406B (zh) | 2018-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105447406B (zh) | 一种用于访问存储空间的方法与装置 | |
CN107533609B (zh) | 用于对系统中的多个可信执行环境进行控制的系统、设备和方法 | |
CN109766165B (zh) | 一种内存访问控制方法、装置、内存控制器及计算机系统 | |
CN104318176B (zh) | 用于终端的数据管理方法、数据管理装置和终端 | |
US7010684B2 (en) | Method and apparatus for authenticating an open system application to a portable IC device | |
US7313705B2 (en) | Implementation of a secure computing environment by using a secure bootloader, shadow memory, and protected memory | |
CN106534148B (zh) | 应用的访问管控方法及装置 | |
US20130298205A1 (en) | Architecture for virtual security module | |
US20120137372A1 (en) | Apparatus and method for protecting confidential information of mobile terminal | |
US10713381B2 (en) | Method and apparatus for securely calling fingerprint information, and mobile terminal | |
US20170201528A1 (en) | Method for providing trusted service based on secure area and apparatus using the same | |
CN105282117A (zh) | 访问控制方法及装置 | |
EP3866385A1 (en) | Capability exposure method and device | |
CN111245620B (zh) | 一种在终端中的移动安全应用架构及其构建方法 | |
CN104955043B (zh) | 一种智能终端安全防护系统 | |
CN110352411B (zh) | 用于控制对安全计算资源的访问的方法和装置 | |
CN114600102A (zh) | 用于保护共享对象的装置和方法 | |
WO2022100247A1 (zh) | 一种切换执行环境的方法及其相关设备 | |
CN112363800B (zh) | 一种网卡的内存访问方法、安全处理器、网卡及电子设备 | |
CN104866761B (zh) | 一种高安全性安卓智能终端 | |
CN111209561B (zh) | 终端设备的应用调用方法、装置与终端设备 | |
CN110334532B (zh) | 文件的加密、解密处理方法及加解密系统 | |
CN116226870B (zh) | 安全增强系统及方法 | |
CN114580005B (zh) | 数据访问方法、计算机设备及可读存储介质 | |
CN117993030A (zh) | 存储器的管理方法、芯片、电子设备和可读存储介质 |
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 |