org.bouncycastle.crypto.general.FipsRegister Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bc-fips Show documentation
Show all versions of bc-fips Show documentation
The FIPS 140-3 Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms certified to FIPS 140-3 level 1. This jar contains JCE provider and low-level API for the BC-FJA version 2.0.0, FIPS Certificate #4743. Please see certificate for certified platform details.
package org.bouncycastle.crypto.general;
import java.util.HashMap;
import java.util.Map;
import org.bouncycastle.crypto.fips.FipsAlgorithm;
import org.bouncycastle.crypto.fips.FipsEngineProvider;
import org.bouncycastle.crypto.internal.EngineProvider;
/**
* Local register that provides access to engines for FIPS algorithms for use with general/non-FIPS-approved modes of use.
*/
public final class FipsRegister
{
FipsRegister()
{
}
private static final Map providerMap = new HashMap();
public static void registerEngineProvider(FipsAlgorithm algorithm, FipsEngineProvider provider)
{
if (algorithm == null || provider == null)
{
throw new IllegalArgumentException("Arguments cannot be null");
}
providerMap.put(algorithm, provider);
}
static EngineProvider getProvider(FipsAlgorithm algorithm)
{
return providerMap.get(algorithm);
}
}