Package org.bouncycastle.jcajce.provider.symmetric.util

## Class BCPBEKey

- java.lang.Object
- - org.bouncycastle.jcajce.provider.symmetric.util.BCPBEKey

- All Implemented Interfaces:
    `java.io.Serializable`, `java.security.Key`, `javax.crypto.interfaces.PBEKey`, `javax.crypto.SecretKey`, `javax.security.auth.Destroyable`

      public class BCPBEKey
      extends java.lang.Object
      implements javax.crypto.interfaces.PBEKey, javax.security.auth.Destroyable

  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from interface javax.crypto.interfaces.PBEKey

      `serialVersionUID`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `BCPBEKey​(java.lang.String algorithm, ASN1ObjectIdentifier oid, int type, int digest, int keySize, int ivSize, javax.crypto.spec.PBEKeySpec pbeKeySpec, CipherParameters param)` |
    `BCPBEKey​(java.lang.String algName, CipherParameters param)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `destroy()` |
    `java.lang.String` | `getAlgorithm()` |
    `byte[]` | `getEncoded()` |
    `java.lang.String` | `getFormat()` |
    `int` | `getIterationCount()` |
    `int` | `getIvSize()` |
    `ASN1ObjectIdentifier` | `getOID()` |
    `CipherParameters` | `getParam()` |
    `char[]` | `getPassword()` |
    `byte[]` | `getSalt()` |
    `boolean` | `isDestroyed()` |
    `void` | `setTryWrongPKCS12Zero​(boolean tryWrong)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### BCPBEKey

          public BCPBEKey​(java.lang.String algorithm,
                          ASN1ObjectIdentifier oid,
                          int type,
                          int digest,
                          int keySize,
                          int ivSize,
                          javax.crypto.spec.PBEKeySpec pbeKeySpec,
                          CipherParameters param)

      Parameters:
        `param` -

    - #### BCPBEKey

          public BCPBEKey​(java.lang.String algName,
                          CipherParameters param)

  - ### Method Detail

    - #### getAlgorithm

          public java.lang.String getAlgorithm()

      Specified by:
        `getAlgorithm` in interface `java.security.Key`

    - #### getFormat

          public java.lang.String getFormat()

      Specified by:
        `getFormat` in interface `java.security.Key`

    - #### getEncoded

          public byte[] getEncoded()

      Specified by:
        `getEncoded` in interface `java.security.Key`

    - #### getIvSize

          public int getIvSize()

    - #### getParam

          public CipherParameters getParam()

    - #### getPassword

          public char[] getPassword()

      Specified by:
        `getPassword` in interface `javax.crypto.interfaces.PBEKey`

    - #### getSalt

          public byte[] getSalt()

      Specified by:
        `getSalt` in interface `javax.crypto.interfaces.PBEKey`

    - #### getIterationCount

          public int getIterationCount()

      Specified by:
        `getIterationCount` in interface `javax.crypto.interfaces.PBEKey`

    - #### getOID

          public ASN1ObjectIdentifier getOID()

    - #### setTryWrongPKCS12Zero

          public void setTryWrongPKCS12Zero​(boolean tryWrong)

    - #### destroy

          public void destroy()

      Specified by:
        `destroy` in interface `javax.security.auth.Destroyable`

    - #### isDestroyed

          public boolean isDestroyed()

      Specified by:
        `isDestroyed` in interface `javax.security.auth.Destroyable`