【发布时间】:2021-09-18 02:12:06
【问题描述】:
我正在尝试使用 Java 代码练习“仿射密码”。我尝试在 BigInteger 类中使用 modInverse() 函数。我必须在 modInverse 函数中放入一些整数值。因此,我使用 BigInteger.valueOf(Integer) 来获取整数的 ModInverse。但是问题出现在这里,当我尝试将 BigInteger 值更改为整数时,它给了我一个错误“无法从 BigInteger 类型对非静态方法 modInverse(BigInteger) 进行静态引用。我应该如何解决问题?
这是我的代码:
for(int a = 1; a<=25;a++)
{
for(int b = 0; b<=26; b++)
{
for(int i =0; i < cipherText.length;i++)
{
cipherText[i] = (byte) ( ((cipherText[i]-'A')-b)* (BigInteger.modInverse(BigInteger.valueOf(a)).intValue() % 26 + 'A' );
}
}
}
【问题讨论】:
标签: java encryption integer static-methods biginteger