【发布时间】:2018-09-17 19:59:41
【问题描述】:
如何快速求解 x ^ ( 1 / y ) mod m,其中 x, y, m 都是正整数?
这是反转 x ^ y mod m 的计算。例如
甲方与乙方提前商定正整数y和m
甲方生成一个数x1(0
乙方计算x2 ^ ( 1 / y ) mod m, 从而得到x1
我知道如何快速计算 x1 ^ y mod m,但我不知道如何快速计算 x2 ^ (1 / y) mod m。有什么建议吗?
我不知道如何称呼这个问题。给定 x ^ y mod m 称为模幂,这叫模根吗?
【问题讨论】:
-
对我来说这个算法似乎不正确 - 请注意 x^y 始终是整数给定 x 和 y 是整数但 x ^ (1/y) 不是这意味着通过使用此操作你会走出你的有限领域,这很糟糕。虽然可能根运算在模运算中有一些不同的定义。
-
作为
x1^y mod m = x2,所以x1^y = mq + x2。你是怎么从x2^(1/y) mod m得到的x1等于x1? -
我认为您应该将这个问题称为“破坏 RSA 密码学”,不是吗? ;-)