带你读《从基础到应用云上安全航行指南》——一文教你如何从零构建机密计算平台解决方案(1):https://developer.aliyun.com/article/1441289
二、多方数据协作
多方数据协作有多个数据参与方,各方拥有私有数据,各自的数据通过协作的计算获得一个更有意义的结果,比如联合模型训练、联合风控、联合营销等等,前提是不能够把自身隐私数据泄露出去。比如A作为一个参与方参与协作计算,不能把用户的身份标识、消费记录、信贷记录、联系方式、家庭住址等泄露给其他参与方,但最终要去其他参与方数据一起计算出某人的信用等级等等,在协作期间各方数据要保持对他人可用不可见。
在这个场景下,机密计算可以提供良好的落地方案。
在传统的协作中通常有一个可信第三方,参与方的数据交给第三方,由第三方按照约定处理数据,然后把结果返回各个对应方。这其中的问题是数据对于第三方是可见的,因此大家必须要信任第三方,并且可能因为管理问题、内部恶意等存在数据泄露的可能。
针对这种问题的解法有两个思路:
第一,利用隐私计算算法(如不经意传输、零知识证明等)解决,参与方不直接交换数据明文,而是将结果的计算变换成等价的分敏感数据参数的数学问题。比如百万富翁的问题,双方不用把自己的实际财产告诉对方,而对比出谁财产更多。
第二,基于利用机密硬件保护整个计算过程,使计算过程中的数据仅在芯片内部可见,不暴露给其他参与者或平台方。上图右侧展示了由机密计算构建的clean room的一个结构——参与方把自己的数据提交到clean room中,机密硬件保护整个计算过程中的代码可信性、数据和计算过程的机密性,公开的合约+可信的代码保证了计算过程的可预期性,最终保证协作过程的公开透明、可预期、数据不会泄露。
这里介绍一款信托帮,其是蚂蚁实现的数据写作的平台,平台已经入驻到计算巢中。
在计算巢中可以很方便地部署和数据协作,稍后给大家做演示。信托邦本质上是一个spark集群,多个可信机密节点构成spark集群,数据提交到机密worker节点,程序按照合约进行计算。它的特点是使用机密计算硬件平台包括计算过程,通过公开的合约计算数据,各方拿到结果是可预期的,信任是对等的。
上图是它的内部结构,基于蚂蚁自研的Occlum LibOS系统,屏蔽了机密硬件对上层应用的细节,应用可以跑在TDX、SGX、CSV等机密硬件上。
https://cloud.video.taobao.com/play/u/null/p/1/e/6/t/1/448886815213.mp4
【demo演示:信托帮计算隐私演示】
带你读《从基础到应用云上安全航行指南》——一文教你如何从零构建机密计算平台解决方案(3):