fix: simplify implementation of FIPS SupportedAlgorithms()
It's a bit of a hassle to manually manage the supported algorithms, which are easy to get wrong. These supported algorithms are used by the client, while the server is more conservative and mostly uses Go's default algorithms. Let's just filter the values we know are problematic until Go ships something for us.
This effectively adds back a number of host key algorithms, such as
KeyAlgoED25519 (not to be confused with CertAlgoED25519). But since only
the client (e.g. fleeting plugin) only uses fips.SupportedAlgorithms()
at the moment, changing the supported host keys doesn't affect the
client. It will become important if gitlab-sshd ever switches to
fips.SupportedAlgorithms()
from fips.DefaultAlgorithms()
.
Edited by Stan Hu