java.lang.Object | |
↳ | javax.net.ssl.SSLContext |
The public API for secure socket protocol implementations. It acts as factory
for SSLSocketFactory
's and SSLEngine
s.
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 |
---|