Module  java.base
软件包  java.security

Enum DrbgParameters.Capability

  • All Implemented Interfaces:
    SerializableComparable<DrbgParameters.Capability>
    Enclosing class:
    DrbgParameters


    public static enum DrbgParameters.Capability
    extends Enum<DrbgParameters.Capability>
    DRBG的可重新预测和预测抵抗能力。

    当该对象传递到SecureRandom.getInstance()调用时,它是所请求的最小功能。 当从SecureRandom.getParameters()返回时,这是有效的功能。

    请注意,虽然NIST SP Instantiate_function定义的Instantiate_function仅包含prediction_resistance_flag参数,但Capability类型包含额外值RESEED_ONLY因为重新进给是可选功能。 如果NONEInstantiation对象中用于调用SecureRandom.getInstance方法,则返回的DRBG实例不能保证支持重新进入。 如果使用RESEED_ONLYPR_AND_RESEED ,则该实例必须支持重新进入。

    下表列出了如果要求某种能力的可能的有效值,即

     Capability requested = ...;
     SecureRandom s = SecureRandom.getInstance("DRBG",
             DrbgParameters(-1, requested, null));
     Capability effective = ((DrbgParametes.Initiate) s.getParameters())
             .getCapability();
    requested and effective capabilities Requested Value Possible Effective Values NONE NONE, RESEED_ONLY, PR_AND_RESEED RESEED_ONLY RESEED_ONLY, PR_AND_RESEED PR_AND_RESEED PR_AND_RESEED

    支持预测抵抗的DRBG实施也必须支持重新种植。

    从以下版本开始:
    9
    • 方法详细信息

      • values

        public static DrbgParameters.Capability[] values​()
        按照它们声明的顺序返回一个包含此枚举类型常量的数组。 该方法可用于遍历常量如下:
          for (DrbgParameters.Capability c : DrbgParameters.Capability.values())
            System.out.println(c); 
        结果
        一个包含这个枚举类型的常量的数组,按照它们被声明的顺序
      • valueOf

        public static DrbgParameters.Capability valueOf​(String name)
        以指定的名称返回此类型的枚举常量。 字符串必须完全匹配用于声明此类型的枚举常量的标识符。 (不允许使用外来空白字符。)
        参数
        name - 要返回的枚举常量的名称。
        结果
        具有指定名称的枚举常数
        异常
        IllegalArgumentException - 如果此枚举类型没有指定名称的常量
        NullPointerException - 如果参数为空
      • toString

        public String toString​()
        说明从类别复制: Enum
        返回声明中包含的此枚举常量的名称。 该方法可以被覆盖,尽管它通常不是必需或不可取的。 当一个更“程序员友好”的字符串形式存在时,枚举类型应该覆盖此方法。
        重写:
        toStringEnum<DrbgParameters.Capability>
        结果
        这个枚举常数的名称
      • supportsReseeding

        public boolean supportsReseeding​()
        返回此功能是否支持重新加载。
        结果
        truePR_AND_RESEEDRESEED_ONLYfalseNONE
      • supportsPredictionResistance

        public boolean supportsPredictionResistance​()
        返回此功能是否支持预测阻力。
        结果
        truePR_AND_RESEEDfalseRESEED_ONLYNONE