@Immutable public final class AesSivKey extends DeterministicAeadKey
| Modifier and Type | Class and Description |
|---|---|
static class |
AesSivKey.Builder
Builder for AesSivKey.
|
| Modifier and Type | Method and Description |
|---|---|
static AesSivKey.Builder |
builder() |
boolean |
equalsKey(Key o)
Returns true if the key is guaranteed to be equal to
other. |
Integer |
getIdRequirementOrNull()
Returns null if this key has no id requirement, otherwise the required id.
|
SecretBytes |
getKeyBytes()
Returns the underlying key bytes.
|
Bytes |
getOutputPrefix()
Returns a
Bytes instance which is prefixed to the ciphertext. |
AesSivParameters |
getParameters()
Returns the parameters of this key.
|
public static AesSivKey.Builder builder()
public SecretBytes getKeyBytes()
public Bytes getOutputPrefix()
DeterministicAeadKeyBytes instance which is prefixed to the ciphertext.getOutputPrefix in class DeterministicAeadKeypublic AesSivParameters getParameters()
DeterministicAeadKeygetParameters in class DeterministicAeadKey@Nullable public Integer getIdRequirementOrNull()
KeySome keys, when they are in a keyset, are required to have a certain ID to work properly.
This comes from the fact that Tink in some cases prefixes ciphertexts or signatures with the
string 0x01<id>, where the ID is encoded in big endian (see the documentation of the
key type for details), in which case the key requires a certain ID.
getIdRequirementOrNull in class Keypublic boolean equalsKey(Key o)
Keyother.
Implementations are required to do this in constant time.
Note: this is allowed to return false even if two keys are guaranteed to represent the same function, but are represented differently. For example, a key is allowed to internally store the number of zero-bytes used as padding when a large number is represented as a byte array, and use this in the comparison.
Note: Tink Key objects should typically not override hashCode (because it
could risk leaking key material). Hence, they typically also should not override equals.