
点击上方蓝字获取更多新鲜资讯
一、定义MPC的安全性
方法:定义我们想要的理想版本。如果它 "相当于” 理想 说明协议是好的。
优点:从等效性来看,我们知道协议具有理想版本的所有良好属性。
我们将为通用可组合(UC)安全性提供 Canetti 定义的变体。(变体主要区别: 明确考虑同步网络,原始UC用于异步情况)。
1.1 敌手活动
定义前的重要说明:一般情况下,敌手可能会比腐蚀参与方和控制他们的行为更有能力。- 大多数协议都是作为一个更大的系统的一部分来运行的,比如密钥交换协议或电子支付方案。- 现实生活中的敌手会攻击整个系统,而不仅仅是协议。- 因此,敌手可能会对诚实的参与方所提供的输入产生一定的影响,甚至可能控制它们。- 另外,敌手可能会得到一些关于诚实参与方从协议中获得的结果的信息,甚至可能是全部信息。
在我们的定义中,敌手应该被允许为诚实参与方选择输入,并看到他们的结果。
问题:这是非常奇怪的,我们不是说过,敌手不应该得到诚实玩家的结果信息吗?
回答:我们说的是协议不应该发布这种信息。如果敌手从其他渠道,比如周围的系统了解到一些信息,协议也无能为力。所以我们要要求协议按照它应该的方式工作,不管敌手知道什么,或者能通过协议外部的手段控制什么。
1.2 定义中的概念
所有的实体(参与方、敌手、可信方)从形式上讲都是交互式的、概率的图灵机。每个实体都得到作为输入的安全参数
理想范式(或可信方)
模拟我们希望协议实现的范式。
不能被腐蚀
可以与所有参与方和敌手进行交流。
接收来自所有参与方的输入,根据其程序进行计算并将结果返回给参与方。
有内存,可以多次调用,因此可以用来模拟我们能想象到的任何合理的基元。
当然,现实生活中不存在这样的
定义两个过程。- 真实过程 - 理想过程
在真实过程中,我们有敌手
在理想过程中,我们仍然有
)代替。
如果
下面图中显示了真实过程。

下面图中显示了理想过程。

为了让

1.3 定义
我们说,如果存在一个模拟器

则
Intuition:我们认为
如果以下计算成立,则说明 实现了统计上的

其中,
Intuition on Definition
它确保现实过程继承了理想过程的自然安全属性,例如:
协议确保诚实的参与方计算出正确的结果:在理想过程中,通过对
的定义,总是真实的,如果协议产生不一致的结果, 可 以很容易地区分。 协议不释放不该释放的信息:
能够令人信服地模拟 攻击协议的观点,只根据 愿意透露给腐坏参与方的内容。
问题:考虑计算的 trivial 协议,显示它满足定义(假设为被动腐坏)。假设我们尝试用同样的 trivial 方案来计算两个比特的AND。解释为什么在这种情况下证明会失败。
Secret Sharing
Dealer 在 
Dealer 在
Dealer 私下发送
Properties:
任何最多
个参与方的子集都没有 的信息。 任何至少
个玩家的子集都可以很容易地计算出 ,可以通过取他们所知道的 share 的线性组合来完成。
为了便于理解,我将shamir算法贴在这里
shamir是一种秘密共享的实现,利用了拉格朗日插值公式。详细原理见参考文献。下面补充一个shamir算法的有用的性质: 加同态。已知已有两个用于秘密共享的多项式以及素数
. 通过秘密共享分享的分片形式是 。将分片中的多项式结果求和,得到 。根据shamir算法中的定义, 是原秘密。因此通过恢复算法对求和后的分片进行恢复,将会得到 。这就实现了秘密求和。在双方求和的情况下,没有意义,但在参与者数目大于等于3时,就会有用。
拉格朗日插值:blog.csdn.net/shenwansa
重构向量
重构向量
被动腐坏案例的协议,i.t. 情景
门限敌手,最多可腐蚀

通常协议包含以下四个阶段:
电路和给定的输入
创建代表输入的 "对象",由参与方共同持有,value 不被对手获取。
计算阶段:计算新对象。
打开输出
创建对象(秘密分享阶段)
每个
Notation:
意味着:值
计算过程
加法门
输入:
期望输出:
每个参与方计算
那么我们就有了我们想要的
因为将两个阶数
问题: 如何通过公共常量安全地乘以共享值 。
有了这个加法,我们可以安全地计算任何线性函数。
乘法门
输入:
希望的输出:
每个参与方设置
不幸的是,
我们有公共重构向量

输出打开阶段
通过电路,我们对每个输出值
。 如果
需要被计算方 接收,则每个 将 发送给 。 进行重构。
Security, intuitively:
因为所有的参与方都遵守协议,所以输出是非常正确的。
对于诚实参与方的每一个输入、中间结果和诚实参与方的输出,
参考文献
[Y86, GMW87,CFGN]
参考自 Ivan Damgård BRICS (Århus University) 的主题演讲,Ivan Damgård是丹麦著名的密码学家,SPDZ协议的主要开创者。这应该是20年前的一次演讲文稿,但可以从中学习一些思想。有兴趣的朋友可以读一下。
作者知乎号:六三,欢迎关注。
更多内容请点击以下链接:
初识安全多方计算(Getting to know SMPC)

欢迎投稿
邮箱:kedakeyin@163.com
参与更多讨论,请添加小编微信加入交流群






