node-opcua-pki 2.15.2 → 2.16.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.
Files changed (46) hide show
  1. package/.ignore +6 -6
  2. package/.prettierrc +3 -3
  3. package/LICENSE +21 -21
  4. package/bin/crypto_create_CA.js +4 -2
  5. package/bin/crypto_create_CA_config.example.js +18 -18
  6. package/bin/install_prerequisite.js +9 -9
  7. package/dist/crypto_create_CA.d.ts +2 -2
  8. package/dist/crypto_create_CA.js +849 -849
  9. package/dist/index.d.ts +6 -6
  10. package/dist/index.js +43 -39
  11. package/dist/index.js.map +1 -1
  12. package/dist/misc/applicationurn.d.ts +1 -1
  13. package/dist/misc/applicationurn.js +45 -45
  14. package/dist/misc/hostname.d.ts +8 -8
  15. package/dist/misc/hostname.js +102 -102
  16. package/dist/misc/install_prerequisite.d.ts +9 -9
  17. package/dist/misc/install_prerequisite.js +359 -359
  18. package/dist/misc/install_prerequisite.js.map +1 -1
  19. package/dist/misc/subject.d.ts +21 -21
  20. package/dist/misc/subject.js +90 -90
  21. package/dist/pki/certificate_authority.d.ts +61 -61
  22. package/dist/pki/certificate_authority.js +480 -480
  23. package/dist/pki/certificate_manager.d.ts +144 -144
  24. package/dist/pki/certificate_manager.js +890 -890
  25. package/dist/pki/common.d.ts +5 -5
  26. package/dist/pki/common.js +2 -2
  27. package/dist/pki/templates/ca_config_template.cnf.d.ts +2 -2
  28. package/dist/pki/templates/ca_config_template.cnf.js +129 -129
  29. package/dist/pki/templates/simple_config_template.cnf.d.ts +2 -2
  30. package/dist/pki/templates/simple_config_template.cnf.js +75 -75
  31. package/dist/pki/toolbox.d.ts +159 -159
  32. package/dist/pki/toolbox.js +669 -669
  33. package/dist/pki/toolbox_pfx.js +18 -18
  34. package/lib/crypto_create_CA.ts +1155 -1155
  35. package/lib/index.ts +27 -27
  36. package/lib/misc/applicationurn.ts +44 -44
  37. package/lib/misc/hostname.ts +89 -89
  38. package/lib/misc/install_prerequisite.ts +450 -450
  39. package/lib/misc/subject.ts +110 -110
  40. package/lib/pki/common.ts +5 -5
  41. package/lib/pki/templates/ca_config_template.cnf.ts +129 -129
  42. package/lib/pki/templates/simple_config_template.cnf.ts +75 -75
  43. package/lib/pki/toolbox_pfx.ts +19 -19
  44. package/package.json +89 -89
  45. package/readme.md +143 -143
  46. package/tsconfig.json +20 -20
@@ -1,144 +1,144 @@
1
- /// <reference types="node" />
2
- import { Certificate, CertificateRevocationList, DER } from "node-opcua-crypto";
3
- import { SubjectOptions } from "../misc/subject";
4
- import { CertificateStatus, ErrorCallback, Filename, KeySize } from "./common";
5
- import { CreateSelfSignCertificateParam } from "./toolbox";
6
- export interface CertificateManagerOptions {
7
- keySize?: KeySize;
8
- location: string;
9
- }
10
- export interface Callback11<C> {
11
- (err: null, t: C): void;
12
- (err: Error): void;
13
- }
14
- export interface Callback22 {
15
- (err?: Error | null): void;
16
- (err?: Error): void;
17
- }
18
- export interface CreateSelfSignCertificateParam1 extends CreateSelfSignCertificateParam {
19
- outputFile?: Filename;
20
- subject: SubjectOptions | string;
21
- applicationUri: string;
22
- dns: any[];
23
- startDate: Date;
24
- validity: number;
25
- }
26
- export declare enum VerificationStatus {
27
- /** The certificate provided as a parameter is not valid. */
28
- BadCertificateInvalid = "BadCertificateInvalid",
29
- /** An error occurred verifying security. */
30
- BadSecurityChecksFailed = "BadSecurityChecksFailed",
31
- /** The certificate does not meet the requirements of the security policy. */
32
- BadCertificatePolicyCheckFailed = "BadCertificatePolicyCheckFailed",
33
- /** The certificate has expired or is not yet valid. */
34
- BadCertificateTimeInvalid = "BadCertificateTimeInvalid",
35
- /** An issuer certificate has expired or is not yet valid. */
36
- BadCertificateIssuerTimeInvalid = "BadCertificateIssuerTimeInvalid",
37
- /** The HostName used to connect to a server does not match a HostName in the certificate. */
38
- BadCertificateHostNameInvalid = "BadCertificateHostNameInvalid",
39
- /** The URI specified in the ApplicationDescription does not match the URI in the certificate. */
40
- BadCertificateUriInvalid = "BadCertificateUriInvalid",
41
- /** The certificate may not be used for the requested operation. */
42
- BadCertificateUseNotAllowed = "BadCertificateUseNotAllowed",
43
- /** The issuer certificate may not be used for the requested operation. */
44
- BadCertificateIssuerUseNotAllowed = "BadCertificateIssuerUseNotAllowed",
45
- /** The certificate is not trusted. */
46
- BadCertificateUntrusted = "BadCertificateUntrusted",
47
- /** It was not possible to determine if the certificate has been revoked. */
48
- BadCertificateRevocationUnknown = "BadCertificateRevocationUnknown",
49
- /** It was not possible to determine if the issuer certificate has been revoked. */
50
- BadCertificateIssuerRevocationUnknown = "BadCertificateIssuerRevocationUnknown",
51
- /** The certificate has been revoked. */
52
- BadCertificateRevoked = "BadCertificateRevoked",
53
- /** The issuer certificate has been revoked. */
54
- BadCertificateIssuerRevoked = "BadCertificateIssuerRevoked",
55
- /** The certificate chain is incomplete. */
56
- BadCertificateChainIncomplete = "BadCertificateChainIncomplete",
57
- /** Validation OK. */
58
- Good = "Good"
59
- }
60
- export declare enum CertificateManagerState {
61
- Uninitialized = 0,
62
- Initializing = 1,
63
- Initialized = 2,
64
- Disposing = 3,
65
- Disposed = 4
66
- }
67
- export declare class CertificateManager {
68
- untrustUnknownCertificate: boolean;
69
- state: CertificateManagerState;
70
- folderPoolingInterval: number;
71
- private readonly keySize;
72
- private readonly location;
73
- private readonly _watchers;
74
- private _readCertificatesCalled;
75
- private readonly _filenameToHash;
76
- private readonly _thumbs;
77
- constructor(options: CertificateManagerOptions);
78
- get configFile(): string;
79
- get rootDir(): string;
80
- get privateKey(): string;
81
- get randomFile(): string;
82
- /**
83
- * returns the certificate status trusted/rejected
84
- * @param certificate
85
- */
86
- getCertificateStatus(certificate: Buffer): Promise<CertificateStatus>;
87
- getCertificateStatus(certificate: Buffer, callback: (err: Error | null, status?: CertificateStatus) => void): void;
88
- rejectCertificate(certificate: Certificate): Promise<void>;
89
- rejectCertificate(certificate: Certificate, callback: ErrorCallback): void;
90
- trustCertificate(certificate: Certificate): Promise<void>;
91
- trustCertificate(certificate: Certificate, callback: ErrorCallback): void;
92
- get rejectedFolder(): string;
93
- get trustedFolder(): string;
94
- get crlFolder(): string;
95
- get issuersCertFolder(): string;
96
- get issuersCrlFolder(): string;
97
- isCertificateTrusted(certificate: Certificate, callback: (err: Error | null, trustedStatus: string) => void): void;
98
- isCertificateTrusted(certificate: Certificate): Promise<string>;
99
- _innerVerifyCertificateAsync(certificate: Certificate, isIssuer: boolean, level: number): Promise<VerificationStatus>;
100
- verifyCertificateAsync(certificate: Certificate): Promise<VerificationStatus>;
101
- /**
102
- * Verify certificate validity
103
- * @method verifyCertificate
104
- * @param certificate
105
- */
106
- verifyCertificate(certificate: Certificate): Promise<VerificationStatus>;
107
- verifyCertificate(certificate: Certificate, callback: (err: Error | null, status?: VerificationStatus) => void): void;
108
- initialize(): Promise<void>;
109
- initialize(callback: (err?: Error) => void): void;
110
- private _initialize;
111
- dispose(): Promise<void>;
112
- private withLock;
113
- private withLock2;
114
- /**
115
- *
116
- * create a self-signed certificate for the CertificateManager private key
117
- *
118
- */
119
- createSelfSignedCertificate(params: CreateSelfSignCertificateParam1): Promise<void>;
120
- createSelfSignedCertificate(params: CreateSelfSignCertificateParam1, callback: ErrorCallback): void;
121
- createCertificateRequest(params: CreateSelfSignCertificateParam): Promise<Filename>;
122
- createCertificateRequest(params: CreateSelfSignCertificateParam, callback: (err: Error | null, certificateSigningRequestFilename?: string) => void): void;
123
- addIssuer(certificate: DER, validate?: boolean, addInTrustList?: boolean): Promise<VerificationStatus>;
124
- addRevocationList(crl: CertificateRevocationList): Promise<VerificationStatus>;
125
- findIssuerCertificate(certificate: Certificate): Promise<Certificate | null>;
126
- /**
127
- * @internal
128
- * @param certificate
129
- * @param callback
130
- * @private
131
- */
132
- _checkRejectedOrTrusted(certificate: Buffer): Promise<CertificateStatus>;
133
- _checkRejectedOrTrusted(certificate: Buffer, callback: (err: Error | null, status?: CertificateStatus) => void): void;
134
- private _moveCertificate;
135
- private _findAssociatedCRLs;
136
- isCertificateRevoked(certificate: Certificate, issuerCertificate?: Certificate | null): Promise<VerificationStatus>;
137
- private _pending_crl_to_process;
138
- private _on_crl_process?;
139
- private queue;
140
- private _on_crl_file_added;
141
- private _process_next_crl;
142
- private _readCertificates;
143
- private waitAndCheckCRLProcessingStatus;
144
- }
1
+ /// <reference types="node" />
2
+ import { Certificate, CertificateRevocationList, DER } from "node-opcua-crypto";
3
+ import { SubjectOptions } from "../misc/subject";
4
+ import { CertificateStatus, ErrorCallback, Filename, KeySize } from "./common";
5
+ import { CreateSelfSignCertificateParam } from "./toolbox";
6
+ export interface CertificateManagerOptions {
7
+ keySize?: KeySize;
8
+ location: string;
9
+ }
10
+ export interface Callback11<C> {
11
+ (err: null, t: C): void;
12
+ (err: Error): void;
13
+ }
14
+ export interface Callback22 {
15
+ (err?: Error | null): void;
16
+ (err?: Error): void;
17
+ }
18
+ export interface CreateSelfSignCertificateParam1 extends CreateSelfSignCertificateParam {
19
+ outputFile?: Filename;
20
+ subject: SubjectOptions | string;
21
+ applicationUri: string;
22
+ dns: any[];
23
+ startDate: Date;
24
+ validity: number;
25
+ }
26
+ export declare enum VerificationStatus {
27
+ /** The certificate provided as a parameter is not valid. */
28
+ BadCertificateInvalid = "BadCertificateInvalid",
29
+ /** An error occurred verifying security. */
30
+ BadSecurityChecksFailed = "BadSecurityChecksFailed",
31
+ /** The certificate does not meet the requirements of the security policy. */
32
+ BadCertificatePolicyCheckFailed = "BadCertificatePolicyCheckFailed",
33
+ /** The certificate has expired or is not yet valid. */
34
+ BadCertificateTimeInvalid = "BadCertificateTimeInvalid",
35
+ /** An issuer certificate has expired or is not yet valid. */
36
+ BadCertificateIssuerTimeInvalid = "BadCertificateIssuerTimeInvalid",
37
+ /** The HostName used to connect to a server does not match a HostName in the certificate. */
38
+ BadCertificateHostNameInvalid = "BadCertificateHostNameInvalid",
39
+ /** The URI specified in the ApplicationDescription does not match the URI in the certificate. */
40
+ BadCertificateUriInvalid = "BadCertificateUriInvalid",
41
+ /** The certificate may not be used for the requested operation. */
42
+ BadCertificateUseNotAllowed = "BadCertificateUseNotAllowed",
43
+ /** The issuer certificate may not be used for the requested operation. */
44
+ BadCertificateIssuerUseNotAllowed = "BadCertificateIssuerUseNotAllowed",
45
+ /** The certificate is not trusted. */
46
+ BadCertificateUntrusted = "BadCertificateUntrusted",
47
+ /** It was not possible to determine if the certificate has been revoked. */
48
+ BadCertificateRevocationUnknown = "BadCertificateRevocationUnknown",
49
+ /** It was not possible to determine if the issuer certificate has been revoked. */
50
+ BadCertificateIssuerRevocationUnknown = "BadCertificateIssuerRevocationUnknown",
51
+ /** The certificate has been revoked. */
52
+ BadCertificateRevoked = "BadCertificateRevoked",
53
+ /** The issuer certificate has been revoked. */
54
+ BadCertificateIssuerRevoked = "BadCertificateIssuerRevoked",
55
+ /** The certificate chain is incomplete. */
56
+ BadCertificateChainIncomplete = "BadCertificateChainIncomplete",
57
+ /** Validation OK. */
58
+ Good = "Good"
59
+ }
60
+ export declare enum CertificateManagerState {
61
+ Uninitialized = 0,
62
+ Initializing = 1,
63
+ Initialized = 2,
64
+ Disposing = 3,
65
+ Disposed = 4
66
+ }
67
+ export declare class CertificateManager {
68
+ untrustUnknownCertificate: boolean;
69
+ state: CertificateManagerState;
70
+ folderPoolingInterval: number;
71
+ private readonly keySize;
72
+ private readonly location;
73
+ private readonly _watchers;
74
+ private _readCertificatesCalled;
75
+ private readonly _filenameToHash;
76
+ private readonly _thumbs;
77
+ constructor(options: CertificateManagerOptions);
78
+ get configFile(): string;
79
+ get rootDir(): string;
80
+ get privateKey(): string;
81
+ get randomFile(): string;
82
+ /**
83
+ * returns the certificate status trusted/rejected
84
+ * @param certificate
85
+ */
86
+ getCertificateStatus(certificate: Buffer): Promise<CertificateStatus>;
87
+ getCertificateStatus(certificate: Buffer, callback: (err: Error | null, status?: CertificateStatus) => void): void;
88
+ rejectCertificate(certificate: Certificate): Promise<void>;
89
+ rejectCertificate(certificate: Certificate, callback: ErrorCallback): void;
90
+ trustCertificate(certificate: Certificate): Promise<void>;
91
+ trustCertificate(certificate: Certificate, callback: ErrorCallback): void;
92
+ get rejectedFolder(): string;
93
+ get trustedFolder(): string;
94
+ get crlFolder(): string;
95
+ get issuersCertFolder(): string;
96
+ get issuersCrlFolder(): string;
97
+ isCertificateTrusted(certificate: Certificate, callback: (err: Error | null, trustedStatus: string) => void): void;
98
+ isCertificateTrusted(certificate: Certificate): Promise<string>;
99
+ _innerVerifyCertificateAsync(certificate: Certificate, isIssuer: boolean, level: number): Promise<VerificationStatus>;
100
+ verifyCertificateAsync(certificate: Certificate): Promise<VerificationStatus>;
101
+ /**
102
+ * Verify certificate validity
103
+ * @method verifyCertificate
104
+ * @param certificate
105
+ */
106
+ verifyCertificate(certificate: Certificate): Promise<VerificationStatus>;
107
+ verifyCertificate(certificate: Certificate, callback: (err: Error | null, status?: VerificationStatus) => void): void;
108
+ initialize(): Promise<void>;
109
+ initialize(callback: (err?: Error) => void): void;
110
+ private _initialize;
111
+ dispose(): Promise<void>;
112
+ private withLock;
113
+ private withLock2;
114
+ /**
115
+ *
116
+ * create a self-signed certificate for the CertificateManager private key
117
+ *
118
+ */
119
+ createSelfSignedCertificate(params: CreateSelfSignCertificateParam1): Promise<void>;
120
+ createSelfSignedCertificate(params: CreateSelfSignCertificateParam1, callback: ErrorCallback): void;
121
+ createCertificateRequest(params: CreateSelfSignCertificateParam): Promise<Filename>;
122
+ createCertificateRequest(params: CreateSelfSignCertificateParam, callback: (err: Error | null, certificateSigningRequestFilename?: string) => void): void;
123
+ addIssuer(certificate: DER, validate?: boolean, addInTrustList?: boolean): Promise<VerificationStatus>;
124
+ addRevocationList(crl: CertificateRevocationList): Promise<VerificationStatus>;
125
+ findIssuerCertificate(certificate: Certificate): Promise<Certificate | null>;
126
+ /**
127
+ * @internal
128
+ * @param certificate
129
+ * @param callback
130
+ * @private
131
+ */
132
+ _checkRejectedOrTrusted(certificate: Buffer): Promise<CertificateStatus>;
133
+ _checkRejectedOrTrusted(certificate: Buffer, callback: (err: Error | null, status?: CertificateStatus) => void): void;
134
+ private _moveCertificate;
135
+ private _findAssociatedCRLs;
136
+ isCertificateRevoked(certificate: Certificate, issuerCertificate?: Certificate | null): Promise<VerificationStatus>;
137
+ private _pending_crl_to_process;
138
+ private _on_crl_process?;
139
+ private queue;
140
+ private _on_crl_file_added;
141
+ private _process_next_crl;
142
+ private _readCertificates;
143
+ private waitAndCheckCRLProcessingStatus;
144
+ }