public class AlgorithmParameterGenerator extends Object
AlgorithmParameterGenerator
类用于生成一组参数可以使用一定的算法。参数生成器使用
getInstance
工厂方法构建(静态方法返回一个给定的类的实例)。
将生成的参数的对象,可以在两种不同的方式:在一个算法独立的方式,或在一个特定于算法的方式初始化:
如果客户不显式初始化algorithmparametergenerator(通过调用一个方法,init
)每个供应商必须提供一个默认的初始化(文件)。例如,太阳提供商使用默认模素数大小1024位DSA参数的生成。
java平台的每种实现都要求支持以下括号中的标准AlgorithmParameterGenerator
算法和keysizes:
DiffieHellman
DSA
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
该方法通过注册安全提供商列表,从最开始的首选供应商。一个新的algorithmparametergenerator对象封装algorithmparametergeneratorspi实施支持指定算法的第一供应商返回。
注意,注册商的列表可以通过Security.getProviders()
检索方法。
algorithm
-姓名的算法参数发生器与。看到有关标准算法名称信息在
Java Cryptography Architecture Standard Algorithm Name Documentation的algorithmparametergenerator节。
NoSuchAlgorithmException
-如果没有供应商的支持algorithmparametergeneratorspi指定的算法实现。
Provider
public static AlgorithmParameterGenerator getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
一个新的algorithmparametergenerator对象封装algorithmparametergeneratorspi实现从指定的提供程序返回。指定的提供程序必须在安全提供程序列表中注册。
注意,注册商的列表可以通过Security.getProviders()
检索方法。
algorithm
-姓名的算法参数发生器与。看到有关标准算法名称信息在
Java Cryptography Architecture Standard Algorithm Name Documentation的algorithmparametergenerator节。
provider
-供应商的字符串名称。
NoSuchAlgorithmException
-如果指定算法的一个algorithmparametergeneratorspi执行不可从指定的供应商。
NoSuchProviderException
-如果指定的供应商不在安全提供商注册名单。
IllegalArgumentException
如果提供者名称为空或空。
Provider
public static AlgorithmParameterGenerator getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
一个新的algorithmparametergenerator对象封装algorithmparametergeneratorspi实现从指定的提供程序对象返回。请注意,指定的提供程序对象不必在提供者列表中注册。
algorithm
的字符串的算法参数发生器与。看到有关标准算法名称信息在
Java Cryptography Architecture Standard Algorithm Name Documentation的algorithmparametergenerator节。
provider
-提供者对象。
NoSuchAlgorithmException
-如果指定算法的一个algorithmparametergeneratorspi实现不可从指定的提供程序对象。
IllegalArgumentException
-如果指定的提供程序是无效的。
Provider
public final Provider getProvider()
public final void init(int size)
SecureRandom
实施供应商作为随机源。(如果没有安装商提供
SecureRandom
,实现一个系统提供的随机源使用。)
size
的大小(比特数)。
public final void init(int size, SecureRandom random)
size
的大小(比特数)。
random
-随机源。
public final void init(AlgorithmParameterSpec genParamSpec) throws InvalidAlgorithmParameterException
SecureRandom
实施供应商作为随机源。(如果没有安装商提供
SecureRandom
,实现一个系统提供的随机源使用。)
genParamSpec
-算法的具体参数生成值的集合。
InvalidAlgorithmParameterException
-如果给定的参数生成此参数的值发生器是不合适的。
public final void init(AlgorithmParameterSpec genParamSpec, SecureRandom random) throws InvalidAlgorithmParameterException
genParamSpec
-算法的具体参数生成值的集合。
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.