java.lang.Objectjavax.crypto.spec.SecretKeySpec
public class SecretKeySpec
This class specifies a secret key in a provider-independent fashion.
It can be used to construct a SecretKey from a byte array, without having to go through a (provider-based) SecretKeyFactory.
This class is only useful for raw secret keys that can be represented as a byte array and have no key parameters associated with them, e.g., DES or Triple DES keys.
Field Summary |
---|
Fields inherited from interface javax.crypto. SecretKey |
---|
serialVersionUID |
Constructor Summary | |
---|---|
SecretKeySpec
(byte[] key, int offset, int len,
String
algorithm) Constructs a secret key from the given byte array, using the first len bytes of key, starting at offset inclusive. |
|
SecretKeySpec
(byte[] key,
String
algorithm) Constructs a secret key from the given byte array. |
Method Summary | |
---|---|
boolean |
equals
(
Object
obj) Tests for equality between the specified object and this object. |
String |
getAlgorithm
() Returns the name of the algorithm associated with this secret key. |
byte[] |
getEncoded
() Returns the key material of this secret key. |
String |
getFormat
() Returns the name of the encoding format for this secret key. |
int |
hashCode
() Calculates a hash code value for the object. |
Methods inherited from class java.lang. Object |
---|
clone , finalize , getClass , notify , notifyAll , toString , wait , wait , wait |
Constructor Detail |
---|
public SecretKeySpec(byte[] key, String algorithm)
This constructor does not check if the given bytes indeed specify a secret key of the specified algorithm. For example, if the algorithm is DES, this constructor does not check if key is 8 bytes long, and also does not check for weak or semi-weak keys. In order for those checks to be performed, an algorithm-specific key specification class (in this case: DESKeySpec ) should be used.
public SecretKeySpec(byte[] key, int offset, int len, String algorithm)
The bytes that constitute the secret key are those between key[offset] and key[offset+len-1] inclusive.
This constructor does not check if the given bytes indeed specify a secret key of the specified algorithm. For example, if the algorithm is DES, this constructor does not check if key is 8 bytes long, and also does not check for weak or semi-weak keys. In order for those checks to be performed, an algorithm-specific key specification class (in this case: DESKeySpec ) must be used.
Method Detail |
---|
public String getAlgorithm()
public String getFormat()
public byte[] getEncoded()
public int hashCode()
public boolean equals(Object obj)