【发布时间】:2019-10-24 12:33:36
【问题描述】:
如果您的 spring-boot 应用程序属性文件中使用了 {cipher} 加密文本。
application.yml 或 application.properties
my.password='{cipher}68e78a954bfa0297ecc733`
上面是在 SpringBoot2 中开始失败并显示错误消息 Cannot decrypt: key=my.password
堆栈跟踪
java.lang.IllegalStateException: Cannot decrypt: key=enterpriseInventoryService.password
at org.springframework.cloud.bootstrap.encrypt.EnvironmentDecryptApplicationInitializer.decrypt(EnvironmentDecryptApplicationInitializer.java:292)
at org.springframework.cloud.bootstrap.encrypt.EnvironmentDecryptApplicationInitializer.lambda$decrypt$0(EnvironmentDecryptApplicationInitializer.java:270)
at java.util.LinkedHashMap.replaceAll(Unknown Source)
at org.springframework.cloud.bootstrap.encrypt.EnvironmentDecryptApplicationInitializer.decrypt(EnvironmentDecryptApplicationInitializer.java:265)
at org.springframework.cloud.bootstrap.encrypt.EnvironmentDecryptApplicationInitializer.decrypt(EnvironmentDecryptApplicationInitializer.java:190)
at org.springframework.cloud.bootstrap.encrypt.EnvironmentDecryptApplicationInitializer.initialize(EnvironmentDecryptApplicationInitializer.java:124)
at org.springframework.cloud.bootstrap.BootstrapApplicationListener$DelegatingEnvironmentDecryptApplicationInitializer.initialize(BootstrapApplicationListener.java:413)
at org.springframework.boot.SpringApplication.applyInitializers(SpringApplication.java:623)
.
.
Caused by: java.lang.IllegalStateException: Unable to invoke Cipher due to bad padding
at org.springframework.security.crypto.encrypt.CipherUtils.doFinal(CipherUtils.java:142)
【问题讨论】:
标签: java spring encryption encryption-symmetric spring-boot-2