相关疑难解决方法(0)

命令行 Jasypt 客户端加密“无法操作”

我正在使用 Jasypt 以非明文格式将我们的数据库密码存储在我们的休眠配置文件中。

例如代替

    <property name="hibernate.connection.username">user1</property>
    <property name="hibernate.connection.password">password1</property>
Run Code Online (Sandbox Code Playgroud)

我想要类似的东西

    <property name="hibernate.connection.username">user1</property>
    <property name="hibernate.connection.password">ENC(0HY4F73HFPQ85CN)</property>
Run Code Online (Sandbox Code Playgroud)

我正在使用 PBEWITHMD5ANDTRIPLEDES 算法。我正在阅读它,似乎这可能需要安装 JCE 或“管辖权政策”扩展。我的问题是,如果我在 PBE 算法列表中看到这些,是否已经安装了这些东西?

我运行了 listAlgorithms.bat 脚本:

C:\dev\jasypt-1.9.1\bin>listAlgorithms.bat

DIGEST ALGORITHMS:   [MD2, MD5, SHA, SHA-256, SHA-384, SHA-512]

PBE ALGORITHMS:      [PBEWITHMD5ANDDES, PBEWITHMD5ANDTRIPLEDES, PBEWITHSHA1ANDDESEDE, PBEWITHSHA1ANDRC2_40]
Run Code Online (Sandbox Code Playgroud)

但是当我尝试加密我的密码时,我收到一条非常无用的错误消息:

C:\dev\jasypt-1.9.1\bin>encrypt.bat input=etrading_rw_123 password=encryptionkey algorithm=PBEWITHMD5ANDTRIPLEDES

----ENVIRONMENT-----------------

Runtime: Sun Microsystems Inc. Java HotSpot(TM) Client VM 20.14-b01



----ARGUMENTS-------------------

algorithm: PBEWITHMD5ANDTRIPLEDES
input: etrading_rw_123
password: encryptionkey



----ERROR-----------------------

Operation not possible (Bad input or parameters)
Run Code Online (Sandbox Code Playgroud)

如果我使用 algorithm=PBEWITHMD5ANDDES 运行相同的脚本,它就可以正常工作。“支持的算法”列表是否真的意味着“如果启用它们将支持的算法”而不是“可以使用的算法”?

我正在使用 Java 版本:

java version "1.6.0_17"
Java(TM) SE Runtime …
Run Code Online (Sandbox Code Playgroud)

java encryption jasypt

10
推荐指数
2
解决办法
1万
查看次数

标签 统计

encryption ×1

jasypt ×1

java ×1