49.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==
这意味着,如果您知道 secret 的 master 密码,加密表示 qaEEacuW7BU 可以被解密。
ti 8LcMgyjKw==
如果您再次运行该工具,则加密的值将返回不同的结果。但是,解密该值将始终返回正确的原始值。
您可以使用以下参数运行工具来测试解密值:
$ jbang org.apache.camel:camel-jasypt:<camel version here> -c decrypt -p secret -i qaEEacuW7BUti8LcMgyjKw==
哪些输出结果如下:
Decrypted text: tiger
然后,在 Properties 文件中使用这些加密值。例如,
# Encrypted value for 'tiger'
my.secret = ENC(qaEEacuW7BUti8LcMgyjKw==)