隐语课程学习笔记3-从行业发展趋势看待隐语架构演变

1. 前言-行业分析(个人观点)

        从行业调研看,国内隐私计算其实真正开始有所进展,是在当初互联网金融行业被严格监管开始,互金行业发生了一些典型的事件,促使数据安全、数据保护上升到更高的监管层面。从18年至今,隐私计算行业逐步跑出一些突出的厂商,比如华控清交、数牍等,后来居上的还有蓝象、富数、洞见等厂商,在20年左右,资本对于隐私计算的热度非常高,各厂商招兵买马,投入巨量资源,开发各种隐私计算算法、分布式节点计算技术、平台底座等,期间运营商、银行、能源大户等组织非常多的POC,信通院推进各类关键技术的测评,如火如荼,都促使国内的隐私技术站在全球领先的地位。在这个过程中,微众Fate其实扮演了早期国内关于联邦学习的技术布道者,对于相关厂商以及需求机构理解联邦学习、隐私计算是怎么一回事以及如何使用起到很关键的作用。同时,来自国外的隐私计算开源框架,如MP-SPDZ、TF-Encrypted、Cryptflow2、ABY等也带来了更多的新的视角,此外还有如EMP、LibOTe等密码库,进一步帮助国内研究者、开发者提升对隐私计算内核技术的认知。应该说,直到2022年-2023年这两年差不多,隐私计算技术的框架、技术经过多年的开发迭代,已经逐步成熟,性能也基本达到可满足商用的水平。从2023年开始,主流的厂商,已经开始在商业化领域踏出了关键性一步,从单纯追求技术的先进性逐步转到数据要素流通平台建设,比较突出如蓝象、锘威、金智塔等。也是在2023年,移动、富数等推出了基于隐私计算为底层技术的数联网,旨在构建全行业多节点的数据要素流通网络。随着国家层面出手推动数据要素流通建设的力度不断增强,隐私计算作为核心技术支撑,会得到进一步的发展和应用。

        基于上述背景,再来看隐语的发展和架构演化,会有更清晰的感知。隐语在22年7月正式对外开源,这个时间点现在看起来,是很好的时机。隐私计算行业基本已经走过了混乱的时代,经过行业多年探索以及信通院等权威机构测评形成标准,行业逐步对隐私计算能够解决什么问题、采用什么样的架构,对于联邦学习、多方安全计算、安全求交、匿踪查询等技术也有相对一致的认知,并且对于性能要求与安全性的平衡,等都有相对统一的认知。此时推出的隐语平台,可以在吸取各厂商、各开源框架的长处基础上,结合蚂蚁自身深厚的技术底蕴,沉淀出更加优秀更加完整更加工业级的隐私计算平台。从隐语的架构拆解分析上,可以看到很多熟悉的开源项目或者业内厂商技术的影子,隐语可以说是集大成者。

        另外,从行业整体发展来看,经历了前期大规模技术探索投入完成1.0的搭建后,进一步大规模的技术投入已经不太可能。而且对整体经济预期的变化,资本的热度也有一定的退潮。部分厂商从招聘网站、社交网络上看,技术投入都在缩小,甚至通过裁员降本。所以背靠蚂蚁大厂的隐语,在现阶段,反而具备进一步的后发优势,隐语技术投入依然可观,从发展路线图可以看到,隐语技术更新迭代保持稳定的速度,像csql、secretpad等产品的层出不穷,都进一步使得隐语站在隐私计算行业的前列。个人观点,也许隐语可能会像传统的机器学习工具包sklearn一样,成为一种行业默认的常用工具。行业内的优秀开发者可能会流向隐语平台。

 2、读书笔记  

2.1 框架

        隐语框架详细描述了从硬件到应用的全栈隐私保护和计算环境,涵盖了数据分析、计算、资源管理等多个方面。各个层次之间相互配合,共同实现对数据隐私的全面保护。采用高内聚低耦合设计,保持整体系统的高度灵活性。

产品层

  1. 黑屏 CLI
    • 命令行界面,用于直接与系统进行交互。用户可以通过命令行执行各种操作,如数据处理、模型训练等。
  2. 白屏组件 DAG 画布
    • DAG(有向无环图)画布是一种可视化工具,用于展示和管理数据处理流程。用户可以通过拖拽组件来构建数据处理管道。
  3. 白屏 Notebook IDE
    • 集成开发环境,基于网页的界面,类似Jupyter Notebook,用户可以在其中编写、运行和分享代码。
  4. API / SDK
    • 应用编程接口和软件开发工具包,允许开发者将框架的功能集成到其他应用中,并进行扩展。

算法层

  1. PSI / PIR
    • PSI(Private Set Intersection):私有集合求交,要求参与方在互相不公开本地集合的前提下,共同计算得出多个参与方的集合的交集,且不能向任何参与方泄露交集以外的信息。
    • PIR(Private Information Retrieval):隐私信息检索,也有称隐匿查询的,查询方隐藏查询的关键词,数据持有方提供对应的加密查询结果,同时不暴露额外的数据信息。
  2. Data Analysis
    • 数据分析技术,包含各种BI统计分析和机器学习算法,用于从数据中提取有用的信息。
  3. Federated Learning
    • 联邦学习,这里特指可信联邦学习。是一种可信的分布式机器学习方法,各参与方在保护自身原始数据基础上,能够完成联合模型的学习训练,从而保护数据隐私。常用的有横向联邦、纵向联邦。现在有需求提出需要横纵向混合联邦,这类场景还是比较特征,可能随着应用越来越广,此类需求也会越来越多。

计算层

  1. 隐私保护原语
    • DP(Differential Privacy):差分隐私,通过在统计结果中引入噪声,保护个体数据隐私。
    • 脱敏:数据去标识化,移除或模糊数据中的敏感信息。
  2. 隐私引擎
    • SPU(Secure Processing Unit):安全处理单元,支持安全多方计算(SMPC),各方共同计算而不泄露各自的输入。
    • HEU(Homomorphic Encryption Unit):同态加密单元,允许在加密数据上直接进行计算,而不需要解密数据。
    • TEEU(Trusted Execution Environment Unit):可信执行环境单元,在安全硬件内运行代码,确保代码和数据在执行过程中不被篡改。
    • TECCU(Trusted Computing Unit):可信计算单元,提供安全的计算环境。
  3. 明文引擎
    • PYU:Python计算单元,用于执行Python代码。
    • SQL:结构化查询语言,用于管理和操作关系数据库。
  4. 密码原语(YACL)
    • 各种加密算法和协议,用于数据加密、签名、验证等操作。

资源层

  1. Kuscia:资源管理平台,包括:
    • 数据管理:管理数据的存储、访问权限和生命周期。
    • 网络管理:管理网络资源,确保数据传输的安全性和稳定性。
    • 计算资源管理:分配和管理计算资源,如CPU、内存和存储。
    • 应用管理:管理应用程序的部署、监控和更新。

硬件层

  1. 硬件加速
    • 使用硬件加速技术(FPGA、GPU、ASIC)提高计算性能。
  2. 可信环境
    • 提供安全执行环境,确保数据和代码在执行过程中不被篡改或泄露。
    • Intel SGX2海光CSVIntel TDXAMD SEVHyperEnclave:各种硬件支持的可信执行环境。

边缘组件

  1. 互联互通
    • 白盒:关注不同结构的算法组件的互联互通。
    • 黑盒:关注管理面的互联互通。
    • 异构 TEE:不同类型的可信执行环境,支持异构硬件环境中的安全计算。
  2. 跨域管控
    • 三权分离:分离数据持有权、使用权和经营权,确保数据使用过程中的安全性和合规性。
    • 密态存储:加密存储数据,保护数据在存储过程中的安全。
    • 全栈审计:提供全面的审计和监控功能,确保系统操作的透明性和合规性。

2.2 应用产品

        可视化其实是被隐私计算厂商普遍采用的方案。在传统的机器学习场景,也有类似的,比如阿里的PAI。这种模式对于非机器学习背景的同学使用,会友好一些。但一旦涉及到调参,对于普通用户来说依然是噩梦。要真的适合最普通用户的话,可能还是采用模版的方式提供服务,会更加适合。另外,对于secretnote产品,需要点赞,见过一般的厂商,也有引入notebook,但隐语做了更多的集成和定制,使用起来更便捷。

2.3 安全求交以及隐匿查询

        隐语提供了很多的开源算法实现,比如kkrt16,在高带宽下性能较优,不过从业内机构真实使用场景,基本很少有高带宽的场景,所以这种算法实现更适合学术场景研究或者poc场景pk使用。ecdh的实现,则是原理很简单,非常适合拆解做互联互通,但面对业内大数据量的求交,基本达不到可用的水平,也是特别适合做研究使用。目前业内真实的业务场景使用,还是偏向使用其他的开源算法。多方的场景也不是很多,但一般机构都会要求具备多方求交,特别是能够扩展到8-10方的求交能力,可能更多的是为未来业务的技术储备。

        在PIR方面,隐语应该是处于领先水品,对于开源的技术实现,追踪都很及时。这也是隐语作为大厂团队的一个优势,可以有足够的人员力量保持前沿技术的追踪、投入、研发。而一般的公司,往往追求短期利益更多,投入上抠抠嗖嗖,难以支撑研发团队在技术上一直做投入,因此个人认为随时产品持续发展,隐语在技术上,会断层式领先行业。现在需求方对于PIR的数据量要求从亿级已经开始扩展到百亿级的要求,不可区分度也想要增加,进一步促使技术不断优化。

2.4 联合分析

        隐语针对BI需求,提供了隐私SQL产品,这个很贴近用户使用习惯。好的产品能够降低用户使用的门槛。很早之前也有类似的想法,对于秘密数据分析,如果有一套已有的操作语言,可以近乎实现0成本的无缝切换或者是花少量代价就可以上手。隐私SQL技术,一般是基于安全求交、多方安全计算、同态加密、明密文混合计算等技术来实现,学术界、业界也都有类似的尝试,比如腾讯的PowerFL SQL、华为的联邦SQL,还有如Conclave、Senate、SMCQL等。隐语提供的是带有可信第三方TTP角色的架构。并且提供列级别的数据使用授权控制,这个还是很重要的,因为隐私SQL与普通SQL的很大差别,是不能提供某些明细数据或者对端列的明细数据的展现,更多的还是展示统计的结果,如果结合差分隐私技术,可能会更加安全。

2.5 联邦学习

        联邦学习(Federated Learning)这一概念最早是由Google在2016年提出的。联邦学习是一种分布式机器学习方法,旨在保护数据隐私的前提下,通过在本地设备(如智能手机)上训练模型,并仅共享模型参数而非数据本身,从而实现跨设备或跨组织的协同训练。

        Google提出的联邦学习概念,往回看,是一种狭义的概念,更多是面向横向联邦场景。后来微众银行团队,对联邦学习进行了更系统的划分,包括横向联邦、纵向联邦、联邦迁移学习,甚至现在还衍生出横纵向混合联邦。针对隐私计算场景,还进一步衍生出可信联邦学习的概念,因为在很多场景下,如果对梯度不加保护的传输,将会导致标签信息的泄露。因此,在隐私计算场景讨论的联邦学习,主要是可信联邦学习,一般基于半同态加密、全同态加密、多方安全计算、差分隐私等技术实现。

        国内隐私计算普遍是在toB业务领域,所以纵向联邦学习被使用更多,逐步衍生出纵向二分类算法、多分类算法、回归算法、无监督算法、推荐算法以及一些深度学习算法等。支持的数据量级在可接受的训练时间范围内,基本可以达到百万甚至千万量级。优化的手段包括量化、密文打包、稀疏数据处理、加密算法优化、算法执行调度优化、明密文混合计算、硬件加速等。隐语背靠集团资源,可以提供更加完备的技术优化和攻防测试,带来很大的产品优势。

2.6 分布式调度框架

        分布式调度框架是隐私计算架构极核心的模块。隐语的分布式调度框架采用统一的RayFed实现。业内还有采用tensorflow、torch等架构,也有基于http自建。分布式调度框架需要支持以下能力:

        1. 管理和协调计算资源:隐私计算通常需要在多个节点或参与方之间分布式地进行计算。分布式调度框架负责管理和协调这些计算资源,包括分配计算任务、监控任务执行状态、处理负载均衡等。没有一个有效的调度框架,分布式计算任务将难以高效进行。

        2. 确保计算过程的安全性和隐私性:隐私计算的一个关键目标是确保数据在处理过程中不被泄露。分布式调度框架需要确保各参与方只访问和处理其权限范围内的数据,并且协调加密、解密等安全操作,防止数据泄露或被篡改。例如,在联邦学习中,各方只传输加密后的中间结果或模型参数,而不直接传输原始数据。

        3. 支持多种计算模型和任务类型:隐私计算架构需要支持多种计算模型和任务类型,如联邦学习、安全多方计算等。分布式调度框架需要能够灵活地调度不同类型的计算任务,并确保这些任务在分布式环境中的高效执行。

        4. 提高计算的可扩展性和容错性:在分布式系统中,节点的失效和网络的不稳定是常见的问题。分布式调度框架需要具有高可扩展性和容错性,能够动态调整计算资源的分配,并在节点失效或网络中断时,自动进行故障恢复和任务重试,确保计算任务的连续性和正确性。

        5. 监控和管理任务的执行:隐私计算任务通常涉及大量的数据处理和计算步骤,分布式调度框架需要提供全面的监控和管理功能,包括任务的启动、暂停、恢复和终止,以及实时监控任务的执行状态和资源使用情况。这对于确保任务的按时完成和系统的高效运行至关重要。

        6. 数据流和计算流的优化:分布式调度框架可以通过优化数据流和计算流,减少数据传输的次数和距离,提升整体计算效率。例如,在联邦学习中,调度框架可以优化各参与方之间的通信路径,减少模型参数传输的延迟和带宽消耗。

        7. 保障合规性和审计:隐私计算通常需要满足特定的法律法规和合规要求。分布式调度框架可以提供详细的审计日志,记录任务的执行过程、数据的访问和传输情况,以满足合规性和审计要求,确保计算过程的透明和可追溯。

2.7 SPU

        SPU是隐语提供的多方安全计算模块,其采用了虚拟机的架构风,通过一次编译,可以执行多种不同的MPC协议。前端语言目前是基于jax,tf和pytorch还在开发中。通过XLA进行计算图编译,是一种由Google开发的用于TensorFlow的编译器,可以加速深度学习模型的训练和推理过程。XLA通过对线性代数计算进行优化,提高了jax的执行效率。然后再基于MLIR进行加密计算的编译优化。底层运行时支持的mpc协议包括semi2k、aby3、cheetah。semi2k 是需要额外可信第三方(如 TEE)去生成随机数;而 cheetah 是纯两方的;如果部署上能支持 TEE 的话;大部分情况都是 semi2k 的性能更好。另外,semi2k可以面向多方计算场景。aby3则是需要在三个计算方场景使用。MPC的算子,可以包含基础的运算算子,比如加减乘除、比较等,也可以是复杂的统计算子包括排序、中位数、sigmoid、relu、pooling等。理论上基于MPC算子,可以实现任意的算法。

2.8 HEU

        HEU是同态加密计算单元,是一个低门槛、高性能的同态加密库,支持多类型、可扩展的硬件加速生态。同态加密算法主要分为半同态(PHE)和全同态(FHE)两大类,目前 HEU 已支持大部分 PHE 算法,提供了包括zpaillier、ou等多种PHE算法。全同态则还处于研发过程中,预计会集成 SEAL,提供 BFV/BGV/CKKS 算法功能,集成 OpenFHE以及支持 GPU 加速的 CKKS 算法。说实话,HEU对于开发者还是比较友好的,也希望能够提供更多的计算算子接口,目前还是有一些局限性。

2.9 TEEU

       TEEU是隐语推出的基于可信执行环境的计算单元,在大模型盛行的时代,TEE会发挥越来越重要的角色,这块后续会重点分析,结合大模型的安全训练和推理实践进行介绍。

2.10 YACL

        YACL(Yet Another Cryptographic Library)是隐语基于开源的密码学技术,重新开发的密码原语库,用于在算法层中执行各种加密和安全操作。它旨在提供一套简单易用、高效可靠的密码学原语,用于构建安全的通信协议、数据加密系统和数字签名方案。YACL库提供了各种常用的密码学原语,包括对称加密算法(如AES、DES)、非对称加密算法(如RSA、ECC)、哈希函数(如SHA-256、SHA-3)、消息认证码(MAC)等。YACL库实现了高效可靠的密码学原语,采用了优化的算法和数据结构,以确保在不同硬件平台和环境下的高性能和可靠性。个人觉得,YACL可能会成为未来行业内的一个事实性的统一的密码原语库,被内置到相关机构的平台中使用。

2.11 KUSCIA

        Kuscia 隐私计算任务编排框架,针对行业底层基础设施差异以及资源管理等技术规模化痛点,提供屏蔽底层技术细节即实现互联互通的高阶能力,这点也是隐语与其他厂商可能差异化的亮点。基于k8s进行资源的编排和平台部署,是当前业内的共识,大多数隐私计算厂商都已经采用。Kuscia 框架的核心理念是希望通过一套隐私计算基础设施屏蔽掉底层的各种差异,将机器、网络、数据等各个层面的问题统一解决。具体实现的效果即对于算法与应用开发者,只需要满足一定的接口标准要求,就可直接在系统中运行应用,而无需费心于环境和网络状况。 Kuscia 的架构上层是Master,下层为 Lite。Master 是控制管理面,负责任务调度和控制;Lite 部署在计算资源上,负责机器中的具体工作执行。

2.12 互联互通

        互联互通其实从业内实践来看,还是走管理面的互联互通,更加实际一些。比如移动推出的1+x的模式、招行的互联互通实践等,大多是不同节点部署相同的算法引擎,而底座不同,通过标准化相应的接口规范进行对接。与其他节点的互联互通,只需要平台底座能够完成任务的下发和相关通信。白盒互联互通说实话不看好前景,目前实现的mpc-lr、sgboost、ecdh等算法,都是相对标准化的实现,一旦某厂商做了某种新的优化,而改变了算法处理逻辑,就可能破坏互联互通的基础。针对每个算法实现一套,投入较大,而且对于中小厂商是一种优势摧毁,最后很可能还是一家资源更大的企业通吃,所以从意愿度层面以及自身技术壁垒建立角度,都不是特别看好行业厂商的跟进,目前更多的还是一种研究课题性质。

2.13 三权分置

2.14 总结

        总体来看,隐语在技术层面,有明显的后发优势,集齐各家所长,并结合自身的资源、技术、能力优势,会在隐私行业逐步形成明显的领先优势。其他厂商需要探索更多自身的优势项目,聚焦资源,差异化发展才可能有所突破。如果仅比拼技术,在资源投入跟不上的背景下,会愈发艰难。总而言之,对于业内从业者或者研究人员,隐语都是很好的学习平台。

  • 8
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
隐语框架与TEE(可信执行环境)的配合可以实现数据加密。隐语框架主要解决的是数据隐私保护和安全计算的问题,而TEE是一种安全的硬件或软件环境,可以提供可信的执行环境来保护数据和计算过程的安全性。通过将隐语框架与TEE结合,可以实现数据在计算过程中的加密和保护。 在隐语框架中,数据可以使用全密态计算或明密文混合计算的方式进行加密。全密态计算是一种在密文环境中进行计算的方式,数据在计算过程中一直保持加密状态,可以使用Secure Aggregation算法、MPC密态引擎、同态加密等技术来进行计算。而明密文混合计算则是将部分计算从密文环境搬到明文环境,在明文环境中进行计算可以提升计算的性能,同时通过安全退让来保证数据的安全性。 TEE提供了一个可信的执行环境,可以保护计算过程中的数据和代码安全。在隐语框架中,可以使用TEE来实现数据的加密和解密操作,以及进行安全计算。TEE可以提供硬件级的安全保护,例如Intel SGX和ARM TrustZone等,也可以通过软件模拟的方式提供安全执行环境。 通过隐语框架配合TEE实现数据加密,可以在保护数据隐私的前提下,进行安全的计算和数据交换。这种组合可以应用于各种场景,例如联邦学习、数据交易市场等,为数据安全和隐私保护提供了一种可行的解决方案。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [隐私计算技术|深度解读可信隐私计算框架“隐语”](https://blog.csdn.net/m0_69580723/article/details/126662952)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值