Top Fields Constructors Methods
org.bouncycastle.jcajce.provider

pack-priv Class PBKDFPBEKey

extends SecretKeySpec
implements Destroyable, PBEKey
Class Inheritance
All Implemented Interfaces
javax.crypto.interfaces.PBEKey, javax.crypto.SecretKey, javax.security.auth.Destroyable, java.security.Key, java.io.Serializable
Imports
java.util.concurrent.atomic.AtomicBoolean, javax.crypto.interfaces.PBEKey, javax.crypto.spec.PBEKeySpec, .SecretKeySpec, javax.security.auth.Destroyable, org.bouncycastle.util.Arrays

Field Summary

Modifier and TypeField and Description
private final AtomicBoolean
private final int
private final char[]
private final byte[]

Constructor Summary

AccessConstructor and Description
public
PBKDFPBEKey(byte[] bytes, String keyAlg, PBEKeySpec pbeSpec)

Method Summary

Modifier and TypeMethod and Description
public void
destroy()

Overrides default javax.security.auth.Destroyable.destroy.

Destroy this Object.
public String
getAlgorithm()

Overrides javax.crypto.spec.SecretKeySpec.getAlgorithm.

Implements java.security.Key.getAlgorithm.

Returns the standard algorithm name for this key.
public byte[]
getEncoded()

Overrides javax.crypto.spec.SecretKeySpec.getEncoded.

Implements java.security.Key.getEncoded.

Returns the key in its primary encoding format, or null if this key does not support encoding.
public String
getFormat()

Overrides javax.crypto.spec.SecretKeySpec.getFormat.

Implements java.security.Key.getFormat.

Returns the name of the primary encoding format of this key, or null if this key does not support encoding.
public int
getIterationCount()

Implements javax.crypto.interfaces.PBEKey.getIterationCount.

Returns the iteration count or 0 if not specified.
public char[]
getPassword()

Implements javax.crypto.interfaces.PBEKey.getPassword.

Returns the password.
public byte[]
getSalt()

Implements javax.crypto.interfaces.PBEKey.getSalt.

Returns the salt or null if not specified.
public boolean
isDestroyed()

Overrides default javax.security.auth.Destroyable.isDestroyed.

Determine if this Object has been destroyed.
Inherited from javax.crypto.spec.SecretKeySpec:
equalshashCode

Field Detail

hasBeenDestroyedback to summary
private final AtomicBoolean hasBeenDestroyed
iterationCountback to summary
private final int iterationCount
passwordback to summary
private final char[] password
saltback to summary
private final byte[] salt

Constructor Detail

PBKDFPBEKeyback to summary
public PBKDFPBEKey(byte[] bytes, String keyAlg, PBEKeySpec pbeSpec)

Method Detail

destroyback to summary
public void destroy()

Overrides default javax.security.auth.Destroyable.destroy.

Doc from javax.security.auth.Destroyable.destroy.

Destroy this Object.

Sensitive information associated with this Object is destroyed or cleared. Subsequent calls to certain methods on this Object will result in an IllegalStateException being thrown.

getAlgorithmback to summary
public String getAlgorithm()

Overrides javax.crypto.spec.SecretKeySpec.getAlgorithm.

Implements java.security.Key.getAlgorithm.

Doc from java.security.Key.getAlgorithm.

Returns the standard algorithm name for this key. For example, "DSA" would indicate that this key is a DSA key. See the key related sections (KeyFactory, KeyGenerator, KeyPairGenerator, and SecretKeyFactory) in the Java Security Standard Algorithm Names Specification for information about standard key algorithm names.

Returns:String

the name of the algorithm associated with this key.

getEncodedback to summary
public byte[] getEncoded()

Overrides javax.crypto.spec.SecretKeySpec.getEncoded.

Implements java.security.Key.getEncoded.

Doc from java.security.Key.getEncoded.

Returns the key in its primary encoding format, or null if this key does not support encoding.

Returns:byte[]

the encoded key, or null if the key does not support encoding.

getFormatback to summary
public String getFormat()

Overrides javax.crypto.spec.SecretKeySpec.getFormat.

Implements java.security.Key.getFormat.

Doc from java.security.Key.getFormat.

Returns the name of the primary encoding format of this key, or null if this key does not support encoding. The primary encoding format is named in terms of the appropriate ASN.1 data format, if an ASN.1 specification for this key exists. For example, the name of the ASN.1 data format for public keys is SubjectPublicKeyInfo, as defined by the X.509 standard; in this case, the returned format is "X.509". Similarly, the name of the ASN.1 data format for private keys is PrivateKeyInfo, as defined by the PKCS #8 standard; in this case, the returned format is "PKCS#8".

Returns:String

the primary encoding format of the key.

getIterationCountback to summary
public int getIterationCount()

Implements javax.crypto.interfaces.PBEKey.getIterationCount.

Doc from javax.crypto.interfaces.PBEKey.getIterationCount.

Returns the iteration count or 0 if not specified.

Returns:int

the iteration count.

getPasswordback to summary
public char[] getPassword()

Implements javax.crypto.interfaces.PBEKey.getPassword.

Doc from javax.crypto.interfaces.PBEKey.getPassword.

Returns the password.

Note

this method should return a copy of the password. It is the caller's responsibility to zero out the password information after it is no longer needed.

Returns:char[]

the password.

getSaltback to summary
public byte[] getSalt()

Implements javax.crypto.interfaces.PBEKey.getSalt.

Doc from javax.crypto.interfaces.PBEKey.getSalt.

Returns the salt or null if not specified.

Note

this method should return a copy of the salt. It is the caller's responsibility to zero out the salt information after it is no longer needed.

Returns:byte[]

the salt.

isDestroyedback to summary
public boolean isDestroyed()

Overrides default javax.security.auth.Destroyable.isDestroyed.

Doc from javax.security.auth.Destroyable.isDestroyed.

Determine if this Object has been destroyed.

Returns:boolean

true if this Object has been destroyed, false otherwise.