用Java中的mod划分两个大整数



我正在用Java中的BigIntegers进行密码学赋值。我有两个号码:

s1= r mod(N)  
s2= r * x mod(N)

我知道s1、s2和N的值,但我不知道r的值,我需要检索x。s1/s2的正常除法在这里不起作用。我有一个提示,我需要使用modInverse,但我不知道在哪里使用它。

如果存在逆(即r和N是相对素数(,这将起作用:

s2.multiply(s1.modInverse(N)).mod(N)

这是在模运算中计算s2*s1-1。结果是x mod N。如果x<N.

最新更新