¿Cómo cifrar/descifrar texto en CentOs/RHEL en modo FIPS?

¿Cómo cifrar/descifrar texto en CentOs/RHEL en modo FIPS?

Para cifrar y descifrar texto estoy usando:

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>

Esto funciona muy bien, hasta que lo pruebo en un sistema RHEL7 (o CentOS7) que tiene FIPS habilitado. Esto es lo que obtengo como resultado cuando intento cifrar texto como se indica arriba:

opción desconocida '-pbkdf2'

Entonces lo intento sin esa opción y obtengo:

opción desconocida '-iter'

Entonces lo intento sin ninguna de esas opciones:

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

Eso da como resultado este error:

U2Fs...12:error:060800A3:rutinas de sobre digital:EVP_DigestInit_ex:deshabilitado para fips:digest.c:256:

Entonces no estoy seguro de cómo proceder. Estoy abierto a utilizar otras herramientas para cifrar/descifrar texto de forma compatible con FIPS.

Nota: encontré una posible solución enBase de conocimientos de RedHat, pero está detrás de un muro de pago. :-(

Respuesta1

Lo hice funcionar eliminando las opciones -pbkdf2y -itery especificando el algoritmo de resumen de mensajes a través de -md sha256:

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

información relacionada