public class AlgorithmParameterGenerator extends Object
AlgorithmParameterGenerator类用于生成一组要用于某种算法的参数。
使用getInstance工厂方法(返回给定类的实例的静态方法)构造参数生成器。
将生成参数的对象可以通过两种不同的方式进行初始化:以独立于算法的方式,或以特定于算法的方式进行初始化:
如果客户端没有显式初始化AlgorithmParameterGenerator(通过调用init方法),则每个提供程序都必须提供(并记录)默认的初始化。 例如,Sun提供商使用1024位的默认模数素数大小来生成DSA参数。
Java平台的每个实现都需要支持以下标准AlgorithmParameterGenerator算法,并在括号中键入:
DiffieHellman (1024) DSA (1024) AlgorithmParameters , AlgorithmParameterSpec
| Modifier | Constructor and Description |
|---|---|
protected |
AlgorithmParameterGenerator(AlgorithmParameterGeneratorSpi paramGenSpi, Provider provider, String algorithm)
创建一个AlgorithmParameterGenerator对象。
|
| Modifier and Type | Method and Description |
|---|---|
AlgorithmParameters |
generateParameters()
生成参数。
|
String |
getAlgorithm()
返回此参数生成器关联的算法的标准名称。
|
static AlgorithmParameterGenerator |
getInstance(String algorithm)
返回一个AlgorithmParameterGenerator对象,用于生成与指定算法一起使用的一组参数。
|
static AlgorithmParameterGenerator |
getInstance(String algorithm, Provider provider)
返回一个AlgorithmParameterGenerator对象,用于生成与指定算法一起使用的一组参数。
|
static AlgorithmParameterGenerator |
getInstance(String algorithm, String provider)
返回一个AlgorithmParameterGenerator对象,用于生成与指定算法一起使用的一组参数。
|
Provider |
getProvider()
返回此算法参数生成器对象的提供者。
|
void |
init(AlgorithmParameterSpec genParamSpec)
使用一组特定于算法的参数生成值初始化此参数生成器。
|
void |
init(AlgorithmParameterSpec genParamSpec, SecureRandom random)
使用一组特定于算法的参数生成值初始化此参数生成器。
|
void |
init(int size)
初始化此参数生成器达一定大小。
|
void |
init(int size, SecureRandom random)
初始化此参数生成器以获得一定的大小和随机源。
|
protected AlgorithmParameterGenerator(AlgorithmParameterGeneratorSpi paramGenSpi, Provider provider, String algorithm)
paramGenSpi - 代表
provider - 提供商
algorithm - 算法
public final String getAlgorithm()
public static AlgorithmParameterGenerator getInstance(String algorithm) throws NoSuchAlgorithmException
此方法遍历已注册的安全提供程序列表,从最优选的提供程序开始。 返回从支持指定算法的第一个Provider中封装AlgorithmParameterGeneratorSpi实现的新AlgorithmParameterGenerator对象。
请注意,可以通过Security.getProviders()方法检索已注册提供商的列表。
algorithm - 与该参数生成器相关联的算法的名称。
看到的AlgorithmParameterGenerator部分Java Cryptography Architecture Standard Algorithm Name Documentation有关标准算法名称的信息。
NoSuchAlgorithmException - 如果没有提供者支持指定算法的AlgorithmParameterGeneratorSpi实现。
Provider
public static AlgorithmParameterGenerator getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
返回从指定提供程序封装AlgorithmParameterGeneratorSpi实现的新AlgorithmParameterGenerator对象。 指定的提供者必须在安全提供程序列表中注册。
请注意,注册提供商的列表可以通过Security.getProviders()方法检索 。
algorithm - 与此参数生成器相关联的算法的名称。
看到的AlgorithmParameterGenerator部分Java Cryptography Architecture Standard Algorithm Name Documentation有关标准算法名称的信息。
provider - 提供程序的字符串名称。
NoSuchAlgorithmException - 如果指定算法的AlgorithmParameterGeneratorSpi实现不能从指定的提供程序获得。
NoSuchProviderException - 如果指定的提供程序未在安全提供程序列表中注册。
IllegalArgumentException - 如果提供者名称为空或为空。
Provider
public static AlgorithmParameterGenerator getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
返回从指定的Provider对象封装AlgorithmParameterGeneratorSpi实现的新AlgorithmParameterGenerator对象。 请注意,指定的Provider对象不必在提供者列表中注册。
algorithm - 与此参数生成器相关联的算法的字符串名称。
看到的AlgorithmParameterGenerator部分Java Cryptography Architecture Standard Algorithm Name Documentation有关标准算法名称的信息。
provider - 提供者对象。
NoSuchAlgorithmException - 如果指定的算法的AlgorithmParameterGeneratorSpi实现从指定的Provider对象中不可用。
IllegalArgumentException - 如果指定的提供者为空。
Provider
public final Provider getProvider()
public final void init(int size)
SecureRandom实现的最高优先级已安装提供的被用作随机源。
(如果没有一个已安装的提供商提供SecureRandom的SecureRandom ,则使用系统提供的随机源。)
size - 大小(位数)。
public final void init(int size,
SecureRandom random)
size - 大小(位数)。
random -
random的来源。
public final void init(AlgorithmParameterSpec genParamSpec) throws InvalidAlgorithmParameterException
SecureRandom实现的最高优先级已安装提供的被用作随机源。
(如果没有一个已安装的提供程序提供SecureRandom的SecureRandom ,则使用系统提供的随机源。)
genParamSpec - 算法特定参数生成值的集合。
InvalidAlgorithmParameterException - 如果给定参数生成值不适合此参数生成器。
public final void init(AlgorithmParameterSpec genParamSpec, SecureRandom random) throws InvalidAlgorithmParameterException
genParamSpec - 一组特定于算法的参数生成值。
random -
random的来源。
InvalidAlgorithmParameterException - 如果给定的参数生成值不适合该参数生成器。
public final AlgorithmParameters generateParameters()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.