我之前曾问过一个问题,但是没有得到正确的回答,也无济于事。
因此,我澄清了有关该问题的一些细节,我真的很想听听你关于如何解决此问题或应该尝试的想法。
我在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,当我尝试运行应用程序时,出现以下异常。我的猜测是它与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
第25行是: c.init(Cipher.DECRYPT_MODE, secretKeySpec);
你很可能现在没有安装无限强度文件。
你可能需要下载此文件:
Java密码术扩展(JCE)无限强度管辖权策略文件6
Java密码术扩展(JCE)无限强度管辖权策略文件7下载
Java密码术扩展(JCE)无限强度管辖权策略文件8下载(仅Java 8 u162之前的版本需要)
从zip中提取jar文件并将其保存在中${java.home}/jre/lib/security/
。
问题内容: 我遇到以下错误,并且有点卡住:线程“ main”中的异常 我被困住了,因为我找到的所有答案都涉及通常包含在android SDK中的Java 密码扩展(JCE) 。所以我认为我的问题不是这个。 我一定忘记了一些东西,但是我找不到。也许我的代码是错误的(这是我使用Java进行加密的第一种方法,我不是专家,下面的代码大部分是教程的复制粘贴)。 我使用以下代码对String进行加密和解密:
问题内容: 我的测试可以在开发的MacBook Pro上很好地运行,但是无法在持续集成的TeamCity服务器中运行。 错误如下: java.security.InvalidKeyException: Illegal key size at javax.crypto.Cipher.a(DashoA13..) at javax.crypto.Cipher.init(DashoA13 ..) at j
问题内容: 当我运行它时,它拒绝“ def a(…”,并用红色突出显示“(”。我不知道为什么。 问题答案: 让我在这里澄清两点: 首先,非默认参数不应跟随默认参数,这意味着您无法在函数中定义。在函数中定义参数的正确顺序为: 位置参数或非默认参数,即 关键字参数或默认参数,即 仅关键字参数,即 var-keyword参数,即 是位置参数 是可选参数 是关键字参数 是列表参数 仅限关键字 是var-k
问题内容: 我使用AES 256密钥加密字节时遇到问题。我已经安装了该策略。这是我所做的: 下载文件:http : //www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html 我将文件local_policy和US_export_policy移至目录/Library/Java/JavaVirtualMa
也许你能帮我。非常感谢!
线程“main”java中出现异常。安全InvalidKeyException:以下代码的密钥大小非法 密钥的字符长度为44。我试着用字符长度24来加密。请帮助解决这个问题。