+

CN111444553A - Secure storage implementation method and system supporting TEE extension - Google Patents

Secure storage implementation method and system supporting TEE extension Download PDF

Info

Publication number
CN111444553A
CN111444553A CN202010251384.XA CN202010251384A CN111444553A CN 111444553 A CN111444553 A CN 111444553A CN 202010251384 A CN202010251384 A CN 202010251384A CN 111444553 A CN111444553 A CN 111444553A
Authority
CN
China
Prior art keywords
key
rpmb
tee
storage
secure storage
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
Application number
CN202010251384.XA
Other languages
Chinese (zh)
Inventor
董攀
朱浩
高珑
李小玲
丁滟
秦莹
马俊
黄辰林
谭郁松
廖湘科
吴庆波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202010251384.XA priority Critical patent/CN111444553A/en
Publication of CN111444553A publication Critical patent/CN111444553A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/73Protecting 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 by creating or determining hardware identification, e.g. serial numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种支持TEE扩展的安全存储实现方法及系统,本发明方法包括获取RPMB分区的鉴权主密钥KeyRPMB;基于鉴权主密钥KeyRPMB实现层级秘钥体制的加密存储,且其中鉴权主密钥KeyRPMB采用了基于PUF保护的方式。本发明能够在系统运行和断电期间持久保存数字化信息,并能有效防护来自TEE内外的非法访问和篡改,包括在线软件攻击和静态物理管脚窥探等威胁。TEE中的文件存储可以抵御来自多个方面的威胁或攻击,即使攻击者拿到了RPMB分区的秘钥,也无法解密RPMB文件系统;即使TEE系统中有不安全的应用,该应用可以读写RPMB分区,但也无法获得其它应用以及TEE中的相关文件信息。

Figure 202010251384

The invention discloses a security storage implementation method and system supporting TEE expansion. The method of the invention includes obtaining the authentication master key Key RPMB of the RPMB partition; realizing the encrypted storage of the hierarchical key system based on the authentication master key Key RPMB , And the authentication master key Key RPMB adopts the method based on PUF protection. The invention can persist digital information during system operation and power failure, and can effectively prevent illegal access and tampering from inside and outside the TEE, including threats such as online software attacks and static physical pin snooping. The file storage in TEE can resist threats or attacks from many aspects. Even if the attacker obtains the secret key of the RPMB partition, the RPMB file system cannot be decrypted; even if there is an insecure application in the TEE system, the application can read and write RPMB. Partition, but also cannot obtain other applications and related file information in TEE.

Figure 202010251384

Description

支持TEE扩展的安全存储实现方法及系统Secure storage implementation method and system supporting TEE extension

技术领域technical field

本发明涉及安全存储技术,具体涉及一种支持TEE扩展的安全存储实现方法及系统。The invention relates to a secure storage technology, in particular to a secure storage implementation method and system supporting TEE expansion.

背景技术Background technique

TEE(Trusted Execution Environment)又称为可信执行环境,是同主机系统相隔离的安全区域,作为一个独立的环境与主机操作系统并行运行。TEE技术通过使用硬件和软件来保护数据和代码,从而确保安全区域中加载的代码和数据的机密性和完整性都得到保护,获得比传统REE(Rich Execution Environment)环境更强的安全性保证。在TEE 中运行的受信任应用程序可以访问平台上主处理器和内存的全部功能,而硬件隔离保护这些组件不受主操作系统中运行的用户安装应用程序的影响。目前常见的TEE技术有TrustZone和SGX等。TEE (Trusted Execution Environment), also known as Trusted Execution Environment, is a secure area isolated from the host system and runs in parallel with the host operating system as an independent environment. TEE technology protects data and code by using hardware and software, thereby ensuring that the confidentiality and integrity of code and data loaded in the secure area are protected, obtaining stronger security guarantees than traditional REE (Rich Execution Environment) environments. Trusted applications running in the TEE have access to the full capabilities of the main processor and memory on the platform, while hardware isolation protects these components from user-installed applications running in the main operating system. At present, common TEE technologies include TrustZone and SGX.

ARM公司提出了TrustZone扩展技术来创建TEE,通过将软件资源和硬件资源全部划分成可信区域和不可信区域,分别做为TEE和REE,以实现对敏感数据和应用的保护。TrustZone能保证安全态软件在加电时首先启动,并对后续加载的启动映像进行逐级验证。TrustZone使能后,物理处理器能够在两种安全模态之间切换,分别定义为常态(normalworld,运行主机OS)和安全态(secure world,运行TEE OS)。TrustZone 在系统总线上针对每一个信道的读写增加了一个额外的控制信号位,叫做NS(Non-Secure)位,可以通过NS位将内存等资源划分为安全态和非安全态。在处理器架构上,每个物理处理器核被虚拟为安全核(Secure)和非安全核(Non-Secure),非安全核只能访问非安全的系统资源,而安全核可以访问所有资源。TEE和REE之间使用Monitor模式进行切换。ARM proposed the TrustZone extension technology to create a TEE. By dividing all software resources and hardware resources into trusted areas and untrusted areas, they are used as TEE and REE respectively to protect sensitive data and applications. TrustZone can ensure that the secure state software starts first at power-on, and verifies the subsequent loaded boot images step by step. When TrustZone is enabled, the physical processor can switch between two security modes, defined as normal world (running the host OS) and secure state (secure world, running the TEE OS), respectively. TrustZone adds an additional control signal bit to the system bus for the read and write of each channel, called the NS (Non-Secure) bit, which can divide resources such as memory into secure and non-secure states through the NS bit. In the processor architecture, each physical processor core is virtualized into a secure core (Secure) and a non-secure core (Non-Secure). The non-secure core can only access non-secure system resources, while the secure core can access all resources. Use Monitor mode to switch between TEE and REE.

SGX全称Intel Software Guard Extensions,是对英特尔体系(IA)的一个扩展,用于增强软件的安全性,SGX通过创建飞地(enclave)来构建TEE,即将合法软件的安全操作封装在一个飞地中,保护其不受恶意软件的侵害,特权或者非特权的软件都无法访问飞地。也就是说,一旦软件和数据位于飞地中,即便操作系统或者和VMM(Hypervisor)也无法影响飞地里面的代码和数据。飞地的安全边界只包含CPU和它自身。SGX TEE与TrustZone TEE有明显区别,TrustZone TEE中通过CPU划分为两个隔离环境(安全世界和正常世界),两者之间通过SMC指令通信;而SGX中一个CPU可以运行多个安全飞地,并发执行亦可。SGX的保护是针对应用程序的地址空间的。SGX利用处理器提供的指令,在内存中划分处一部分区域(EPC),并将应用程序地址空间中的飞地映射到这部分内存区域。这部分内存区域是加密的,通过CPU中的内存控制单元进行加密和地址转化。The full name of SGX is Intel Software Guard Extensions, which is an extension to the Intel System (IA) to enhance the security of software. SGX builds TEE by creating an enclave, which encapsulates the security operations of legal software in an enclave. , protect it from malware, and neither privileged nor unprivileged software can access the enclave. That is to say, once the software and data are located in the enclave, even the operating system or the VMM (Hypervisor) cannot affect the code and data in the enclave. The security boundary of the enclave contains only the CPU and itself. There are obvious differences between SGX TEE and TrustZone TEE. In TrustZone TEE, the CPU is divided into two isolated environments (safe world and normal world), and the two communicate with each other through SMC instructions; while in SGX, one CPU can run multiple safe enclaves, Concurrent execution is also possible. The protection of SGX is for the address space of the application. SGX uses the instructions provided by the processor to divide a part of the memory area (EPC) and map the enclave in the application address space to this part of the memory area. This part of the memory area is encrypted, and encryption and address translation are performed by the memory control unit in the CPU.

TEE技术推荐将安全资源封装在SoC芯片内部,以防止利用引脚进行物理窥探。但由于技术和成本限制,SoC内一般不会封装大容量的永久存储,SGX甚至没有设计专门的硬件持久存储单元。这种情况下,在TEE内可用的持久存储方案有三类:TEE technology recommends encapsulating secure resources inside the SoC chip to prevent physical snooping with pins. However, due to technical and cost constraints, large-capacity permanent storage is generally not packaged in SoCs, and SGX does not even design a dedicated hardware persistent storage unit. In this case, there are three categories of persistent storage schemes available within a TEE:

一是借用同REE的通信机制和加密技术,利用REE的加密文件系统实现,这种方法的最大缺陷在于无法阻止恶意删除等攻击。One is to borrow the same communication mechanism and encryption technology as REE, and use REE's encrypted file system to implement. The biggest flaw of this method is that it cannot prevent malicious deletion and other attacks.

二是通过外接有安全机制的IO设备实现,例如面向TrustZone的OPTEE项目推荐使用eMMC存储器的RPMB(Replay Protected Memory Block,重放保护内存块)分区实现大量数据的安全读写和存储。RPMB(Replay Protected Memory Block)Partition 是 eMMC 中的一个具有安全特性的分区。eMMC 在写入数据到 RPMB 时,会校验数据的合法性,只有指定的 Host 才能够写入,同时在读数据时,也提供了签名机制,保证 Host 读取到的数据是RPMB 内部数据,而不是攻击者伪造的数据。RPMB可以对写入操作进行鉴权,但是读取并不需要鉴权,任何人都可以进行读取的操作,因此存储到 RPMB 的数据通常会进行加密后再存储。The second is to implement through an external IO device with a security mechanism. For example, the OPTEE project for TrustZone recommends using the RPMB (Replay Protected Memory Block) partition of eMMC memory to achieve secure read, write, and storage of large amounts of data. RPMB (Replay Protected Memory Block) Partition is a partition with security features in eMMC. When eMMC writes data to RPMB, it will verify the validity of the data. Only the specified Host can write it. At the same time, when reading data, it also provides a signature mechanism to ensure that the data read by the Host is the internal data of RPMB, and Not the data forged by the attacker. RPMB can authenticate write operations, but reading does not require authentication, and anyone can perform read operations, so the data stored in RPMB is usually encrypted before being stored.

三是通过在IO硬件中加入虚拟隔离技术的方法,也能为TEE提供隔离存储能力,但这种方法没有考虑直接对物理存储进行攻击和读取的防护,故存在较大的安全漏洞。Third, by adding virtual isolation technology to IO hardware, it can also provide isolated storage capabilities for TEEs, but this method does not consider the protection of direct attacks and reads on physical storage, so there are large security loopholes.

通过对比分析可知,在SoC外部建立安全存储时,有两项技术是不可少的,一是防篡改/删除机制,二是加密机制。当存储机制满足这些要求时,就能获取TEE同等级的防护能力,即:既能防护软件在线攻击,又能防护对设备本身管脚级别的物理攻击。Through comparative analysis, it can be seen that when establishing secure storage outside the SoC, two technologies are indispensable, one is an anti-tampering/deletion mechanism, and the other is an encryption mechanism. When the storage mechanism meets these requirements, it can obtain the same level of protection capability as TEE, that is, it can protect both online software attacks and physical attacks at the pin level of the device itself.

当前安全设备加密存储仍存在不少安全问题,以eMMC存储器RPMB分区为例,RPMB分区秘钥的安全性成为一个新的问题。首先,因为每个RPMB硬件只有唯一的、不可更改的秘钥,该秘钥一旦暴露,则整个分区的安全性将失去保护;其次,eMMC存储卡和CPU一般来自不同厂商,并在产品集成时才能确定,因此CPU厂商不可能将RPMB分区的秘钥做“密封”处理;第三,产品出厂后也有可能会需要维修并更换eMMC存储器,RPMB秘钥的更新也会带来问题。At present, there are still many security problems in the encrypted storage of security devices. Taking the eMMC storage RPMB partition as an example, the security of the RPMB partition key has become a new problem. First, because each RPMB hardware has only a unique and unchangeable secret key, once the secret key is exposed, the security of the entire partition will lose its protection; Therefore, it is impossible for the CPU manufacturer to "seal" the key of the RPMB partition. Third, the eMMC memory may need to be repaired and replaced after the product leaves the factory, and the update of the RPMB key will also cause problems.

RPMB分区密钥只是一个数据写入密钥,并不提供对写入数据的加密支持,因此还需要建立加解密机制。如果使用统一的加解密密钥,TEE操作系统虽然可以利用高强度加密算法和足够长的密钥保证密文的安全性,但TEE中可能存在很多不同应用(即TA,TrustedApplication),这些TA都有权限读取和更改RPMB分区,并可以随意访问彼此数据,也会带来安全风险,如果某些TA包含漏洞或缺陷代码,可能会使所有TEE的数据安全失去保证。The RPMB partition key is only a data writing key and does not provide encryption support for the written data, so an encryption and decryption mechanism needs to be established. If a unified encryption and decryption key is used, although the TEE operating system can use a high-strength encryption algorithm and a long enough key to ensure the security of the ciphertext, there may be many different applications (ie TA, TrustedApplication) in the TEE, and these TAs are Having permission to read and change the RPMB partition, and can access each other's data at will, also brings security risks. If some TAs contain loopholes or defective codes, the data security of all TEEs may be lost.

在数字安全领域有个共识,选择一个足够安全的加密算法不是困难的事情,难的是密钥管理。对于TEE中的安全存储而言,必须要保证密钥在多种场景下的安全,一是系统正常运行时在线安全,二是在系统离线(甚至是被硬件探测)时的安全,三是系统更新或维护(包含出厂初始化)时的安全。一般的密钥管理方案需要将密钥存储并在使用时取出,在上述多种场合下都有暴露的风险。There is a consensus in the field of digital security that choosing a sufficiently secure encryption algorithm is not difficult, but key management. For secure storage in TEE, it is necessary to ensure the security of keys in various scenarios, one is the online security when the system is running normally, the other is the security when the system is offline (even detected by hardware), and the third is the security of the system Safety when updating or maintaining (including factory initialization). The general key management scheme needs to store the key and take it out when it is used, and there is a risk of exposure in the above-mentioned situations.

PUF (物理不可克隆函数)是硬件形式的单向函数,是物理定义的“数字指纹”,作为微处理器等半导体设备的唯一标识。它们基于半导体制造过程中自然发生的独特物理变化生成,能够用于实现安全功能,如设备认证、密码协议的密钥生成、为随机数生成器生成种子等。已有很多实用的PUF,例如基于器件延迟的PUF、基于访存随机性的PUF等。利用CPU片内SRAM上电初始值的PUF特性,不但能够获取上电时的初始秘钥,而且可以在读取秘钥后通过对SRAM的写操作防止后续对该秘钥的读取,有“阅后即焚”的效果。基于PUF的单向函数特性可以构造密钥生成、更新等密钥管理相关的算法,其原理为:在基于 PUF 的密钥生成应用中采用模糊提取器从 PUF 响应中提取密钥。模糊提取器由安全概略和随机提取器两个部分构成,分别实现 PUF 响应的纠错和密钥的压缩生成。安全概略(Secure Sketch)提供一种从含噪的 PUF 响应中重建出可靠结果并保证结果具有较高剩余熵值的方法。而模糊提取器将纠错后稳定的 PUF 响应中的熵累积至生成的密钥中。模糊提取器包含注册(Enrollment)和重建(Reconstruction)两个阶段。 在注册阶段,将密钥编程至器件中,这个过程类似于传统的基于非易失性存储器的密钥存储方式中的密钥编程阶段。首先读取PUF 响应 R,将其作为生成密钥的参考响应Rref输入模糊提取器。一方面,利用安全概略的注册过程生成用于响应纠错的帮助数据 h,并将其保存至系统的非易失性存储器中。另一方面,随机提取器对参考响应进行压缩生成具有足够熵值的密钥。在重建阶段,再次读取PUF 响应R′,由于噪声的影响该响应将与参考响应相比存在一定程度的不同(错误)。如果响应的错误率在设计纠错能力范围内,则在帮助数据h 的帮助下,安全概略的恢复过程能够纠正 PUF 响应R′中的错误,恢复出与Rref相同的响应。然后,随机提取器以恢复出的响应生成同一密钥。PUF (Physically Unclonable Function) is a one-way function in the form of hardware, which is a physically defined "digital fingerprint" as a unique identifier for semiconductor devices such as microprocessors. They are generated based on unique physical changes that occur naturally during semiconductor manufacturing and can be used to implement security functions such as device authentication, key generation for cryptographic protocols, seeding for random number generators, and more. There are many practical PUFs, such as PUF based on device delay, PUF based on memory access randomness, and so on. Using the PUF feature of the initial power-on value of the CPU on-chip SRAM, not only can the initial key at power-on be obtained, but also the subsequent reading of the key can be prevented by writing to the SRAM after reading the key. Burn after reading" effect. Algorithms related to key management such as key generation and update can be constructed based on the one-way function characteristic of PUF. The fuzzy extractor is composed of two parts, the security summary and the random extractor, which respectively realize the error correction of the PUF response and the compression and generation of the key. Secure Sketch provides a way to reconstruct reliable results from noisy PUF responses and guarantee results with high residual entropy. And the fuzzy extractor accumulates the entropy in the error-corrected stable PUF response into the generated key. The fuzzy extractor consists of two stages: Enrollment and Reconstruction. During the registration phase, the key is programmed into the device, a process similar to the key programming phase in traditional non-volatile memory-based key storage methods. First, the PUF response R is read and fed into the fuzzy extractor as the reference response R ref for generating the key. On the one hand, help data h for response error correction is generated using the registration process of the security profile and stored in the non-volatile memory of the system. On the other hand, the random extractor compresses the reference response to generate a key with sufficient entropy value. During the reconstruction phase, the PUF response R' is read again, which will be somewhat different (error) compared to the reference response due to noise. If the error rate of the response is within the designed error correction capability, then with the help of the help data h, the safe rough recovery process can correct the errors in the PUF response R' and recover the same response as Rref . The random extractor then generates the same key with the recovered response.

发明内容SUMMARY OF THE INVENTION

本发明要解决的技术问题:针对现有技术的上述问题,提供一种支持TEE扩展的安全存储实现方法及系统,本发明能够在系统运行和断电期间持久存储数字化信息,并能有效防护来自TEE内外的非法访问和篡改,包括在线软件攻击和静态物理管脚窥探等威胁。借助多层秘钥管理,TEE中的文件存储可以抵御来自多个方面的威胁或攻击,即使攻击者拿到了RPMB分区的秘钥,也无法解密RPMB文件系统;即使TEE系统中有不安全的应用,该应用可以读写RPMB分区,但也无法获得其它应用以及TEE中的相关文件信息。The technical problem to be solved by the present invention: aiming at the above-mentioned problems of the prior art, a method and system for realizing safe storage supporting TEE expansion are provided. Illegal access and tampering inside and outside the TEE, including threats such as online software attacks and static physical pin snooping. With the help of multi-layer key management, the file storage in TEE can resist threats or attacks from many aspects. Even if the attacker obtains the key of the RPMB partition, the RPMB file system cannot be decrypted; even if there are insecure applications in the TEE system , the application can read and write the RPMB partition, but cannot obtain other applications and related file information in the TEE.

为了解决上述技术问题,本发明采用的技术方案为:In order to solve the above-mentioned technical problems, the technical scheme adopted in the present invention is:

一种支持TEE扩展的安全存储实现方法,实施步骤包括:A secure storage implementation method supporting TEE extension, the implementation steps include:

1)获取RPMB分区的鉴权主密钥KeyRPMB1) Obtain the authentication master key Key RPMB of the RPMB partition;

2)基于鉴权主密钥KeyRPMB实现层级秘钥体制的加密存储:在可信执行环境TEE的内核层,利用指定的秘钥生成算法基于鉴权主密钥KeyRPMB生成生成一个根秘钥KeyR以用于内核层的加解密,且在可信执行环境TEE的生命周期中,根秘钥KeyR一直存在于安全内存和内核态地址空间;在可信执行环境TEE的应用层,针对每一个可信应用TA基于该可信应用TA的通用唯一识别码UUID、根秘钥KeyR生成该可信应用TA所独有的存储秘钥KeyA以用于属于该可信应用TA的文件存储加密和解密;在可信执行环境TEE的文件层,针对每一个文件基于所属可信应用TA的存储秘钥KeyA生成独立的秘钥KeyF以用于该文件的写入加密和读取解密。2) Encrypted storage of hierarchical key system based on the authentication master key Key RPMB : In the kernel layer of the trusted execution environment TEE, use the specified key generation algorithm to generate a root key based on the authentication master key Key RPMB Key R is used for encryption and decryption at the kernel layer, and in the life cycle of the TEE, the root key Key R always exists in the secure memory and kernel-mode address space; in the application layer of the TEE, for Each trusted application TA generates a unique storage key Key A of the trusted application TA based on the universal unique identifier UUID and the root key Key R of the trusted application TA for the files belonging to the trusted application TA Storage encryption and decryption; at the file layer of the trusted execution environment TEE, for each file, an independent key Key F is generated based on the storage key Key A of the trusted application TA to which it belongs, for write encryption and reading of the file decrypt.

可选地,步骤1)的详细步骤包括:Optionally, the detailed steps of step 1) include:

1.1)获取CPU的PUF函数电路的读取值;1.1) Obtain the read value of the PUF function circuit of the CPU;

1.2)将PUF函数电路的读取值、常规存储器中存储的辅助数据DataKA进行异或操作;1.2) XOR the read value of the PUF function circuit and the auxiliary data Data KA stored in the conventional memory;

1.3)将异或操作结果进行指定的解码操作得到种秘钥KeyS1.3) Perform a specified decoding operation on the result of the XOR operation to obtain the key Key S ;

1.4)将种秘钥KeyS通过指定的加密处理得到鉴权主密钥KeyRPMB1.4) Obtain the authentication master key Key RPMB by passing the seed key Key S through the specified encryption process.

可选地,步骤1.3)中指定的解码操作为BCH解码。Optionally, the decoding operation specified in step 1.3) is BCH decoding.

可选地,步骤1.4)中指定的加密处理具体是指利用安全规范中所定义的密钥导出函数KDF进行加密处理。Optionally, the encryption processing specified in step 1.4) specifically refers to performing encryption processing using the key derivation function KDF defined in the security specification.

可选地,步骤1)之前还包括出厂时生成鉴权主密钥KeyRPMB的步骤:Optionally, before step 1), it also includes the step of generating the authentication master key Key RPMB when leaving the factory:

S1)随机选择种秘钥KeySS1) Randomly select the seed key Key S ;

S2)将种秘钥KeyS通过指定的加密处理得到鉴权主密钥KeyRPMB;并写入存储器RPMB分区的一次性密码密钥寄存器;S2) obtain the authentication master key Key RPMB through the specified encryption processing by the kind secret key Key S ; and write the one-time password key register of the memory RPMB partition;

S3)将种秘钥KeyS进行指定的编码操作,且该指定的编码操作为步骤1.3)中指定的解码操作的逆操作;获取CPU的PUF函数电路的读取值,并将编码操作结果和PUF函数电路的读取值进行异或操作得到辅助数据DataKA,最后销毁种秘钥KeyS,并将辅助数据DataKA保存到设备的常规存储器中持久存储。S3) Perform the specified encoding operation on the seed key Key S , and the specified encoding operation is the inverse operation of the decoding operation specified in step 1.3); obtain the read value of the PUF function circuit of the CPU, and combine the encoding operation result with The read value of the PUF function circuit is XORed to obtain the auxiliary data Data KA , and finally the seed key Key S is destroyed, and the auxiliary data Data KA is saved in the conventional memory of the device for persistent storage.

可选地,还包括更换常规存储器后执行步骤S1)~S3)以更新鉴权主密钥KeyRPMB的步骤。Optionally, it also includes the steps of performing steps S1) to S3) to update the authentication master key Key RPMB after replacing the conventional memory.

此外,本发明还提供一种支持TEE扩展的安全存储实现系统,该安全存储实现系统被编程或配置以执行支持TEE扩展的安全存储实现方法的步骤。In addition, the present invention also provides a secure storage implementation system supporting TEE extension, the secure storage implementation system being programmed or configured to perform the steps of the secure storage implementation method supporting TEE extension.

此外,本发明还提供一种支持TEE扩展的安全存储实现系统,包括计算机设备,该计算机设备被编程或配置以执行支持TEE扩展的安全存储实现方法的步骤,或该计算机设备的存储器上存储有被编程或配置以执行支持TEE扩展的安全存储实现方法的计算机程序。In addition, the present invention also provides a secure storage implementation system supporting TEE extension, including computer equipment, the computer equipment is programmed or configured to perform the steps of the secure storage implementation method supporting TEE extension, or the memory of the computer equipment is stored with A computer program programmed or configured to execute a secure storage implementation method supporting TEE extensions.

此外,本发明还提供一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行支持TEE扩展的安全存储实现方法的计算机程序。In addition, the present invention also provides a computer-readable storage medium on which a computer program programmed or configured to execute a secure storage implementation method supporting TEE extension is stored.

和现有技术相比,本发明具有下述优点:为了保证本发明的存储数据不被非法窥探,在TEE的内核层、应用层、文件层分别使用不同的密钥进行加密,并且这些密钥形成树形关系,这样可以对TEE中不同的应用及文件进行隔离,防止一个应用的数据被其他应用访问。基于这样的设计,TEE中的文件存储可以抵御来自多个方面的威胁或攻击。即使攻击者拿到了RPMB分区的秘钥,也无法解密RPMB文件系统;即使TEE系统中有不安全的应用,该应用可以读写RPMB分区,但也无法获得其它应用以及TEE中的相关文件信息。Compared with the prior art, the present invention has the following advantages: in order to ensure that the stored data of the present invention is not illegally snooped, the kernel layer, application layer and file layer of the TEE are encrypted with different keys, and these keys are encrypted. A tree-like relationship is formed, so that different applications and files in the TEE can be isolated to prevent the data of one application from being accessed by other applications. Based on such a design, the file storage in TEE can resist threats or attacks from multiple aspects. Even if the attacker obtains the secret key of the RPMB partition, he cannot decrypt the RPMB file system; even if there is an insecure application in the TEE system, the application can read and write the RPMB partition, but cannot obtain other applications and related file information in the TEE.

附图说明Description of drawings

图1为本发明实施例方法的基本流程示意图。FIG. 1 is a schematic diagram of a basic flow of a method according to an embodiment of the present invention.

图2为本发明实施例中获取鉴权主密钥KeyRPMB的原理示意图。FIG. 2 is a schematic diagram of the principle of obtaining the authentication master key Key RPMB in an embodiment of the present invention.

图3为本发明实施例中生成(更新)鉴权主密钥KeyRPMB的原理示意图。FIG. 3 is a schematic diagram of a principle of generating (updating) an authentication master key Key RPMB in an embodiment of the present invention.

图4为本发明实施例中层级秘钥体制的树形结构示意图。FIG. 4 is a schematic diagram of a tree structure of a hierarchical key system according to an embodiment of the present invention.

具体实施方式Detailed ways

下面对本实施例的技术方案进行实例化描述。在实施例中,本实施例选取TrustZone的TEE环境,假设硬件系统中存在eMMC存储器的RPMB分区,并设RPMB分区的写入秘钥是鉴权主密钥KeyRPMB。设实际应用对于鉴权主密钥KeyRPMB使用有下述需求。秘钥同TEEOS映像分离,使用eMMC外部存储,可在eMMC卡更换时对应更换,从外部存储的信息无法获得秘钥信息。因此,对RPMB秘钥的保护不但要能抵抗来自REE环境的恶意代码攻击,还应抵抗通过实验室设备对SoC芯片的外部端口进行的探测和攻击。The technical solution of this embodiment is described in an example below. In the embodiment, this embodiment selects the TEE environment of TrustZone, assumes that there is an RPMB partition of the eMMC memory in the hardware system, and assumes that the write key of the RPMB partition is the authentication master key Key RPMB . Suppose the practical application has the following requirements for the use of the authentication master key Key RPMB . The secret key is separated from the TEEOS image, and the eMMC external storage is used, which can be replaced when the eMMC card is replaced, and the secret key information cannot be obtained from the externally stored information. Therefore, the protection of the RPMB key should not only resist malicious code attacks from the REE environment, but also resist detection and attacks on the external ports of the SoC chip through laboratory equipment.

本实施例中假设系统中存在类似eMMC存储器的常规存储器,支持通过密码鉴权进行数据的写入控制。本实施例对数据的读操作不做限制。本实施例将数据写入使用的鉴权秘钥称为主秘钥,记为鉴权主密钥KeyRPMBIn this embodiment, it is assumed that there is a conventional memory similar to eMMC memory in the system, which supports data write control through password authentication. This embodiment does not limit the read operation of data. In this embodiment, the authentication key used for data writing is called the master key, which is denoted as the authentication master key Key RPMB .

如图1所示,本实施例支持TEE扩展的安全存储实现方法的实施步骤包括:As shown in FIG. 1 , the implementation steps of the secure storage implementation method for supporting TEE extension in this embodiment include:

1)获取RPMB分区的鉴权主密钥KeyRPMB1) Obtain the authentication master key Key RPMB of the RPMB partition;

2)基于鉴权主密钥KeyRPMB实现层级秘钥体制的加密存储:在可信执行环境TEE的内核层,利用指定的秘钥生成算法基于鉴权主密钥KeyRPMB生成生成一个根秘钥KeyR以用于内核层的加解密,且在可信执行环境TEE的生命周期中,根秘钥KeyR一直存在于安全内存和内核态地址空间;在可信执行环境TEE的应用层,针对每一个可信应用TA基于该可信应用TA的通用唯一识别码UUID、根秘钥KeyR生成该可信应用TA所独有的存储秘钥KeyA以用于属于该可信应用TA的文件存储加密和解密;在可信执行环境TEE的文件层,针对每一个文件基于所属可信应用TA的存储秘钥KeyA生成独立的秘钥KeyF以用于该文件的写入加密和读取解密。2) Encrypted storage of hierarchical key system based on the authentication master key Key RPMB : In the kernel layer of the trusted execution environment TEE, use the specified key generation algorithm to generate a root key based on the authentication master key Key RPMB Key R is used for encryption and decryption at the kernel layer, and in the life cycle of the TEE, the root key Key R always exists in the secure memory and kernel-mode address space; in the application layer of the TEE, for Each trusted application TA generates a unique storage key Key A of the trusted application TA based on the universal unique identifier UUID and the root key Key R of the trusted application TA for the files belonging to the trusted application TA Storage encryption and decryption; at the file layer of the trusted execution environment TEE, for each file, an independent key Key F is generated based on the storage key Key A of the trusted application TA to which it belongs, for write encryption and reading of the file decrypt.

本实施例步骤1)还进一步实现了基于PUF的秘钥保护,以用于保护安全存储器件的写入鉴权主密钥,防止运行时的秘钥外泄以及物理静态窥探,并支持秘钥更新。如图2所示,步骤1)的详细步骤包括:Step 1) of this embodiment further implements PUF-based key protection, which is used to protect the write authentication master key of the secure storage device, prevent key leakage during runtime and physical static snooping, and supports key renew. As shown in Figure 2, the detailed steps of step 1) include:

1.1)获取CPU的PUF函数电路的读取值(图2中表示为PUF);1.1) Obtain the read value of the PUF function circuit of the CPU (represented as PUF in Figure 2);

1.2)将PUF函数电路的读取值、常规存储器中存储的辅助数据DataKA进行异或操作;1.2) XOR the read value of the PUF function circuit and the auxiliary data Data KA stored in the conventional memory;

1.3)将异或操作结果进行指定的解码操作得到种秘钥KeyS1.3) Perform a specified decoding operation on the result of the XOR operation to obtain the key Key S ;

1.4)将种秘钥KeyS通过指定的加密处理得到鉴权主密钥KeyRPMB1.4) Obtain the authentication master key Key RPMB by passing the seed key Key S through the specified encryption process.

本实施例对于存储鉴权主密钥KeyRPMB的保护的基本思想是:在SoC外部持久存储设备中仅保存用于合成鉴权主密钥KeyRPMB的辅助数据DataKA,通过PUF技术进行鉴权主密钥KeyRPMB的生成和恢复;仅在SoC片内安全内存中以内核服务的方式使用鉴权主密钥KeyRPMB,对TEE应用仅保留加密或签名的接口。需要说明的是并不需要对辅助数据DataKA进行特别的安全保护。一方面暴露辅助数据DataKA并不会造成鉴权主密钥KeyRPMB的暴露;另一方面当有攻击者删除或是篡改辅助数据DataKA后,能够被系统及时检测,从而终止后续操作。鉴权主密钥KeyRPMB只在加电启动时有用,运行时并不存在因篡改导致的拒绝服务攻击风险。The basic idea of this embodiment for the protection of the storage authentication master key Key RPMB is: in the SoC external persistent storage device, only the auxiliary data Data KA used to synthesize the authentication master key Key RPMB is stored, and the authentication is performed through the PUF technology. The generation and recovery of the master key Key RPMB ; the authentication master key Key RPMB is only used in the secure memory of the SoC chip as a kernel service, and only the encrypted or signed interface is reserved for the TEE application. It should be noted that special security protection is not required for the auxiliary data Data KA . On the one hand, exposing the auxiliary data Data KA will not cause the exposure of the authentication master key Key RPMB ; on the other hand, when an attacker deletes or tampers the auxiliary data Data KA , it can be detected by the system in time, thereby terminating subsequent operations. The authentication master key Key RPMB is only useful during power-on and startup, and there is no risk of denial of service attacks caused by tampering during operation.

本实施例中,步骤1.3)中指定的解码操作为BCH解码。In this embodiment, the decoding operation specified in step 1.3) is BCH decoding.

本实施例中,步骤1.4)中指定的加密处理具体是指利用安全规范中所定义的密钥导出函数KDF进行加密处理。In this embodiment, the encryption processing specified in step 1.4) specifically refers to performing encryption processing using the key derivation function KDF defined in the security specification.

本实施例中,步骤1)之前还包括如图3所示出厂时生成鉴权主密钥KeyRPMB的步骤:In this embodiment, step 1) also includes the step of generating the authentication master key Key RPMB when leaving the factory as shown in Figure 3:

S1)随机选择种秘钥KeySS1) Randomly select the seed key Key S ;

S2)将种秘钥KeyS通过指定的加密处理得到鉴权主密钥KeyRPMB;并写入存储器RPMB分区的一次性密码密钥寄存器;S2) obtain the authentication master key Key RPMB through the specified encryption processing by the kind secret key Key S ; and write the one-time password key register of the memory RPMB partition;

S3)将种秘钥KeyS进行指定的编码操作,且该指定的编码操作为步骤1.3)中指定的解码操作的逆操作;获取CPU的PUF函数电路的读取值,并将编码操作结果和PUF函数电路的读取值进行异或操作得到辅助数据DataKA,最后销毁种秘钥KeyS,并将辅助数据DataKA保存到设备的常规存储器中持久存储。S3) Perform the specified encoding operation on the seed key Key S , and the specified encoding operation is the inverse operation of the decoding operation specified in step 1.3); obtain the read value of the PUF function circuit of the CPU, and combine the encoding operation result with The read value of the PUF function circuit is XORed to obtain the auxiliary data Data KA , and finally the seed key Key S is destroyed, and the auxiliary data Data KA is saved in the conventional memory of the device for persistent storage.

本实施例中还包括更换常规存储器后执行步骤S1)~S3)以更新鉴权主密钥KeyRPMB的步骤。This embodiment also includes the steps of performing steps S1) to S3) to update the authentication master key Key RPMB after replacing the conventional memory.

参见前文描述可知,本实施例中基于PUF的秘钥保护对于鉴权主密钥KeyRPMB涉及生成、恢复和更新三个部分。生成过程是出厂时进行的,即执行前述步骤S1)~S3);恢复恢复用于每次设备重启、需要读写RPMB分区之前,即执行步骤1.1)~1.4);更新用于设备因维修或其它原因需要更换常规存储器,其基本过程同生成过程一致,即执行前述步骤S1)~S3)。Referring to the foregoing description, it can be known that the PUF-based key protection in this embodiment involves three parts: generation, recovery and update for the authentication master key Key RPMB . The generation process is carried out at the factory, that is, the aforementioned steps S1) to S3) are performed; the recovery is used for each device restart and before the RPMB partition needs to be read and written, that is, the steps 1.1) to 1.4) are performed; For other reasons, the conventional memory needs to be replaced, and the basic process is the same as the generation process, that is, the foregoing steps S1) to S3) are performed.

综上所述,本实施例中基于PUF的秘钥保护具有下述优点:首先,利用PUF的特性,被保护的鉴权主密钥KeyRPMB有用信息暴露时间最小化。这是PUF值(如基于RAM的PUF)的读取时机仅存在于系统加电之初。而通过芯片外部接口的静态读取、以及加电后的REE恶意代码、或者TEE应用中的恶意代码都无法读取到鉴权主密钥KeyRPMB的有用信息,因而增强了对鉴权主密钥KeyRPMB的保护。其次,能够满足秘钥更换、作废等灵活要求,本实施例并不使用PUF值作为鉴权主密钥KeyRPMB,而是利用PUF和一个中间辅助值生成鉴权主密钥KeyRPMB,通过更换辅助值可以更新鉴权主密钥KeyRPMB或作废原先的鉴权主密钥KeyRPMB。中间辅助值没有保密要求,使方案有很好的适用性和灵活性。To sum up, the PUF-based key protection in this embodiment has the following advantages: First, by utilizing the characteristics of PUF, the exposure time of the protected authentication master key Key RPMB useful information is minimized. This is the read opportunity for PUF values (like RAM-based PUFs) that only exist at the beginning of system power-up. However, the useful information of the authentication master key Key RPMB cannot be read through the static reading of the external interface of the chip, the malicious code of REE after power-on, or the malicious code in the TEE application. Protection of the key Key RPMB . Secondly, flexible requirements such as key replacement and revocation can be met. This embodiment does not use the PUF value as the authentication master key Key RPMB , but uses PUF and an intermediate auxiliary value to generate the authentication master key Key RPMB . The auxiliary value can update the authentication master key Key RPMB or invalidate the original authentication master key Key RPMB . The intermediate auxiliary value has no confidentiality requirement, which makes the scheme have good applicability and flexibility.

本实施例中步骤2)实现的层级秘钥体制的加密存储方法能够实现为TEE中的不同软件主体分配和管理私有的密钥,防止TEE来自中其它应用的非法窥探。在步骤2)中基于鉴权主密钥KeyRPMB实现层级秘钥体制的加密存储时:The encryption storage method of the hierarchical key system implemented in step 2) in this embodiment can realize the distribution and management of private keys for different software subjects in the TEE, preventing illegal snooping of the TEE from other applications in the TEE. When implementing the encrypted storage of the hierarchical key system based on the authentication master key Key RPMB in step 2):

2.1、在可信执行环境TEE的内核层(TEE kernel,如图4所示,位于最底层):利用秘钥生成算法基于鉴权主密钥KeyRPMB生成一个新的根秘钥(ROOT Key)根秘钥KeyR,用于内核层的加解密。需要说明的是,种秘钥KeyS既可以随机生成,也可以采用同SoC芯片的ID编码IDSoC以便将根秘钥KeyR的生成机制还可以同SoC芯片的ID编码相关联,实现同平台绑定。本实施例中秘钥生成算法采用KDF,将SoC芯片的ID编码IDSoC作为种秘钥KeyS,因此生成根秘钥KeyR的表达式表示为:KeyR:= KDF(KeyRPMB,IDSoC) ,如图4所示。在TEE的生命周期中,根秘钥KeyR一直存在于安全内存中,不会外泄到非安全区。2.1. In the kernel layer of the trusted execution environment TEE (TEE kernel, as shown in Figure 4, at the bottom layer): use the key generation algorithm to generate a new root key (ROOT Key) based on the authentication master key Key RPMB The root key Key R is used for encryption and decryption at the kernel layer. It should be noted that the seed key Key S can be randomly generated, or the ID SoC of the same SoC chip can be used, so that the generation mechanism of the root key Key R can also be associated with the ID code of the SoC chip to achieve the same platform. bind. In the present embodiment, the key generation algorithm adopts KDF, and the ID code ID SoC of the SoC chip is used as the seed key Key S , so the expression for generating the root key Key R is expressed as: Key R := KDF(Key RPMB ,ID SoC ) ,As shown in Figure 4. During the life cycle of the TEE, the root key Key R always exists in the secure memory and will not leak to the non-secure area.

2.2、在可信执行环境TEE的应用层(如图4所示,位于中间层):针对每一个可信应用TA基于该可信应用TA的通用唯一识别码UUID、根秘钥KeyR生成该可信应用TA所独有的存储秘钥KeyA以用于属于该可信应用TA的文件存储加密和解密;针对每个可信应用TA(Trusted Application)应用由内核生成单独的存储秘钥KeyA,存储秘钥KeyA由根秘钥KeyR和可信应用TA应用的通用唯一识别码(UUID)共同生成,本实施例中秘钥生成算法采用KDF,因此可表示为KeyA := KDF(KeyR,UUIDTA)。KeyA的用途是对属于可信应用TA的文件存储加密和解密。由于每个TA使用独立KeyA,就可以保证TEE中的应用无法获取其他TA的存储信息,进而保证了TEE中应用资源的独立性。如图4所示,可信应用TA1的存储秘钥KeyA1的表达式表示为:KeyA1 := KDF(KeyR,UUIDTA1),可信应用TA2的存储秘钥KeyA2的表达式表示为:KeyA2 :=KDF(KeyR,UUIDTA2),…,可信应用TAn的存储秘钥KeyAn的表达式表示为:KeyAn := KDF(KeyR,UUIDTAn)。2.2. In the application layer of the trusted execution environment TEE (as shown in Figure 4, it is located in the middle layer): for each trusted application TA based on the universal unique identifier UUID of the trusted application TA and the root key Key R The unique storage key Key A of the trusted application TA is used for file storage encryption and decryption belonging to the trusted application TA; for each trusted application TA (Trusted Application) application, a separate storage key Key is generated by the kernel A , the storage key Key A is jointly generated by the root key Key R and the Universal Unique Identifier (UUID) applied by the trusted application TA. In this embodiment, the key generation algorithm adopts KDF, so it can be expressed as Key A := KDF (Key R , UUID TA ). The purpose of Key A is to encrypt and decrypt the file storage belonging to the trusted application TA. Since each TA uses an independent Key A , it can be ensured that applications in the TEE cannot obtain storage information of other TAs, thereby ensuring the independence of application resources in the TEE. As shown in FIG. 4 , the expression of the storage key Key A1 of the trusted application TA 1 is expressed as: Key A1 := KDF(Key R , UUID TA1 ), the expression of the storage key Key A2 of the trusted application TA 2 It is expressed as: Key A2 :=KDF(Key R ,UUID TA2 ),…, the expression of the storage key Key An of the trusted application TA n is expressed as: Key An := KDF(Key R ,UUID TAn ).

2.3、在可信执行环境TEE的文件层(如图4所示,位于最上层),针对每一个文件基于所属可信应用TA的存储秘钥KeyA生成独立的秘钥KeyF以用于该文件的写入加密和读取解密。对于每一个文件也可使用独立的秘钥KeyF,用于对文件数据进行加密。KeyF经过所属TA的KeyA加密后存入对应的文件系统中,在访问时使用相应KeyA对其解密,这样能够进一步保证数据的独立性。本实施例中秘钥生成算法采用KDF,基于所属可信应用TA的存储秘钥KeyA生成独立的秘钥KeyF的表达式为:KeyF:= KDF(KeyA, UUIDF),其中KeyA为所属可信应用TA的存储秘钥,UUIDF为该文件的唯一识别码(根据采用哈希算法等生成)。图4所示最上层仅为可信应用TA2的m个文件的示例,其中最上层属于可信应用TA2的FILE1~FILEm表示m个文件,其对应的独立的秘钥KeyF分别为KeyF1~KeyFm。m个文件FILE1~FILEm中,文件FILE1的秘钥KeyF1的表达式表示为:KeyF1:= KDF(KeyA2,UUIDF1),文件FILE 2的秘钥KeyF2的表达式表示为:KeyF2 := KDF(KeyA2,UUIDF2),…,文件FILE m的秘钥KeyFm的表达式表示为:KeyFm := KDF(KeyA2,UUIDFm)。2.3. In the file layer of the trusted execution environment TEE (as shown in Figure 4, located at the top layer), for each file, an independent key Key F is generated based on the storage key Key A of the trusted application TA to which it belongs. Write encryption and read decryption of files. An independent secret key Key F can also be used for each file to encrypt the file data. The Key F is encrypted by the Key A of the TA and stored in the corresponding file system, and is decrypted using the corresponding Key A during access, which can further ensure the independence of the data. In this embodiment, the key generation algorithm adopts KDF, and the expression for generating an independent key Key F based on the stored key Key A of the trusted application TA is: Key F := KDF(Key A , UUID F ), where Key F := KDF(Key A , UUID F ), where Key A is the storage key of the trusted application TA to which it belongs, and UUID F is the unique identification code of the file (generated according to the hash algorithm, etc.). The top layer shown in FIG. 4 is only an example of m files of the trusted application TA 2 , wherein FILE 1 to FILE m belonging to the trusted application TA 2 at the top layer represent m files, and the corresponding independent keys Key F are respectively are Key F1 to Key Fm . In m files FILE 1 to FILE m , the expression of the secret key Key F1 of the file FILE 1 is expressed as: Key F1 := KDF(Key A2 ,UUID F1 ), and the expression of the secret key Key F2 of the file FILE 2 is expressed as : Key F2 := KDF(Key A2 , UUID F2 ), ..., the expression of the key Key Fm of the file FILE m is expressed as: Key Fm := KDF(Key A2 , UUID Fm ).

为了保证本实施例的存储数据不被非法窥探,在TEE中的不同软件安层次分别使用不同的密钥对存储数据进行加密,并且这些密钥呈树状关系。这样可以对TEE中不同级别的应用及软件模块进行存储信息的隔离,防止一个应用的数据被其他软件模块非法访问。具体上,可以利用存储主密钥生成一个用于加密的根密钥,当软件层次由底层向上层生长-或者由低特权向高特权生长时分别为不同层次加入派生密钥,高层的密钥由其父节点密钥生成。也就是说,同一层次的软件模块使用不同的密钥,但他们存储的加密数据可以使用其直接父节点的密钥间接解密。因此,本实施例中步骤2)实现的层级秘钥体制的加密存储方法能够实现为TEE中的不同软件主体分配和管理私有的密钥,防止TEE来自中其它应用的非法窥探。To ensure that the stored data in this embodiment is not illegally spied on, different software security layers in the TEE use different keys to encrypt the stored data, and these keys are in a tree-like relationship. In this way, different levels of applications and software modules in the TEE can be isolated to store information, preventing the data of one application from being illegally accessed by other software modules. Specifically, the storage master key can be used to generate a root key for encryption. When the software layer grows from the bottom to the upper layer - or from low privilege to high privilege, the derived keys are added for different layers. The high-level key Generated from its parent node key. That is, software modules at the same level use different keys, but the encrypted data they store can be decrypted indirectly using the key of their immediate parent. Therefore, the encryption storage method of the hierarchical key system implemented in step 2) in this embodiment can realize the distribution and management of private keys for different software subjects in the TEE, preventing illegal snooping of the TEE from other applications in the TEE.

此外,本实施例还提供一种支持TEE扩展的安全存储实现系统,该安全存储实现系统被编程或配置以执行前述支持TEE扩展的安全存储实现方法的步骤。In addition, the present embodiment also provides a secure storage implementation system supporting TEE extension, where the secure storage implementation system is programmed or configured to execute the steps of the foregoing secure storage implementation method supporting TEE extension.

此外,本实施例还提供一种支持TEE扩展的安全存储实现系统,包括计算机设备,该计算机设备被编程或配置以执行前述支持TEE扩展的安全存储实现方法的步骤,或该计算机设备的存储器上存储有被编程或配置以执行前述支持TEE扩展的安全存储实现方法的计算机程序。In addition, this embodiment also provides a secure storage implementation system supporting TEE extension, including computer equipment, the computer equipment is programmed or configured to perform the steps of the foregoing method for implementing secure storage supporting TEE extension, or on the memory of the computer equipment. Stored is a computer program programmed or configured to execute the aforementioned TEE extension-enabled secure storage implementation method.

此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行前述支持TEE扩展的安全存储实现方法的计算机程序。In addition, this embodiment also provides a computer-readable storage medium, where a computer program programmed or configured to execute the foregoing method for implementing the secure storage supporting TEE extension is stored thereon.

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。As will be appreciated by those skilled in the art, the embodiments of the present application may be provided as a method, a system, or a computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein. The present application refers to flowcharts of methods, apparatus (systems), and computer program products according to embodiments of the present application and/or processor-executed instructions generated for implementing a process or processes and/or block diagrams in a flowchart. A means for the function specified in a block or blocks. These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory result in an article of manufacture comprising instruction means, the instructions An apparatus implements the functions specified in a flow or flows of the flowcharts and/or a block or blocks of the block diagrams. These computer program instructions can also be loaded on a computer or other programmable data processing device to cause a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process such that The instructions provide steps for implementing the functions specified in one or more of the flowcharts and/or one or more blocks of the block diagrams.

以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。The above are only the preferred embodiments of the present invention, and the protection scope of the present invention is not limited to the above-mentioned embodiments, and all technical solutions under the idea of the present invention belong to the protection scope of the present invention. It should be pointed out that for those skilled in the art, some improvements and modifications without departing from the principle of the present invention should also be regarded as the protection scope of the present invention.

Claims (9)

1.一种支持TEE扩展的安全存储实现方法,其特征在于实施步骤包括:1. a security storage implementation method that supports TEE expansion, is characterized in that implementing step comprises: 1)获取RPMB分区的鉴权主密钥KeyRPMB1) Obtain the authentication master key Key RPMB of the RPMB partition; 2)基于鉴权主密钥KeyRPMB实现层级秘钥体制的加密存储:在可信执行环境TEE的内核层,利用指定的秘钥生成算法基于鉴权主密钥KeyRPMB生成生成一个根秘钥KeyR以用于内核层的加解密,且在可信执行环境TEE的生命周期中,根秘钥KeyR一直存在于安全内存和内核态地址空间;在可信执行环境TEE的应用层,针对每一个可信应用TA基于该可信应用TA的通用唯一识别码UUID、根秘钥KeyR生成该可信应用TA所独有的存储秘钥KeyA以用于属于该可信应用TA的文件存储加密和解密;在可信执行环境TEE的文件层,针对每一个文件基于所属可信应用TA的存储秘钥KeyA生成独立的秘钥KeyF以用于该文件的写入加密和读取解密。2) Encrypted storage of hierarchical key system based on the authentication master key Key RPMB : In the kernel layer of the trusted execution environment TEE, use the specified key generation algorithm to generate a root key based on the authentication master key Key RPMB Key R is used for encryption and decryption at the kernel layer, and in the life cycle of the TEE, the root key Key R always exists in the secure memory and kernel-mode address space; in the application layer of the TEE, for Each trusted application TA generates a unique storage key Key A of the trusted application TA based on the universal unique identifier UUID and the root key Key R of the trusted application TA for the files belonging to the trusted application TA Storage encryption and decryption; at the file layer of the trusted execution environment TEE, for each file, an independent key Key F is generated based on the storage key Key A of the trusted application TA to which it belongs, for write encryption and reading of the file decrypt. 2.根据权利要求1所述的支持TEE扩展的安全存储实现方法,其特征在于,步骤1)的详细步骤包括:2. The secure storage implementation method supporting TEE extension according to claim 1, wherein the detailed steps of step 1) comprise: 1.1)获取CPU的PUF函数电路的读取值;1.1) Obtain the read value of the PUF function circuit of the CPU; 1.2)将PUF函数电路的读取值、常规存储器中存储的辅助数据DataKA进行异或操作;1.2) XOR the read value of the PUF function circuit and the auxiliary data Data KA stored in the conventional memory; 1.3)将异或操作结果进行指定的解码操作得到种秘钥KeyS1.3) Perform a specified decoding operation on the result of the XOR operation to obtain the key Key S ; 1.4)将种秘钥KeyS通过指定的加密处理得到鉴权主密钥KeyRPMB1.4) Obtain the authentication master key Key RPMB by passing the seed key Key S through the specified encryption process. 3.根据权利要求2所述的支持TEE扩展的安全存储实现方法,其特征在于,步骤1.3)中指定的解码操作为BCH解码。3 . The secure storage implementation method supporting TEE extension according to claim 2 , wherein the decoding operation specified in step 1.3) is BCH decoding. 4 . 4.根据权利要求2所述的支持TEE扩展的安全存储实现方法,其特征在于,步骤1.4)中指定的加密处理具体是指利用安全规范中所定义的密钥导出函数KDF进行加密处理。4 . The method for implementing secure storage supporting TEE extension according to claim 2 , wherein the encryption processing specified in step 1.4) specifically refers to performing encryption processing using the key derivation function KDF defined in the security specification. 5 . 5.根据权利要求2所述的支持TEE扩展的安全存储实现方法,其特征在于,步骤1)之前还包括出厂时生成鉴权主密钥KeyRPMB的步骤:5. The secure storage implementation method supporting TEE extension according to claim 2, wherein before step 1), it also includes the step of generating the authentication master key Key RPMB when leaving the factory: S1)随机选择种秘钥KeySS1) Randomly select the seed key Key S ; S2)将种秘钥KeyS通过指定的加密处理得到鉴权主密钥KeyRPMB;并写入存储器RPMB分区的一次性密钥寄存器;S2) obtain the authentication master key Key RPMB through the specified encryption process by the kind secret key Key S ; and write the one-time key register of the memory RPMB partition; S3)将种秘钥KeyS进行指定的编码操作,且该指定的编码操作为步骤1.3)中指定的解码操作的逆操作;获取CPU的PUF函数电路的读取值,并将编码操作结果和PUF函数电路的读取值进行异或操作得到辅助数据DataKA,最后销毁种秘钥KeyS,并将辅助数据DataKA保存到设备的常规存储器中持久存储。S3) Perform the specified encoding operation on the seed key Key S , and the specified encoding operation is the inverse operation of the decoding operation specified in step 1.3); obtain the read value of the PUF function circuit of the CPU, and combine the encoding operation result with The read value of the PUF function circuit is XORed to obtain the auxiliary data Data KA , and finally the seed key Key S is destroyed, and the auxiliary data Data KA is saved in the conventional memory of the device for persistent storage. 6.根据权利要求5所述的支持TEE扩展的安全存储实现方法,其特征在于,还包括更换常规存储器后执行步骤S1)~S3)以更新鉴权主密钥KeyRPMB的步骤。6 . The method for implementing secure storage supporting TEE extension according to claim 5 , further comprising a step of performing steps S1 ) to S3 ) after replacing the conventional memory to update the authentication master key Key RPMB . 7 . 7.一种支持TEE扩展的安全存储实现系统,其特征在于,该安全存储实现系统被编程或配置以执行权利要求1~6中任意一项所述支持TEE扩展的安全存储实现方法的步骤。7 . A secure storage implementation system supporting TEE extension, wherein the secure storage implementation system is programmed or configured to execute the steps of the secure storage implementation method supporting TEE extension according to any one of claims 1 to 6 . 8.一种支持TEE扩展的安全存储实现系统,包括计算机设备,其特征在于,该计算机设备被编程或配置以执行权利要求1~6中任意一项所述支持TEE扩展的安全存储实现方法的步骤,或该计算机设备的存储器上存储有被编程或配置以执行权利要求1~6中任意一项所述支持TEE扩展的安全存储实现方法的计算机程序。8. A secure storage implementation system supporting TEE extension, comprising computer equipment, characterized in that the computer equipment is programmed or configured to execute the implementation of the secure storage implementation method supporting TEE extension according to any one of claims 1 to 6 step, or a computer program programmed or configured to execute the method for implementing the secure storage supporting TEE extension described in any one of claims 1 to 6 is stored in the memory of the computer device. 9.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有被编程或配置以执行权利要求1~6中任意一项所述支持TEE扩展的安全存储实现方法的计算机程序。9. A computer-readable storage medium, characterized in that a computer programmed or configured to execute the secure storage implementation method supporting TEE extension according to any one of claims 1 to 6 is stored on the computer-readable storage medium program.
CN202010251384.XA 2020-04-01 2020-04-01 Secure storage implementation method and system supporting TEE extension Pending CN111444553A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010251384.XA CN111444553A (en) 2020-04-01 2020-04-01 Secure storage implementation method and system supporting TEE extension

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010251384.XA CN111444553A (en) 2020-04-01 2020-04-01 Secure storage implementation method and system supporting TEE extension

Publications (1)

Publication Number Publication Date
CN111444553A true CN111444553A (en) 2020-07-24

Family

ID=71652715

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010251384.XA Pending CN111444553A (en) 2020-04-01 2020-04-01 Secure storage implementation method and system supporting TEE extension

Country Status (1)

Country Link
CN (1) CN111444553A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112422279A (en) * 2020-11-11 2021-02-26 深圳市中易通安全芯科技有限公司 Intelligent terminal key management method and hierarchical management system
CN112464299A (en) * 2020-11-27 2021-03-09 合肥大唐存储科技有限公司 Method and device for realizing safety data storage, computer storage medium and terminal
CN112738083A (en) * 2020-12-28 2021-04-30 福建正孚软件有限公司 Cross-network cross-border data transmission based secure access key management system and method
CN112784301A (en) * 2021-01-22 2021-05-11 珠海妙存科技有限公司 Method, device and medium for improving RPMB partition data security
CN114257877A (en) * 2021-12-02 2022-03-29 展讯通信(上海)有限公司 Key deployment and use method and device for broadband digital video protection (HDCP)
CN116126753A (en) * 2022-12-28 2023-05-16 江苏都万电子科技有限公司 Protective memory and storage method
US11824984B2 (en) 2022-01-11 2023-11-21 International Business Machines Corporation Storage encryption for a trusted execution environment
CN117668933A (en) * 2022-08-30 2024-03-08 荣耀终端有限公司 Data storage methods and electronic devices
CN117668932A (en) * 2022-08-30 2024-03-08 荣耀终端有限公司 Data storage method and electronic equipment

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103530578A (en) * 2013-10-18 2014-01-22 武汉大学 Method for constructing STPM of android system
CN105007285A (en) * 2015-08-19 2015-10-28 南京万道电子技术有限公司 Key protection method and safety chip based on physical no-cloning function
US20160070932A1 (en) * 2014-09-10 2016-03-10 Vincent J. Zimmer Providing A Trusted Execution Environment Using A Processor
US20190163913A1 (en) * 2017-11-29 2019-05-30 Mstar Semiconductor, Inc. Root key processing method and associated device
CN109960903A (en) * 2017-12-26 2019-07-02 中移(杭州)信息技术有限公司 A method, device, electronic device and storage medium for application reinforcement
US20190340393A1 (en) * 2018-05-04 2019-11-07 Huawei Technologies Co., Ltd. Device and method for data security with a trusted execution environment
CN110677418A (en) * 2019-09-29 2020-01-10 四川虹微技术有限公司 Trusted voiceprint authentication method and device, electronic equipment and storage medium

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103530578A (en) * 2013-10-18 2014-01-22 武汉大学 Method for constructing STPM of android system
US20160070932A1 (en) * 2014-09-10 2016-03-10 Vincent J. Zimmer Providing A Trusted Execution Environment Using A Processor
CN105007285A (en) * 2015-08-19 2015-10-28 南京万道电子技术有限公司 Key protection method and safety chip based on physical no-cloning function
US20190163913A1 (en) * 2017-11-29 2019-05-30 Mstar Semiconductor, Inc. Root key processing method and associated device
CN109960903A (en) * 2017-12-26 2019-07-02 中移(杭州)信息技术有限公司 A method, device, electronic device and storage medium for application reinforcement
US20190340393A1 (en) * 2018-05-04 2019-11-07 Huawei Technologies Co., Ltd. Device and method for data security with a trusted execution environment
CN110677418A (en) * 2019-09-29 2020-01-10 四川虹微技术有限公司 Trusted voiceprint authentication method and device, electronic equipment and storage medium

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
SHIJUN ZHAO ET AL.: "Providing Root of Trust for ARM TrustZone using On-Chip SRAM" *
吴缙 等: "基于PUF的可信根及可信计算平台架构设计" *
范冠男: "基于TrustZone的虚拟化TPM研究" *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112422279B (en) * 2020-11-11 2023-02-03 深圳市中易通安全芯科技有限公司 Intelligent terminal key management method and hierarchical management system
CN112422279A (en) * 2020-11-11 2021-02-26 深圳市中易通安全芯科技有限公司 Intelligent terminal key management method and hierarchical management system
CN112464299A (en) * 2020-11-27 2021-03-09 合肥大唐存储科技有限公司 Method and device for realizing safety data storage, computer storage medium and terminal
CN112738083A (en) * 2020-12-28 2021-04-30 福建正孚软件有限公司 Cross-network cross-border data transmission based secure access key management system and method
CN112738083B (en) * 2020-12-28 2023-05-19 福建正孚软件有限公司 System and method for managing secure access key based on cross-network and cross-border data transmission
CN112784301A (en) * 2021-01-22 2021-05-11 珠海妙存科技有限公司 Method, device and medium for improving RPMB partition data security
CN114257877A (en) * 2021-12-02 2022-03-29 展讯通信(上海)有限公司 Key deployment and use method and device for broadband digital video protection (HDCP)
US11824984B2 (en) 2022-01-11 2023-11-21 International Business Machines Corporation Storage encryption for a trusted execution environment
CN117668932A (en) * 2022-08-30 2024-03-08 荣耀终端有限公司 Data storage method and electronic equipment
CN117668933B (en) * 2022-08-30 2025-09-12 荣耀终端股份有限公司 Data storage method and electronic device
CN117668933A (en) * 2022-08-30 2024-03-08 荣耀终端有限公司 Data storage methods and electronic devices
CN116126753A (en) * 2022-12-28 2023-05-16 江苏都万电子科技有限公司 Protective memory and storage method
CN116126753B (en) * 2022-12-28 2024-02-02 江苏都万电子科技有限公司 Protective memory and storage method

Similar Documents

Publication Publication Date Title
CN111444553A (en) Secure storage implementation method and system supporting TEE extension
JP7416775B2 (en) Peripheral device
EP3758287B1 (en) Deterministic encryption key rotation
Mohammad et al. Required policies and properties of the security engine of an SoC
CN100361039C (en) Secure processor
US12105859B2 (en) Managing storage of secrets in memories of baseboard management controllers
KR100611687B1 (en) Multi-token seal and thread release
KR100996784B1 (en) One or more computer readable media storing a method, system and a plurality of instructions implemented in a computing device for storage and retrieval of data based on public key encryption.
JP5537742B2 (en) Method and apparatus including architecture for protecting multi-user sensitive code and data
KR101067399B1 (en) One or more computer readable media storing a method, system and a plurality of instructions implemented in a computing device for storage and retrieval of data based on symmetric key encryption.
TWI851820B (en) Integrated circuit, system for securely managing a plurality of keys used for data security and method performed by integrated circuit
TWI514187B (en) Systems and methods for providing anti-malware protection on storage devices
US10318765B2 (en) Protecting critical data structures in an embedded hypervisor system
JP7256861B2 (en) secure computer system
KR20190063264A (en) Method and Apparatus for Device Security Verification Utilizing a Virtual Trusted Computing Base
US20050141717A1 (en) Apparatus, system, and method for sealing a data repository to a trusted computing platform
CN106383790A (en) Bus management unit and high safety system on chip
CN110659506A (en) Replay protection of memory based on key refresh
Gross et al. Enhancing the security of FPGA-SoCs via the usage of ARM TrustZone and a hybrid-TPM
CN107563226A (en) A kind of Memory Controller, processor module and key updating method
US10452565B2 (en) Secure electronic device
CN119026179A (en) Data integrity protection method and related device
Vaswani et al. Confidential machine learning within graphcore ipus
Bertani et al. Confidential Computing: A Security Overview and Future Research Directions
CN119166290B (en) Memory controller, data writing and reading method, and computer system

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200724

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载