<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>k6/crypto on Grafana Labs</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/</link><description>Recent content in k6/crypto on Grafana Labs</description><generator>Hugo -- gohugo.io</generator><language>en</language><atom:link href="/docs/k6/v2.3.x/javascript-api/k6-crypto/index.xml" rel="self" type="application/rss+xml"/><item><title>createHash( algorithm )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/createhash/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/createhash/</guid><content><![CDATA[&lt;h1 id=&#34;createhash-algorithm-&#34;&gt;createHash( algorithm )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Creates a hashing object that can then be fed with data repeatedly, and from which you can extract a hash digest whenever you want.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;algorithm&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;The name of the hashing algorithm you want to use. Can be any one of &amp;ldquo;md4&amp;rdquo;, &amp;ldquo;md5&amp;rdquo;, &amp;ldquo;sha1&amp;rdquo;, &amp;ldquo;sha256&amp;rdquo;, &amp;ldquo;sha384&amp;rdquo;, &amp;ldquo;sha512&amp;rdquo;, &amp;ldquo;sha512_224&amp;rdquo;, &amp;ldquo;sha512_256&amp;rdquo;, &amp;ldquo;ripemd160&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;object&lt;/td&gt;
              &lt;td&gt;A 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/hasher/&#34;&gt;Hasher&lt;/a&gt; object.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  console.log(crypto.sha256(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;));
  const hasher = crypto.createHash(&amp;#39;sha256&amp;#39;);
  hasher.update(&amp;#39;hello &amp;#39;);
  hasher.update(&amp;#39;world!&amp;#39;);
  console.log(hasher.digest(&amp;#39;hex&amp;#39;));
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] 7509e5bda0c762d2bac7f90d758b5b2263fa01ccbc542ab5e3df163be08e6ca9
INFO[0000] 7509e5bda0c762d2bac7f90d758b5b2263fa01ccbc542ab5e3df163be08e6ca9&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="createhash-algorithm-">createHash( algorithm )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>createHMAC( algorithm, secret )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/createhmac/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/createhmac/</guid><content><![CDATA[&lt;h1 id=&#34;createhmac-algorithm-secret-&#34;&gt;createHMAC( algorithm, secret )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Creates a HMAC hashing object that can then be fed with data repeatedly, and from which you can extract a signed hash digest whenever you want.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th style=&#34;text-align: center&#34;&gt;Type&lt;/th&gt;
              &lt;th style=&#34;text-align: left&#34;&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;algorithm&lt;/td&gt;
              &lt;td style=&#34;text-align: center&#34;&gt;string&lt;/td&gt;
              &lt;td style=&#34;text-align: left&#34;&gt;The hashing algorithm to use. One of &lt;code&gt;md4&lt;/code&gt;, &lt;code&gt;md5&lt;/code&gt;, &lt;code&gt;sha1&lt;/code&gt;, &lt;code&gt;sha256&lt;/code&gt;, &lt;code&gt;sha384&lt;/code&gt;, &lt;code&gt;sha512&lt;/code&gt;, &lt;code&gt;sha512_224&lt;/code&gt;, &lt;code&gt;sha512_256&lt;/code&gt; or &lt;code&gt;ripemd160&lt;/code&gt;.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;secret&lt;/td&gt;
              &lt;td style=&#34;text-align: center&#34;&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td style=&#34;text-align: left&#34;&gt;A shared secret used to sign the data.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th style=&#34;text-align: left&#34;&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;object&lt;/td&gt;
              &lt;td style=&#34;text-align: left&#34;&gt;A 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/hasher/&#34;&gt;Hasher&lt;/a&gt; object.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  console.log(crypto.hmac(&amp;#39;sha256&amp;#39;, &amp;#39;a secret&amp;#39;, &amp;#39;my data&amp;#39;, &amp;#39;hex&amp;#39;));
  const hasher = crypto.createHMAC(&amp;#39;sha256&amp;#39;, &amp;#39;a secret&amp;#39;);
  hasher.update(&amp;#39;my &amp;#39;);
  hasher.update(&amp;#39;data&amp;#39;);
  console.log(hasher.digest(&amp;#39;hex&amp;#39;));
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] 82f669c8fde13aef6d6977257588dc4953dfac505428f8fd6b52e19cd96d7ea5
INFO[0000] 82f669c8fde13aef6d6977257588dc4953dfac505428f8fd6b52e19cd96d7ea5&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="createhmac-algorithm-secret-">createHMAC( algorithm, secret )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>hmac( algorithm, secret, data, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/hmac/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/hmac/</guid><content><![CDATA[&lt;h1 id=&#34;hmac-algorithm-secret-data-outputencoding-&#34;&gt;hmac( algorithm, secret, data, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://en.wikipedia.org/wiki/Hash-based_message_authentication_code&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;HMAC&lt;/a&gt; to sign a piece of data using a shared secret.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;algorithm&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;The hashing algorithm to use. One of &lt;code&gt;md4&lt;/code&gt;, &lt;code&gt;md5&lt;/code&gt;, &lt;code&gt;sha1&lt;/code&gt;, &lt;code&gt;sha256&lt;/code&gt;, &lt;code&gt;sha384&lt;/code&gt;, &lt;code&gt;sha512&lt;/code&gt;, &lt;code&gt;sha512_224&lt;/code&gt;, &lt;code&gt;sha512_256&lt;/code&gt; or &lt;code&gt;ripemd160&lt;/code&gt;.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;secret&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;A shared secret used to sign the data.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;data&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The data to sign.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.hmac(&amp;#39;sha256&amp;#39;, &amp;#39;mysecret&amp;#39;, &amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.hmac(&amp;#39;sha256&amp;#39;, &amp;#39;mysecret&amp;#39;, new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] 893a72d8cab129e5ba85aea4599fd53f59bfe652cff4098a3780313228d8c20f
INFO[0000] 893a72d8cab129e5ba85aea4599fd53f59bfe652cff4098a3780313228d8c20f&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="hmac-algorithm-secret-data-outputencoding-">hmac( algorithm, secret, data, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>md4( input, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/md4/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/md4/</guid><content><![CDATA[&lt;h1 id=&#34;md4-input-outputencoding-&#34;&gt;md4( input, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://pkg.go.dev/golang.org/x/crypto/md4&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;md4&lt;/a&gt; to hash input data.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;input&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The input string or &lt;code&gt;ArrayBuffer&lt;/code&gt; object to hash.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.md4(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.md4(new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] 3363b72840acd5f49f922fef598ee85d
INFO[0000] 3363b72840acd5f49f922fef598ee85d&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="md4-input-outputencoding-">md4( input, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>md5( input, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/md5/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/md5/</guid><content><![CDATA[&lt;h1 id=&#34;md5-input-outputencoding-&#34;&gt;md5( input, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://golang.org/pkg/crypto/md5/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;md5&lt;/a&gt; to hash input data.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;input&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The input string or &lt;code&gt;ArrayBuffer&lt;/code&gt; object to hash.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.md5(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.md5(new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] fc3ff98e8c6a0d3087d515c0473f8677
INFO[0000] fc3ff98e8c6a0d3087d515c0473f8677&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="md5-input-outputencoding-">md5( input, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>randomBytes( int )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/randombytes/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/randombytes/</guid><content><![CDATA[&lt;h1 id=&#34;randombytes-int-&#34;&gt;randomBytes( int )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Return an ArrayBuffer object with a number of cryptographically random bytes. It will either return exactly the amount of bytes requested or will throw an exception if something went wrong.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;int&lt;/td&gt;
              &lt;td&gt;integer&lt;/td&gt;
              &lt;td&gt;The length of the returned ArrayBuffer.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;ArrayBuffer&lt;/td&gt;
              &lt;td&gt;An ArrayBuffer with cryptographically random bytes.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  const bytes = crypto.randomBytes(42);
  const view = new Uint8Array(bytes);
  console.log(view); // 156,71,245,191,56,...
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="randombytes-int-">randomBytes( int )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>ripemd160( input, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/ripemd160/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/ripemd160/</guid><content><![CDATA[&lt;h1 id=&#34;ripemd160-input-outputencoding-&#34;&gt;ripemd160( input, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://pkg.go.dev/golang.org/x/crypto/ripemd160&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;ripemd160&lt;/a&gt; to hash input data.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;input&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The input string or &lt;code&gt;ArrayBuffer&lt;/code&gt; object to hash.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.ripemd160(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.ripemd160(new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] dffd03137b3a333d5754813399a5f437acd694e5
INFO[0000] dffd03137b3a333d5754813399a5f437acd694e5&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="ripemd160-input-outputencoding-">ripemd160( input, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>sha1( input, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha1/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha1/</guid><content><![CDATA[&lt;h1 id=&#34;sha1-input-outputencoding-&#34;&gt;sha1( input, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://golang.org/pkg/crypto/sha1/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;sha1&lt;/a&gt; to hash input data.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;input&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The input string or &lt;code&gt;ArrayBuffer&lt;/code&gt; object to hash.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.sha1(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.sha1(new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] 430ce34d020724ed75a196dfc2ad67c77772d169
INFO[0000] 430ce34d020724ed75a196dfc2ad67c77772d169&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="sha1-input-outputencoding-">sha1( input, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>sha256( input, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha256/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha256/</guid><content><![CDATA[&lt;h1 id=&#34;sha256-input-outputencoding-&#34;&gt;sha256( input, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://golang.org/pkg/crypto/sha256/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;sha256&lt;/a&gt; to hash input data.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;input&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The input string or &lt;code&gt;ArrayBuffer&lt;/code&gt; object to hash.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.sha256(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.sha256(new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] 7509e5bda0c762d2bac7f90d758b5b2263fa01ccbc542ab5e3df163be08e6ca9
INFO[0000] 7509e5bda0c762d2bac7f90d758b5b2263fa01ccbc542ab5e3df163be08e6ca9&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="sha256-input-outputencoding-">sha256( input, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>sha384( input, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha384/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha384/</guid><content><![CDATA[&lt;h1 id=&#34;sha384-input-outputencoding-&#34;&gt;sha384( input, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://golang.org/pkg/crypto/sha512/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;sha384&lt;/a&gt; to hash input data.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;input&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The input string or &lt;code&gt;ArrayBuffer&lt;/code&gt; object to hash.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.sha384(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.sha384(new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] d33d40f7010ce34aa86efd353630309ed5c3d7ffac66d988825cf699f4803ccdf3f033230612f0945332fb580d8af805
INFO[0000] d33d40f7010ce34aa86efd353630309ed5c3d7ffac66d988825cf699f4803ccdf3f033230612f0945332fb580d8af805&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="sha384-input-outputencoding-">sha384( input, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>sha512( input, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha512/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha512/</guid><content><![CDATA[&lt;h1 id=&#34;sha512-input-outputencoding-&#34;&gt;sha512( input, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://golang.org/pkg/crypto/sha512/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;sha512&lt;/a&gt; to hash input data.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;input&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The input string or &lt;code&gt;ArrayBuffer&lt;/code&gt; object to hash.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.sha512(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.sha512(new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] db9b1cd3262dee37756a09b9064973589847caa8e53d31a9d142ea2701b1b28abd97838bb9a27068ba305dc8d04a45a1fcf079de54d607666996b3cc54f6b67c
INFO[0000] db9b1cd3262dee37756a09b9064973589847caa8e53d31a9d142ea2701b1b28abd97838bb9a27068ba305dc8d04a45a1fcf079de54d607666996b3cc54f6b67c&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="sha512-input-outputencoding-">sha512( input, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>sha512_256( input, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha512_256/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha512_256/</guid><content><![CDATA[&lt;h1 id=&#34;sha512_256-input-outputencoding-&#34;&gt;sha512_256( input, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://golang.org/pkg/crypto/sha512/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;sha512_256&lt;/a&gt; to hash input data.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;input&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The input string or &lt;code&gt;ArrayBuffer&lt;/code&gt; object to hash.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.sha512_256(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.sha512_256(new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] 595b5926068b4828fb1c27db21281e31118b8475cb6c3ceeb09be7b685414d5f
INFO[0000] 595b5926068b4828fb1c27db21281e31118b8475cb6c3ceeb09be7b685414d5f&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="sha512_256-input-outputencoding-">sha512_256( input, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>sha512_224( input, outputEncoding )</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha512_224/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/sha512_224/</guid><content><![CDATA[&lt;h1 id=&#34;sha512_224-input-outputencoding-&#34;&gt;sha512_224( input, outputEncoding )&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;Use &lt;a href=&#34;https://golang.org/pkg/crypto/sha512/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;sha512_224&lt;/a&gt; to hash input data.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Parameter&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;input&lt;/td&gt;
              &lt;td&gt;string / ArrayBuffer&lt;/td&gt;
              &lt;td&gt;The input string or &lt;code&gt;ArrayBuffer&lt;/code&gt; object to hash.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;outputEncoding&lt;/td&gt;
              &lt;td&gt;string&lt;/td&gt;
              &lt;td&gt;Describes the type of encoding to use for the hash value. Can be &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;returns&#34;&gt;Returns&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;string / Array&lt;/td&gt;
              &lt;td&gt;The hash digest as string (for &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;) or raw array of integers (for &amp;ldquo;binary&amp;rdquo; &lt;code&gt;outputEncoding&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  let hash = crypto.sha512_224(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;);
  console.log(hash);
  const binArray = [104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33];
  hash = crypto.sha512_224(new Uint8Array(binArray).buffer, &amp;#39;hex&amp;#39;);
  console.log(hash);
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above script should result in the following being printed during execution:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] bc4ed196f7ba1c20f6fb6be1f91edf8293a35b065d6e7d6fd368c890
INFO[0000] bc4ed196f7ba1c20f6fb6be1f91edf8293a35b065d6e7d6fd368c890&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="sha512_224-input-outputencoding-">sha512_224( input, outputEncoding )&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p></description></item><item><title>Hasher</title><link>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/hasher/</link><pubDate>Mon, 21 Sep 2026 15:16:28 +0000</pubDate><guid>https://grafana.com/docs/k6/v2.3.x/javascript-api/k6-crypto/hasher/</guid><content><![CDATA[&lt;h1 id=&#34;hasher&#34;&gt;Hasher&lt;/h1&gt;


&lt;div data-shared=&#34;crypto-module.md&#34;&gt;
            

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;A module with a better and standard API exists.
&lt;br&gt;
&lt;br&gt;
The 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/crypto/&#34;&gt;crypto module&lt;/a&gt; partially implements the &lt;a href=&#34;https://www.w3.org/TR/WebCryptoAPI/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;WebCrypto API&lt;/a&gt;, supporting more features than 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/&#34;&gt;k6/crypto&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        
&lt;p&gt;This object is returned by 
    &lt;a href=&#34;/docs/k6/v2.3.x/javascript-api/k6-crypto/createhash/&#34;&gt;crypto.createHash()&lt;/a&gt;
and allows the user to successively add more string data to be hashed, and to extract digests along the way.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Name&lt;/th&gt;
              &lt;th&gt;Type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Hasher.update(string)&lt;/td&gt;
              &lt;td&gt;function&lt;/td&gt;
              &lt;td&gt;Add more data to the string we want to create a hash of. Takes one string argument, which is the new data we want to add.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Hasher.digest(string)&lt;/td&gt;
              &lt;td&gt;function&lt;/td&gt;
              &lt;td&gt;Return a digest from the data added (using &lt;code&gt;update()&lt;/code&gt;) to the Hasher object so far. Takes one string argument, which is the encoding format to return. This can be either &amp;ldquo;base64&amp;rdquo;, &amp;ldquo;base64url&amp;rdquo;, &amp;ldquo;base64rawurl&amp;rdquo;, &amp;ldquo;hex&amp;rdquo; or &amp;ldquo;binary&amp;rdquo;. See the examples below for details.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;example&#34;&gt;Example&lt;/h3&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;JavaScript&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;import crypto from &amp;#39;k6/crypto&amp;#39;;

export default function () {
  console.log(crypto.sha256(&amp;#39;hello world!&amp;#39;, &amp;#39;hex&amp;#39;));
  const hasher = crypto.createHash(&amp;#39;sha256&amp;#39;);
  hasher.update(&amp;#39;hello &amp;#39;);
  hasher.update(&amp;#39;world!&amp;#39;);
  console.log(hasher.digest(&amp;#39;hex&amp;#39;));

  // Other encodings
  console.log(&amp;#39;base64:&amp;#39;, hasher.digest(&amp;#39;base64&amp;#39;));
  console.log(&amp;#39;base64url:&amp;#39;, hasher.digest(&amp;#39;base64url&amp;#39;));
  console.log(&amp;#39;base64rawurl:&amp;#39;, hasher.digest(&amp;#39;base64rawurl&amp;#39;));
  console.log(&amp;#39;binary:&amp;#39;, new Uint8Array(hasher.digest(&amp;#39;binary&amp;#39;)));
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The above code sample should produce this in its output:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;INFO[0000] 7509e5bda0c762d2bac7f90d758b5b2263fa01ccbc542ab5e3df163be08e6ca9
INFO[0000] 7509e5bda0c762d2bac7f90d758b5b2263fa01ccbc542ab5e3df163be08e6ca9
INFO[0000] base64: dQnlvaDHYtK6x/kNdYtbImP6Acy8VCq1498WO&amp;#43;CObKk=
INFO[0000] base64url: dQnlvaDHYtK6x_kNdYtbImP6Acy8VCq1498WO-CObKk=
INFO[0000] base64rawurl: dQnlvaDHYtK6x_kNdYtbImP6Acy8VCq1498WO-CObKk
INFO[0000] binary: 117,9,229,189,160,199,98,210,186,199,249,13,117,139,91,34,99,250,1,204,188,84,42,181,227,223,22,59,224,142,108,169&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="hasher">Hasher&lt;/h1>
&lt;div data-shared="crypto-module.md">
&lt;div class="admonition admonition-note">&lt;blockquote>&lt;p class="title text-uppercase">Note&lt;/p>&lt;p>A module with a better and standard API exists.
&lt;br>
&lt;br>
The
&lt;a href="/docs/k6/v2.3.x/javascript-api/crypto/">crypto module&lt;/a> partially implements the &lt;a href="https://www.w3.org/TR/WebCryptoAPI/" target="_blank" rel="noopener noreferrer">WebCrypto API&lt;/a>, supporting more features than
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/">k6/crypto&lt;/a>.&lt;/p>&lt;/blockquote>&lt;/div>
&lt;/div>
&lt;p>This object is returned by
&lt;a href="/docs/k6/v2.3.x/javascript-api/k6-crypto/createhash/">crypto.createHash()&lt;/a>
and allows the user to successively add more string data to be hashed, and to extract digests along the way.&lt;/p></description></item></channel></rss>