javax.net.ssl
类 KeyManagerFactory

java.lang.Object
  继承者 javax.net.ssl.KeyManagerFactory

public class KeyManagerFactory
   
   
   
extends Object

此类充当基于密钥内容源的密钥管理器的工厂。每个密钥管理器管理特定类型的、由安全套接字所使用的密钥内容。密钥内容是基于 KeyStore 和/或提供者特定的源。

从以下版本开始:
1.4
另请参见:
KeyManager

构造方法摘要
protected KeyManagerFactory(KeyManagerFactorySpi factorySpi, Provider provider, String algorithm)
          创建 KeyManagerFactory 对象。
 
方法摘要
 StringgetAlgorithm()
          返回此 KeyManagerFactory 对象的算法名称。
static StringgetDefaultAlgorithm()
          获取默认的 KeyManagerFactory 算法名称。
static KeyManagerFactorygetInstance(String algorithm)
          返回充当密钥管理器工厂的 KeyManagerFactory 对象。
static KeyManagerFactorygetInstance(String algorithm, Provider provider)
          返回充当密钥管理器工厂的 KeyManagerFactory 对象。
static KeyManagerFactorygetInstance(String algorithm, String provider)
          返回充当密钥管理器工厂的 KeyManagerFactory 对象。
 KeyManager[]getKeyManagers()
          为每类密钥内容返回一个密钥管理器。
 ProvidergetProvider()
          返回此 KeyManagerFactory 对象的提供者。
 voidinit(KeyStore ks, char[] password)
          使用密钥内容源初始化此工厂。
 voidinit(ManagerFactoryParameters spec)
          使用特定于提供者的密钥内容源初始化此工厂。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

KeyManagerFactory

protected KeyManagerFactory(KeyManagerFactorySpi factorySpi,
                            Provider provider,
                            String algorithm)
创建 KeyManagerFactory 对象。

参数:
factorySpi - 委托
provider - 提供者
algorithm - 算法
方法详细信息

getDefaultAlgorithm

public static final String getDefaultAlgorithm()
获取默认的 KeyManagerFactory 算法名称。

默认的算法可以在运行时改变,方法是通过把 "ssl.KeyManagerFactory.algorithm" 安全属性(在 Java 安全属性文件或通过调用 Security.setProperty(java.lang.String, java.lang.String) 来设置)的值设置为所需的算法名称。

返回:
在 Java 安全属性中指定的默认算法名称;如果不存在这种属性,则返回一个特定于实现的默认值。
另请参见:
Security.setProperty(java.lang.String, java.lang.String)

getAlgorithm

public final String getAlgorithm()
返回此 KeyManagerFactory 对象的算法名称。

这与创建此 KeyManagerFactory 对象的某个 getInstance 调用中所指定的名称相同。

返回:
KeyManagerFactory 对象的算法名称。

getInstance

public static final KeyManagerFactory getInstance(String algorithm)
                                           throws NoSuchAlgorithmException
返回充当密钥管理器工厂的 KeyManagerFactory 对象。

此方法从首选 Provider 开始遍历已注册安全提供者列表。返回一个封装 KeyManagerFactorySpi 实现的新 KeyManagerFactory 对象,该实现取自支持指定算法的第一个 Provider。

注意,可以通过 Security.getProviders() 方法获取已注册提供者列表。

参数:
algorithm - 所请求算法的标准名称。有关标准算法名称的信息,请参阅 Java Secure Socket Extension Reference Guide
返回:
新的 KeyManagerFactory 对象。
抛出:
NoSuchAlgorithmException - 如果没有 Provider 支持指定算法的 KeyManagerFactorySpi 实现。
另请参见:
Provider

getInstance

public static final KeyManagerFactory getInstance(String algorithm,
                                                  String provider)
                                           throws NoSuchAlgorithmException,
                                                  NoSuchProviderException
返回充当密钥管理器工厂的 KeyManagerFactory 对象。

返回一个封装 KeyManagerFactorySpi 实现的新 KeyManagerFactory 对象,该实现取自指定的提供者。指定的提供者必须在安全提供者列表中注册。

注意,可以通过 Security.getProviders() 方法获取已注册提供者列表。

参数:
algorithm - 所请求算法的标准名称。有关标准算法名称的信息,请参阅 Java Secure Socket Extension Reference Guide
provider - 提供者的名称。
返回:
新的 KeyManagerFactory 对象。
抛出:
NoSuchAlgorithmException - 如果不能从指定提供者获得指定算法的 KeyManagerFactorySpi 实现。
NoSuchProviderException - 如果指定提供者未在安全提供者列表中注册。
IllegalArgumentException - 如果提供者的名称为 null 或空。
另请参见:
Provider

getInstance

public static final KeyManagerFactory getInstance(String algorithm,
                                                  Provider provider)
                                           throws NoSuchAlgorithmException
返回充当密钥管理器工厂的 KeyManagerFactory 对象。

返回一个封装 KeyManagerFactorySpi 实现的新 KeyManagerFactory 对象,该实现取自指定的 Provider 对象。注意,指定的 Provider 对象无需在提供者列表中注册。

参数:
algorithm - 所请求算法的标准名称。有关标准算法名称的信息,请参阅 Java Secure Socket Extension Reference Guide
provider - 提供者的实例。
返回:
新的 KeyManagerFactory 对象。
抛出:
NoSuchAlgorithmException - 不能从指定 Provider 对象获得指定算法的 KeyManagerFactorySpi 实现。
IllegalArgumentException - 如果 provider 为 null。
另请参见:
Provider

getProvider

public final Provider getProvider()
返回此 KeyManagerFactory 对象的提供者。

返回:
KeyManagerFactory 对象的提供者