Module java.base
Package java.security

Interface AlgorithmConstraints


public interface AlgorithmConstraints
该接口指定了加密算法、密钥(密钥大小)和其他算法参数的约束条件。

AlgorithmConstraints 对象是不可变的。实现此接口的类不应提供可以改变实例状态的方法。

请注意,AlgorithmConstraints 可用于表示安全属性 jdk.certpath.disabledAlgorithmsjdk.tls.disabledAlgorithms 描述的限制,或者可以被具体的 PKIXCertPathChecker 使用,以检查证书路径中的指定证书是否包含所需的算法约束。

自版本:
1.7
参见:
  • Method Details

    • permits

      boolean permits(Set<CryptoPrimitive> primitives, String algorithm, AlgorithmParameters parameters)
      确定算法是否被授予指定加密原语的权限。
      参数:
      primitives - 一组加密原语
      algorithm - 算法名称
      parameters - 算法参数,如果没有额外参数则为 null
      返回:
      如果算法被允许并且可以用于所有指定的加密原语,则返回 true
      抛出:
      IllegalArgumentException - 如果原语或算法为 null 或空
    • permits

      boolean permits(Set<CryptoPrimitive> primitives, Key key)
      确定密钥是否被授予指定加密原语的权限。

      通常用于检查密钥大小和密钥用法。

      参数:
      primitives - 一组加密原语
      key - 密钥
      返回:
      如果密钥可以用于所有指定的加密原语,则返回 true
      抛出:
      IllegalArgumentException - 如果原语为 null 或空,或者密钥为 null
    • permits

      boolean permits(Set<CryptoPrimitive> primitives, String algorithm, Key key, AlgorithmParameters parameters)
      确定算法和相应密钥是否被授予指定加密原语的权限。
      参数:
      primitives - 一组加密原语
      algorithm - 算法名称
      key - 密钥
      parameters - 算法参数,如果没有额外参数则为 null
      返回:
      如果密钥和算法可以用于所有指定的加密原语,则返回 true
      抛出:
      IllegalArgumentException - 如果原语或算法为 null 或空,或者密钥为 null