crypto: expose KeyObject class · nodejs/node@74c6f57 (original) (raw)

`@@ -1109,14 +1109,18 @@ This can be called many times with new data as it is streamed.

`

1109

1109

`## Class: KeyObject

`

1110

1110

`<!-- YAML

`

1111

1111

`added: v11.6.0

`

``

1112

`+

changes:

`

``

1113

`+

`

``

1114

`+

pr-url: https://github.com/nodejs/node/pull/26438

`

``

1115

`+

description: This class is now exported.

`

1112

1116

`-->

`

1113

1117

``

1114

``

`` -

Node.js uses an internal KeyObject class which should not be accessed

``

1115

``

`-

directly. Instead, factory functions exist to create instances of this class

`

1116

``

`` -

in a secure manner, see [crypto.createSecretKey()][],

``

1117

``

`` -

[crypto.createPublicKey()][] and [crypto.createPrivateKey()][]. A

``

1118

``

`` -

KeyObject can represent a symmetric or asymmetric key, and each kind of key

``

1119

``

`-

exposes different functions.

`

``

1118

`` +

Node.js uses a KeyObject class to represent a symmetric or asymmetric key,

``

``

1119

`+

and each kind of key exposes different functions. The

`

``

1120

`` +

[crypto.createSecretKey()][], [crypto.createPublicKey()][] and

``

``

1121

`` +

[crypto.createPrivateKey()][] methods are used to create KeyObject

``

``

1122

`` +

instances. KeyObject objects are not to be created directly using the new

``

``

1123

`+

keyword.

`

1120

1124

``

1121

1125

`` Most applications should consider using the new KeyObject API instead of

``

1122

1126

`` passing keys as strings or Buffers due to improved security features.

``