• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package org.bouncycastle.jcajce.provider.config;
2 
3 import org.bouncycastle.asn1.ASN1ObjectIdentifier;
4 import org.bouncycastle.jcajce.provider.util.AsymmetricKeyInfoConverter;
5 
6 /**
7  * Implemented by the BC provider. This allows setting of hidden parameters,
8  * such as the ImplicitCA parameters from X.962, if used.
9  */
10 public interface ConfigurableProvider
11 {
12     /**
13      * Elliptic Curve CA parameters - thread local version
14      */
15     static final String THREAD_LOCAL_EC_IMPLICITLY_CA = "threadLocalEcImplicitlyCa";
16 
17     /**
18      * Elliptic Curve CA parameters - VM wide version
19      */
20     static final String EC_IMPLICITLY_CA = "ecImplicitlyCa";
21 
22     /**
23      * Diffie-Hellman Default Parameters - thread local version
24      */
25     static final String THREAD_LOCAL_DH_DEFAULT_PARAMS = "threadLocalDhDefaultParams";
26 
27     /**
28      * Diffie-Hellman Default Parameters - VM wide version
29      */
30     static final String DH_DEFAULT_PARAMS = "DhDefaultParams";
31 
setParameter(String parameterName, Object parameter)32     void setParameter(String parameterName, Object parameter);
33 
addAlgorithm(String key, String value)34     void addAlgorithm(String key, String value);
35 
addAlgorithm(String type, ASN1ObjectIdentifier oid, String className)36     void addAlgorithm(String type, ASN1ObjectIdentifier oid, String className);
37 
hasAlgorithm(String type, String name)38     boolean hasAlgorithm(String type, String name);
39 
addKeyInfoConverter(ASN1ObjectIdentifier oid, AsymmetricKeyInfoConverter keyInfoConverter)40     void addKeyInfoConverter(ASN1ObjectIdentifier oid, AsymmetricKeyInfoConverter keyInfoConverter);
41 }
42