SecretKey
Stay organized with collections
Save and categorize content based on your preferences.
Known Indirect Subclasses
PBEKey |
The interface to a PBE key. |
SecretKeySpec |
This class specifies a secret key in a provider-independent fashion. |
|
A secret (symmetric) key.
The purpose of this interface is to group (and provide type safety
for) all secret key interfaces.
Provider implementations of this interface must overwrite the
equals
and hashCode
methods inherited from
Object
, so that secret keys are compared based on
their underlying key material and not based on reference.
Implementations should override the default destroy
and
isDestroyed
methods from the
Destroyable
interface to enable
sensitive key information to be destroyed, cleared, or in the case
where such information is immutable, unreferenced.
Finally, since SecretKey
is Serializable
, implementations
should also override
ObjectOutputStream.writeObject(java.lang.Object)
to prevent keys that have been destroyed from being serialized.
Keys that implement this interface return the string RAW
as their encoding format (see getFormat
), and return the
raw key bytes as the result of a getEncoded
method call. (The
getFormat
and getEncoded
methods are inherited
from the Key
parent interface.)
Constant Summary
long |
serialVersionUID |
The class fingerprint that is set to indicate serialization
compatibility since J2SE 1.4. |
Inherited Constant Summary
From interface
java.security.Key
long |
serialVersionUID |
The class fingerprint that is set to indicate
serialization compatibility with a previous
version of the class. |
Inherited Method Summary
From interface
java.security.Key
abstract
String
|
getAlgorithm()
Returns the standard algorithm name for this key.
|
abstract
byte[]
|
getEncoded()
Returns the key in its primary encoding format, or null
if this key does not support encoding.
|
abstract
String
|
getFormat()
Returns the name of the primary encoding format of this key,
or null if this key does not support encoding.
|
Constants
public
static
final
long
serialVersionUID
The class fingerprint that is set to indicate serialization
compatibility since J2SE 1.4.
Constant Value:
-4795878709595146952
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-07-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-07-10 UTC."],[[["`SecretKey` is a Java interface that represents a secret (symmetric) key used in cryptography, providing type safety for all secret key interfaces."],["Implementations must override `equals`, `hashCode`, `destroy`, `isDestroyed`, and `writeObject` for security and serialization purposes."],["Encoded `SecretKey` objects are represented in the `RAW` format, containing the raw key bytes."],["`SecretKey` is closely related to `SecretKeyFactory` for generating keys and `Cipher` for performing encryption and decryption."],["`PBEKey` and `SecretKeySpec` are notable subclasses of `SecretKey`."]]],[]]