No results for

Powered byAlgolia
⚠️ This is archived documentation for v0.31. Go to the latest version

hmac( algorithm, secret, data, outputEncoding )

suggest edits

Use HMAC to sign a piece of data using a shared secret.

algorithmstringThe hashing algorithm to use. One of md4, md5, sha1, sha256, sha384, sha512, sha512_224, sha512_256 or ripemd160.
secretstring / ArrayBuffer (≥ v0.31.0)A shared secret used to sign the data.
datastring / ArrayBuffer (≥ v0.31.0)The data to sign.
outputEncodingstringDescribes the type of encoding to use for the hash value. Can be "base64", "base64url", "base64rawurl", "hex" or "binary".


string / ArrayThe hash digest as string (for "base64", "base64url", "base64rawurl", "hex" outputEncoding) or raw array of integers (for "binary" outputEncoding).


import crypto from 'k6/crypto';
export default function () {
let hash = crypto.hmac('sha256', 'mysecret', 'hello world!', 'hex');
let binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
hash = crypto.hmac('sha256', 'mysecret', new Uint8Array(binArray).buffer, 'hex');

The above script should result in the following being printed during execution:

INFO[0000] 893a72d8cab129e5ba85aea4599fd53f59bfe652cff4098a3780313228d8c20f
INFO[0000] 893a72d8cab129e5ba85aea4599fd53f59bfe652cff4098a3780313228d8c20f