javax.net.ssl
Interface X509KeyManager

All Superinterfaces:
KeyManager
All Known Implementing Classes:
X509ExtendedKeyManager

public interface X509KeyManager
extends KeyManager

A key manager for X.509 certificates and their associated private keys.


Method Summary
 String chooseClientAlias(String[] keyTypes, Principal[] issuers, Socket socket)
          Choose an alias for client-side authentication.
 String chooseServerAlias(String keyType, Principal[] issuers, Socket socket)
          Choose an alias for server-side authentication.
 X509Certificate[] getCertificateChain(String alias)
          Gets the X.509 certificate chain associated with the given alias.
 String[] getClientAliases(String keyType, Principal[] issuers)
          Returns all client aliases that support the given key type.
 PrivateKey getPrivateKey(String alias)
          Gets the private key associated with the given alias.
 String[] getServerAliases(String keyType, Principal[] issuers)
          Returns all server aliases that support the given key type.
 

Method Detail

chooseClientAlias

String chooseClientAlias(String[] keyTypes,
                         Principal[] issuers,
                         Socket socket)
Choose an alias for client-side authentication.

Parameters:
keyTypes - A list of acceptable key types.
issuers - A list of acceptable certificate issuers.
socket - The connecting socket.
Returns:
The chosen alias.

chooseServerAlias

String chooseServerAlias(String keyType,
                         Principal[] issuers,
                         Socket socket)
Choose an alias for server-side authentication.

Parameters:
keyType - The desired certificate type.
issuers - A list of acceptable certificate issuers.
socket - The connecting socket.
Returns:
The chosen alias.

getCertificateChain

X509Certificate[] getCertificateChain(String alias)
Gets the X.509 certificate chain associated with the given alias.

Parameters:
alias - The alias.
Returns:
The certificate chain.

getClientAliases

String[] getClientAliases(String keyType,
                          Principal[] issuers)
Returns all client aliases that support the given key type.

Parameters:
keyType - The desired key type.
issuers - A list of acceptable certificate issuers.
Returns:
The (possibly empty) list of aliases.

getPrivateKey

PrivateKey getPrivateKey(String alias)
Gets the private key associated with the given alias.

Parameters:
alias - The alias.
Returns:
The private key.

getServerAliases

String[] getServerAliases(String keyType,
                          Principal[] issuers)
Returns all server aliases that support the given key type.

Parameters:
keyType - The desired key type.
issuers - A list of acceptable certificate issuers.
Returns:
The (possibly empty) list of aliases.