22
33<!-- YAML
44changes:
5+ - version: REPLACEME
6+ pr-url: https://github.com/nodejs/node/pull/62183
7+ description: TurboSHAKE and KangarooTwelve algorithms
8+ are now supported.
59 - version: v24.8.0
610 pr-url: https://github.com/nodejs/node/pull/59647
711 description: KMAC algorithms are now supported.
@@ -122,6 +126,8 @@ Algorithms:
122126* ` 'cSHAKE256' `
123127* ` 'KMAC128' ` [ ^ openssl30 ]
124128* ` 'KMAC256' ` [ ^ openssl30 ]
129+ * ` 'KT128' `
130+ * ` 'KT256' `
125131* ` 'ML-DSA-44' ` [ ^ openssl35 ]
126132* ` 'ML-DSA-65' ` [ ^ openssl35 ]
127133* ` 'ML-DSA-87' ` [ ^ openssl35 ]
@@ -131,6 +137,8 @@ Algorithms:
131137* ` 'SHA3-256' `
132138* ` 'SHA3-384' `
133139* ` 'SHA3-512' `
140+ * ` 'TurboSHAKE128' `
141+ * ` 'TurboSHAKE256' `
134142
135143Key Formats:
136144
@@ -575,6 +583,8 @@ implementation and the APIs supported for each:
575583| ` ' HMAC' ` | | ✔ | | | | |
576584| ` ' KMAC128' ` [^modern-algos] | | ✔ | | | | |
577585| ` ' KMAC256' ` [^modern-algos] | | ✔ | | | | |
586+ | ` ' KT128' ` [^modern-algos] | | | | | | ✔ |
587+ | ` ' KT256' ` [^modern-algos] | | | | | | ✔ |
578588| ` ' ML-DSA-44' ` [^modern-algos] | | ✔ | | | | |
579589| ` ' ML-DSA-65' ` [^modern-algos] | | ✔ | | | | |
580590| ` ' ML-DSA-87' ` [^modern-algos] | | ✔ | | | | |
@@ -592,6 +602,8 @@ implementation and the APIs supported for each:
592602| ` ' SHA3-256' ` [^modern-algos] | | | | | | ✔ |
593603| ` ' SHA3-384' ` [^modern-algos] | | | | | | ✔ |
594604| ` ' SHA3-512' ` [^modern-algos] | | | | | | ✔ |
605+ | ` ' TurboSHAKE128' ` [^modern-algos] | | | | | | ✔ |
606+ | ` ' TurboSHAKE256' ` [^modern-algos] | | | | | | ✔ |
595607| ` ' X25519' ` | | | ✔ | | | |
596608| ` ' X448' ` [^secure-curves] | | | ✔ | | | |
597609
@@ -999,6 +1011,10 @@ The algorithms currently supported include:
9991011<!-- YAML
10001012added: v15.0.0
10011013changes:
1014+ - version: REPLACEME
1015+ pr-url: https://github.com/nodejs/node/pull/62183
1016+ description: TurboSHAKE and KangarooTwelve algorithms
1017+ are now supported.
10021018 - version: v24.7.0
10031019 pr-url: https://github.com/nodejs/node/pull/59365
10041020 description: SHA-3 algorithms are now supported.
@@ -1007,7 +1023,7 @@ changes:
10071023 description: SHAKE algorithms are now supported.
10081024-->
10091025
1010- * ` algorithm` {string|Algorithm|CShakeParams}
1026+ * ` algorithm` {string|Algorithm|CShakeParams|TurboShakeParams|KangarooTwelveParams }
10111027* ` data` {ArrayBuffer|TypedArray|DataView|Buffer}
10121028* Returns: {Promise} Fulfills with an {ArrayBuffer} upon success.
10131029
@@ -1019,13 +1035,17 @@ If `algorithm` is provided as a {string}, it must be one of:
10191035
10201036* ` ' cSHAKE128' ` [^modern-algos]
10211037* ` ' cSHAKE256' ` [^modern-algos]
1038+ * ` ' KT128' ` [^modern-algos]
1039+ * ` ' KT256' ` [^modern-algos]
10221040* ` ' SHA-1' `
10231041* ` ' SHA-256' `
10241042* ` ' SHA-384' `
10251043* ` ' SHA-512' `
10261044* ` ' SHA3-256' ` [^modern-algos]
10271045* ` ' SHA3-384' ` [^modern-algos]
10281046* ` ' SHA3-512' ` [^modern-algos]
1047+ * ` ' TurboSHAKE128' ` [^modern-algos]
1048+ * ` ' TurboSHAKE256' ` [^modern-algos]
10291049
10301050If ` algorithm` is provided as an {Object}, it must have a ` name` property
10311051whose value is one of the above.
@@ -2308,6 +2328,38 @@ added: v15.0.0
23082328
23092329* Type: {string}
23102330
2331+ ### Class: ` KangarooTwelveParams`
2332+
2333+ <!-- YAML
2334+ added: REPLACEME
2335+ -->
2336+
2337+ #### ` kangarooTwelveParams .customization `
2338+
2339+ <!-- YAML
2340+ added: REPLACEME
2341+ -->
2342+
2343+ * Type: {ArrayBuffer|TypedArray|DataView|Buffer|undefined}
2344+
2345+ The optional customization string for KangarooTwelve.
2346+
2347+ #### ` kangarooTwelveParams .name `
2348+
2349+ <!-- YAML
2350+ added: REPLACEME
2351+ -->
2352+
2353+ * Type: {string} Must be ` ' KT128' ` [^modern-algos] or ` ' KT256' ` [^modern-algos]
2354+
2355+ #### ` kangarooTwelveParams .outputLength `
2356+
2357+ <!-- YAML
2358+ added: REPLACEME
2359+ -->
2360+
2361+ * Type: {number} represents the requested output length in bits.
2362+
23112363### Class: ` KmacImportParams`
23122364
23132365<!-- YAML
@@ -2674,6 +2726,38 @@ added: v15.0.0
26742726
26752727The length (in bytes) of the random salt to use.
26762728
2729+ ### Class: ` TurboShakeParams`
2730+
2731+ <!-- YAML
2732+ added: REPLACEME
2733+ -->
2734+
2735+ #### ` turboShakeParams .domainSeparation `
2736+
2737+ <!-- YAML
2738+ added: REPLACEME
2739+ -->
2740+
2741+ * Type: {number|undefined}
2742+
2743+ The optional domain separation byte (0x01-0x7f). Defaults to ` 0x1f ` .
2744+
2745+ #### ` turboShakeParams .name `
2746+
2747+ <!-- YAML
2748+ added: REPLACEME
2749+ -->
2750+
2751+ * Type: {string} Must be ` ' TurboSHAKE128' ` [^modern-algos] or ` ' TurboSHAKE256' ` [^modern-algos]
2752+
2753+ #### ` turboShakeParams .outputLength `
2754+
2755+ <!-- YAML
2756+ added: REPLACEME
2757+ -->
2758+
2759+ * Type: {number} represents the requested output length in bits.
2760+
26772761[^secure-curves]: See [Secure Curves in the Web Cryptography API][]
26782762
26792763[^modern-algos]: See [Modern Algorithms in the Web Cryptography API][]
0 commit comments