13. Common Issues

13.1. I get SQLAlchemy errors about missing columns/tables

This error occures if Krptn is upgraded and the new version uses a different database schema. Generally, there will be tools provided to fix such errors. Please check the corresponding release on GitHub.

However, if you are using a development or pre-release version you will have to erase your database. If you have not set a custom database, this can easily be achieved from Krptn’s CLI:

python -m krypton --clean

13.2. I get an error about failing to load the FIPS provider

Older Krptn versions use OpenSSL’s FIPS module for cryptography. Generally, this allows US government agencies to use this software - and also prevents us from accidentally using insecure ciphers. However, the downside is that it requires self-tests to be loaded. This error happens when the self tests could either not be performed, or there is an error in the configuration.

Note: this error can only happen when using old versions of Krptn. If you are using such an old version, please upgrade to a newer version. These old versions are not supported, and these instructions below will be removed eventually.

If you get this error, upgrade Krptn to a newer version or (if you can’t) attempt the following fix:

  1. Locate your Krptn installation by running pip show krptn.

  2. Navigate to the location inidicated by pip.

  3. Locate the OpenSSL install folder. By default, it is next to the Krptn installation named kr-openssl-install, but you may have changed it at install time. Inside that, locate:

    • on GNU/Linux, libssl.so.3 and libcrypto.so.3;

    • on Windows, libcrypto-3.dll and libssl-3.dll (or for x64 libssl-3-x64.dll and libcrypto-3-x64.dll);

    • on Mac, libcrypto.dylib and libssl.dylib.

  4. With this directory:

    • On Windows, add it to PATH;

    • On GNU/Linux, call /sbin/ldconfig <directory-path>, or set LD_LIBRARY_PATH environment variable to point to it;

    • On MacOS, set DYLD_LIBRARY_PATH to point to it.

  5. Inside the OpenSSL install directory locate the openssl executable.

  6. Inside the OpenSSL install directory locate the fips shared library (either fips.so, fips.dll, or fips.dylib).

  7. In the path where pip inidcated packages are installed, there is a folder named kr-openssl-config.

    • In that directory, locate openssl.cnf and delete it;

    • Create an empty fipsmodule.cnf or empty it if it already exists.

  8. Call the Openssl executabe openssl fipsinstall -module {path to fips lib} -out {your path to kr-openssl-config/fipsmodule.cnf}.

  9. Retry the task you were attempting.

13.3. Other issues

If you have any other issues, we recommend doing the following:

  1. Checking that your Krptn install is the latest version.

  2. Opening an issue on GitHub about your problem.