【隐私计算笔谈】MPC系列专题(十三):比特分解

本文是隐私计算MPC系列的第十三篇,主要讲解比特分解(Bit Decomposition)过程,它是将Shamir秘密分享机制中的子秘密转化为比特形式的关键步骤,以便在多方比较中使用。比特分解涉及随机数生成、秘密共享转换和比特比较协议的应用,通过这些步骤确保数据在保持隐私的同时进行有效计算。

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

【隐私计算笔谈】MPC系列专题(十三):比特分解

比特分解

上一次科普介绍了比特比较( Bitwise Compare ),比特比较可以实现多方下的比较,不过其要求比较的输入是按比特分享的。回忆一下,在Shamir(t,n)秘密分享机制中所有被分享的秘密都是一个完整的比特串的形式,通过一个秘密多项式被分享成𝑛个在域𝐹𝑞上的子秘密。
在这里插入图片描述
那么要想在Shamir(t,n)秘密分享机制中使用bitwise compare来实现多方比较,就需要将在域𝐹𝑞上的子秘密以比特形式重新分享,将其记为[𝑎]𝑝→[𝑎]B,称为比特分解( Bit Decomposition )。

如果已经有了[𝑎]B,将[𝑎]B转换成[𝑎]𝑝较为简单,因为[𝑎]B={[a0]B,…[al-1]B},[ai]B分别表示𝑎从高位数起按比特分享的第𝑖比特。由于
在这里插入图片描述
回忆一下Shamir(t, n)秘密共享机制的性质,所有对应的子秘密相加,等于主秘密相加;所有子秘密乘上同一个常数,等于主秘密乘上该常数。因此将[𝑎]B→[𝑎]𝑝只需计算[a]p= ∑ i = 0 l − 1 \sum_{i=0}^{l-1} i=0l1 2l-1-i ⋅ \cdot [ai]。
在这里插入图片描述
比特分解(Bit Decomposition)[𝑎]𝑝→[𝑎]B的主要步骤为:

  1. 所有参与者共同产生一个随机数[𝑟]B(上次科普介绍过如何共同产生随机数),并计算对应的[𝑟]𝑝

  2. 每个参与者都计算[𝑐]𝑝=[𝑎]𝑝−[𝑟]𝑝,并将[𝑐]𝑝进行公开。因此每个参与者都能获得𝑐=𝑎−𝑟 𝑚𝑜𝑑 𝑝。

  3. 由于每个参与者都知道明文的𝑐,因此每个参与者都可计算 [𝑐]B,之后 计算[𝑑]B=[𝑟]B+[𝑐]B= {[d0]p,…, [dl]p}。(注意这里用的加法是Bit-Add,[d=r+c] B,并不是直接按比特相加,同理下面用到的类似[

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值