JavaTM 2 Platform
Standard Ed. 6

java.security
類別 AlgorithmParameterGenerator

java.lang.Object
  繼承者 java.security.AlgorithmParameterGenerator

public class AlgorithmParameterGenerator
extends Object

AlgorithmParameterGenerator 類別用於產生將在某個特定演算法中使用的參數集合。參數產生器是使用 getInstance 處理器方法(返回給定類別的實例的 static 方法)建構的。

可以使用以下兩種方式初始化將產生參數的物件:與演算法無關的方式或特定於演算法的方式:

為防止客戶端沒有顯式初始化 AlgorithmParameterGenerator(通過調用 init 方法),每個提供商都必須提供(並記錄)一種預設的初始化。例如,Sun 提供商使用 1024 位的預設模數主大小產生 DSA 參數。

從以下版本開始:
1.2
另請參見:
AlgorithmParameters, AlgorithmParameterSpec

建構子摘要
protected AlgorithmParameterGenerator(AlgorithmParameterGeneratorSpi paramGenSpi, Provider provider, String algorithm)
          創建一個 AlgorithmParameterGenerator 物件。
 
方法摘要
 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)
          針對某個特定大小和隨機源初始化此參數產生器。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

建構子詳細資訊

AlgorithmParameterGenerator

protected AlgorithmParameterGenerator(AlgorithmParameterGeneratorSpi paramGenSpi,
                                      Provider provider,
                                      String algorithm)
創建一個 AlgorithmParameterGenerator 物件。

參數:
paramGenSpi - 委託
provider - 提供者
algorithm - 演算法
方法詳細資訊

getAlgorithm

public final String getAlgorithm()
返回與此參數產生器關聯的演算法的標準名稱。

返回:
演算法的字元串名稱。

getInstance

public static AlgorithmParameterGenerator getInstance(String algorithm)
                                               throws NoSuchAlgorithmException
返回產生與指定演算法一起使用的參數集的 AlgorithmParameterGenerator 物件。

此方法從首選的 Provider 開始遍歷已註冊安全提供者列表。返回封裝新 AlgorithmParameterGeneratorSpi 實作的 AlgorithmParameterGenerator 物件,該物件取自第一個支持指定演算法的 Provider。

注意,可以通過 Security.getProviders() 方法獲取已註冊提供者列表。

參數:
algorithm - 與此參數產生器關聯的演算法的名稱。有關標準演算法名稱的資訊,請參閱 Java Cryptography Architecture API Specification & Reference 中的附錄 A。
返回:
新的 AlgorithmParameterGenerator 物件。
拋出:
NoSuchAlgorithmException - 如果沒有 Provider 支持指定演算法的 AlgorithmParameterGeneratorSpi 實作。
另請參見:
Provider

getInstance

public static AlgorithmParameterGenerator getInstance(String algorithm,
                                                      String provider)
                                               throws NoSuchAlgorithmException,
                                                      NoSuchProviderException
返回產生與指定演算法一起使用的參數集的 AlgorithmParameterGenerator 物件。

返回封裝 AlgorithmParameterGeneratorSpi 實作的新 AlgorithmParameterGenerator 物件,該實作取自指定 Provider。指定提供者必須在安全提供者列表中註冊。

注意,可以通過 Security.getProviders() 方法獲取已註冊提供者列表。

參數:
algorithm - 與此參數產生器關聯的演算法的名稱。有關標準演算法名稱的資訊,請參閱 Java Cryptography Architecture API Specification & Reference 中的附錄 A。
provider - Provider 的字元串名稱。
返回:
新的 AlgorithmParameterGenerator 物件。
拋出:
NoSuchAlgorithmException - 如果指定演算法的 AlgorithmParameterGeneratorSpi 實作不能從指定 Provider 獲得。
NoSuchProviderException - 如果指定提供者未在安全提供者列表中註冊。
IllegalArgumentException - 如果提供者的名稱為 null 或空。
另請參見:
Provider

getInstance

public static AlgorithmParameterGenerator getInstance(String algorithm,
                                                      Provider provider)
                                               throws NoSuchAlgorithmException
返回產生與指定演算法一起使用的參數集的 AlgorithmParameterGenerator 物件。

返回封裝 AlgorithmParameterGeneratorSpi 實作的新 AlgorithmParameterGenerator 物件,該實作取自指定 Provider 物件。注意,指定 Provider 物件無需在提供者列表中註冊。

參數:
algorithm - 與此參數產生器關聯的演算法的字元串名稱。有關標準演算法名稱的資訊,請參閱 Java Cryptography Architecture API Specification & Reference 中的附錄 A。
provider - Provider 物件。
返回:
新的 AlgorithmParameterGenerator 物件。
拋出:
NoSuchAlgorithmException - 如果指定演算法的 AlgorithmParameterGeneratorSpi 實作不能從指定 Provider 物件獲得。
IllegalArgumentException - 如果指定 provider 為 null。
從以下版本開始:
1.4
另請參見:
Provider

getProvider

public final Provider getProvider()
返回此演算法參數產生器物件的提供者。

返回:
此演算法參數產生器物件的提供者

init

public final void init(int size)
針對某個特定大小初始化此參數產生器。要創建參數,則需要將最高優先級安裝的提供者的 SecureRandom 實作用作隨機源。(如果任何安裝的提供者都不提供 SecureRandom 的實作,則使用系統提供的隨機源。)

參數:
size - 大小(位數)。

init

public final void init(int size,
                       SecureRandom random)
針對某個特定大小和隨機源初始化此參數產生器。

參數:
size - 大小(位數)。
random - 隨機源。

init

public final void init(AlgorithmParameterSpec genParamSpec)
                throws InvalidAlgorithmParameterException
利用特定於演算法的參數產生值集合初始化此參數產生器。要產生參數,則需要將最高優先級安裝的提供者的 SecureRandom 實作用作隨機源。(如果任何安裝的提供者都不提供 SecureRandom 的實作,則使用系統提供的隨機源。)

參數:
genParamSpec - 特定於演算法的參數產生值的集合。
拋出:
InvalidAlgorithmParameterException - 如果給定的參數產生值不適合此參數產生器。

init

public final void init(AlgorithmParameterSpec genParamSpec,
                       SecureRandom random)
                throws InvalidAlgorithmParameterException
利用特定於演算法的參數產生值集合初始化此參數產生器。

參數:
genParamSpec - 特定於演算法的參數產生值的集合。
random - 隨機源。
拋出:
InvalidAlgorithmParameterException - 如果給定的參數產生值不適合此參數產生器。

generateParameters

public final AlgorithmParameters generateParameters()
產生參數。

返回:
新的 AlgorithmParameters 物件。

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only