# Class JSSEUtil

java.lang.Object
org.apache.tomcat.util.net.SSLUtilBase
org.apache.tomcat.util.net.jsse.JSSEUtil

All Implemented Interfaces:
  `SSLUtil`

public class JSSEUtil extends SSLUtilBase
SSLUtil implementation for JSSE.

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface SSLUtil

  `SSLUtil.ProtocolInfo`

- ## Field Summary

  ### Fields inherited from class SSLUtilBase

  `certificate, DEFAULT_KEY_ALIAS, sslHostConfig`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `JSSEUtil(SSLHostConfigCertificate certificate)`
  Constructs an instance for the given certificate.
  `JSSEUtil(SSLHostConfigCertificate certificate, boolean warnOnSkip)`
  Constructs an instance for the given certificate.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `SSLContext`
  `createSSLContextInternal(List<String> negotiableProtocols)`
  Creates an SSL context with the given negotiable protocols.
  `protected Set<String>`
  `getImplementedCiphers()`
  Returns the set of implemented SSL/TLS ciphers.
  `protected Set<String>`
  `getImplementedProtocols()`
  Returns the set of implemented SSL/TLS protocols.
  `protected Log`
  `getLog()`
  Returns the log for this utility.
  `protected boolean`
  `isTls13RenegAuthAvailable()`
  Returns whether TLS 1.3 renegotiation authentication is available.

  ### Methods inherited from class SSLUtilBase

  `configureSessionContext, createSSLContext, getCRLs, getEnabledCiphers, getEnabledProtocols, getKeyManagers, getParameters, getTrustManagers`

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### JSSEUtil

    public JSSEUtil(SSLHostConfigCertificate certificate)
    Constructs an instance for the given certificate.
    Parameters:
      `certificate` - The certificate

  - ### JSSEUtil

    public JSSEUtil(SSLHostConfigCertificate certificate, boolean warnOnSkip)
    Constructs an instance for the given certificate.
    Parameters:
      `certificate` - The certificate
      `warnOnSkip` - Whether to warn when skipping unsupported protocols/ciphers

- ## Method Details

  - ### getLog

    protected Log getLog()
    Description copied from class: `SSLUtilBase`
    Returns the log for this utility.
    Specified by:
      `getLog` in class `SSLUtilBase`
    Returns:
      the log

  - ### getImplementedProtocols

    protected Set<String> getImplementedProtocols()
    Description copied from class: `SSLUtilBase`
    Returns the set of implemented SSL/TLS protocols.
    Specified by:
      `getImplementedProtocols` in class `SSLUtilBase`
    Returns:
      the implemented protocols

  - ### getImplementedCiphers

    protected Set<String> getImplementedCiphers()
    Description copied from class: `SSLUtilBase`
    Returns the set of implemented SSL/TLS ciphers.
    Specified by:
      `getImplementedCiphers` in class `SSLUtilBase`
    Returns:
      the implemented ciphers

  - ### isTls13RenegAuthAvailable

    protected boolean isTls13RenegAuthAvailable()
    Description copied from class: `SSLUtilBase`
    Returns whether TLS 1.3 renegotiation authentication is available.
    Specified by:
      `isTls13RenegAuthAvailable` in class `SSLUtilBase`
    Returns:
      `true` if TLS 1.3 renegotiation authentication is available

  - ### createSSLContextInternal

    public SSLContext createSSLContextInternal(List<String> negotiableProtocols) throws NoSuchAlgorithmException
    Description copied from class: `SSLUtilBase`
    Creates an SSL context with the given negotiable protocols.
    Specified by:
      `createSSLContextInternal` in class `SSLUtilBase`
    Parameters:
      `negotiableProtocols` - The negotiable protocols
    Returns:
      the SSL context
    Throws:
      `NoSuchAlgorithmException`