首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以下PAKE协议UC是否安全?

以下PAKE协议UC是否安全?
EN

Cryptography用户
提问于 2021-04-12 13:22:04
回答 1查看 106关注 0票数 3

考虑以下(简化) PAKE协议: Alice和Bob从预先商定的密码-开始。为了建立一个新的会话密钥k,Alice首先对一个随机的当前r进行采样,并将其发送给Bob。鲍勃采样了一个现在的r',并将它发送给爱丽丝。会话密钥是k = \mathcal{O}(pw,r,r'),其中\mathcal{O}是一个随机的预言。

该仿真器可以很容易地通过模拟随机预言来提取损坏的Alice (或Bob)的输入,并能顺利地进行仿真。但是,这不可能是一个安全的PAKE协议(对吗?)因为它允许离线字典攻击:一旦监听了两个非key (rr'),对手就可以查询字典中所有可能的密码(即多个大小),会话密钥将在甲骨文答案中。一旦会话密钥被用于任何事情,这将是一个问题。

所以我的问题是,UC上面的协议对\mathcal{F}_{\mathsf{pwKE}}本论文功能是否安全(我猜可能不是因为上述原因),如果不是,那么模拟在哪里会失败呢?

EN

回答 1

Cryptography用户

回答已采纳

发布于 2021-04-13 01:02:41

你说得对,因为你说的原因,这不是加州大学的安全。它允许离线字典攻击。这个问题是如何在UC模型中体现出来的:

考虑一下这一特定环境:

  1. 环境从已知的多项式大小字典pw (不丢失通用性\mathcal{D} = \{1, \ldots, m\} )中一致选择诚实方的密码D4
  2. 环境启动协议并等待诚实方报告输出K^*
  3. 环境要求对手提供一个序列k_1, \ldots, k_m。如果k_{pw} = K^*的话,对手就赢了。

在现实世界中,对手很容易通过概率1赢得这场比赛。对手设置k_i = \mathcal{O}(i,r,r')

不难看出,在理想的世界中,没有一个对手比1/m + 1/2^\ell ( \ell\mathcal{O}的输出长度)更能在理想世界中赢得这场互动。观察以下情况:

  • 要让诚实的一方报告理想世界中的输出,唯一的方法是让模拟器启动一个在线密码猜测。
  • 由于诚实pw\mathcal{D}中是一致的,所以这个猜测正确的概率是1/m
  • 假设在线猜测是不正确的,该功能将向诚实方提供一个完全统一/独立的值K^*。特别是,K^*独立于对手发送给环境的任何k_{pw}值。因此,它只能与概率1/2^\ell匹配。

我认为您问题的实质是,提取必须在协议执行时进行(这就是在线密码猜测的原因)。在该协议中,一旦双方交换了rr',真实世界的诚实方就会输出一个密钥,因此模拟器需要发送密码猜测才能在理想的世界中实现相同的事情。但是如果对手还没有质疑\mathcal{O}呢--模拟器会怎么做?

该协议无法将对手限制为一个密码猜测(每次它查询\mathcal{O}(pw',r,r')时,模拟器都必须知道pw'是否正确,以便产生一致的响应),并且不能将密码猜测限制在协议运行的时间内。

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

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

复制
相关文章

相似问题

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