It is found that the creation of KeycloakSession in BaseFuzzer requires CryptoIntegration.init() invocation. A successful CyrptoIntegration.init() requires a single set of crypto providers. This cannot accommodate some of the crypto-based fuzzers. Thus this PR changes the BaseFuzzer to BaseHelper and only requests it when needed to avoid possible exceptions on CryptoIntegration.init() invocation. This PR also fixes some logic related to AuthenticationFlowContext creation that is used by the Authenticator implementation fuzzers. Also, this PR also fixes the build script to separate different crypto provider to avoid crashing the CryptoIntegration.init() invocation. Last but not least, this PR fixes the formatting of the fuzzers.
It is found that the creation of KeycloakSession in BaseFuzzer requires CryptoIntegration.init() invocation. A successful CyrptoIntegration.init() requires a single set of crypto providers. This cannot accommodate some of the crypto-based fuzzers. Thus this PR changes the BaseFuzzer to BaseHelper and only requests it when needed to avoid possible exceptions on CryptoIntegration.init() invocation. This PR also fixes some logic related to AuthenticationFlowContext creation that is used by the Authenticator implementation fuzzers. Also, this PR also fixes the build script to separate different crypto provider to avoid crashing the CryptoIntegration.init() invocation. Last but not least, this PR fixes the formatting of the fuzzers.