|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.security
类 AlgorithmParameters
java.lang.Object java.security.AlgorithmParameters
-
public class AlgorithmParameters
- extends Object
此类用作密码参数的不透明表示形式。
可以通过调用 getInstance
工厂方法(返回给定类的实例的静态方法)之一获取用于管理特定算法的参数的 AlgorithmParameters
对象。
可以使用以下两种方式请求此类实现:仅指定算法名,或者同时指定算法名和包 provider。
- 如果仅指定算法名,则系统将确定在环境中是否存在可用的所请求算法的 AlgorithmParameters 实现,以及是否存在一个以上的实现和首选实现。
- 如果同时指定了算法名和包 provider,则系统将确定在请求的包中是否存在实现;如果不存在,则抛出异常。
返回 AlgorithmParameters
对象后,必须使用适当的参数规范或参数编码通过调用 init
初始化该对象。
通过调用 getParameterSpec
可以从 AlgorithmParameters
对象获取透明参数规范,通过调用 getEncoded
获取参数的字节编码。
- 从以下版本开始:
- 1.2
- 另请参见:
-
AlgorithmParameterSpec
,DSAParameterSpec
,KeyPairGenerator
构造方法摘要 | |
---|---|
protected |
AlgorithmParameters(AlgorithmParametersSpi paramSpi, Provider provider, String algorithm) 创建一个 AlgorithmParameters 对象。 |
方法摘要 | ||
---|---|---|
String |
getAlgorithm() 返回与此参数对象关联的算法的名称。 |
|
byte[] |
getEncoded() 返回基本编码格式的参数。 |
|
byte[] |
getEncoded(String format) 返回以指定方案编码的参数。 |
|
static AlgorithmParameters |
getInstance(String algorithm) 生成指定算法的参数对象。 |
|
static AlgorithmParameters |
getInstance(String algorithm, Provider provider) 如果可以从指定的 provider 中得到相关的算法,则为指定的算法(该 provider 提供)生成一个参数对象。 |
|
static AlgorithmParameters |
getInstance(String algorithm, String provider) 如果可以从指定的 provider 中得到相关的算法,则为指定的算法(该 provider 提供)生成一个参数对象。 |
|
|
getParameterSpec(Class<T> paramSpec) 返回此参数对象的(透明)规范。 |
|
Provider |
getProvider() 返回此参数对象的 provider。 |
|
void |
init(AlgorithmParameterSpec paramSpec) 使用在 paramSpec 中指定的参数初始化此参数对象。 |
|
void |
init(byte[] params) 根据参数的基本解码格式导入指定的参数并对其解码。 |
|
void |
init(byte[] params, String format) 根据指定的解码方案从 params 导入参数并对其解码。 |
|
String |
toString() 返回描述参数的格式化字符串。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
AlgorithmParameters
protected AlgorithmParameters(AlgorithmParametersSpi paramSpi, Provider provider, String algorithm)
-
创建一个 AlgorithmParameters 对象。
- 参数:
-
paramSpi
- 委托 -
provider
- provider -
algorithm
- 算法
方法详细信息 |
---|
getAlgorithm
public final String getAlgorithm()
- 返回与此参数对象关联的算法的名称。
-
- 返回:
- 算法名称。
getInstance
public static AlgorithmParameters getInstance(String algorithm) throws NoSuchAlgorithmException
-
生成指定算法的参数对象。
如果默认的 provider 包提供所请求算法的实现,则返回包含该实现的 AlgorithmParameters 的实例。如果在默认包中不存在该算法,则搜索其他包。
必须使用适当参数规范或参数编码通过调用
init
初始化返回的参数对象。 -
- 参数:
-
algorithm
- 所请求算法的名称。 - 返回:
- 新的参数对象。
- 抛出:
-
NoSuchAlgorithmException
- 如果算法在环境中不可用。
getInstance
public static AlgorithmParameters getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
-
如果可以从指定的 provider 中得到相关的算法,则为指定的算法(该 provider 提供)生成一个参数对象。
必须使用适当参数规范或参数编码通过调用
init
初始化返回的参数对象。 -
- 参数:
-
algorithm
- 所请求算法的名称。 -
provider
- provider 的名称。 - 返回:
- 新的参数对象。
- 抛出:
-
NoSuchAlgorithmException
- 如果请求的 provider 提供的包中不存在该算法。 -
NoSuchProviderException
- 如果 provider 在环境中不可用。 -
IllegalArgumentException
- 如果 provider 的名称为 null 或空。 - 另请参见:
-
Provider
getInstance
public static AlgorithmParameters getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
-
如果可以从指定的 provider 中得到相关的算法,则为指定的算法(该 provider 提供)生成一个参数对象。注:不必注册
provider
。必须使用适当参数规范或参数编码通过调用
init
初始化返回的参数对象。 -
- 参数:
-
algorithm
- 所请求算法的名称。 -
provider
- provider 的名称。 - 返回:
- 新的参数对象。
- 抛出:
-
NoSuchAlgorithmException
- 如果请求的 provider 提供的包中不存在该算法。 -
IllegalArgumentException
- 如果provider
为 null。 - 从以下版本开始:
- 1.4
- 另请参见:
-
Provider
getProvider
public final Provider getProvider()
- 返回此参数对象的 provider。
-
- 返回:
- 此参数对象的 provider。
init
public final void init(AlgorithmParameterSpec paramSpec) throws InvalidParameterSpecException
-
使用在
paramSpec
中指定的参数初始化此参数对象。 -
- 参数:
-
paramSpec
- 参数规范。 - 抛出:
-
InvalidParameterSpecException
- 如果给定的参数规范不适用于初始化此参数对象,或者已经初始化此参数对象。
init
public final void init(byte[] params) throws IOException
- 根据参数的基本解码格式导入指定的参数并对其解码。如果此参数类型的 ASN.1 规范存在,则参数的基本解码格式即为 ASN.1。
-
- 参数:
-
params
- 编码的参数。 - 抛出:
-
IOException
- 如果发生解码错误,或者已经初始化此参数对象。