I observed that using the SHA-256 implementation of OpenSSL speeds up hdrbg_init
and hdrbg_fill
on Debian (WSL), Mint and Manjaro. On MSYS2, however, it slows them down!
Regardless, there should be an installation flag which allows users to choose which SHA-256 implementation they want to use. If they go for the OpenSSL implementation but it isn't available, it should fall back to my implementation.
(I have actually already made the required changes, but have moved them to another branch because pkg-config on MSYS2 does not correctly indicate whether OpenSSL is installed: pkg-config --libs openssl
outputs -lssl -lcrypto
even when openssl-devel
is not installed, so linking the shared library fails. I should figure out a way to do this using CMake.)