密码输入正确登录仍失败

问题现象

  • 密码输入正确登录仍失败,后端有报错日志,会出现关键字:InvalidKeyException: Illegal key size
  • 密码解密失败原因排查

异常日志

2022-07-15 13:58:58.439  INFO 17064 --- [0.0-8090-exec-5] p.s.pamirs.user.api.utils.AES256Utils    :
java.security.InvalidKeyException: Illegal key size
    at javax.crypto.Cipher.checkCryptoPerm(Cipher.java:1039) ~[na:1.8.0_121]
    at javax.crypto.Cipher.implInit(Cipher.java:805) ~[na:1.8.0_121]
    at javax.crypto.Cipher.chooseProvider(Cipher.java:864) ~[na:1.8.0_121]
    at javax.crypto.Cipher.init(Cipher.java:1396) ~[na:1.8.0_121]
    at javax.crypto.Cipher.init(Cipher.java:1327) ~[na:1.8.0_121]
    at pro.shushi.pamirs.user.api.utils.AES256Utils.decrypt(AES256Utils.java:93) ~[pamirs-user-api-3.0.1-20220715.032940-5.jar:na]
    at pro.shushi.pamirs.user.api.crypto.DecryptAspect.decryptObj(DecryptAspect.java:81) [pamirs-user-api-3.0.1-20220715.032940-5.jar:na]
    at pro.shushi.pamirs.user.api.crypto.DecryptAspect.decryptData(DecryptAspect.java:62) [pamirs-user-api-3.0.1-20220715.032940-5.jar:na]
    at pro.shushi.pamirs.user.api.crypto.DecryptAspect.decrypt(DecryptAspect.java:44) [pamirs-user-api-3.0.1-20220715.032940-5.jar:na]

异常原因:如果密钥大于128, 会抛出java.security.InvalidKeyException: Illegal key size 异常. 因为密钥长度是受限制的, java运行时环境读到的是受限的policy文件. 文件位于${java_home}/jre/lib/security, 这种限制是因为美国对软件出口的控制.
参考资料:https://www.cnblogs.com/jinloooong/p/10619353.html

解法办法

  • 1、请检查jdk版本是否高于1.8_221以上。

  • 2、如无法升级jdk版本的环境下,下载JCE无限制权限策略文件。
    请点击下载 jce_policy-8.zip 并按照如下步骤进行操作:

    • 解压jce_policy-8.zip,得到两个文件US_export_policy.jarlocal_policy.jar
    • 如果安装了JRE,将两个jar文件放到%JRE_HOME%\lib\security目录下覆盖原来的文件
    • 如果安装了JDK,将两个jar文件放到%JDK_HOME%\jre\lib\security目录下覆盖原来文件

Oinone社区 作者:望闲原创文章,如若转载,请注明出处:https://doc.oinone.top/oinone-faq/7305.html

访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验

(1)
望闲的头像望闲数式管理员
上一篇 2024年5月16日 下午2:30
下一篇 2024年5月17日 下午2:23

相关推荐

  • 数据处理问题

    2022年2月7日
    21400
  • Oinone 是什么

    1.Oinone能做什么? Oinone 是一款专注解决复杂业务场景的开源低代码应用平台,旨在提供所见即所得的快速可视化搭建应用功能,并打造企业专属的低代码平台。 提升交付效率,缩短交付周期; 减少人力投入,解决技术人才招聘难的难题; 减少接联调,减少重复建设,解决质量管控难题; 一键轻松安装,应用全生命周期管理,解决应用管理难题; 2.为什么要用Oinon…

    2022年3月14日
    10100
  • 自定义页面问题

    2022年2月10日
    19400
  • 复杂字段类型的导入导出

    复杂字段类型的导入导出 如果想要导出的字段是该模型关联的对象里的一个字段,则需要在创建模版时使用 “对象.字段” 的方式,并在导出时手动设置该字段 例如PamirsEmployee模型中的company,使用company.name创建值 @Field.many2one @Field.Relation(relationFields = {“companyCo…

    2024年7月1日
    8800
  • 登录版本问题

    2022年2月15日
    8600

发表回复

登录后才能评论