node-opcua-crypto 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,29 +4,103 @@ name: CI
4
4
 
5
5
  # Controls when the workflow will run
6
6
  on:
7
- # Triggers the workflow on push or pull request events but only for the master branch
8
- push:
9
- branches: [ master ]
10
- pull_request:
11
- branches: [ master ]
7
+ # Triggers the workflow on push or pull request events but only for the master branch
8
+ push:
9
+ branches: [master]
10
+ pull_request:
11
+ branches: [master]
12
12
 
13
- # Allows you to run this workflow manually from the Actions tab
14
- workflow_dispatch:
13
+ # Allows you to run this workflow manually from the Actions tab
14
+ workflow_dispatch:
15
15
 
16
16
  # A workflow run is made up of one or more jobs that can run sequentially or in parallel
17
17
  jobs:
18
- # This workflow contains a single job called "build"
19
- build:
20
- # The type of runner that the job will run on
21
- runs-on: ubuntu-latest
22
-
23
- # Steps represent a sequence of tasks that will be executed as part of the job
24
- steps:
25
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
26
- - uses: actions/checkout@v2
27
-
28
- # Runs a set of commands using the runners shell
29
- - name: build
30
- run: |
31
- npm install
32
- npm run test
18
+ # This workflow contains a single job called "build"
19
+ build-new:
20
+ # The type of runner that the job will run on
21
+ strategy:
22
+ matrix:
23
+ node-version: [19.x]
24
+ os: [ubuntu-20.04, ubuntu-latest, macos-latest, windows-latest]
25
+ runs-on: ${{ matrix.os }}
26
+ # Steps represent a sequence of tasks that will be executed as part of the job
27
+ steps:
28
+ # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
29
+ - name: checkout
30
+ uses: actions/checkout@v3
31
+
32
+ - name: Use Node.js ${{ matrix.node-version }}
33
+ uses: actions/setup-node@v3
34
+ with:
35
+ node-version: ${{ matrix.node-version }}
36
+
37
+ - name: openssl
38
+ run: openssl version
39
+ - name: nodejs
40
+ run: node --version
41
+
42
+ # Runs a set of commands using the runners shell
43
+ - name: build
44
+ run: |
45
+ npm install typescript mocha ts-node @types/node@18 npm -g
46
+ npm install
47
+ npm run test
48
+ build:
49
+ # The type of runner that the job will run on
50
+ strategy:
51
+ matrix:
52
+ node-version: [ 16.x, 18.x]
53
+ os: [ubuntu-20.04, ubuntu-latest, macos-latest, windows-latest]
54
+ runs-on: ${{ matrix.os }}
55
+ # Steps represent a sequence of tasks that will be executed as part of the job
56
+ steps:
57
+ # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
58
+ - name: checkout
59
+ uses: actions/checkout@v3
60
+
61
+ - name: Use Node.js ${{ matrix.node-version }}
62
+ uses: actions/setup-node@v3
63
+ with:
64
+ node-version: ${{ matrix.node-version }}
65
+
66
+ - name: openssl
67
+ run: openssl version
68
+ - name: nodejs
69
+ run: node --version
70
+
71
+ # Runs a set of commands using the runners shell
72
+ - name: build
73
+ run: |
74
+ npm install npm@9 -g
75
+ npm install typescript mocha ts-node @types/node@${{ matrix.node-version }} -g
76
+ npm install
77
+ npm run test
78
+ build-legacy:
79
+ # The type of runner that the job will run on
80
+ strategy:
81
+ matrix:
82
+ node-version: [12.x, 14.x]
83
+ os: [ubuntu-18.04, ubuntu-20.04, ubuntu-latest, macos-latest, windows-latest]
84
+ runs-on: ${{ matrix.os }}
85
+ # Steps represent a sequence of tasks that will be executed as part of the job
86
+ steps:
87
+ # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
88
+ - name: checkout
89
+ uses: actions/checkout@v3
90
+
91
+ - name: Use Node.js ${{ matrix.node-version }}
92
+ uses: actions/setup-node@v3
93
+ with:
94
+ node-version: ${{ matrix.node-version }}
95
+
96
+ - name: openssl
97
+ run: openssl version
98
+ - name: nodejs
99
+ run: node --version
100
+
101
+ # Runs a set of commands using the runners shell
102
+ - name: build
103
+ run: |
104
+ npm install typescript mocha ts-node @types/node@${{ matrix.node-version }} npm@8 -g
105
+ npm install
106
+ npm run test
@@ -1,12 +1,14 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { KeyObject } from "node:crypto";
4
+ export type PrivateKey = KeyObject;
5
+ export type PublicKey = KeyObject;
2
6
  export type Nonce = Buffer;
3
7
  export type PEM = string;
4
8
  export type DER = Buffer;
5
9
  export type Certificate = DER;
6
10
  export type CertificatePEM = PEM;
7
- export type PrivateKey = DER;
8
11
  export type PrivateKeyPEM = PEM;
9
- export type PublicKey = DER;
10
12
  export type PublicKeyPEM = PEM;
11
13
  export type Signature = Buffer;
12
14
  export type CertificateRevocationList = Buffer;
@@ -1,4 +1,6 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import * as crypto from "crypto";
2
4
  import { Certificate, CertificatePEM, DER, PEM, PrivateKey, PrivateKeyPEM, PublicKey, PublicKeyPEM, Signature } from "./common";
3
5
  export declare function identifyPemType(rawKey: Buffer | string): undefined | string;
4
6
  export declare function convertPEMtoDER(raw_key: PEM): DER;
@@ -8,7 +10,7 @@ export declare function convertPEMtoDER(raw_key: PEM): DER;
8
10
  * @param pem
9
11
  * @return
10
12
  */
11
- export declare function toPem(raw_key: Buffer | string, pem: string): string;
13
+ export declare function toPem(raw_key: Buffer | string | crypto.KeyObject, pem: string): string;
12
14
  export declare function hexDump(buffer: Buffer, width?: number): string;
13
15
  interface MakeMessageChunkSignatureOptions {
14
16
  signatureLength: number;
@@ -54,14 +56,15 @@ export declare enum PaddingAlgorithm {
54
56
  RSA_PKCS1_OAEP_PADDING = 4,
55
57
  RSA_PKCS1_PADDING = 1
56
58
  }
57
- export declare function publicEncrypt_native(buffer: Buffer, publicKey: PublicKeyPEM, algorithm?: PaddingAlgorithm): Buffer;
58
- export declare function privateDecrypt_native(buffer: Buffer, privateKey: PrivateKeyPEM, algorithm?: PaddingAlgorithm): Buffer;
59
+ export declare function publicEncrypt_native(buffer: Buffer, publicKey: crypto.KeyLike, algorithm?: PaddingAlgorithm): Buffer;
60
+ export declare function privateDecrypt_native(buffer: Buffer, privateKey: crypto.KeyLike, algorithm?: PaddingAlgorithm): Buffer;
59
61
  export declare const publicEncrypt: typeof publicEncrypt_native;
60
62
  export declare const privateDecrypt: typeof privateDecrypt_native;
61
- export declare function publicEncrypt_long(buffer: Buffer, publicKey: PublicKeyPEM, blockSize: number, padding: number, paddingAlgorithm?: PaddingAlgorithm): Buffer;
62
- export declare function privateDecrypt_long(buffer: Buffer, privateKey: PrivateKeyPEM, blockSize: number, paddingAlgorithm?: number): Buffer;
63
+ export declare function publicEncrypt_long(buffer: Buffer, publicKey: crypto.KeyLike, blockSize: number, padding: number, paddingAlgorithm?: PaddingAlgorithm): Buffer;
64
+ export declare function privateDecrypt_long(buffer: Buffer, privateKey: crypto.KeyLike, blockSize: number, paddingAlgorithm?: number): Buffer;
63
65
  export declare function coerceCertificatePem(certificate: Certificate | CertificatePEM): CertificatePEM;
64
66
  export declare function coercePublicKeyPem(publicKey: PublicKey | PublicKeyPEM): PublicKeyPEM;
67
+ export declare function coercePrivateKey(privateKey: PrivateKey | PrivateKeyPEM): PrivateKey;
65
68
  export declare function coercePrivateKeyPem(privateKey: PrivateKey | PrivateKeyPEM): PrivateKeyPEM;
66
69
  /***
67
70
  * @method rsaLengthPrivateKey
@@ -70,7 +73,7 @@ export declare function coercePrivateKeyPem(privateKey: PrivateKey | PrivateKeyP
70
73
  * @return the key length in bytes.
71
74
  */
72
75
  export declare function rsaLengthPrivateKey(key: PrivateKeyPEM | PrivateKey): number;
73
- export declare function rsaLengthPublicKey(key: PublicKeyPEM): number;
76
+ export declare function rsaLengthPublicKey(key: PublicKeyPEM | PublicKey): number;
74
77
  export declare function extractPublicKeyFromCertificateSync(certificate: Certificate | CertificatePEM): PublicKeyPEM;
75
78
  /**
76
79
  * extract the publickey from a certificate
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractPublicKeyFromCertificate = exports.extractPublicKeyFromCertificateSync = exports.rsaLengthPublicKey = exports.rsaLengthPrivateKey = exports.coercePrivateKeyPem = exports.coercePublicKeyPem = exports.coerceCertificatePem = exports.privateDecrypt_long = exports.publicEncrypt_long = exports.privateDecrypt = exports.publicEncrypt = exports.privateDecrypt_native = exports.publicEncrypt_native = exports.PaddingAlgorithm = exports.RSA_PKCS1_PADDING = exports.RSA_PKCS1_OAEP_PADDING = exports.makeSHA1Thumbprint = exports.verifyMessageChunkSignature = exports.makeMessageChunkSignature = exports.hexDump = exports.toPem = exports.convertPEMtoDER = exports.identifyPemType = void 0;
3
+ exports.extractPublicKeyFromCertificate = exports.extractPublicKeyFromCertificateSync = exports.rsaLengthPublicKey = exports.rsaLengthPrivateKey = exports.coercePrivateKeyPem = exports.coercePrivateKey = exports.coercePublicKeyPem = exports.coerceCertificatePem = exports.privateDecrypt_long = exports.publicEncrypt_long = exports.privateDecrypt = exports.publicEncrypt = exports.privateDecrypt_native = exports.publicEncrypt_native = exports.PaddingAlgorithm = exports.RSA_PKCS1_PADDING = exports.RSA_PKCS1_OAEP_PADDING = exports.makeSHA1Thumbprint = exports.verifyMessageChunkSignature = exports.makeMessageChunkSignature = exports.hexDump = exports.toPem = exports.convertPEMtoDER = exports.identifyPemType = void 0;
4
4
  // tslint:disabled:no-var-requires
5
5
  /**
6
6
  * @module node_opcua_crypto
@@ -55,6 +55,17 @@ exports.convertPEMtoDER = convertPEMtoDER;
55
55
  function toPem(raw_key, pem) {
56
56
  assert(raw_key, "expecting a key");
57
57
  assert(typeof pem === "string");
58
+ if (raw_key instanceof crypto.KeyObject) {
59
+ if (pem === "RSA PRIVATE KEY") {
60
+ return raw_key.export({ format: "pem", type: "pkcs1" }).toString();
61
+ }
62
+ else if (pem === "PRIVATE KEY") {
63
+ return raw_key.export({ format: "pem", type: "pkcs8" }).toString();
64
+ }
65
+ else {
66
+ throw new Error("Unsupported case!");
67
+ }
68
+ }
58
69
  let pemType = identifyPemType(raw_key);
59
70
  if (pemType) {
60
71
  return raw_key instanceof Buffer ? raw_key.toString("utf8") : raw_key;
@@ -202,6 +213,7 @@ function publicEncrypt_long(buffer, publicKey, blockSize, padding, paddingAlgori
202
213
  for (let i = 0; i < nbBlocks; i++) {
203
214
  const currentBlock = buffer.subarray(chunk_size * i, chunk_size * (i + 1));
204
215
  const encrypted_chunk = (0, exports.publicEncrypt)(currentBlock, publicKey, paddingAlgorithm);
216
+ // istanbul ignore next
205
217
  if (encrypted_chunk.length !== blockSize) {
206
218
  throw new Error(`publicEncrypt_long unexpected chunk length ${encrypted_chunk.length} expecting ${blockSize}`);
207
219
  }
@@ -212,6 +224,7 @@ function publicEncrypt_long(buffer, publicKey, blockSize, padding, paddingAlgori
212
224
  exports.publicEncrypt_long = publicEncrypt_long;
213
225
  function privateDecrypt_long(buffer, privateKey, blockSize, paddingAlgorithm) {
214
226
  paddingAlgorithm = paddingAlgorithm || exports.RSA_PKCS1_PADDING;
227
+ // istanbul ignore next
215
228
  if (paddingAlgorithm !== exports.RSA_PKCS1_PADDING && paddingAlgorithm !== exports.RSA_PKCS1_OAEP_PADDING) {
216
229
  throw new Error("Invalid padding algorithm " + paddingAlgorithm);
217
230
  }
@@ -236,13 +249,20 @@ function coerceCertificatePem(certificate) {
236
249
  }
237
250
  exports.coerceCertificatePem = coerceCertificatePem;
238
251
  function coercePublicKeyPem(publicKey) {
239
- if (publicKey instanceof Buffer) {
240
- publicKey = toPem(publicKey, "PUBLIC KEY");
252
+ if (publicKey instanceof crypto.KeyObject) {
253
+ return publicKey.export({ format: "pem", type: "spki" }).toString();
241
254
  }
242
255
  assert(typeof publicKey === "string");
243
256
  return publicKey;
244
257
  }
245
258
  exports.coercePublicKeyPem = coercePublicKeyPem;
259
+ function coercePrivateKey(privateKey) {
260
+ if (typeof privateKey === "string") {
261
+ return crypto.createPrivateKey(privateKey);
262
+ }
263
+ return privateKey;
264
+ }
265
+ exports.coercePrivateKey = coercePrivateKey;
246
266
  function coercePrivateKeyPem(privateKey) {
247
267
  if (privateKey instanceof Buffer) {
248
268
  const o = crypto.createPrivateKey({ key: privateKey, format: "der", type: "pkcs1" });
@@ -260,18 +280,12 @@ exports.coercePrivateKeyPem = coercePrivateKeyPem;
260
280
  * @return the key length in bytes.
261
281
  */
262
282
  function rsaLengthPrivateKey(key) {
263
- key = coercePrivateKeyPem(key);
264
- assert(typeof key === "string");
265
- if (/PRIVATE/.test(key)) {
266
- const o = crypto.createPrivateKey(key);
267
- // in node 16 and above :
268
- // return o.asymmetricKeyDetails.modulusLength/8
269
- // in node <16 :
270
- const key2 = o.export({ type: "pkcs1", format: "pem" });
271
- const a = jsrsasign.KEYUTIL.getKey(key2);
272
- return a.n.toString(16).length / 2;
273
- }
274
- const a = jsrsasign.KEYUTIL.getKey(key);
283
+ key = coercePrivateKey(key);
284
+ // in node 16 and above :
285
+ // return o.asymmetricKeyDetails.modulusLength/8
286
+ // in node <16 :
287
+ const key2 = key.export({ type: "pkcs1", format: "pem" }).toString();
288
+ const a = jsrsasign.KEYUTIL.getKey(key2);
275
289
  return a.n.toString(16).length / 2;
276
290
  }
277
291
  exports.rsaLengthPrivateKey = rsaLengthPrivateKey;
@@ -1 +1 @@
1
- {"version":3,"file":"crypto_utils.js","sourceRoot":"","sources":["../../source/crypto_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crypto_utils.js","sourceRoot":"","sources":["../../source/crypto_utils.ts"],"names":[],"mappings":"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"}
@@ -26,4 +26,4 @@ export interface PrivateKeyInternals {
26
26
  * otherPrimeInfos OtherPrimeInfos OPTIONAL
27
27
  }
28
28
  */
29
- export declare function explorePrivateKey(privateKey: PrivateKey): PrivateKeyInternals;
29
+ export declare function explorePrivateKey(privateKey1: PrivateKey): PrivateKeyInternals;
@@ -22,7 +22,8 @@ const doDebug = !!process.env.DEBUG;
22
22
  * otherPrimeInfos OtherPrimeInfos OPTIONAL
23
23
  }
24
24
  */
25
- function explorePrivateKey(privateKey) {
25
+ function explorePrivateKey(privateKey1) {
26
+ const privateKey = privateKey1.export({ format: "der", type: "pkcs1" });
26
27
  assert(privateKey instanceof Buffer);
27
28
  const block_info = (0, asn1_1.readTag)(privateKey, 0);
28
29
  const blocks = (0, asn1_1._readStruct)(privateKey, block_info);
@@ -44,7 +45,7 @@ function explorePrivateKey(privateKey) {
44
45
  prime1,
45
46
  prime2,
46
47
  exponent1,
47
- exponent2
48
+ exponent2,
48
49
  };
49
50
  }
50
51
  /* istanbul ignore next */
@@ -90,7 +91,7 @@ function explorePrivateKey(privateKey) {
90
91
  prime1,
91
92
  prime2,
92
93
  exponent1,
93
- exponent2
94
+ exponent2,
94
95
  };
95
96
  }
96
97
  exports.explorePrivateKey = explorePrivateKey;
@@ -1 +1 @@
1
- {"version":3,"file":"explore_private_key.js","sourceRoot":"","sources":["../../source/explore_private_key.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"explore_private_key.js","sourceRoot":"","sources":["../../source/explore_private_key.ts"],"names":[],"mappings":"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"}
@@ -31,8 +31,7 @@ function certificateMatchesPrivateKey(certificate, privateKey) {
31
31
  const e = (0, explore_private_key_1.explorePrivateKey)(privateKey);
32
32
  const blockSize = e.modulus.length;
33
33
  const certificatePEM = (0, crypto_utils_1.toPem)(certificate, "CERTIFICATE");
34
- const privateKeyPEM = (0, crypto_utils_1.toPem)(privateKey, "RSA PRIVATE KEY");
35
- return certificateMatchesPrivateKeyPEM(certificatePEM, privateKeyPEM, blockSize);
34
+ return certificateMatchesPrivateKeyPEM(certificatePEM, privateKey, blockSize);
36
35
  }
37
36
  exports.certificateMatchesPrivateKey = certificateMatchesPrivateKey;
38
37
  //# sourceMappingURL=public_private_match.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"public_private_match.js","sourceRoot":"","sources":["../../source/public_private_match.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAE1D,iDAAgF;AAChF,6EAAkE;AAElE,SAAiB,6BAA6B,CAAC,WAAwB,EAAC,UAAsB;IAE1F,MAAM,CAAC,GAAG,IAAA,+CAAkB,EAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,IAAA,uCAAiB,EAAC,UAAU,CAAC,CAAC;IAExC,MAAM,QAAQ,GAAG,CAAC,CAAC,cAAc,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,OAAO,CAAC;IAChF,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC;IAE3B,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE;QACpC,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACjE,CAAC;AAZD,sEAYC;AAID;;;;GAIG;AACH,SAAS,+BAA+B,CAAC,WAA2B,EAAE,UAAyB,EAAE,SAAiB;IAC9G,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,IAAA,iCAAkB,EAAC,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IACtF,MAAM,eAAe,GAAG,IAAA,kCAAmB,EAAC,eAAe,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IACpF,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtD,OAAO,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,WAAW,CAAC;AAC3D,CAAC;AAED,SAAgB,4BAA4B,CAAC,WAAwB,EAAE,UAAsB;IACzF,MAAM,CAAC,GAAG,IAAA,uCAAiB,EAAC,UAAU,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACnC,MAAM,cAAc,GAAG,IAAA,oBAAK,EAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,IAAA,oBAAK,EAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;IAC3D,OAAO,+BAA+B,CAAC,cAAc,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;AACrF,CAAC;AAND,oEAMC"}
1
+ {"version":3,"file":"public_private_match.js","sourceRoot":"","sources":["../../source/public_private_match.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAE1D,iDAAgF;AAChF,6EAAkE;AAElE,SAAgB,6BAA6B,CAAC,WAAwB,EAAE,UAAsB;IAC1F,MAAM,CAAC,GAAG,IAAA,+CAAkB,EAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,IAAA,uCAAiB,EAAC,UAAU,CAAC,CAAC;IAExC,MAAM,QAAQ,GAAG,CAAC,CAAC,cAAc,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,OAAO,CAAC;IAChF,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC;IAE3B,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE;QACpC,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACjE,CAAC;AAXD,sEAWC;AAED;;;;GAIG;AACH,SAAS,+BAA+B,CAAC,WAA2B,EAAE,UAAsB,EAAE,SAAiB;IAC3G,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,IAAA,iCAAkB,EAAC,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IACtF,MAAM,eAAe,GAAG,IAAA,kCAAmB,EAAC,eAAe,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IACpF,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtD,OAAO,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,WAAW,CAAC;AAC3D,CAAC;AAED,SAAgB,4BAA4B,CAAC,WAAwB,EAAE,UAAsB;IACzF,MAAM,CAAC,GAAG,IAAA,uCAAiB,EAAC,UAAU,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACnC,MAAM,cAAc,GAAG,IAAA,oBAAK,EAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACzD,OAAO,+BAA+B,CAAC,cAAc,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;AAClF,CAAC;AALD,oEAKC"}
@@ -20,10 +20,9 @@ export declare function readCertificatePEM(filename: string): CertificatePEM;
20
20
  export declare function readPublicKeyPEM(filename: string): PublicKeyPEM;
21
21
  export declare function readPrivateKeyPEM(filename: string): PrivateKeyPEM;
22
22
  export declare function setCertificateStore(store: string): string;
23
- export declare function read_sshkey_as_pem(filename: string): PublicKeyPEM;
24
23
  /**
25
24
  *
26
25
  * @param filename
27
26
  */
28
- export declare function readPrivateRsaKey(filename: string): PrivateKeyPEM;
29
- export declare function readPublicRsaKey(filename: string): PublicKeyPEM;
27
+ export declare function readPrivateRsaKey(filename: string): PrivateKey;
28
+ export declare function readPublicRsaKey(filename: string): PublicKey;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.readPublicRsaKey = exports.readPrivateRsaKey = exports.read_sshkey_as_pem = exports.setCertificateStore = exports.readPrivateKeyPEM = exports.readPublicKeyPEM = exports.readCertificatePEM = exports.readPrivateKey = exports.readPublicKey = exports.readCertificate = exports.readKeyPem = void 0;
3
+ exports.readPublicRsaKey = exports.readPrivateRsaKey = exports.setCertificateStore = exports.readPrivateKeyPEM = exports.readPublicKeyPEM = exports.readCertificatePEM = exports.readPrivateKey = exports.readPublicKey = exports.readCertificate = exports.readKeyPem = void 0;
4
4
  const assert = require("assert");
5
5
  const fs = require("fs");
6
6
  const path = require("path");
7
+ const crypto_1 = require("crypto");
7
8
  const crypto_utils_1 = require("../source/crypto_utils");
8
9
  const sshpk = require("sshpk");
9
10
  /**
@@ -39,14 +40,35 @@ exports.readCertificate = readCertificate;
39
40
  * read a DER or PEM certificate from file
40
41
  */
41
42
  function readPublicKey(filename) {
42
- return _readPemOrDerFileAsDER(filename);
43
+ if (filename.match(/.*\.der/)) {
44
+ const der = fs.readFileSync(filename);
45
+ return (0, crypto_1.createPublicKey)(der);
46
+ }
47
+ else {
48
+ const raw_key = _readPemFile(filename);
49
+ return (0, crypto_1.createPublicKey)(raw_key);
50
+ }
43
51
  }
44
52
  exports.readPublicKey = readPublicKey;
53
+ function myCreatePrivateKey(rawKey) {
54
+ // see https://askubuntu.com/questions/1409458/openssl-config-cuases-error-in-node-js-crypto-how-should-the-config-be-updated
55
+ const p = process.env.OPENSSL_CONF;
56
+ const retValue = (0, crypto_1.createPrivateKey)(rawKey);
57
+ process.env.OPENSSL_CONF = "/dev/null";
58
+ return retValue;
59
+ }
45
60
  /**
46
61
  * read a DER or PEM certificate from file
47
62
  */
48
63
  function readPrivateKey(filename) {
49
- return _readPemOrDerFileAsDER(filename);
64
+ if (filename.match(/.*\.der/)) {
65
+ const der = fs.readFileSync(filename);
66
+ return myCreatePrivateKey(der);
67
+ }
68
+ else {
69
+ const raw_key = _readPemFile(filename);
70
+ return myCreatePrivateKey(raw_key);
71
+ }
50
72
  }
51
73
  exports.readPrivateKey = readPrivateKey;
52
74
  function readCertificatePEM(filename) {
@@ -68,15 +90,6 @@ function setCertificateStore(store) {
68
90
  return old_store;
69
91
  }
70
92
  exports.setCertificateStore = setCertificateStore;
71
- function read_sshkey_as_pem(filename) {
72
- if (filename.substring(0, 1) !== ".") {
73
- filename = __certificate_store + filename;
74
- }
75
- const key = fs.readFileSync(filename, "ascii");
76
- const sshKey = sshpk.parseKey(key, "ssh");
77
- return sshKey.toString("pkcs8");
78
- }
79
- exports.read_sshkey_as_pem = read_sshkey_as_pem;
80
93
  /**
81
94
  *
82
95
  * @param filename
@@ -85,11 +98,20 @@ function readPrivateRsaKey(filename) {
85
98
  if (filename.substring(0, 1) !== "." && !fs.existsSync(filename)) {
86
99
  filename = __certificate_store + filename;
87
100
  }
88
- return fs.readFileSync(filename, "ascii");
101
+ const content = fs.readFileSync(filename, "ascii");
102
+ const sshKey = sshpk.parsePrivateKey(content, "auto");
103
+ const key = sshKey.toString("pkcs1");
104
+ return (0, crypto_1.createPrivateKey)({ format: "pem", type: "pkcs1", key });
89
105
  }
90
106
  exports.readPrivateRsaKey = readPrivateRsaKey;
91
107
  function readPublicRsaKey(filename) {
92
- return readPrivateRsaKey(filename);
108
+ if (filename.substring(0, 1) !== "." && !fs.existsSync(filename)) {
109
+ filename = __certificate_store + filename;
110
+ }
111
+ const content = fs.readFileSync(filename, "ascii");
112
+ const sshKey = sshpk.parseKey(content, "ssh");
113
+ const key = sshKey.toString("pkcs1");
114
+ return (0, crypto_1.createPublicKey)({ format: "pem", type: "pkcs1", key });
93
115
  }
94
116
  exports.readPublicRsaKey = readPublicRsaKey;
95
117
  //# sourceMappingURL=read.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../source_nodejs/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../source_nodejs/read.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,yBAAyB;AACzB,6BAA6B;AAC7B,mCAA2D;AAE3D,yDAA0E;AAE1E,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAE/B;;;GAGG;AACH,SAAgB,UAAU,CAAC,QAAgB;IACvC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,IAAA,8BAAe,EAAC,OAAO,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,6BAA6B;IAClE,OAAO,OAAO,CAAC;AACnB,CAAC;AALD,gCAKC;AAED,SAAS,YAAY,CAAC,QAAgB;IAClC,MAAM,CAAC,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC;IACrC,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,sBAAsB,CAAC,QAAgB;IAC5C,IAAI,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;QAC3B,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAW,CAAC;KAC9C;IACD,MAAM,OAAO,GAAW,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/C,OAAO,IAAA,8BAAe,EAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,QAAgB;IAC5C,OAAO,sBAAsB,CAAC,QAAQ,CAAgB,CAAC;AAC3D,CAAC;AAFD,0CAEC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,QAAgB;IAC1C,IAAI,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;QAC3B,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAW,CAAC;QAChD,OAAO,IAAA,wBAAe,EAAC,GAAG,CAAC,CAAC;KAC/B;SAAM;QACH,MAAM,OAAO,GAAW,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC/C,OAAO,IAAA,wBAAe,EAAC,OAAO,CAAC,CAAC;KACnC;AACL,CAAC;AARD,sCAQC;AAED,SAAS,kBAAkB,CAAC,MAAuB;IAC/C,6HAA6H;IAC7H,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAA,yBAAgB,EAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,WAAW,CAAC;IACvC,OAAO,QAAQ,CAAC;AACpB,CAAC;AACD;;GAEG;AACH,SAAgB,cAAc,CAAC,QAAgB;IAC3C,IAAI,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;QAC3B,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAW,CAAC;QAChD,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC;KAClC;SAAM;QACH,MAAM,OAAO,GAAW,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC/C,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;KACtC;AACL,CAAC;AARD,wCAQC;AAED,SAAgB,kBAAkB,CAAC,QAAgB;IAC/C,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC;AAFD,gDAEC;AAED,SAAgB,gBAAgB,CAAC,QAAgB;IAC7C,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC;AAFD,4CAEC;AAED,SAAgB,iBAAiB,CAAC,QAAgB;IAC9C,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC;AAFD,8CAEC;AACD,IAAI,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;AAEtE,SAAgB,mBAAmB,CAAC,KAAa;IAC7C,MAAM,SAAS,GAAG,mBAAmB,CAAC;IACtC,mBAAmB,GAAG,KAAK,CAAC;IAC5B,OAAO,SAAS,CAAC;AACrB,CAAC;AAJD,kDAIC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,QAAgB;IAC9C,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QAC9D,QAAQ,GAAG,mBAAmB,GAAG,QAAQ,CAAC;KAC7C;IACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAQ,CAAC;IAC5C,OAAO,IAAA,yBAAgB,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;AACnE,CAAC;AARD,8CAQC;AAED,SAAgB,gBAAgB,CAAC,QAAgB;IAC7C,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QAC9D,QAAQ,GAAG,mBAAmB,GAAG,QAAQ,CAAC;KAC7C;IACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAQ,CAAC;IAC5C,OAAO,IAAA,wBAAe,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;AAClE,CAAC;AARD,4CAQC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-opcua-crypto",
3
- "version": "2.0.0",
3
+ "version": "2.1.0",
4
4
  "description": "Crypto tools for Node-OPCUA",
5
5
  "main": "./index.js",
6
6
  "types": "./index.d.ts",
package/source/common.ts CHANGED
@@ -1,13 +1,15 @@
1
- export type Nonce = Buffer;
2
-
3
- export type PEM = string;
4
- export type DER = Buffer;
5
- export type Certificate = DER;
6
- export type CertificatePEM = PEM; // certificate as a PEM string
7
- export type PrivateKey = DER;
8
- export type PrivateKeyPEM = PEM;
9
- export type PublicKey = DER;
10
- export type PublicKeyPEM = PEM;
11
-
12
- export type Signature = Buffer;
13
- export type CertificateRevocationList = Buffer;
1
+ import { KeyObject } from "node:crypto";
2
+
3
+ export type PrivateKey = KeyObject;
4
+ export type PublicKey = KeyObject;
5
+
6
+ export type Nonce = Buffer;
7
+ export type PEM = string;
8
+ export type DER = Buffer;
9
+ export type Certificate = DER;
10
+ export type CertificatePEM = PEM; // certificate as a PEM string
11
+ export type PrivateKeyPEM = PEM;
12
+ export type PublicKeyPEM = PEM;
13
+
14
+ export type Signature = Buffer;
15
+ export type CertificateRevocationList = Buffer;