所有类


javax.net.ssl
接口 X509KeyManager

所有超级接口:
KeyManager
所有已知实现类:
X509ExtendedKeyManager

public interface X509KeyManager
   
   
   
   
   
extends KeyManager

此接口的实例管理使用哪一个基于 X509 证书的密钥对来验证本地的安全套接字。

在安全套接字协商期间,实现调用此接口中的方法来完成下面的工作:

  • 确定基于现有标准进行协商可以使用的别名集合,
  • 选择基于现有标准的 最好的别名 ,和
  • 为指定别名获取相应的密钥材料。

注:应该使用 X509ExtendedKeyManager 支持此类。

从以下版本开始:
1.4

方法摘要
 StringchooseClientAlias(String[] keyType, Principal[] issuers, Socket socket)
          选择别名来验证给出公钥类型的安全套接字的客户端和同位体(如果有)识别的证书发行者授权列表。
 StringchooseServerAlias(String keyType, Principal[] issuers, Socket socket)
          选择别名来验证给出公钥类型的安全套接字的服务器端和对等方同位体(如果有)识别的证书发行者授权列表。
 X509Certificate[]getCertificateChain(String alias)
          返回与给定别名关联的证书链。
 String[]getClientAliases(String keyType, Principal[] issuers)
          获取用于验证给出公钥类型的安全套接字的客户端别名和同位体(如果有)识别的证书发行者授权列表。
 PrivateKeygetPrivateKey(String alias)
          返回与给定别名关联的密钥。
 String[]getServerAliases(String keyType, Principal[] issuers)
          获取用于验证给出公钥类型的安全套接字的服务器端的别名和同位体(如果有)识别的证书发行者授权列表。
 

方法详细信息

getClientAliases

String[] getClientAliases(String keyType,
                          Principal[] issuers)
获取用于验证给出公钥类型的安全套接字的客户端别名和同位体(如果有)识别的证书发行者授权列表。

参数:
keyType - 密钥算法类型名称
issuers - 可接受的 CA 发行者主题名称,如果使用哪个发行者并不重要,则此参数为 null。
返回:
匹配的别名数组;如果没有匹配的,则返回 null。

chooseClientAlias

String chooseClientAlias(String[] keyType,
                         Principal[] issuers,
                         Socket socket)
选择别名来验证给出公钥类型的安全套接字的客户端和同位体(如果有)识别的证书发行者授权列表。

参数:
keyType - 密钥算法类型名称,以首选的密钥类型在前的顺序。
issuers - 可接受的 CA 发行者主题名称列表,如果使用哪个发行者并不重要,则此参数为 null。
socket - 将用于此连接的套接字。此参数可以为 null,这表示实现可以自由选择适用于任何套接字的别名。
返回:
所需密钥的别名;如果没有匹配项,则返回 null。

getServerAliases

String[] getServerAliases(String keyType,
                          Principal[] issuers)
获取用于验证给出公钥类型的安全套接字的服务器端的别名和同位体(如果有)识别的证书发行者授权列表。

参数:
keyType - 密钥算法类型名称
issuers - 可接受的 CA 发行者主题名称,如果使用哪个发行者并不重要,则此参数为 null。
返回:
匹配的别名数组;如果没有匹配的,则返回 null。

chooseServerAlias

String chooseServerAlias(String keyType,
                         Principal[] issuers,
                         Socket socket)
选择别名来验证给出公钥类型的安全套接字的服务器端和对等方同位体(如果有)识别的证书发行者授权列表。

参数:
keyType - 密钥算法类型名称。
issuers - 可接受的 CA 发行者主题名称列表,如果使用哪个发行者并不重要,则此参数为 null。
socket - 将用于此连接的套接字。此参数可以为 null,这表示实现可以自由选择适用于任何套接字的别名。
返回:
所需密钥的别名;如果没有匹配项,则返回 null。

getCertificateChain

X509Certificate[] getCertificateChain(String alias)
返回与给定别名关联的证书链。

参数:
alias - 别名
返回:
证书链(以用户证书在前根证书授权在后的顺序);如果没有找到别名,则返回 null。

getPrivateKey

PrivateKey getPrivateKey(String alias)
返回与给定别名关联的密钥。

参数:
alias - 别名
返回:
请求的密钥;如果不能找到别名,则返回 null。

所有类