我在编写应用程序时遇到了以下异常。在spring Boot 中的属性我还添加了以下值:
jasypt.encryptor.algorithm=PBEWithMD5AndDES
jasypt.encryptor.iv-generator-classname=org.jasypt.iv.NoIvGenerator
但是:
Caused by: com.ulisesbocchio.jasyptspringboot.exception.DecryptionException: Unable to decrypt: ENC(2nmnp3BaQNeNtqZZprVbCHHSnqH3vOGwXGRr7lJc0KU=1). Decryption of Properties failed, make sure encryption/decryption passwords match
Caused by: org.jasypt.exceptions.EncryptionOperationNotPossibleException: null
2条答案
按热度按时间sdnqo3pr1#
我终于弄清楚密码已损坏,我再次编码
ENC(2nmnp3BaQNeNtqZZprVbCHHSnqH3vOGwXGRr7lJc0KU=)
和固定.6rqinv9w2#
使用原始帖子中显示的两个属性条目解决了我的问题,我得到了“无法解密属性:ENC(...)”错误。
这是因为,对于jasypt-spring-boot-starter工件,使用的默认算法在版本2.0和3.0之间发生了变化。因此,如果您升级版本,您需要使用新的默认值(从3.0.4开始为PBEWithHMACSHA512ANDAES_256)重新加密密码,或者在属性文件中指定旧的默认值(在2.0.0中为PBEWithMD 5AndDES)。您还需要覆盖iv-generator-classname名称,该名称也已更改。