HMAC()
Creates a hash-based message authentication code (HMAC) for the given message combined with a given secret key using an optional algorithm and encoding.
HMACs are used to verify the data integrity and authenticity of a transmitted message.
The hash function used by the HMAC function depends on the algorithm specified.
HMAC( message=object, key=object, algorithm=string, encoding=string );
Returns: String
| Argument | Description | Default |
|---|---|---|
|
message
object,
required
|
edit
The message to be hashed. Can be a string or a byte array. |
|
|
key
object,
required
|
edit
The secret cryptographic key to be combined with the message and hashed. Can be a string or a byte array. |
|
|
algorithm
string,
optional
|
edit
The algorithm to use for hashing your input, default is The available algorithms (depending on your JVM) are
|
HmacMD5 |
|
encoding
string,
optional
|
edit
The character encoding to use when converting the message to bytes. Must be a character encoding name recognized by the Java runtime.
Alias: charset |
Examples
edit message = 'this is a test';
key = 'ABC123';
// Using the required fields only
result = HMAC( message, key );
writeDump( result ); // 776770430C93778AD6F91B43A4A30B69
// Using the optional algorithm parameter (HmacSHA1)
algorithm = 'HmacSHA1';
result = HMAC( message, key, algorithm );
writeDump( result ); // 049E53BAE339C4A05587D7BBBA2857548E8FC327
// Using the optional algorithm parameter (HmacSHA256)
algorithm = 'HmacSHA256';
result = HMAC( message, key, algorithm );
writeDump( result ); // 0503949602EDE3FF61C84F4CE51C99EEA2961CAA144AEE552F7D120AD6A60D7D
// Using the optional encoding parameter (UTF-8)
encoding = 'UTF-8';
result = HMAC( message, key, algorithm, encoding );
writeDump( result ); // 0503949602EDE3FF61C84F4CE51C99EEA2961CAA144AEE552F7D120AD6A60D7D
See also
- Cryptography
- Search Issue Tracker open_in_new
- Search Lucee Test Cases open_in_new (good for further, detailed examples)