当前位置 类层次 (JDK) 所有类 (JDK) 所有域和方法 (JDK)

接口 java.security.interfaces.DSAKeyPairGenerator

public interface DSAKeyPairGenerator

一个能够生成密钥对的对象接口。

每个 initialize 方法都将被多次调用。如果在一个 DSAKeyPairGenerator 中没有调用 initialize 方法,将缺省地生成一个 1024 比特的密钥,它用到事先计算好的 p、q 和 g 参数和作为随机比特源的 SecureRandom 的一个实例。

希望指明 DSA 专用参数并生成适用于 DSA 算法的密钥对的用户一般:

  1. 用 "DSA" 作为参数,调用 KeyPairGenerator getInstance 方法,获得 DSA 算法的密钥对生成程序。

  2. 通过把结果变形为 DSAKeyPairGenerator 并调用该 DSAKeyPairGenerator 接口的一个 initialize 方法初始化该生成程序。

  3. 通过调用 DSAKeyPairGenerator 类的 generateKeyPair 方法生成一个密钥对。

注意:没有必要总是为一个 DSA 密钥对生成程序进行算法特定的初始化。即,没有必要总是调用该接口的一个 initialize 方法。当接受算法特定参数的缺省设置时,所有需要做的是调用 KeyPairGenerator 接口中的 initialize 方法进行独立于算法的初始化。

参见:
KeyPairGenerator

方法索引

initialize(DSAParams, SecureRandom)
使用 DSA 的系列参数 p、q 和 g 初始化该密钥对生成程序。
initialize(int, boolean, SecureRandom)
不使用参数地初始化给定模长度的密钥对生成程序。

方法

initialize
 public abstract void initialize(DSAParams params,
                                 SecureRandom random) throws InvalidParameterException
使用 DSA 的系列参数 p、q 和 g 初始化该密钥对生成程序。

参数:
params - 用于生成密钥的参数。
random - 用于生成密钥比特的随机比特源。
抛出: InvalidParameterException
如果传入的参数是无效的或是 null。
initialize
 public abstract void initialize(int modlen,
                                 boolean genParams,
                                 SecureRandom random) throws InvalidParameterException
不使用参数地初始化给定模长度的密钥对生成程序。

如果 genParams 为 true,该方法将生成新的 p、q 和 g 参数。如果它为 false,该方法将使用为要求的模长度事先计算的参数。如果没有为要求的模长度事先计算的参数,将抛出一个异常。保证有 512 或 1024 比特模长度的缺省参数。

参数:
modlen - 模的比特长度。有效值是 512 和 1024 之间 8 的倍数。
random - 用于生成密钥比特的随机比特源。
genParams - 是否为要求的模长度生成新的参数。
抛出: InvalidParameterException
如果模长度不在 512 和 1024 之间,或者如果 genParams 为 false 且没有为要求的模长度的事先计算的参数。

当前位置 类层次 (JDK) 所有类 (JDK) 所有域和方法 (JDK)