所有类


java.security.interfaces
接口 DSAKeyPairGenerator


public interface DSAKeyPairGenerator

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

可以对每个 initialize 方法调用任意多次。如果没有对 DSAKeyPairGenerator 调用 initialize 方法,则默认使用预先计算好的 p、q、g 参数和 SecureRandom 的某个实例作为随机位源,生成一个 1024 位的密钥。

希望指示特定于 DSA 的参数以及希望生成适合于 DSA 算法使用的密钥对的用户通常可以采用以下操作:

  1. 通过调用 KeyPairGenerator getInstance 方法并将 "DSA" 作为其参数,获取 DSA 算法的密钥对生成器。

  2. 通过将结果强制转换为 DSAKeyPairGenerator,并从此 DSAKeyPairGenerator 接口调用 initialize 方法之一,从而初始化该生成器。

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

注:并不是始终必须针对 DSA 密钥对生成器进行特定于算法的初始化。也就是说,在此接口中不是始终必须调用 initialize 方法。接受特定于算法的参数的默认值时,只需在 KeyPairGenerator 接口中使用 initialize 方法执行与算法无关的初始化。

另请参见:
KeyPairGenerator

方法摘要
 void initialize(DSAParams params, SecureRandom random)
          使用 p、q 和 g 等 DSA 系列参数初始化密钥对生成器。
 void initialize(int modlen, boolean genParams, SecureRandom random)
          初始化给定系数长度、不带参数的密钥对生成器。
 

方法详细信息

initialize

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

参数:
params - 用于生成密钥的参数。
random - 用于生成密钥位的随机位源。
抛出:
InvalidParameterException - 如果传递的参数无效或为 null。

initialize

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,并且不存在所请求的系数长度的预计算参数。

所有类

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部