javax.crypto.spec
Class SecretKeySpec
java.lang.Object
|
+--javax.crypto.spec.SecretKeySpec
- public class SecretKeySpec
- extends java.lang.Object
- implements java.security.spec.KeySpec, SecretKey
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.
- See Also:
SecretKey
,
SecretKeyFactory
, Serialized Form
Field Summary |
static java.lang.String |
ident
|
Constructor Summary |
SecretKeySpec(byte[] key,
int offset,
int len,
java.lang.String algorithm)
Constructs a secret key from the given byte array, using the first len
bytes of key, starting at offset. |
SecretKeySpec(byte[] key,
java.lang.String algorithm)
Constructs a secret key from the given byte array. |
Method Summary |
java.lang.String |
getAlgorithm()
Returns the name of the algorithm associated with this secret key. |
byte[] |
getEncoded()
Returns the key material of this secret key. |
java.lang.String |
getFormat()
Returns the name of the encoding format for this secret key. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
ident
public static final java.lang.String ident
SecretKeySpec
public SecretKeySpec(byte[] key,
java.lang.String algorithm)
- Constructs a secret key from the given byte array.
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.
- Parameters:
key
- the key material of the secret key.algorithm
- the name of the associated algorithm.
SecretKeySpec
public SecretKeySpec(byte[] key,
int offset,
int len,
java.lang.String algorithm)
- Constructs a secret key from the given byte array, using the first len
bytes of key, starting at offset.
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.
- Parameters:
key
- the key material of the secret key.offset
- the offset in key where the key material starts.len
- the length of the key material.algorithm
- the standard name of the associated key algorithm. See
Appendix A in the Java Cryptography Extension API Specification &
Reference for information about standard algorithm names.
getAlgorithm
public java.lang.String getAlgorithm()
- Returns the name of the algorithm associated with this secret key.
- Returns:
- the secret key algorithm.
getFormat
public java.lang.String getFormat()
- Returns the name of the encoding format for this secret key.
- Returns:
- the string "RAW".
getEncoded
public byte[] getEncoded()
- Returns the key material of this secret key.
- Returns:
- the key material