@Immutable public final class AesCmacPrfKey extends PrfKey
| Modifier and Type | Method and Description |
|---|---|
static AesCmacPrfKey |
create(AesCmacPrfParameters parameters,
SecretBytes keyBytes) |
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() |
AesCmacPrfParameters |
getParameters()
Returns the parameters of this key.
|
public static AesCmacPrfKey create(AesCmacPrfParameters parameters, SecretBytes keyBytes) throws GeneralSecurityException
GeneralSecurityExceptionpublic SecretBytes getKeyBytes()
public AesCmacPrfParameters getParameters()
PrfKeygetParameters in class PrfKey@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.