【发布时间】:2010-11-26 09:08:03
【问题描述】:
我正在尝试将 RSA 算法用于学习目的。现在我有以下问题。我坚持以下几点。
我需要解决以下函数:
c = value^e % n
c = 加密结果 value = 要加密的数字 d = 我的公钥 n = RSA 模块
我只使用 double 作为所有变量的数据类型。我用以下行解决的功能:
double c = Math.Pow(value, e) % n
这里的问题是,看起来 math.pow 函数产生了错误的值,看起来有点不准确。当我用 Windows 计算器尝试这个时,我得到了一个更好的结果,这是正确的。
我的问题:有人知道如何解决这个问题以获得正确的结果以使用 RSA。所有其他部分的计算绝对正确。它只能是 math.pow 或模数。
【问题讨论】:
-
您不能对 RSA 使用浮点数。你需要
BigIntegers