@@ -1916,6 +1916,9 @@ This can be called many times with new data as it is streamed.
19161916<!-- YAML
19171917added: v11.6.0
19181918changes:
1919+ - version: REPLACEME
1920+ pr-url: https://github.com/nodejs/node/pull/59259
1921+ description: Add support for ML-DSA keys.
19191922 - version:
19201923 - v14.5.0
19211924 - v12.19.0
@@ -2021,6 +2024,9 @@ Other key details might be exposed via this API using additional attributes.
20212024<!-- YAML
20222025added: v11.6.0
20232026changes:
2027+ - version: REPLACEME
2028+ pr-url: https://github.com/nodejs/node/pull/59259
2029+ description: Add support for ML-DSA keys.
20242030 - version:
20252031 - v13.9.0
20262032 - v12.17.0
@@ -2055,6 +2061,9 @@ types are:
20552061* ` 'ed25519' ` (OID 1.3.101.112)
20562062* ` 'ed448' ` (OID 1.3.101.113)
20572063* ` 'dh' ` (OID 1.2.840.113549.1.3.1)
2064+ * ` 'ml-dsa-44' ` [ ^ openssl35 ] (OID 2.16.840.1.101.3.4.3.17)
2065+ * ` 'ml-dsa-65' ` [ ^ openssl35 ] (OID 2.16.840.1.101.3.4.3.18)
2066+ * ` 'ml-dsa-87' ` [ ^ openssl35 ] (OID 2.16.840.1.101.3.4.3.19)
20582067
20592068This property is ` undefined ` for unrecognized ` KeyObject ` types and symmetric
20602069keys.
@@ -3403,6 +3412,9 @@ input.on('readable', () => {
34033412<!-- YAML
34043413added: v11.6.0
34053414changes:
3415+ - version: REPLACEME
3416+ pr-url: https://github.com/nodejs/node/pull/59259
3417+ description: Add support for ML-DSA keys.
34063418 - version: v15.12.0
34073419 pr-url: https://github.com/nodejs/node/pull/37254
34083420 description: The key can also be a JWK object.
@@ -3434,11 +3446,16 @@ must be an object with the properties described above.
34343446If the private key is encrypted, a ` passphrase ` must be specified. The length
34353447of the passphrase is limited to 1024 bytes.
34363448
3449+ Note: ML-DSA keys JWK import is not yet supported.
3450+
34373451### ` crypto.createPublicKey(key) `
34383452
34393453<!-- YAML
34403454added: v11.6.0
34413455changes:
3456+ - version: REPLACEME
3457+ pr-url: https://github.com/nodejs/node/pull/59259
3458+ description: Add support for ML-DSA keys.
34423459 - version: v15.12.0
34433460 pr-url: https://github.com/nodejs/node/pull/37254
34443461 description: The key can also be a JWK object.
@@ -3484,6 +3501,8 @@ extracted from the returned `KeyObject`. Similarly, if a `KeyObject` with type
34843501` 'private' ` is given, a new ` KeyObject ` with type ` 'public' ` will be returned
34853502and it will be impossible to extract the private key from the returned object.
34863503
3504+ Note: ML-DSA keys JWK import is not yet supported.
3505+
34873506### ` crypto.createSecretKey(key[, encoding]) `
34883507
34893508<!-- YAML
@@ -3648,6 +3667,9 @@ underlying hash function. See [`crypto.createHmac()`][] for more information.
36483667<!-- YAML
36493668added: v10.12.0
36503669changes:
3670+ - version: REPLACEME
3671+ pr-url: https://github.com/nodejs/node/pull/59259
3672+ description: Add support for ML-DSA key pairs.
36513673 - version: v18.0.0
36523674 pr-url: https://github.com/nodejs/node/pull/41678
36533675 description: Passing an invalid callback to the `callback` argument
@@ -3767,6 +3789,9 @@ a `Promise` for an `Object` with `publicKey` and `privateKey` properties.
37673789<!-- YAML
37683790added: v10.12.0
37693791changes:
3792+ - version: REPLACEME
3793+ pr-url: https://github.com/nodejs/node/pull/59259
3794+ description: Add support for ML-DSA key pairs.
37703795 - version: v16.10.0
37713796 pr-url: https://github.com/nodejs/node/pull/39927
37723797 description: Add ability to define `RSASSA-PSS-params` sequence parameters
@@ -3792,7 +3817,8 @@ changes:
37923817-->
37933818
37943819* ` type ` : {string} Must be ` 'rsa' ` , ` 'rsa-pss' ` , ` 'dsa' ` , ` 'ec' ` , ` 'ed25519' ` ,
3795- ` 'ed448' ` , ` 'x25519' ` , ` 'x448' ` , or ` 'dh' ` .
3820+ ` 'ed448' ` , ` 'x25519' ` , ` 'x448' ` , ` 'dh' ` , ` 'ml-dsa-44' ` [ ^ openssl35 ] ,
3821+ ` 'ml-dsa-65' ` [ ^ openssl35 ] , or ` 'ml-dsa-87' ` [ ^ openssl35 ] .
37963822* ` options ` : {Object}
37973823 * ` modulusLength ` : {number} Key size in bits (RSA, DSA).
37983824 * ` publicExponent ` : {number} Public exponent (RSA). ** Default:** ` 0x10001 ` .
@@ -3816,7 +3842,7 @@ changes:
38163842 * ` privateKey ` : {string | Buffer | KeyObject}
38173843
38183844Generates a new asymmetric key pair of the given ` type ` . RSA, RSA-PSS, DSA, EC,
3819- Ed25519, Ed448, X25519, X448, and DH are currently supported.
3845+ Ed25519, Ed448, X25519, X448, DH, and ML-DSA [ ^ openssl35 ] are currently supported.
38203846
38213847If a ` publicKeyEncoding ` or ` privateKeyEncoding ` was specified, this function
38223848behaves as if [ ` keyObject.export() ` ] [ ] had been called on its result. Otherwise,
@@ -6150,6 +6176,8 @@ See the [list of SSL OP Flags][] for details.
61506176 </tr >
61516177</table >
61526178
6179+ [ ^ openssl35 ] : Requires OpenSSL >= 3.5
6180+
61536181[ AEAD algorithms ] : https://en.wikipedia.org/wiki/Authenticated_encryption
61546182[ CCM mode ] : #ccm-mode
61556183[ CVE-2021-44532 ] : https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44532
0 commit comments