Module  java.base
软件包  java.security

Class KeyStore.PasswordProtection

    • 构造方法详细信息

      • PasswordProtection

        public PasswordProtection​(char[] password)
        创建一个密码参数。

        指定的password在存储在新的PasswordProtection对象之前被克隆。

        参数
        password - 密码,可能是 null
      • PasswordProtection

        public PasswordProtection​(char[] password,
                                  String protectionAlgorithm,
                                  AlgorithmParameterSpec protectionParameters)
        创建密码参数,并指定在加密密钥库条目时使用的保护算法和相关参数。

        指定的password在存储在新的PasswordProtection对象之前被克隆。

        参数
        password - 密码,可能是 null
        protectionAlgorithm - 加密算法名称,例如PBEWithHmacSHA256AndAES_256 有关标准加密算法名称的信息,请参阅Java Security Standard Algorithm Names Specification中的密码部分。
        protectionParameters - 加密算法参数规范,可以是 null
        异常
        NullPointerException - 如果 protectionAlgorithmnull
        从以下版本开始:
        1.8
    • 方法详细信息

      • getProtectionAlgorithm

        public String getProtectionAlgorithm​()
        获取保护算法的名称。 如果没有设置,则密钥库提供程序将使用其默认保护算法。 使用'keystore.<type>.keyProtectionAlgorithm'安全属性设置给定密钥库类型的默认保护算法的名称。 例如, keystore.PKCS12.keyProtectionAlgorithm属性存储用于PKCS12密钥库的默认密钥保护算法的名称。 如果未设置security属性,将使用实现特定的算法。
        结果
        算法名称,如果没有设置, null
        从以下版本开始:
        1.8
      • getProtectionParameters

        public AlgorithmParameterSpec getProtectionParameters​()
        获取为保护算法提供的参数。
        结果
        算法参数规范,或 null ,如果没有设置
        从以下版本开始:
        1.8
      • getPassword

        public char[] getPassword​()
        获取密码。

        请注意,此方法返回对密码的引用。 如果创建了数组的克隆,则呼叫者有责任在不再需要密码信息后将其清除。

        结果
        密码,可能是 null
        异常
        IllegalStateException - 如果密码已被清除(销毁)
        另请参见:
        destroy()
      • isDestroyed

        public boolean isDestroyed​()
        确定密码是否已被清除。
        Specified by:
        isDestroyed在接口 Destroyable
        结果
        如果密码已被清除,则为true,否则为false