首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安全计算:独立安全混合模型中的反应性功能

安全计算:独立安全混合模型中的反应性功能
EN

Cryptography用户
提问于 2018-07-12 14:59:34
回答 1查看 498关注 0票数 5

使(安全计算)协议描述和证明更简单的一种常见方法是在混合模型中描述它们,其中实际世界中的协议可以访问一些辅助的理想功能F(例如理想的OT功能)。让我说,我只关心独立的安全性(相对于UC)。假设对F的所有调用都是顺序的(即不交错或并行),并且双方在呼叫开始和结束之间不相互通信,那么(据我理解)我可以使用常规的独立安全协议的顺序组合来实例化具有独立安全协议的混合协议,以获得一个整体的独立安全协议。

我的问题是反应性的功能,即保持状态的功能,为了具体起见,还有承诺。比方说,我想证明Blum的投币协议在承诺混合模型中是安全的(参见这里中的协议和证明,这不是混合模型中的)。

协议简介:爱丽丝和鲍勃想抛出一枚公平的硬币:

  1. Alice提交一个随机位$r_a$。
  2. Bob发布一个随机位$r_b$。
  3. Alice打开承诺,协议的输出被定义为$r_a \oplus r_b$

我似乎遇到了一个问题,因为我无法用独立的安全承诺方案实例化我的混合体,因为在Alice执行承诺和Alice打开它之间,各方进行通信。

规避这个问题最常见的方法是什么?我现在唯一能找到的就是在多党计算功能的复杂性中,作者们在这里说(在第6页的脚注8中):

通过在所有n方之间秘密共享功能的内部状态,可以将反应性功能还原为非反应性功能。

我不明白这意味着什么。这意味着什么(具体地说是掷硬币的例子),这是在掷硬币的例子中处理我描述的问题的最常见的方法吗?

EN

回答 1

Cryptography用户

回答已采纳

发布于 2018-08-08 20:20:45

首先是你关于脚注的问题。我想我可以扩展它,因为我可能是写脚注的人。

您可以按以下方式对反应性功能进行建模:

  1. 修正(私有,内部)状态$s$的初始值
  2. 永远重复:
    • 从Alice接收输入$x$,从Bob接收$y$
    • 计算$(s',a,b) \get f(s,x,y)$
    • 将输出$a$给Alice,$b$给Bob,并设置$s := S的$

在这里,$f$是一个确定性函数,它是这个功能的特征。$s$的初始值是公共信息。该脚注中提出的是关于反应性功能的以下协议:

  1. Alice和Bob修复了$s_A,s_B$的秘密共享,用于$s$的初始值
  2. 永远重复:
    • 执行非反应性功能的安全计算:$g\Big( (s_A,x),(s_B,y) \Big) = \Big( (a,s'_A),(b,s'_B) \$,其中$(s',a,b) \获取f\big(textsf{reactive}(s_A,s_B),x,y\big)$和$(‘_A,s'_B) \get\textsf{Share}(S)$,换句话说,Alice给这个计算输入$(s_A,x)$,而Bob给输入$(s_B,y)$。爱丽丝收到输出$(a,s'_A)$和Bob收到$(b,s'_B)$。
    • 爱丽丝更新她的分享$s_A := S‘__A_$和鲍勃也是:$s_B := s'_B$

该协议的不变之处在于,在每一步,各方都持有反应性功能内部状态的秘密共享。在每个步骤中,它们执行一个非反应性计算,该计算重新构造内部状态并执行反应功能的一个步骤。

对于半诚实的安全,任何标准的秘密共享方案都可以在这里使用。对于恶意安全性,您需要能够检测到篡改股票(因为没有什么可以阻止Alice在第一轮中接收到$s'_A$作为输出,并在下一轮中提供除$s'_A$作为输入之外的其他内容)。

现在让我们来看看你对承诺的具体关注。您是对的,在承诺功能的生命周期中,各方之间存在着沟通。如果您将承诺功能的整个生命周期看作一个单元,那么在独立设置中进行回绕/模拟是有问题的。

但是承诺功能有两个阶段:提交阶段和显示阶段。解决问题的方法是要求每个阶段的模拟器都是本地的。也就是说,当您模拟显示阶段时,您不能回退到显示阶段之前(虽然您可能在提交阶段做了一些回退,但是在声明提交阶段之后,您现在仍然停留在这个历史记录中)。

如果您查看典型的安全承诺定义,他们就是这么说的。

  • 在基于仿真的承诺定义中,我们通过抽取博弈来定义绑定.腐败的提交者无法区分向诚实的接收方提交与向提取所提交值的回绕模拟器提交的内容。这实际上只是一个关于提交阶段的声明(嗯,主要是这样)。
  • 我们用模棱两可的游戏来定义隐藏。腐败的接收者无法区分与诚实的提交者交谈与与本地回绕模拟器交谈,直到揭示阶段开始时才能得到值。同样,允许此模拟器在提交阶段和显示阶段回退,但不允许将显示阶段全部倒转回提交阶段。

如果您想知道这是否意味着我们已经需要更强的UC安全性,而不是独立的,那么考虑一个具有10轮提交阶段和10轮显示阶段的承诺协议是有帮助的。如果该协议是UC安全的,您可以在更大的协议中使用它,并要求各方在提交阶段的第7轮中发送额外的消息。但这对我给出的独立定义是没有好处的,因为可能会有很多次让我们在第7轮中来回回绕。因此,这个独立的定义说:反应性功能的每个单独阶段都应该是“原子的”。这确实是在您的投币协议描述中发生的情况:完成提交阶段,等待它完成,然后才发送随机比特。因此,这就是为什么您的投币协议是独立的-当用独立的安全承诺实例化时是安全的。

总之,在反应性功能的生命周期内,各方之间的沟通是合情合理的,但只有在反应功能的不同“阶段”之间才是如此。

票数 5
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/60741

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档