Hi Herbert, I'm wondering from where I should invoke the FIPS tests for ML-DSA.
Currently, the asymmetric key type has some FIPS selftests for RSA and ECDSA built into it, but I wonder if that's the best way. The problem is that it does the selftest during module init - but that can only test whatever algorithms are built into the base kernel image and initialised at the time late_initcall() happens. It might be better to put the tests into the algorithm modules themselves - but that then has a potential circular dependency issue. However, that might not matter as the asymmetric key type won't be built as a module and will be built into the kernel (though some of the components such as X.509 and PKCS#7 can be built as modules). If I don't involve X.509/PKCS#7 in the selftest, then doing it from the ML-DSA modules during module init would be fine. Do you (or anyone else) have any thoughts? David
