作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
9 = 2^X 模 11
什么是 X,你如何找到 X?
它与在 RSA 算法中查找纯文本有关,我正在为它编写一个 C 程序。
最佳答案
对于任何整数 i,答案都是 6 + 10i。
获得小模数的解决方案的一种简单方法是遍历 x 的所有值。如果存在任何解决方案,您只需检查 0 到 10 (= 11 - 1) 之间的值即可找到第一个解决方案。
x = 0
while x < 50:
if 9 == 2**x % 11:
print x
x += 1
输出:
6
16
26
36
46
如果模数很大,显然这将需要很长时间。
更多信息请访问 Discrete Logarithm页。注意:
No efficient classical algorithm for computing general discrete logarithms logbg is known. The naive algorithm is to raise b to higher and higher powers k until the desired g is found; this is sometimes called trial multiplication. This algorithm requires running time linear in the size of the group G and thus exponential in the number of digits in the size of the group.
如果模幂求逆很容易,那它就不是一个好的密码原语了。
关于math - 如何在 MOD 表达式中找到变量值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1812460/
我是一名优秀的程序员,十分优秀!