java - 在java中处理超出范围的整数

标签 java rsa

正在从事一个处理 RSA 加密和解密的项目,其中一部分正在处理这个数字

int modulus = 270653957405596110781 

这是一个 68 位数字,我知道 long 最多只能达到 64 位,那么我该如何解决这个问题?

我尝试了整个

    public static void main(String [] args){

    long modulus = 270653957405596110781L;


}

事情仍然没有运气,因为它是一个 68 位数字,而不是像我说的那样 64。

最佳答案

您必须使用BigInteger:

BigInteger modulus = new BigInteger("270653957405596110781");

Javadocs

关于java - 在java中处理超出范围的整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16004712/

相关文章:

java - EL1008E :(pos 8):Property or field cannot be found on object of type '...security.web.access.expression.WebSecurityExpressionRoot' maybe not public?

java - 结构在 Java 中是如何工作的?

c# - 在 C# Dll 中保存加密数据和私钥的安全方法

java.lang.ClassNotFoundException : org. bouncycaSTLe.jcajce.provider.asymmetric.rsa.CipherSpi$NoPadding 错误

java - 从 EDT 多次重新绘制 JPanel

JavaSE 在列表中添加对象但对象发生变化为什么?

java - 数组流不求和

ruby-on-rails - 如何从 ActionMailer 发送已签名的电子邮件?

java - 如何在 java 中读取 rsa 公钥文件?

github - 计算RSA key 指纹