• Asynchronously generates a new random secret key of the given length. The type will determine which validations will be performed on the length.

    const {
    generateKey,
    } = await import('node:crypto');

    generateKey('hmac', { length: 512 }, (err, key) => {
    if (err) throw err;
    console.log(key.export().toString('hex')); // 46e..........620
    });

    The size of a generated HMAC key should not exceed the block size of the underlying hash function. See createHmac for more information.

    Parameters

    • type: "hmac" | "aes"

      The intended use of the generated secret key. Currently accepted values are 'hmac' and 'aes'.

    • options: {
          length: number;
      }
      • length: number
    • callback: ((err: null | Error, key: KeyObject) => void)
        • (err, key): void
        • Parameters

          Returns void

    Returns void

    v15.0.0