54.2. 工具
Jasypt 组件是一个可运行 JAR,提供用于加密或解密值的命令行工具。可以向控制台输出使用文档来描述它提供的语法和选项:
Apache Camel Jasypt takes the following options
-h or -help = Displays the help screen
-c or -command <command> = Command either encrypt or decrypt
-p or -password <password> = Password to use
-i or -input <input> = Text to encrypt or decrypt
-a or -algorithm <algorithm> = Optional algorithm to use
-rsga or -algorithm <algorithm> = Optional random salt generator algorithm to use
-riga or -algorithm <algorithm> = Optional random iv generator algorithm to use
运行该工具的简单方式是使用 JBang。例如,若要加密值 tiger,您可以使用以下参数:确保指定要使用的 camel-jasypt 版本。
$ jbang org.apache.camel:camel-jasypt:<camel version here> -c encrypt -p secret -i tiger
输出以下结果
Encrypted text: qaEEacuW7BUti8LcMgyjKw==
这意味着,如果您知道 master 密码是 secret,则加密表示 qaEEacuW7BUti8LcMgyjKw== 可以将其解密回 tiger。
如果您再次运行该工具,则加密值将返回不同的结果。但是解密该值将始终返回正确的原始值。
您可以使用以下参数运行工具来测试解密值:
$ jbang org.apache.camel:camel-jasypt:<camel version here> -c decrypt -p secret -i qaEEacuW7BUti8LcMgyjKw==
输出以下结果:
Decrypted text: tiger
然后,在属性文件中使用这些 加密值。例如,
# Encrypted value for 'tiger'
my.secret = ENC(qaEEacuW7BUti8LcMgyjKw==)