public final class BouncyCastleProvider
extends java.security.Provider
implements org.bouncycastle.jcajce.provider.config.ConfigurableProvider
import java.security.Security; import org.bouncycastle.jce.provider.BouncyCastleProvider; Security.addProvider(new BouncyCastleProvider());The provider can also be configured as part of your environment via static registration by adding an entry to the java.security properties file (found in $JAVA_HOME/jre/lib/security/java.security, where $JAVA_HOME is the location of your JDK/JRE distribution). You'll find detailed instructions in the file but basically it comes down to adding a line:
security.provider.<n>=org.bouncycastle.jce.provider.BouncyCastleProvider
Where <n> is the preference you want the provider at (1 being the
most preferred).
Note: JCE algorithm names should be upper-case only so the case insensitive test for getInstance works.
Modifier and Type | Field and Description |
---|---|
static org.bouncycastle.jcajce.provider.config.ProviderConfiguration |
CONFIGURATION |
static java.lang.String |
PROVIDER_NAME |
Constructor and Description |
---|
BouncyCastleProvider()
Construct a new provider.
|
Modifier and Type | Method and Description |
---|---|
void |
addAlgorithm(java.lang.String key,
java.lang.String value) |
void |
addKeyInfoConverter(ASN1ObjectIdentifier oid,
org.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter keyInfoConverter) |
static java.security.PrivateKey |
getPrivateKey(PrivateKeyInfo privateKeyInfo) |
static java.security.PublicKey |
getPublicKey(SubjectPublicKeyInfo publicKeyInfo) |
boolean |
hasAlgorithm(java.lang.String type,
java.lang.String name) |
void |
setParameter(java.lang.String parameterName,
java.lang.Object parameter) |
clear, elements, entrySet, get, getInfo, getName, getProperty, getService, getServices, getVersion, keys, keySet, load, put, putAll, putService, remove, removeService, toString, values
getProperty, list, list, load, loadFromXML, propertyNames, save, setProperty, store, store, storeToXML, storeToXML, stringPropertyNames
public static final java.lang.String PROVIDER_NAME
public static final org.bouncycastle.jcajce.provider.config.ProviderConfiguration CONFIGURATION
public BouncyCastleProvider()
Security.addProvider()
mechanism.public void setParameter(java.lang.String parameterName, java.lang.Object parameter)
setParameter
in interface org.bouncycastle.jcajce.provider.config.ConfigurableProvider
public boolean hasAlgorithm(java.lang.String type, java.lang.String name)
hasAlgorithm
in interface org.bouncycastle.jcajce.provider.config.ConfigurableProvider
public void addAlgorithm(java.lang.String key, java.lang.String value)
addAlgorithm
in interface org.bouncycastle.jcajce.provider.config.ConfigurableProvider
public void addKeyInfoConverter(ASN1ObjectIdentifier oid, org.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter keyInfoConverter)
addKeyInfoConverter
in interface org.bouncycastle.jcajce.provider.config.ConfigurableProvider
public static java.security.PublicKey getPublicKey(SubjectPublicKeyInfo publicKeyInfo) throws java.io.IOException
java.io.IOException
public static java.security.PrivateKey getPrivateKey(PrivateKeyInfo privateKeyInfo) throws java.io.IOException
java.io.IOException