【问题标题】:Using maple to calculate a value for mod computation使用 maple 计算 mod 计算的值
【发布时间】:2013-11-29 07:54:28
【问题描述】:

我正在研究一些安全问题,并尝试实现一种基本形式的 RSA 加密。我正在与 Maple 一起计算一些值,但我很难计算出这个:

这些是我拥有的值:e、p、q

我需要计算 'd' 的哪个值将在以下等式中起作用:

d*e ≡ 1 mod (p-1)*(q-1)

符号说明:如果 a - b 是数字 c 的倍数,我们写成“a ≡ b mod c”。

有人告诉我可以在 Maple 中使用某种 Power(a,b) mod c 功能,但我不知道该怎么做。阐明如何计算 Maple 中“d”的 a 值?在我的例子中,e = 65537,p 和 q 都是非常大的素数(每个 100+ 位)。

【问题讨论】:

    标签: encryption rsa maple


    【解决方案1】:

    就像d:= 1/e mod (p-1)*(q-1);一样简单

    【讨论】:

      【解决方案2】:

      您需要gcdex 函数,计算st 使得s*e + t*(p-1)*(q-1) = 1 并使用d=s

      我很遗憾没有指出这一点:如果这与实际安全性有任何关系(而不是学习理论),请不要在不花费大量时间的情况下不要编写自己的代码时间阅读关于实现的攻击(而不是数学)。 RSA 在数学上非常简单(也很漂亮),但要安全地实现却非常棘手。

      请注意,有一个特殊的 StackExchange 安全站点,您可能会对它感兴趣。

      【讨论】:

      • 这与实际安全性没有任何关系:)。难道没有一种方法可以用来计算模逆,因为我知道除了 d 之外的所有值?
      • 正如我所说,gcdex 会为你做这件事。
      猜你喜欢
      • 2016-05-31
      • 1970-01-01
      • 1970-01-01
      • 2015-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-19
      • 1970-01-01
      相关资源
      最近更新 更多