安全多方计算 - Yao’s 混淆电路(一) 手动构建

本文详细介绍了Yaos混淆电路的工作原理,包括基本定义、手动构建步骤,以及在保护参与方隐私的多方计算中的应用。它强调了混淆电路如何在不泄露数据隐私的同时支持灵活计算,同时提到了其在计算效率和协议依赖上的挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安全多方计算 - Yao’s 混淆电路(一) 手动构建

简介

在当今信息时代,数据隐私保护越来越重要。传统的计算方式往往会泄露参与方的隐私信息,例如在联合分析数据时,各方需要共享自己的数据,这可能会导致数据泄露。

安全多方计算 (Secure Multi-party Computation, MPC) 是一种密码学技术,它允许多个参与方在不泄露彼此隐私信息的情况下共同计算某个函数1。Yao’s 混淆电路2是 MPC 中一种重要的实现技术,它可以将计算函数转换为一个混淆电路,使得参与方可以在不泄露彼此隐私信息的情况下共同计算该函数。即使攻击者获得了混淆电路,也无法从中获取任何有用的信息;参与方只共享混淆后的数据,而无需泄露原始数据。

本文将介绍 Yao’s 混淆电路的基本原理和手动构建过程,后续探讨现有优化技术和它在实际场景中的应用。

协议流程及原理

基本定义

《Foundations of Garbled Circuits》中给出了混淆电路的基本定义3
在这里插入图片描述

Components of a garbling scheme G = (Gb, En, De, Ev, ev). Function Gb maps f and k to (F, e, d), 
strings encoding the garbled function, the encoding function, and the decoding function. 
Possession of e and x lets one compute the garbled input X = En(e, x); having F and X lets one 
calculate the garbled output Y = Ev(F, X); and knowing d and Y lets one recover the final output 
y = De(d, Y ), which must equal ev(f, x).

混淆电路方案由以下几部分组成:Gb是混淆算法,En是编码算法,Ev是计算算法,De是解码算法。
f f f 为将计算函数转换后对应的电路, F F F 为混淆电路; d d d 为解码信息; X X X 为输入编码,通过编码信息 e e e 和电路输入 x x x 计算得到, Y Y Y 是输出编码,它是对输入编码 X X X 和混淆电路 F F F 计算得到;最终的电路输出 y y y 是通过解码算法 D e De De 对输出编码 Y Y Y 解码得到的;
一个基本要求是对电路输入 x x x 和电路 f f f 执行计算 e v ( f , x ) ev(f, x) ev(f,x) 后得到的结果 y y y 与混淆计算之后的 y y y 值相同。
有了上面的基本定义后,接下来以Alice和Bob举例说明以上组成部分如何配合完成简单的单个逻辑门电路计算过程。

过程说明

我们要实现以下目标:两个参与方 Alice 和 Bob 在不泄露彼此输入(隐私)信息的情况下计算一个函数。
函数转换为电路的方式有多种,这里不考虑具体的转换方式,我们从转换后的电路开始混淆电路计算过程。Alice 作为混淆方和Bob作为计算方要计算函数 z = f ( x , y ) z = f(x, y) z=f(x,y) f f f为函数转换后对应的电路, x , y x, y x,y 是两者的输入。
在这里插入图片描述

首先 Alice 采用 Gb 混淆算法将原始电路转换为混淆电路。具体来说,她对每条线路和每个电路门进行混淆。
线路混淆
很多文章中也叫做打"标签"。对于电路 C C C 的每一条输入线路 W i W_i Wi,Alice 随机生成两个秘密值(secret value) w i 0 , w i 1 w_i^0, w_i^1 wi0,wi1,这两个值 w i j w_i^j wij 就叫做输入线路 W i W_i Wi 对于 j ∈ { 0 , 1 } j \in \{0, 1\} j{ 0,1} 的混淆值(garbled value)。这两个混淆值就相当于原来的真值替换成的"标签"。Alice 将这两个值发送给 Bob,但她不会告诉 Bob w i j w_i^j w

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值