隐语社区【提问解答】 第1期

简介: 隐语社区【提问解答】 第1期


收录于合集#社区问答6个


安装部署问题


问题1:

pip安装secretflow、tensorflow、pytorch速度慢

解答:

可以挂个国内的源会快一点,因为底层依赖了tf和pytorch做backend,不安装会导致没法用


问题2:

pip安装secretflow报spu找不到

解答:

1. 需要确认环境是不是符合要求:

https://spu.readthedocs.io/en/beta/getting_started/install.html#environment

2. 用的国内的pypi源, 尝试用官方源

pip install -i https://pypi.org/simple/ spu


问题3:

安装过程中import secretflow报错

tensorflow/stream_executor/platform/default/do_loader.cc:64] Could not Toad dynamic library "Tibcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared obiect file: No such file or directory

解答:

直接 ignore


问题4:

执行以下操作时,显示无法连接到位于 192.168.137.4:6379 的 GCS

RAY_DISABLE_REMOTE_CODE=true \

RAY_SECURITY_CONFIG_PATH=config.yml \

RAY_USE_TLS=1 \

RAY_TLS_SERVER_CERT=servercert.pem \

RAY_TLS_SERVER_KEY=serverkey.pem \

RAY_TLS_CA_CERT=cacert.pem \

ray start --head --node-ip-address="192.168.137.4" --port="6379"

--resources='{"alice": 8}' --include-dashboard=False --disable-usage-stats

解答:

应该是自签证书不对导致的。如果只是测试的话,可以把mTLS双向认证关闭,即将RAY_USE_TLS设置为0。参考这个教程生成自签证书,尤其注意将alternate_names设置为主机IP地址,X509证书会对Subject Alternative Name进行校验


问题5:

服务器内存2g,安装报错。

解答:

2g内存有点过低,建议扩大后重试。隐语的最低推荐配置为8C16G。



sf使用问题


问题1:

secretflow验证可信性

解答

SecretFlow的整体设计思想是把数据提供方,计算方抽象成逻辑设备PYU、SPU、HEU、TEE,用户在逻辑设备上进行编程,构建出一张逻辑计算图。在这张计算图中,当发生跨设备数据流动的时候,就会按照(源设备,目标设备)预定的转换协议对数据进行转换。


问题2:

secretflow支持arm架构的m1芯片mac电脑吗

解答:

目前该能力在内部测试中,我们会力所能及支持m1 mac。


问题3:

找不到满足要求的spu版本。

ERROR: Could not find a version that satisfies the requirement spu==0.1.0b1

解答:

请使用官方 docker 镜像:

https://github.com/secretflow/spu#docker


spu-heu使用问题


问题1:

“安全聚合模块”和“定义函数编译生成静态计算图”两种达到聚合的效果有什么不同

解答:

三角函数和双曲函数里现在暂时只实现了 tanh,其他会在后续迭代中陆续添加。jax numpy 大体上的支持情况可以看一下这个测试文件:

https://github.com/secretflow/spu/blob/beta/spu/binding/tests/jnp_testbase.py


问题2:

HEU只支持半同态的加密算法吗

解答:

目前是只支持半同态算法,全同态算法在规划中,但暂时还没有具体的发布计划


问题3:

heu和spu之间的转换协议考虑:spu到heu,直接对share加密,对arithemetic share是可以的吗?

解答:

是的,直接在Share上加密和转化,中间不会reconstruction,对Arithmetic Share是可以的。


问题4:

spu到heu的转换之后不对称,怎么决定谁是秘钥拥有方,是否可配置

解答:

算法实现者需要手动指定密钥拥有方,这个是可配置的。


问题5:

heu里支持的半同态算法

解答:

Paillier


问题6:

在带有 SPU 的神经网络中如何使用 3PC

sf.init(['alice', 'bob', 'adan'], num_cpus=12, log_to_driver=True)

alice, bob, adan = sf.PYU('alice'), sf.PYU('bob'), sf.PYU('adan')

spu = sf.SPU(sf.utils.testing.cluster_def(['alice', 'bob', 'adan']))

x1, _= alice(load_train_dataset)(party_id=0)

x0, _= adan(load_train_dataset)(party_id=1)

x2, y= bob(load_train_dataset)(party_id=2)

解答:

您正在运行的 semi2k 2pc 是一个 3pc 协议,因为它依赖于受信任的第一方(或者您可以将其视为受信任的第三方)来生成离线相关随机数。Secretflow 中真正可用的 2pc 协议是 cheetah 协议。cheetah 协议现在可以很好地与 LR 等简单的应用程序配合使用。对于 NN,您可能需要等未来的 Secretflow 版本,我们仍在研究一些底层构建块。


问题7:

提供一个HEU初始化案例

解答:

HEU 分为两部分,第一他是 secretflow 中的一个 device,第二他本身也是一个同态加密的 library 如果是后者,把 HEU 单独当做 lib 使用,是有文档的,参见 https://heu.readthedocs.io/ 如果是前者,把 HEU 当做 device 使用,这部分还是实验性的,当前有一个基于 HEU + SPU 的 LR 实现,其教程有所欠缺,我们后面会补充相关文档。如果你着急的话,可参考 HESS-LR 的单测获取其用法。


其他问题


问题1

隐语框架TEE代码在哪

解答:

目前TEE部分的代码暂未开放,不过后续的开源计划里有这块内容,敬请期待


问题2:

基于TEE的多方MPC计算解决方案在隐语中吗

解答:

TEE 集群里跑 MPC 确实是一种新颖的方式,相比较纯 TEE 方案有额外优点。举个例子比如这种模式下,TEE进出的数据都是统计学上无差别的随机数,因此能够有效抵御一部分侧信道攻击。隐语当然会支持这种新颖的模式,不过目前 TEE 结合 MPC 的方案还未开放,预计年底左右会开放 TEE + MPC 的 TECC 设备,敬请关注期待。


问题3:

aggr=SecureAggregator(device=alice, participants=[alice, bob]) 无限期执行

解答:

是虚拟机的cpu个数设置成1个导致的,我将虚机的cpu设置成8个,然后可以了


问题4:

在不同数据集上运行演示错误,配置 6c8g

The actor is dead because its worker process has died. Worker exit type:

SYSTEM_ERROR_EXIT (SPURuntime pid=10311) I0714 09:14:38.084491 10471

external/com_github_brpc_brpc/src/brpc/socket.cpp:2202]Checking Socket{id=0 addr=127.0.0.1:36067} (0x563ea08fe600)

解答:

8c16g 是最低配置要求


问题5:

用较小的数据集进行测试,当使用 jax 构建的模型在 SPU 上运行时,SPU 默认使用 ABY3 协议吗

解答:

默认协议取决于参与方的数量:

https://spu.readthedocs.io/en/beta/reference/runtime_config.html#protocolkind

如果 SPU 设备是 2PC,将使用 SEMI2K。

如果 SPU 设备是 3PC,将使用 ABY3。



隐语介绍:


隐语Secret-Flow是蚂蚁集团自主研发的一套通用隐私计算框架,以安全、开放为设计理念,支持包括MPC、TEE、FL、HE、DP在内的多种主流隐私计算技术。目前“隐语”已正式开源,诚挚邀请业界同行参与隐语共建,丰富隐私计算落地场景,齐力推动隐私计算技术发展,最终实现整个隐私计算行业的进步。


相关文章
|
6月前
|
存储 运维 安全
隐语第二期学习内容随笔
数据要素在采集、存储等环节内外循环,数据持有方需确保内外循环中的数据安全与管控。信任焦虑源于数据权属等问题,依赖技术信任解决。隐私计算原则与开源隐语技术保障隐私安全。数据资产化驱动价值释放,技术信任促进流通,强调数据安全、隐私和信任的核心地位。
45 0
|
6月前
|
安全
隐语实训营笔记 第二讲
隐私计算通过开源促进数据要素安全流通,解决外循环中的信任问题。隐语开源项目旨在实现数据可用不可见、可算不可识、可控可计量的原则,统一产品度量标准,降低接入难度,构建完备的信任链,以推动数据的开放与共享。
65 0
|
17天前
|
消息中间件 数据采集 Cloud Native
iLogtail 开源贡献人物专访:技术之路无坦途,与社区共同成长
在 iLogtail 开源两周年这一里程碑时刻,我们邀请到了两位社区 Committer 进行分享,揭秘这些开发者如何在日常工作中与 iLogtail 结缘,又如何在业余时间里为项目添砖加瓦,推动其不断向前发展~
|
6月前
|
算法 安全 数据安全/隐私保护
隐语实训营笔记 第三讲
隐私计算框架“隐语”提供全面的隐私保护技术,包括PSI、PIR和联邦学习等算法,层次间低耦合,支持开放合作。产品层包含多样化应用,计算层涉及SPU、HEU、TEEU及密码库YACL,资源层有kuscia管理,强调互联互通和跨域管控,旨在实现安全的数据协作。
56 0
|
6月前
|
存储 运维 安全
隐语实训营笔记 第一讲
构建数据可信流通体系,确保来源确认、范围界定、过程追溯及风险防范。该体系基于密码学和可信计算,包含身份验证(如CA证书和远程验证)、使用权跨域管控、安全分级测评和全链路审计。可信数字应用身份验证和跨域管控保护数据免于滥用,同时维护上下游利益。通过隐私、可信和机密计算技术,实现数据流通的控制面和数据面的平衡,即“不可能三角”。全链路审计形成内外循环的管控体系,密态天空计算作为基础设施,支持密态数据流通,解决数据安全保险中的定责和定损问题。
40 0
|
6月前
|
IDE 小程序 前端开发
【经验分享】支付宝社区高效的提问技巧
【经验分享】支付宝社区高效的提问技巧
67 4
|
11月前
|
人工智能 搜索推荐 物联网
文生视频黑马AnimateDiff 魔搭社区最佳实践教程来啦!
近1个月来,AnimateDiff 无疑是AI动画/视频生成领域的一匹黑马,以“效果丝滑、稳定、无闪烁”等好评斩获“Stable Diffusion封神插件”称号。
|
人工智能 自然语言处理 IDE
人手一个编程助手!北大代码大模型CodeShell-7B开源,魔搭社区最佳实践来了!
CodeShell是北京大学知识计算实验室联合四川天府银行AI团队研发的多语言代码大模型基座。
|
机器学习/深度学习 边缘计算 算法
隐语开源社区【提问解答】第二期
隐语开源社区【提问解答】第二期
242 0
|
SQL 机器学习/深度学习 算法
隐语开源社区【精选问答】第5期
隐语开源社区【精选问答】第5期
354 0