AES加密异常处理 InvalidAlgorithmParameterException:expected IV length of 16 but was 32

java.security.InvalidAlgorithmParameterException: expected IV length of 16 but was 32.

大概的意思是:无效的算法参数异常:期望的阈值是16但是给的是32


注意到当前密码长度是32的,而我生成的密码配置是128bit(java int占4位,既32个整型)

那么既然要求长度16密码,生成密码的配置就是16x4=64bit。

这就简单了,处理如图生成秘钥的配置改成64bit:



ps:我这边AES加密配置的规则是“AES/CBC/PKCS5PADDING”,不知道是不是这里的规则导致对密码阈值的要求,知道的可以告知我下,非常感谢!ye.jg@qq.com


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty是一个常见的异常,通常在使用HTTPS调用第三方接口时出现。这个异常表示Java的信任锚点参数为空,而实际上它应该包含一些信任的证书。这个问题可能由以下几个原因导致: 1. JDK安装问题:异常可能是由于JDK安装不完整或损坏导致的。您可以尝试重新解压一个正确的JDK tar包,并确保目录中包含正确的依赖项。 2. 缺少SSL支持的相关证书包:异常可能是由于缺少SSL支持的相关证书包导致的。您可以检查JDK目录下的lib目录,确保它包含了所需的依赖项。如果确实缺少相关证书包,则可以从其他可靠的来源下载并添加到lib目录中。 3. 系统代理设置问题:异常还可能是由于系统代理设置问题导致的。您可以检查系统代理设置,并确保其与您的Java程序的要求相匹配。 解决这个问题的步骤如下: 1. 确保JDK安装完整并没有损坏。您可以尝试重新解压一个正确的JDK tar包,并确保目录中包含了所需的依赖项。 2. 检查JDK目录下的lib目录,确保它包含了所需的SSL支持的相关证书包。如果缺少这些证书包,您可以从其他可靠的来源下载并添加到lib目录中。 3. 检查系统代理设置,确保其与您的Java程序的要求相匹配。如果需要使用代理,请确保代理设置正确并能够连接到所需的资源。 4. 重新启动您的Java项目服务,以确保更新的JDK和证书配置生效。 通过遵循以上步骤,您应该能够解决java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty异常。请注意,这个异常可能有多种原因,因此您可能需要根据具体情况进行进一步的调试和排查。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

leafseelight

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值