Top Description Interfaces Classes Enums
[default module]

Package io.netty.handler.ssl


SSL · TLS implementation based on javax.net.ssl.SSLEngine

Interface Summary

Modifier and TypeInterface and Description
pack-priv interface
ApplicationProtocolAccessor

Provides a way to get the application-level protocol name from ALPN or NPN.

public interface
ApplicationProtocolNegotiator

Deprecated use ApplicationProtocolConfig
Interface to support Application Protocol Negotiation.
pack-priv interface
public interface
CipherSuiteFilter

Provides a means to filter the supplied cipher suite based upon the supported and default cipher suites.

public interface
public interface
public interface
public interface
OpenSslCertificateCompressionAlgorithm

Provides compression and decompression implementations for TLS Certificate Compression (RFC 8879).

pack-priv interface
pack-priv interface
OpenSslKeyMaterial

Holds references to the native key-material that is used by OpenSSL.

public interface
OpenSslPrivateKeyMethod

Allow to customize private key signing / decrypting (when using RSA).

pack-priv interface
OpenSslSession

SSLSession that is specific to our native implementation.

pack-priv interface
PemEncoded

A marker interface for PEM encoded values.

Class Summary

Modifier and TypeClass and Description
public abstract class
AbstractSniHandler<T>

Enables SNI (Server Name Indication) extension for server side SSL.

public class
ApplicationProtocolConfig

Provides an SSLEngine agnostic way to configure a ApplicationProtocolNegotiator.

public class
ApplicationProtocolNames

Provides a set of protocol names used in ALPN and NPN.

public abstract class
ApplicationProtocolNegotiationHandler

Configures a ChannelPipeline depending on the application-level protocol negotiation result of SslHandler.

pack-priv class
ApplicationProtocolUtil

Utility class for application protocol common operations.

pack-priv class
BouncyCastle

Contains methods that can be used to detect if BouncyCastle is usable.

pack-priv class
pack-priv class
pack-priv class
public class
Ciphers

Cipher suites

public class
CipherSuiteConverter

Converts a Java cipher suite string to an OpenSSL cipher suite string and vice versa.

pack-priv class
Conscrypt

Contains methods that can be used to detect if conscrypt is usable.

pack-priv abstract class
ConscryptAlpnSslEngine

A JdkSslEngine that uses the Conscrypt provider or SSL with ALPN.

pack-priv class
public abstract class
DelegatingSslContext

Adapter class which allows to wrap another SslContext and init SSLEngine instances.

pack-priv class
EnhancingX509ExtendedTrustManager

Wraps an existing X509ExtendedTrustManager and enhances the CertificateException that is thrown because of hostname validation.

pack-priv abstract class
ExtendedOpenSslSession

Delegates all operations to a wrapped OpenSslSession except the methods defined by ExtendedSSLSession itself.

pack-priv class
GroupsConverter

Convert java naming to OpenSSL naming if possible and if not return the original name.

public class
IdentityCipherSuiteFilter

This class will not do any filtering of ciphers suites.

pack-priv class
pack-priv class
public class
pack-priv class
pack-priv class
pack-priv class
JdkBaseApplicationProtocolNegotiator

Deprecated as a consequence of JdkApplicationProtocolNegotiator being deprecated.
Common base class for JdkApplicationProtocolNegotiator classes to inherit from.
pack-priv class
JdkDefaultApplicationProtocolNegotiator

Deprecated as a consequence of JdkApplicationProtocolNegotiator being deprecated.
The JdkApplicationProtocolNegotiator to use if you do not care about NPN or ALPN and are using SslProvider#JDK.
public class
public class
JdkSslClientContext

Deprecated Use SslContextBuilder to create JdkSslContext instances and only use JdkSslContext in your code.
A client-side SslContext which uses JDK's SSL/TLS implementation.
public class
JdkSslContext

An SslContext which uses JDK's SSL/TLS implementation.

pack-priv class
public class
JdkSslServerContext

Deprecated Use SslContextBuilder to create JdkSslContext instances and only use JdkSslContext in your code.
A server-side SslContext which uses JDK's SSL/TLS implementation.
pack-priv abstract class
pack-priv class
public class
NotSslRecordException

Special SSLException which will get thrown if a packet is received that not looks like a TLS/SSL record.

public class
OpenSsl

Tells if netty-tcnative and its OpenSSL support are available.

pack-priv class
OpenSslCachingKeyMaterialProvider

OpenSslKeyMaterialProvider that will cache the OpenSslKeyMaterial to reduce the overhead of parsing the chain and the key for generation of the material.

public class
OpenSslCachingX509KeyManagerFactory

Wraps another KeyManagerFactory and caches its chains / certs for an alias for better performance when using SslProvider#OPENSSL or SslProvider#OPENSSL_REFCNT.

public class
OpenSslCertificateCompressionConfig

Configuration for TLS1.3 certificate compression extension.

public class
OpenSslCertificateException

A special CertificateException which allows to specify which error code is included in the SSL Record.

public class
OpenSslClientContext

A client-side SslContext which uses OpenSSL's SSL/TLS implementation.

pack-priv class
OpenSslClientSessionCache

OpenSslSessionCache that is used by the client-side.

public abstract class
OpenSslContext

This class will use a finalizer to ensure native resources are automatically cleaned up.

public class
OpenSslContextOption<
the type of the value.
T
>

SslContextOptions that are specific to the SslProvider#OPENSSL / SslProvider#OPENSSL_REFCNT.

public class
public class
pack-priv class
OpenSslKeyMaterialManager

Manages key material for OpenSslEngines and so set the right PrivateKeys and X509Certificates.

pack-priv class
public class
pack-priv class
public class
OpenSslServerContext

A server-side SslContext which uses OpenSSL's SSL/TLS implementation.

public class
OpenSslServerSessionContext

OpenSslSessionContext implementation which offers extra methods which are only useful for the server-side.

pack-priv class
OpenSslSessionCache

SSLSessionCache implementation for our native SSL implementation.

public abstract class
OpenSslSessionContext

OpenSSL specific SSLSessionContext implementation.

pack-priv class
OpenSslSessionId

Represent the session ID used by an OpenSslSession.

public class
OpenSslSessionStats

Stats exposed by an OpenSSL session context.

public class
OpenSslSessionTicketKey

Session Ticket Key

public class
OpenSslX509KeyManagerFactory

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.

pack-priv class
OpenSslX509TrustManagerWrapper

Utility which allows to wrap X509TrustManager implementations with the internal implementation used by SSLContextImpl that provides extended verification.

public class
OptionalSslHandler

OptionalSslHandler is a utility decoder to support both SSL and non-SSL handlers based on the first message received.

public class
PemPrivateKey

This is a special purpose implementation of a PrivateKey which allows the user to pass PEM/PKCS#8 encoded key material straight into OpenSslContext without having to parse and re-encode bytes in Java land.

pack-priv class
PemReader

Reads a PEM file and converts it into a list of DERs so that they are imported into a KeyStore easily.

pack-priv class
PemValue

A PEM encoded value.

public class
PemX509Certificate

This is a special purpose implementation of a X509Certificate which allows the user to pass PEM/PKCS#8 encoded data straight into OpenSslContext without having to parse and re-encode bytes in Java land.

pack-priv class
PseudoRandomFunction

This pseudorandom function (PRF) takes as input a secret, a seed, and an identifying label and produces an output of arbitrary length.

public class
ReferenceCountedOpenSslClientContext

A client-side SslContext which uses OpenSSL's SSL/TLS implementation.

public abstract class
ReferenceCountedOpenSslContext

An implementation of SslContext which works with libraries that support the OpenSsl C library API.

public class
public class
ReferenceCountedOpenSslServerContext

A server-side SslContext which uses OpenSSL's SSL/TLS implementation.

pack-priv class
SignatureAlgorithmConverter

Converts OpenSSL signature Algorithm names to Java signature Algorithm names.

public class
SniCompletionEvent

Event that is fired once we did a selection of a SslContext based on the SNI hostname, which may be because it was successful or there was an error.

public class
SniHandler

Enables SNI (Server Name Indication) extension for server side SSL.

public abstract class
SslClientHelloHandler<T>

ByteToMessageDecoder which allows to be notified once a full ClientHello was received.

public class
SslCloseCompletionEvent

Event that is fired once the close_notify was received or if an failure happens before it was received.

public class
SslClosedEngineException

SSLException which signals that the exception was caused by an javax.net.ssl.SSLEngine which was closed already.

public abstract class
public abstract class
SslContext

A secure socket protocol implementation which acts as a factory for SSLEngine and SslHandler.

public class
SslContextBuilder

Builder for configuring a new SslContext for creation.

public class
SslContextOption<
the type of the value which is valid for the SslContextOption
T
>

A SslContextOption allows to configure a SslContext in a type-safe way.

public class
SslHandler

Adds SSL · TLS and StartTLS support to a Channel.

public class
SslHandshakeCompletionEvent

Event that is fired once the SSL handshake is complete, which may be because it was successful or there was an error.

public class
SslHandshakeTimeoutException

SSLHandshakeException that is used when a handshake failed due a configured timeout.

public abstract class
SslMasterKeyHandler

The SslMasterKeyHandler is a channel-handler you can include in your pipeline to consume the master key & session identifier for a TLS session.

public class
SslProtocols

SSL/TLS protocols

pack-priv class
SslUtils

Constants for SSL packets.

pack-priv class
StacklessSSLHandshakeException

A SSLHandshakeException that does not fill in the stack trace.

public class
SupportedCipherSuiteFilter

This class will filter all requested ciphers out that are not supported by the current SSLEngine.

Enum Summary

Modifier and TypeEnum and Description
public enum
ClientAuth

Indicates the state of the javax.net.ssl.SSLEngine with respect to client authentication.

public enum
SslProvider

An enumeration of SSL/TLS protocol providers.