隐私计算技术开源的整体现状

京东云开发者
• 阅读 287
作者:京东科技隐私计算产品部 杨博

随着政策鼓励与技术成熟,开源作为一种新型的生产方式、创新的协作方式,正逐渐渗入到千行百业,并在国家战略层面的得到了肯定和支持:

•2021年3月,开源首次纳入国家《“十四五”规划和2035年远景目标纲要》,提出:支持数字技术开源社区等创新联合体发展,完善开源知识产权和法律体系,鼓励企业开放软件源代码、硬件设“计和应用服务。”

•2021年10月,中国人民银行等五部门发布《关于规范金融业开源技术应用与发展意见》强调:“加强开源技术及应用标准化建设,瞄准急需、重点领域加快标准制定与实施。加快推进开源技术应用和标准研究制定一体化。加强开源技术标准建设与信息化规划的衔接配套,推动金融业开源技术及应用高质量发展。”

•2021年11月,工业和信息化部发布《“十四五”软件和信息技术服务业发展规划》指出:开源正在重塑软件发展新生态,要大力发展国内开源基金会等开源组织,加速孵化一批具有影响力的开源项目,完善开源软件治理规则,普及开源软件文化。

近年来,国内外隐私计算开源框架不断涌现,可追溯到2017年OpenMined开源了其自家产品,到2022年国内外已有许多知名企业积极参与到了隐私计算开源浪潮中,期间开发并开源了包括联邦学习、多方安全计算、TEE等多种技术路线的隐私计算开源平台。下表归纳了隐私计算领域国内外主要企业组织的开源框架项目情况。各开源项目特点不同,有些易用性强,流程简洁、便于部署,用户能快速上手;有些可扩展性好,产品架构层次清晰,各层之间可独立开发,并支持模块化;也有的开源项目功能完备性强,能支持包括联合统计、隐私集合求交、建模等多种功能,每种功能也有满足不同性能与安全要求的算法。



隐私计算技术开源的整体现状





安全多方计算(MPC)开源介绍

安全多方计算(Secure Multiparty Computation, SMPC)是密码学领域的一个分支方向,最早由图灵奖获得者、中国科学院院士姚期智教授于1982年通过“百万富翁问题”提出。是指在不依赖可信第三方的情况下,两个或多个对等的参与方不泄漏各自输入的信息联合计算一个函数,最后各参与方得到他们预定的输出,该过程保证每一方仅获取自己的计算结果,并且无法通过计算过程中的交互数据推测出其他任意一方的输入数据。

其关键技术包括:秘密分享,不经意传输和混淆电路等基础的密码学技术。 过去的十年里,MPC 已经从一个理论领域发展到一个实践领域:一系列用于 MPC 计算的协议开源库(例如ABY 、EMP-toolkit,FRESCO,JIFF、MP-SPDZ,MPyC, SCALE-MAMBA,和 TinyGable 等,如表所示) 得到了发展,进一步推动了 MPC 的应用和部署。



隐私计算技术开源的整体现状





联邦学习(Federated Learning)开源介绍

联邦学习是密码学和人工智能相结合的分布式学习技术。它是一种可以保证在本地原始数据不出库,只通过传输中间结果(模型的梯度信息和模型参数)进行信息交换完成联合训练机器学习模型的方法。为提升安全性,通常结合同态加密(HE)、差分隐私技术以及包括基于秘密分享、不经意传输、混淆电路等密码学原理的各类安全多方计算协议(MPC)和其它用于保证隐私计算的密码学技术来保护中间结果。随着大数据和人工智能的快速发展,逐渐形成了横向联邦、纵向联邦和联邦迁移三个分类。近些年的开源框架也层出不穷,如下表所示:



隐私计算技术开源的整体现状





可信执行环境(Trusted Execution Environment)开源介

可信执行环境(TEE)通过软硬件方法在中央处理器中构建一个安全的区域,保证其内部加载的程序和数据在机密性和完整性上得到保护。与纯软件的密码学隐私保护方案相比,不会对隐私区域内的算法逻辑语言有可计算性方面的限制,上层业务表达性更强。但TEE技术本身依赖硬件环境,必须确保芯片厂商可信。而目前,比较成熟的TEE技术主要掌握在国外的芯片厂商手里,近两年国内计算芯片厂商海光,飞腾,鲲鹏等也在积极推出自主实现的TEE功能。而成熟的开源项目显得比较稀缺。



隐私计算技术开源的整体现状



结语:

对隐私计算产业而言,开源模式可以从以下几方面有效加速整个隐私计算行业的快速发展:

1.降低隐私计算行业进入门槛。 开源作为一种多方协作的生产模式,允许不同领域的专家贡献、共享技术,实现信息自由交换和全球协作发展,在加速技术创新的同时,降低了隐私计算技术的准入门槛。

2.提升隐私计算平台安全性和可靠性。 隐私计算开源平台的代码对任何人开放,代码的高可见性使得用户能够对系统进行监督和贡献,是发现安全风险和提升安全性的有力方案 。流行的开源项目拥有大量的贡献者和用户,广泛的测试和应用能够提高开源软件的可靠性。

3.促进技术一致性和系统互操作性。 隐私计算开源可以让不同平台的开发者向同一个标准靠拢,以达到系统互联互通的效果,打破“计算孤岛”。

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
2年前
PPDB:今晚老齐直播
【今晚老齐直播】今晚(本周三晚)20:0021:00小白开始“用”飞桨(https://www.oschina.net/action/visit/ad?id1185)由PPDE(飞桨(https://www.oschina.net/action/visit/ad?id1185)开发者专家计划)成员老齐,为深度学习小白指点迷津。
Wesley13 Wesley13
2年前
VBox 启动虚拟机失败
在Vbox(5.0.8版本)启动Ubuntu的虚拟机时,遇到错误信息:NtCreateFile(\\Device\\VBoxDrvStub)failed:0xc000000034STATUS\_OBJECT\_NAME\_NOT\_FOUND(0retries) (rc101)Makesurethekern
Wesley13 Wesley13
2年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
2年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
2年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Wesley13 Wesley13
2年前
Mysql 分区表
DROPTABLEIFEXISTS\frank\_test\;CREATETABLE\frank\_test\(\id\bigint(20)NOTNULLAUTO\_INCREMENTCOMMENT'主键id',\gid\bigint(20)DEFAULT'0'COMMENT'基础表id'
Wesley13 Wesley13
2年前
Java日期时间API系列36
  十二时辰,古代劳动人民把一昼夜划分成十二个时段,每一个时段叫一个时辰。二十四小时和十二时辰对照表:时辰时间24时制子时深夜11:00凌晨01:0023:0001:00丑时上午01:00上午03:0001:0003:00寅时上午03:00上午0
Stella981 Stella981
2年前
Jenkins 插件开发之旅:两天内从 idea 到发布(上篇)
本文首发于:Jenkins中文社区(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fjenkinszh.cn)!huashan(https://oscimg.oschina.net/oscnet/f499d5b4f76f20cf0bce2a00af236d10265.jpg)
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_