Для шифрования и дешифрования текста я использую:
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>
Это работает отлично, пока я не протестирую это на системе RHEL7 (или CentOS7), в которой включен FIPS. Вот что я получаю в качестве вывода, когда пытаюсь зашифровать текст, как указано выше:
неизвестная опция '-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>