【问题标题】:Can one private key be associated with several public keys?一个私钥可以关联多个公钥吗?
【发布时间】:2013-10-03 00:10:24
【问题描述】:

好的,所以我在 Uni 的 crpto 讲师在 RSA 密钥生成讲座结束时提出了这个问题作为脑筋急转弯。

我一直在考虑这个问题,并且我想我想出了一个方法(我知道它不实用而且非常脆弱 - 但我希望你们能通过它打孔):

  • 使用 RSA 生成公钥和私钥对。

  • 创建一个加法哈希函数,该函数接受任何输入并添加
    每个字符的 ascii 值并将其作为输出。 ( 我是 意识到加法哈希对于 ex ABC 、 BAC 、 ACB 具有可怕的分布 都有相同的哈希输出——但理论上可以使用 作为解决我们问题的优势)

  • 现在获取您的公钥并通过以下方式生成几个可能的密钥 混淆了开关位。

  • 将这些乱七八糟的钥匙交给潜在客户。

  • 将我们的哈希函数放在服务器上。

  • 当客户输入混乱的公钥时 - 哈希函数
    计算散列 - 这应该类似于原始公钥 由 RSA 生成。客户获得访问权限。

我再次意识到这是非常脆弱和可怕的。它不能在现实世界中使用。但它是否回答了我的讲师提出的问题?

编辑:

各位,我很抱歉造成混乱。这个问题与碰撞和利用数学无关(这些绝对是有效的方法 - 但它们也不是我的讲师所指的 - 它们在讲座本身中进行了讨论。)。我的讲师提出这个问题的方式是——“想出一些方法来制作与单个私钥相关的多个公钥——别管你的解决方案有多脆弱”。

【问题讨论】:

  • 我怀疑这个问题更像是产生所谓的唯一公钥+私钥配对的数学是否会发生冲突,使得一对中的密钥与另一对中的相反但仍然与另一对中的同类不同。
  • 我知道你要去哪里......但这不是提出的问题。问题非常笼统,并指出“您能想出生成多个公钥以匹配单个私钥的方法吗?”
  • 可能更适合crypto.stackexchange.com

标签: hash cryptography key rsa


【解决方案1】:

我想我知道你的讲师在说什么。我不会给你完整的答案,但我会引导你走几步。显然,您的讲师希望您学习 RSA 的数学。特别是,查看公共和私人指数以及它们之间的关系。现在,假设您有一个 RSA 模数 N、RSA 公共指数 e 和一个 RSA 私有指数 d。是否有另一个指数,比如 e + x,其工作方式与 RSA 数学中的 e 完全相同?答案是肯定的,有。事实上,有一整套这样的指数。现在你必须发现这个 x 值是什么,以及它与 RSA 数学的关系。

【讨论】:

  • 你是对的..我们在今天的讲座中讨论了这个..非常感谢。基本上满足 e∗d=1modφ(N) 的 ϕ(N) 的倍数将为同一个私钥生成多个公钥。这也是 RSA 中一个严重的安全漏洞。如果有人持有几个公钥 - 他们可以将它们相减以得到 φ(N)。然后一切都从那里分崩离析......解决这个问题的唯一方法是拥有非常大的 P,Q 素数,并且基本上交叉手指
【解决方案2】:

我不想剧透太多,但我认为您的讲师正在等待的答案与有限群的数学性质更相关。也许看看the definition of textbook RSA,看看你是否能找到另一个与给定私钥匹配的公钥。 Fermat's Little Theorem 也可能很有趣。

【讨论】:

    【解决方案3】:

    在查找有限群时,您想了解等价类。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-08
      • 2012-03-11
      • 1970-01-01
      • 2012-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多