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.
@@ -121,6 +125,8 @@ Algorithms:
121125* ` 'cSHAKE256' `
122126* ` 'KMAC128' ` [ ^ openssl30 ]
123127* ` 'KMAC256' ` [ ^ openssl30 ]
128+ * ` 'KT128' `
129+ * ` 'KT256' `
124130* ` 'ML-DSA-44' ` [ ^ openssl35 ]
125131* ` 'ML-DSA-65' ` [ ^ openssl35 ]
126132* ` 'ML-DSA-87' ` [ ^ openssl35 ]
@@ -130,6 +136,8 @@ Algorithms:
130136* ` 'SHA3-256' `
131137* ` 'SHA3-384' `
132138* ` 'SHA3-512' `
139+ * ` 'TurboSHAKE128' `
140+ * ` 'TurboSHAKE256' `
133141
134142Key Formats:
135143
@@ -574,6 +582,8 @@ Crypto API implementation and the APIs supported for each:
574582| ` ' HMAC' ` | | ✔ | | | | |
575583| ` ' KMAC128' ` [^modern-algos] | | ✔ | | | | |
576584| ` ' KMAC256' ` [^modern-algos] | | ✔ | | | | |
585+ | ` ' KT128' ` [^modern-algos] | | | | | | ✔ |
586+ | ` ' KT256' ` [^modern-algos] | | | | | | ✔ |
577587| ` ' ML-DSA-44' ` [^modern-algos] | | ✔ | | | | |
578588| ` ' ML-DSA-65' ` [^modern-algos] | | ✔ | | | | |
579589| ` ' ML-DSA-87' ` [^modern-algos] | | ✔ | | | | |
@@ -591,6 +601,8 @@ Crypto API implementation and the APIs supported for each:
591601| ` ' SHA3-256' ` [^modern-algos] | | | | | | ✔ |
592602| ` ' SHA3-384' ` [^modern-algos] | | | | | | ✔ |
593603| ` ' SHA3-512' ` [^modern-algos] | | | | | | ✔ |
604+ | ` ' TurboSHAKE128' ` [^modern-algos] | | | | | | ✔ |
605+ | ` ' TurboSHAKE256' ` [^modern-algos] | | | | | | ✔ |
594606| ` ' X25519' ` | | | ✔ | | | |
595607| ` ' X448' ` [^secure-curves] | | | ✔ | | | |
596608
@@ -998,6 +1010,10 @@ The algorithms currently supported include:
9981010<!-- YAML
9991011added: v15.0.0
10001012changes:
1013+ - version: REPLACEME
1014+ pr-url: https://github.com/nodejs/node/pull/62183
1015+ description: TurboSHAKE and KangarooTwelve algorithms
1016+ are now supported.
10011017 - version: v24.7.0
10021018 pr-url: https://github.com/nodejs/node/pull/59365
10031019 description: SHA-3 algorithms are now supported.
@@ -1006,7 +1022,7 @@ changes:
10061022 description: SHAKE algorithms are now supported.
10071023-->
10081024
1009- * ` algorithm` {string|Algorithm|CShakeParams}
1025+ * ` algorithm` {string|Algorithm|CShakeParams|TurboShakeParams|KangarooTwelveParams }
10101026* ` data` {ArrayBuffer|TypedArray|DataView|Buffer}
10111027* Returns: {Promise} Fulfills with an {ArrayBuffer} upon success.
10121028
@@ -1018,13 +1034,17 @@ If `algorithm` is provided as a {string}, it must be one of:
10181034
10191035* ` ' cSHAKE128' ` [^modern-algos]
10201036* ` ' cSHAKE256' ` [^modern-algos]
1037+ * ` ' KT128' ` [^modern-algos]
1038+ * ` ' KT256' ` [^modern-algos]
10211039* ` ' SHA-1' `
10221040* ` ' SHA-256' `
10231041* ` ' SHA-384' `
10241042* ` ' SHA-512' `
10251043* ` ' SHA3-256' ` [^modern-algos]
10261044* ` ' SHA3-384' ` [^modern-algos]
10271045* ` ' SHA3-512' ` [^modern-algos]
1046+ * ` ' TurboSHAKE128' ` [^modern-algos]
1047+ * ` ' TurboSHAKE256' ` [^modern-algos]
10281048
10291049If ` algorithm` is provided as an {Object}, it must have a ` name` property
10301050whose value is one of the above.
@@ -2315,6 +2335,38 @@ added: v15.0.0
23152335
23162336* Type: {string}
23172337
2338+ ### Class: ` KangarooTwelveParams`
2339+
2340+ <!-- YAML
2341+ added: REPLACEME
2342+ -->
2343+
2344+ #### ` kangarooTwelveParams .customization `
2345+
2346+ <!-- YAML
2347+ added: REPLACEME
2348+ -->
2349+
2350+ * Type: {ArrayBuffer|TypedArray|DataView|Buffer|undefined}
2351+
2352+ The optional customization string for KangarooTwelve.
2353+
2354+ #### ` kangarooTwelveParams .name `
2355+
2356+ <!-- YAML
2357+ added: REPLACEME
2358+ -->
2359+
2360+ * Type: {string} Must be ` ' KT128' ` [^modern-algos] or ` ' KT256' ` [^modern-algos]
2361+
2362+ #### ` kangarooTwelveParams .outputLength `
2363+
2364+ <!-- YAML
2365+ added: REPLACEME
2366+ -->
2367+
2368+ * Type: {number} represents the requested output length in bits.
2369+
23182370### Class: ` KmacImportParams`
23192371
23202372<!-- YAML
@@ -2685,6 +2737,38 @@ added: v15.0.0
26852737
26862738The length (in bytes) of the random salt to use.
26872739
2740+ ### Class: ` TurboShakeParams`
2741+
2742+ <!-- YAML
2743+ added: REPLACEME
2744+ -->
2745+
2746+ #### ` turboShakeParams .domainSeparation `
2747+
2748+ <!-- YAML
2749+ added: REPLACEME
2750+ -->
2751+
2752+ * Type: {number|undefined}
2753+
2754+ The optional domain separation byte (0x01-0x7f). Defaults to ` 0x1f ` .
2755+
2756+ #### ` turboShakeParams .name `
2757+
2758+ <!-- YAML
2759+ added: REPLACEME
2760+ -->
2761+
2762+ * Type: {string} Must be ` ' TurboSHAKE128' ` [^modern-algos] or ` ' TurboSHAKE256' ` [^modern-algos]
2763+
2764+ #### ` turboShakeParams .outputLength `
2765+
2766+ <!-- YAML
2767+ added: REPLACEME
2768+ -->
2769+
2770+ * Type: {number} represents the requested output length in bits.
2771+
26882772[^secure-curves]: See [Secure Curves in the Web Cryptography API][]
26892773
26902774[^modern-algos]: See [Modern Algorithms in the Web Cryptography API][]
0 commit comments