KeyManagerFactory that pre-compute the keymaterial used when SslProvider#OPENSSL or
SslProvider#OPENSSL_REFCNT is used and so will improve handshake times and its performance.
Because the keymaterial is pre-computed any modification to the KeyStore is ignored after
init(KeyStore, char[]) is called.
init(ManagerFactoryParameters) is not supported by this implementation and so a call to it will always
result in an InvalidAlgorithmParameterException.
| Modifier and Type | Class and Description |
|---|---|
| private static class | |
| private static class |
| Modifier and Type | Field and Description |
|---|---|
| private final OpenSslX509KeyManagerFactory. |
| Access | Constructor and Description |
|---|---|
| public | |
| public | |
| public | |
| private |
| spi | back to summary |
|---|---|
| private final OpenSslX509KeyManagerFactory. | |
| OpenSslX509KeyManagerFactory | back to summary |
|---|---|
| public OpenSslX509KeyManagerFactory() | |
| OpenSslX509KeyManagerFactory | back to summary |
|---|---|
| public OpenSslX509KeyManagerFactory(Provider provider) | |
| OpenSslX509KeyManagerFactory | back to summary |
|---|---|
| public OpenSslX509KeyManagerFactory(String algorithm, Provider provider) throws NoSuchAlgorithmException | |
| OpenSslX509KeyManagerFactory | back to summary |
|---|---|
| private OpenSslX509KeyManagerFactory(OpenSslX509KeyManagerFactory. | |
| newEngineBased | back to summary |
|---|---|
| public static OpenSslX509KeyManagerFactory newEngineBased(File certificateChain, String password) throws CertificateException, IOException, KeyStoreException, NoSuchAlgorithmException, UnrecoverableKeyException Create a new initialized | |
| newEngineBased | back to summary |
|---|---|
| public static OpenSslX509KeyManagerFactory newEngineBased(X509Certificate[] certificateChain, String password) throws CertificateException, IOException, KeyStoreException, NoSuchAlgorithmException, UnrecoverableKeyException Create a new initialized | |
| newKeyless | back to summary |
|---|---|
| public static OpenSslX509KeyManagerFactory newKeyless(File chain) throws CertificateException, IOException, KeyStoreException, NoSuchAlgorithmException, UnrecoverableKeyException See | |
| newKeyless | back to summary |
|---|---|
| public static OpenSslX509KeyManagerFactory newKeyless(InputStream chain) throws CertificateException, IOException, KeyStoreException, NoSuchAlgorithmException, UnrecoverableKeyException See | |
| newKeyless | back to summary |
|---|---|
| public static OpenSslX509KeyManagerFactory newKeyless(X509Certificate... certificateChain) throws CertificateException, IOException, KeyStoreException, NoSuchAlgorithmException, UnrecoverableKeyException Returns a new initialized | |
| newOpenSslKeyManagerFactorySpi | back to summary |
|---|---|
| private static OpenSslX509KeyManagerFactory. | |
| newOpenSslKeyManagerFactorySpi | back to summary |
|---|---|
| private static OpenSslX509KeyManagerFactory. | |
| newProvider | back to summary |
|---|---|
| pack-priv OpenSslKeyMaterialProvider newProvider() | |
| Modifier and Type | Class and Description |
|---|---|
| private static class |
| Modifier and Type | Field and Description |
|---|---|
| pack-priv final KeyManagerFactory | |
| private volatile OpenSslX509KeyManagerFactory. |
| Access | Constructor and Description |
|---|---|
| pack-priv |
| Modifier and Type | Method and Description |
|---|---|
| protected KeyManager[] | engineGetKeyManagers()
Implements abstract javax. |
| protected synchronized void | engineInit(KeyStore
the key store or null keyStore, char[] the password for recovering keys chars)Implements abstract javax. |
| protected void | engineInit(ManagerFactoryParameters
an implementation of a provider-specific parameter
specification managerFactoryParameters)Implements abstract javax. |
| pack-priv OpenSslKeyMaterialProvider | |
| private static String |
| kmf | back to summary |
|---|---|
| pack-priv final KeyManagerFactory kmf | |
| providerFactory | back to summary |
|---|---|
| private volatile OpenSslX509KeyManagerFactory. | |
| OpenSslKeyManagerFactorySpi | back to summary |
|---|---|
| pack-priv OpenSslKeyManagerFactorySpi(KeyManagerFactory kmf) | |
| engineGetKeyManagers | back to summary |
|---|---|
| protected KeyManager[] engineGetKeyManagers() Implements abstract javax. Doc from javax. Returns one key manager for each type of key material.
| |
| engineInit | back to summary |
|---|---|
| protected synchronized void engineInit(KeyStore keyStore, char[] chars) throws KeyStoreException, NoSuchAlgorithmException, UnrecoverableKeyException Implements abstract javax. Doc from javax. Initializes this factory with a source of key material.
| |
| engineInit | back to summary |
|---|---|
| protected void engineInit(ManagerFactoryParameters managerFactoryParameters) throws InvalidAlgorithmParameterException Implements abstract javax. Doc from javax. Initializes this factory with a source of key material.
In some cases, initialization parameters other than a keystore
and password may be needed by a provider. Users of that
particular provider are expected to pass an implementation of
the appropriate
| |
| newProvider | back to summary |
|---|---|
| pack-priv OpenSslKeyMaterialProvider newProvider() | |
| password | back to summary |
|---|---|
| private static String password(char[] password) | |
| Modifier and Type | Class and Description |
|---|---|
| private static class | OpenSslX509KeyManagerFactory.OpenSslKeyManagerFactorySpi.ProviderFactory.OpenSslPopulatedKeyMaterialProvider
|
| Modifier and Type | Field and Description |
|---|---|
| private final Iterable | |
| private final X509KeyManager | |
| private final String |
| Access | Constructor and Description |
|---|---|
| pack-priv |
| Modifier and Type | Method and Description |
|---|---|
| pack-priv OpenSslKeyMaterialProvider |
| aliases | back to summary |
|---|---|
| private final Iterable<String> aliases | |
| keyManager | back to summary |
|---|---|
| private final X509KeyManager keyManager | |
| password | back to summary |
|---|---|
| private final String password | |
| ProviderFactory | back to summary |
|---|---|
| pack-priv ProviderFactory(X509KeyManager keyManager, String password, Iterable<String> aliases) | |
| newProvider | back to summary |
|---|---|
| pack-priv OpenSslKeyMaterialProvider newProvider() | |
OpenSslKeyMaterialProvider implementation that pre-compute the OpenSslKeyMaterial for
all aliases.
| Access | Constructor and Description |
|---|---|
| pack-priv | OpenSslPopulatedKeyMaterialProvider(X509KeyManager keyManager, String password, Iterable<String> aliases)
|
| Modifier and Type | Method and Description |
|---|---|
| pack-priv OpenSslKeyMaterial | chooseKeyMaterial(BufferAllocator allocator, String alias)
Overrides io. OpenSslKeyMaterial or null (if none) that should be used during the handshake by
OpenSSL.
|
| pack-priv void | destroy()
Overrides io. |
| materialMap | back to summary |
|---|---|
| private final Map<String, Object> materialMap | |
| OpenSslPopulatedKeyMaterialProvider | back to summary |
|---|---|
| pack-priv OpenSslPopulatedKeyMaterialProvider(X509KeyManager keyManager, String password, Iterable<String> aliases) | |
| chooseKeyMaterial | back to summary |
|---|---|
| pack-priv OpenSslKeyMaterial chooseKeyMaterial(BufferAllocator allocator, String alias) throws Exception Overrides io. Doc from io. Returns the
| |
| destroy | back to summary |
|---|---|
| pack-priv void destroy() Overrides io. Doc from io. Will be invoked once the provider should be destroyed.
| |
| Access | Constructor and Description |
|---|---|
| private |
| OpenSslKeyStore | back to summary |
|---|---|
| private OpenSslKeyStore(final X509Certificate[] certificateChain, final boolean keyless) | |