Class OpenSslX509KeyManagerFactory

java.lang.Object
javax.net.ssl.KeyManagerFactory
io.netty.handler.ssl.OpenSslX509KeyManagerFactory

public final class OpenSslX509KeyManagerFactory extends javax.net.ssl.KeyManagerFactory
Special 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 KeyManagerFactory.init(KeyStore, char[]) is called. KeyManagerFactory.init(ManagerFactoryParameters) is not supported by this implementation and so a call to it will always result in an InvalidAlgorithmParameterException.
  • Field Details

  • Constructor Details

    • OpenSslX509KeyManagerFactory

      public OpenSslX509KeyManagerFactory()
    • OpenSslX509KeyManagerFactory

      public OpenSslX509KeyManagerFactory(java.security.Provider provider)
    • OpenSslX509KeyManagerFactory

      public OpenSslX509KeyManagerFactory(java.lang.String algorithm, java.security.Provider provider) throws java.security.NoSuchAlgorithmException
      Throws:
      java.security.NoSuchAlgorithmException
    • OpenSslX509KeyManagerFactory

      private OpenSslX509KeyManagerFactory(OpenSslX509KeyManagerFactory.OpenSslKeyManagerFactorySpi spi)
  • Method Details

    • newOpenSslKeyManagerFactorySpi

      private static OpenSslX509KeyManagerFactory.OpenSslKeyManagerFactorySpi newOpenSslKeyManagerFactorySpi(java.security.Provider provider)
    • newOpenSslKeyManagerFactorySpi

      private static OpenSslX509KeyManagerFactory.OpenSslKeyManagerFactorySpi newOpenSslKeyManagerFactorySpi(java.lang.String algorithm, java.security.Provider provider) throws java.security.NoSuchAlgorithmException
      Throws:
      java.security.NoSuchAlgorithmException
    • newProvider

    • newEngineBased

      public static OpenSslX509KeyManagerFactory newEngineBased(java.io.File certificateChain, java.lang.String password) throws java.security.cert.CertificateException, java.io.IOException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException
      Create a new initialized OpenSslX509KeyManagerFactory which loads its PrivateKey directly from an OpenSSL engine via the ENGINE_load_private_key function.
      Throws:
      java.security.cert.CertificateException
      java.io.IOException
      java.security.KeyStoreException
      java.security.NoSuchAlgorithmException
      java.security.UnrecoverableKeyException
    • newEngineBased

      public static OpenSslX509KeyManagerFactory newEngineBased(java.security.cert.X509Certificate[] certificateChain, java.lang.String password) throws java.security.cert.CertificateException, java.io.IOException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException
      Create a new initialized OpenSslX509KeyManagerFactory which loads its PrivateKey directly from an OpenSSL engine via the ENGINE_load_private_key function.
      Throws:
      java.security.cert.CertificateException
      java.io.IOException
      java.security.KeyStoreException
      java.security.NoSuchAlgorithmException
      java.security.UnrecoverableKeyException
    • newKeyless

      public static OpenSslX509KeyManagerFactory newKeyless(java.io.File chain) throws java.security.cert.CertificateException, java.io.IOException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException
      Throws:
      java.security.cert.CertificateException
      java.io.IOException
      java.security.KeyStoreException
      java.security.NoSuchAlgorithmException
      java.security.UnrecoverableKeyException
    • newKeyless

      public static OpenSslX509KeyManagerFactory newKeyless(java.io.InputStream chain) throws java.security.cert.CertificateException, java.io.IOException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException
      Throws:
      java.security.cert.CertificateException
      java.io.IOException
      java.security.KeyStoreException
      java.security.NoSuchAlgorithmException
      java.security.UnrecoverableKeyException
    • newKeyless

      public static OpenSslX509KeyManagerFactory newKeyless(java.security.cert.X509Certificate... certificateChain) throws java.security.cert.CertificateException, java.io.IOException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.UnrecoverableKeyException
      Returns a new initialized OpenSslX509KeyManagerFactory which will provide its private key by using the OpenSslPrivateKeyMethod.
      Throws:
      java.security.cert.CertificateException
      java.io.IOException
      java.security.KeyStoreException
      java.security.NoSuchAlgorithmException
      java.security.UnrecoverableKeyException