| java.lang.Object | |
| ↳ | javax.net.ssl.SSLContext |
The public API for secure socket protocol implementations. It acts as factory
for SSLSocketFactory's and SSLEngines.
| Protected Constructors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Creates a new
SSLContext. | |||||||||||
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Creates an
SSLEngine instance from this context with the
specified hostname and port. | |||||||||||
Creates an
SSLEngine instance from this context. | |||||||||||
Returns the SSL session context that encapsulates the set of SSL sessions
that can be used for handshake of client-side SSL sockets.
| |||||||||||
Returns the default SSLContext.
| |||||||||||
Returns the default SSL handshake parameters for SSLSockets
created by this SSLContext.
| |||||||||||
Creates a new
SSLContext instance for the specified protocol from
the specified provider. | |||||||||||
Creates a new
SSLContext instance for the specified protocol from
the specified provider. | |||||||||||
Creates a new
SSLContext instance for the specified protocol. | |||||||||||
Returns the name of the secure socket protocol of this instance.
| |||||||||||
Returns the provider of this
SSLContext instance. | |||||||||||
Returns the SSL session context that encapsulates the set of SSL sessions
that can be used for handshake of server-side SSL sockets.
| |||||||||||
Returns a server socket factory for this instance.
| |||||||||||
Returns a socket factory for this instance.
| |||||||||||
Returns SSL handshake parameters for SSLSockets that includes
all supported cipher suites and protocols.
| |||||||||||
Initializes this
SSLContext instance. | |||||||||||
Sets the default SSLContext instance as returned by
getDefault() to a non-null initialized value. | |||||||||||
|
[Expand]
Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
Creates a new SSLContext.
| contextSpi | the implementation delegate. |
|---|---|
| provider | the provider. |
| protocol | the protocol name. |
Creates an SSLEngine instance from this context with the
specified hostname and port.
| peerHost | the name of the host |
|---|---|
| peerPort | the port |
SSLEngine instance from this context.| UnsupportedOperationException | if the provider does not support the operation. |
|---|
Creates an SSLEngine instance from this context.
SSLEngine instance from this context.| UnsupportedOperationException | if the provider does not support the operation. |
|---|
Returns the SSL session context that encapsulates the set of SSL sessions that can be used for handshake of client-side SSL sockets.
null
if the underlying provider does not provide an implementation of
the SSLSessionContext interface.
Returns the default SSLContext.
The default SSL context can be set with setDefault(SSLContext). If
not, one will be created with SSLContext.getInstance("Default"), which will already be
initialized.
| NoSuchAlgorithmException | if there is a problem creating the default instance. |
|---|
Returns the default SSL handshake parameters for SSLSockets created by this SSLContext.
| UnsupportedOperationException |
Creates a new SSLContext instance for the specified protocol from
the specified provider.
The following combinations are supported:
| Protocol | Provider | API Levels |
|---|---|---|
| Default | AndroidOpenSSL | 9+ |
| SSL | AndroidOpenSSL | 9+ |
| SSL | HarmonyJSSE | 9-19 |
| SSLv3 | AndroidOpenSSL | 9+ |
| SSLv3 | HarmonyJSSE | 9-19 |
| TLS | AndroidOpenSSL | 9+ |
| TLS | HarmonyJSSE | 1-19 |
| TLSv1 | AndroidOpenSSL | 9+ |
| TLSv1 | HarmonyJSSE | 1-19 |
| TLSv1.1 | AndroidOpenSSL | 16+ |
| TLSv1.2 | AndroidOpenSSL | 16+ |
NOTE: The best practice is to rely on platform
defaults rather than explicitly specify a provider.
getDefault() and getInstance(String) are normally
preferred over this method.
| protocol | the requested protocol to create a context for. |
|---|---|
| provider | the name of the provider that provides the requested protocol. |
SSLContext for the requested protocol.| NoSuchAlgorithmException | if the specified provider cannot provider the requested protocol. |
|---|---|
| NoSuchProviderException | if the specified provider does not exits. |
| NullPointerException | if protocol is null (instead of
NoSuchAlgorithmException as in 1.4 release)
|
Creates a new SSLContext instance for the specified protocol from
the specified provider.
| protocol | the requested protocol to create a context for |
|---|---|
| provider | the provider that provides the requested protocol. |
SSLContext for the requested protocol.| NoSuchAlgorithmException | if the specified provider cannot provide the requested protocol. |
|---|---|
| NullPointerException | if protocol is null (instead of
NoSuchAlgorithmException as in 1.4 release)
|
Creates a new SSLContext instance for the specified protocol.
The following protocols are supported:
| Protocol | API Levels |
|---|---|
| Default | 9+ |
| SSL | 9+ |
| SSLv3 | 9+ |
| TLS | 1+ |
| TLSv1 | 1+ |
| TLSv1.1 | 16+ |
| TLSv1.2 | 16+ |
| protocol | the requested protocol to create a context for. |
|---|
SSLContext instance.| NoSuchAlgorithmException | if no installed provider can provide the requested protocol |
|---|---|
| NullPointerException | if protocol is null (instead of
NoSuchAlgorithmException as in 1.4 release)
|
Returns the name of the secure socket protocol of this instance.
Returns the provider of this SSLContext instance.
SSLContext instance.
Returns the SSL session context that encapsulates the set of SSL sessions that can be used for handshake of server-side SSL sockets.
null
if the underlying provider does not provide an implementation of
the SSLSessionContext interface.
Returns a server socket factory for this instance.
Returns a socket factory for this instance.
Returns SSL handshake parameters for SSLSockets that includes all supported cipher suites and protocols.
| UnsupportedOperationException |
Initializes this SSLContext instance. Three aspects of the context can be configured
during initialization:
KeyManager instances),TrustManager instances),
SecureRandom instance).For each type of KeyManager or TrustManager used by this context, only the
first matching instance from km or tm will be used. For example, only the
first instance of X509TrustManager from tm will be used.
For any parameter set to null defaults will be used. In that case, the installed
security providers will be searched for the highest priority implementation of the required
primitives. For km and tm, the highest priority implementation
of KeyManagerFactory and TrustManagerFactory will be used to obtain the
required types of KeyManager and TrustManager. For sr, the default
SecureRandom implementation will be used.
| km | the key sources or null for default. |
|---|---|
| tm | the trust decision sources or null for default. |
| sr | the randomness source or null for default. |
| KeyManagementException | if initializing this instance fails. |
|---|
Sets the default SSLContext instance as returned by getDefault() to a non-null initialized value.
| NullPointerException | on a null argument |
|---|