我早些时候问过这个问题,但没有得到正确的回答,毫无结果.

所以我已经澄清了一些关于这个问题的细节,我真的很想听听你关于我如何解决这个问题或者我应该try 什么的 idea .

我在Linux服务器上安装了Java 1.6.0.12个,下面的代码运行得非常好.

String key = "av45k1pfb024xa3bl359vsb4esortvks74sksr5oy4s5serondry84jsrryuhsr5ys49y5seri5shrdliheuirdygliurguiy5ru";
try {
    Cipher c = Cipher.getInstance("ARCFOUR");

    SecretKeySpec secretKeySpec = new SecretKeySpec(key.getBytes("UTF-8"), "ARCFOUR");
    c.init(Cipher.DECRYPT_MODE, secretKeySpec);

    return new String(c.doFinal(Hex.decodeHex(data.toCharArray())), "UTF-8");

} catch (InvalidKeyException e) {
    throw new CryptoException(e);
}

今天我在我的服务器用户上安装了Java 1.6.0.26,当我try 运行我的应用程序时,我得到了以下异常.我猜测这与Java安装配置有关,因为它在第一个版本中可以工作,但在后一个版本中不能工作.

Caused by: java.security.InvalidKeyException: Illegal key size or default parameters
    at javax.crypto.Cipher.a(DashoA13*..) ~[na:1.6]
    at javax.crypto.Cipher.a(DashoA13*..) ~[na:1.6]
    at javax.crypto.Cipher.a(DashoA13*..) ~[na:1.6]
    at javax.crypto.Cipher.init(DashoA13*..) ~[na:1.6]
    at javax.crypto.Cipher.init(DashoA13*..) ~[na:1.6]
    at my.package.Something.decode(RC4Decoder.java:25) ~[my.package.jar:na]
    ... 5 common frames omitted

Line 25是:

Notes:

推荐答案

很可能你现在没有安装无限强度文件.

您可能需要下载此文件:

Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 6

Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 7 Download

Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 8 Download(仅适用于Java 8 u162之前的版本)

从zip中提取jar文件并将其保存在${java.home}/jre/lib/security/中.

Java相关问答推荐

虚拟线程似乎在外部服务调用时阻止运营商线程

Java在模块化jar文件中找不到类,但是javap可以

@org.springframework.beans.factory.annotation.Autowired(required=true)-注入点有以下注释:-SpringBoot

springboot start loge change

根据对象和值的参数将映射<;T、值&>转换为列表<;T&>

Java记录的不同序列化/反序列化

连接Quarkus中的两个异步操作

在运行MVN测试时,为什么构建失败,并显示了java.lang.ClassNotFoundException:java.net.http.HttpResponse?

Java中的死锁及其重入锁和锁

为什么在maven中,getLast方法不适用于List?

在Java 17中使用两个十进制数字分析时间时出错,但在Java 8中成功

使用多个RemoteDatabase对象的一个线程

Android Java:已设置但未读取SharedPreferences

在Ubuntu 23.10上使用mp3创建JavaFX MediaPlayer时出错

来自外部模块的方面(对于Java+Gradle项目)不起作用

如何在透视表中添加对计数列的筛选?

判断重复的两个二维表算法?

未调用OnBackPressedCallback-Activitiy立即终止

持续时间--为什么在秒为负数的情况下还要做额外的工作?

按长度排序字符串数组