一、可信执行环境(Trusted Execution Environment,TEE)
TEE是硬件中的一个独立的安全环境中,与操作系统并行运行。硬件本身保证TEE中代码和数据的机密性和完整性,也就是说,TEE是硬件服务提供商应用硬件在现实世界中构造的安全计算环境。
应用TEE实现隐私增强计算的过程可以通过下图描述。
· 步骤1:各个参与方将自己的数据x通过安全链路传输给TEE;
· 步骤2:TEE在保证机密性和完整性的条件下完成计算任务;
· 步骤3:TEE通过安全链路将计算结果发送给各个参与方。
目前,DataTrust应用英特尔的软件防护扩展(Software Guard Extensions,SGX)作为TEE。
SGX是Intel CPU提供的一组指令集和内存访问机制,应用程序可以通过这组指令集和内存访问机制实现一个被称为安全区(Enclave)的容器,在应用程序的地址空间中划分出一个被保护的区域,为容器内的代码和数据提供机密性和完整性保护,免受拥有特殊权限的恶意软件的破坏。
二、安全多方计算(Secure Multi-Party Computation,MPC)
MPC是密码学中的定义,意为在无可信计算方的情况下,多个参与方各自持有秘密输入完成对某个函数的计算,但每个参与方最终只能得到计算结果和能从自己输入和计算结果中推出的信息,其他信息均可得到保护。
安全多方计算的定义可以通过下图描述。
DataTrust目前支持专用MPC协议隐私集合求交(Private Set Intersection,PSI)实现两方数据的安全匹配;同时,支持上亿级别输入的PSI协议,并根据单次匹配、周期性匹配、增量匹配等实际业务场景提供不同类型PSI协议的支持。
三、联邦学习(Federated Learning,FL)
联邦学习是一种多个参与方在保证各自原始私有数据不出数据方定义的私有边界的前提下,协作完成某项机器学习任务的机器学习模式。
根据隐私安全诉求与训练效率的不同,可以通过MPC、同态加密(Homomorphic Encryption,HE)、差分隐私(定义见下)等多种方式实现联邦学习。
DataTrust支持基于差分隐私的联邦学习,相应技术方案在保证效果和性能的前提下,拥有安全上的理论支撑。值得注意的是,DataTrust支持的联邦学习算法已覆盖神经网络和决策树等常用算法。
四、差分隐私(Differential Privacy,DP)
DP是一种基于对数据引入随机扰动,并从理论层面度量随机扰动所带来的隐私保护程度的隐私保护方法。根据随机扰动方式的不同,DP分为在原始数据层面进行随机扰动的本地差分隐私(Local Differential Privacy,LDP)和在计算结果层面进行随机扰动的中心差分隐私(Central Differential Privacy,CDP)。
DataTrust在FL层面应用DP实现训练/预测过程中的个人隐私保护,并综合使用CDP/LDP技术,以支持不同的学习/预测任务