如何在 FIPS 模式下在 CentOs/RHEL 上加密/解密文本?

如何在 FIPS 模式下在 CentOs/RHEL 上加密/解密文本?

要加密和解密文本我使用:

echo test | openssl enc -e -a -A -aes-256-cbc -pbkdf2 -iter 1234 -k <passphrase>
echo <encrypted text> | openssl enc -d -a -A -aes-256-cbc -pbkdf2 -iter 1234 -k <passphrase>

效果很好,直到我在启用了 FIPS 的 RHEL7(或 CentOS7)系统上测试它。这是我尝试加密上述文本时得到的输出:

未知选项‘-pbkdf2’

因此我尝试不使用这个选项,结果得到:

未知选项‘-iter’

因此我尝试不使用上述任何一种选项:

echo test | openssl enc -e -a -A -aes-256-cbc -k <passphrase>

这会导致以下错误:

U2Fs...12:错误:060800A3:数字信封例程:EVP_DigestInit_ex:为 fips:digest.c:256 禁用:

所以我不确定该怎么做。我愿意使用其他工具以符合 FIPS 的方式加密/解密文本。

注意:我找到了一个潜在的解决方案RedHat 的知识库,但需要付费。:-(

答案1

-pbkdf2我通过删除和-iter选项并通过以下方式指定消息摘要算法来使其工作-md sha256

echo test | openssl enc -e -a -A -aes-256-cbc -md sha256 -k <passphrase>

相关内容