本说明书实施例属于计算机,尤其涉及一种用于隐私保护的数据处理方法和计算设备。
背景技术:
1、可信执行环境(tee-trusted execution environment)是计算设备中的通过硬件保障的安全可信的执行环境。tee提供一个隔离的执行环境,使得当在该tee中运行代码和数据时可以保证不被常规操作系统干扰,从而可以保证放入tee中的代码和数据的安全性、机密性和完整性。
技术实现思路
1、本发明的目的在于提供一种用于隐私保护的数据处理方法,以用于在tee之间进行数据传输。
2、本说明书第一方面提供一种用于隐私保护的数据处理方法,由计算设备执行,所述计算设备包括第一可信执行环境tee和第二tee,所述计算设备在tee外部设置有共享内存,所述共享内存中包括与所述第一tee对应的第一地址,所述第一tee和所述第二tee中预先存储有所述第一地址,所述方法包括:
3、所述第一tee对获取的第一数据进行处理,得到中间数据;将所述中间数据存储到所述第一地址;
4、所述第二tee从所述第一地址读取所述中间数据,对所述中间数据进行数据处理。
5、本说明书第二方面提供一种用于隐私保护的计算设备,所述计算设备包括第一可信执行环境tee和第二tee,所述计算设备在tee外部设置有共享内存,所述共享内存中包括与所述第一tee对应的第一地址,所述第一tee和所述第二tee中预先存储有所述第一地址,
6、所述第一tee用于对获取的第一数据进行处理,得到中间数据;将所述中间数据存储到所述第一地址;
7、所述第二tee用于从所述第一地址读取所述中间数据,对所述中间数据进行数据处理。
8、本说明书第三方面提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面所述的方法。
9、本说明书第四方面提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面所述的方法。
10、本说明书实施例中提供的数据处理方法中,通过在非可信区创建共享内存,并在该共享内存中对tee分配存储地址(slot),从而该tee可通过分配给其的slot将数据传输给其他tee。在该过程中,各个tee各自在自己的上下文执行,不需要进行上下文切换,同时不需要对数据进行多次复制。
1.一种用于隐私保护的数据处理方法,由计算设备执行,所述计算设备包括第一可信执行环境tee和第二tee,所述计算设备在tee外部设置有共享内存,所述共享内存中包括与所述第一tee对应的第一地址,所述第一tee和所述第二tee中预先存储有所述第一地址,所述方法包括:
2.根据权利要求1所述的方法,所述计算设备包括n个第一tee,所述共享内存中包括与所述n个第一tee分别对应的n个第一地址,各个所述第一tee存储有与其对应的第一地址,所述第二tee中预先存储有所述n个第一地址,
3.根据权利要求1所述的方法,所述共享内存中还包括第二地址,所述第一tee和所述第二tee中预先存储有所述第二地址,所述方法还包括,所述第一tee在将所述中间数据存储到所述第一地址之后,在所述第二地址中进行写入,以指示所述第一tee已经将所述中间数据存储到所述第一地址,
4.根据权利要求2所述的方法,还包括:
5.根据权利要求4所述的方法,还包括:创建所述共享内存,在所述共享内存中设置所述n个第一地址,将各个所述第一地址提供给各个所述第一tee。
6.根据权利要求2所述的方法,各个所述第一tee和所述第二tee存储有密钥,所述将所述中间数据存储到所述第一地址包括:基于所述密钥对所述中间数据进行加密,得到密文中间数据,将所述密文中间数据存储到所述第一地址。
7.根据权利要求1所述的方法,所述第一tee中设置有内存分配模块,所述将所述中间数据存储到所述第一地址包括:通过所述内存分配模块从所述第一地址中分配空闲的第三地址,所述第三地址的存储容量对应于所述中间数据中包括的第二数据的大小,在所述第三地址写入所述第二数据。
8.根据权利要求7所述的方法,还包括:所述第一tee在对第一数据的处理过程中,将得到的第三数据存储到所述第一tee内的缓存中,所述第三数据是所述中间数据中的部分数据,
9.根据权利要求5所述的方法,所述第一tee中存储有用于进行机器学习的第一代码,所述第二tee中存储有用于进行机器学习的第二代码,所述m条密文数据为m条密文样本,
10.一种用于隐私保护的计算设备,所述计算设备包括第一可信执行环境tee和第二tee,所述计算设备在tee外部设置有共享内存,所述共享内存中包括与所述第一tee对应的第一地址,所述第一tee和所述第二tee中预先存储有所述第一地址,
11.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-9中任一项所述的方法。