[发明专利]TEE系统中的数据传输方法和装置有效
申请号: | 201910640641.6 | 申请日: | 2019-07-16 |
公开(公告)号: | CN110427274B | 公开(公告)日: | 2020-07-17 |
发明(设计)人: | 刘琦;赵博然;闫莺;魏长征 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F21/60 |
代理公司: | 北京亿腾知识产权代理事务所(普通合伙) 11309 | 代理人: | 张静娟;周良玉 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | tee 系统 中的 数据传输 方法 装置 | ||
本说明书实施例提供了一种TEE系统中的数据传输方法和装置,其中,所述方法中由TEE侧执行的方法包括:获取第一数据;通过读取第一地址,获取写偏移地址;通过读取第二地址,获取读偏移地址;判断所述第一数据的字节数是否小于等于可写字节数,其中,所述可写字节数基于所述写偏移地址和所述读偏移地址确定,其中,每个地址对应于一个字节;在所述第一数据的字节数小于等于可写字节数的情况中,将所述第一数据写入从所述写偏移地址开始的第三地址中;以及更新所述第一地址中的写偏移地址。
技术领域
本说明书实施例涉及TEE技术领域,更具体地,涉及TEE系统中的数据传输方法和装置。
背景技术
可信执行环境(TEE-Trusted Execution Environment)是处理器中的安全可信区域,可以保证放入其中的代码和数据的安全性、机密性和完整性。TEE提供一个隔离的执行环境,代码和数据可以在这个可信区域内运行,运行过程中可以保证不被常规操作系统干扰的计算,这样就可以达到保证代码和数据的机密性和完整性。TEE(EAL2+)与常规操作系统相比,提供更高级别的安全性;与SE(EAL5)相比,提供更多的功能,更好的性能。TEE有很多种实现方式,比如Intel的SGX,AMD的SEV,ARM的TrustZone(可信区)等。因为TEE提供的是一个隔离的执行环境,所以非TEE环境与TEE环境的通信一般都是通过特殊的指令调用,比如smc call(TrustZone)或ecall ocall(SGX)。这些指令会引起CPU切换运行状态,恢复寄存器等上下文信息,带来一定的性能损耗。
因此,需要一种更有效的在TEE系统中进行数据传输的方案。
发明内容
本说明书实施例旨在提供一种更有效的在TEE系统中进行数据传输的方案,以解决现有技术中的不足。
为实现上述目的,本说明书一个方面提供一种TEE系统中的数据传输方法,所述TEE系统包括TEE侧和非TEE侧,在所述非TEE侧包括共享内存,所述共享内存中包括第一地址、第二地址和连续的多个第三地址,其中,所述第一地址用于存储写偏移地址,所述写偏移地址指示所述多个第三地址中可写入的起始地址,所述第二地址用于存储读偏移地址,所述读偏移地址指示所述多个第三地址中可读取的起始地址,所述第三地址用于存储来自TEE侧的数据,所述方法由TEE侧执行,包括:
获取第一数据;
通过读取第一地址,获取写偏移地址;
通过读取第二地址,获取读偏移地址;
判断所述第一数据的字节数是否小于等于可写字节数,其中,所述可写字节数基于所述写偏移地址和所述读偏移地址确定,其中,每个地址对应于一个字节;
在所述第一数据的字节数小于等于可写字节数的情况中,将所述第一数据写入从所述写偏移地址开始的第三地址中;以及
更新所述第一地址中的写偏移地址。
在一个实施例中,所述第一数据为以下任一种数据:日志、监控数据、统计数据。
在一个实施例中,所述方法还包括,在所述第一数据的字节数大于可写字节数的情况中,进行等待。
在一个实施例中,所述共享内存中还包括第四地址,用于存储丢弃数据数目,所述方法还包括,在所述第一数据的字节数大于可写字节数的情况中,丢弃所述第一数据,并将第四地址中存储的丢弃数据数目加一。
在一个实施例中,所述丢弃数据数目为原子变量。
在一个实施例中,所述写偏移地址在所述读偏移地址之前,所述可写字节数等于所述读偏移地址减去所述写偏移地址之差。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910640641.6/2.html,转载请声明来源钻瓜专利网。