使用Java进行AES加密

问题描述 投票:0回答:1

我一直在使用AES加密来认证用户。但是最近,当用户升级产品并尝试使用其凭据登录时,遇到以下问题:抛出以下错误消息给jboss:

11:17:02,907 INFO  [stdout] (ajp-/0.0.0.0:9009-1) Caused by: aesdpapi.AesDataProtectionAPIException: A native error occured in function 'UnprotectData'.  Error 87 : The parameter is incorrect.

11:17:02,907 INFO  [stdout] (ajp-/0.0.0.0:9009-1) 

11:17:02,907 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at aesdpapi.AesDataProtectionAPI.unprotectDataNative(Native Method)

11:17:02,907 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at aesdpapi.AesDataProtectionAPI.unprotectData(AesDataProtectionAPI.java:348)

11:17:02,907 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at com.gehcit.cp.security.bo.impl.LDAPAuthenticationModel.decryptLdapPasswordUsingAES(LDAPAuthenticationModel.java:348)

11:17:02,907 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at com.gehcit.cp.security.bo.impl.LDAPAuthenticationModel.getRSAPasswordFromAES(LDAPAuthenticationModel.java:326)

11:17:02,907 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at com.gehcit.cp.security.bo.impl.LDAPAuthenticationModel.decryptLdapPassword(LDAPAuthenticationModel.java:312)

11:17:02,923 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at com.gehcit.cp.security.bo.impl.LDAPAuthenticationModel.loadLDAPAttributes(LDAPAuthenticationModel.java:229)

11:17:02,923 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at com.gehcit.cp.security.bo.impl.LDAPAuthenticationModel.<init>(LDAPAuthenticationModel.java:186)

11:17:02,923 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at com.gehcit.cp.security.bo.impl.AuthenticationModelFactoryImpl.createInstance_aroundBody0(AuthenticationModelFactoryImpl.java:49)

11:17:02,923 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at com.gehcit.cp.security.bo.impl.AuthenticationModelFactoryImpl$AjcClosure1.run(AuthenticationModelFactoryImpl.java:1)

11:17:02,923 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149)

11:17:02,923 INFO  [stdout] (ajp-/0.0.0.0:9009-1)   at com.gehcit.cp.aop.monitor.MonitoredClassAspect.run(MonitoredClassAspect.java:53)

aesdpapi是我的用来存储AES相关文件的自定义库。我需要知道为什么会收到此异常,这可能是导致此异常的原因。

我怀疑新版本正在使用新密钥解密用户密码,该用户密码在升级产品之前已用旧密钥加密。升级后,已生成新密钥,该密钥无法解密由旧密钥加密的密码。

java security aes
1个回答
0
投票

由于Java密钥存储文件和证书文件不匹配而发生。

© www.soinside.com 2019 - 2024. All rights reserved.