模块 java.base

接口 X509KeyManager

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

public interface X509KeyManager extends KeyManager
此接口的实例管理哪些基于 X509 证书的密钥对用于验证安全套接字的本地端。

在安全套接字协商期间,实现调用此接口中的方法以:

  • 根据提出的标准确定可用于协商的别名集,
  • 选择最好的别名根据提出的标准,和
  • 获取给定别名的相应密钥材料。

注意:应使用 X509ExtendedKeyManager 以支持此类。

自从:
1.4
  • 方法详情

    • 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。