---
title: "HmacKeyGenParams | Grafana k6 documentation"
description: "HmacKeyGenParams represents the object that should be passed as the algorithm parameter into the generateKey operation, when generating an HMAC key."
---

> For a curated documentation index, see [llms.txt](/llms.txt). For the complete documentation index, see [llms-full.txt](/llms-full.txt).

# HmacKeyGenParams

The `HmacKeyGenParams` object represents the object that should be passed as the algorithm parameter into the [generateKey](/docs/k6/latest/javascript-api/crypto/subtlecrypto/generatekey/) operation when generating an HMAC key.

## Properties

Expand table

| Property          | Type     | Description                                                                                                                                                                                                                                     |
|-------------------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| name              | `string` | This should be set to `HMAC`.                                                                                                                                                                                                                   |
| hash              | `string` | The name of the digest function to use. Possible values are `SHA-1`, `SHA-256`, `SHA-384` and `SHA-512`.                                                                                                                                        |
| length (optional) | `number` | The length of the key in bits. If this is omitted, the length of the key is equal to the block size of the hash function you have chosen. We recommend to leave this parameter empty, unless you have a good reason to use something different. |

## Example

JavaScript ![Copy code to clipboard](/media/images/icons/icon-copy-small-2.svg) Copy

```javascript
export default async function () {
  const key = await crypto.subtle.generateKey(
    {
      name: 'HMAC',
      hash: { name: 'SHA-512' },
      length: 256,
    },
    true,
    ['sign', 'verify']
  );
}
```
