asn1-ts 7.1.1 → 8.0.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 (57) hide show
  1. package/dist/node/asn1.d.ts +7 -40
  2. package/dist/node/asn1.d.ts.map +1 -1
  3. package/dist/node/asn1.js +3 -115
  4. package/dist/node/asn1.js.map +1 -1
  5. package/dist/node/codecs/ber/decoders/decodeGeneralizedTime.d.ts.map +1 -1
  6. package/dist/node/codecs/ber/decoders/decodeGeneralizedTime.js +1 -8
  7. package/dist/node/codecs/ber/decoders/decodeGeneralizedTime.js.map +1 -1
  8. package/dist/node/codecs/ber/decoders/decodeUTCTime.d.ts.map +1 -1
  9. package/dist/node/codecs/ber/decoders/decodeUTCTime.js +2 -9
  10. package/dist/node/codecs/ber/decoders/decodeUTCTime.js.map +1 -1
  11. package/dist/node/codecs/ber.d.ts +6 -1
  12. package/dist/node/codecs/ber.d.ts.map +1 -1
  13. package/dist/node/codecs/ber.js +38 -9
  14. package/dist/node/codecs/ber.js.map +1 -1
  15. package/dist/node/codecs/cer.d.ts +6 -1
  16. package/dist/node/codecs/cer.d.ts.map +1 -1
  17. package/dist/node/codecs/cer.js +34 -8
  18. package/dist/node/codecs/cer.js.map +1 -1
  19. package/dist/node/codecs/der/decoders/decodeGeneralizedTime.d.ts.map +1 -1
  20. package/dist/node/codecs/der/decoders/decodeGeneralizedTime.js +1 -8
  21. package/dist/node/codecs/der/decoders/decodeGeneralizedTime.js.map +1 -1
  22. package/dist/node/codecs/der/decoders/decodeUTCTime.d.ts.map +1 -1
  23. package/dist/node/codecs/der/decoders/decodeUTCTime.js +2 -9
  24. package/dist/node/codecs/der/decoders/decodeUTCTime.js.map +1 -1
  25. package/dist/node/codecs/der.d.ts +6 -1
  26. package/dist/node/codecs/der.d.ts.map +1 -1
  27. package/dist/node/codecs/der.js +31 -7
  28. package/dist/node/codecs/der.js.map +1 -1
  29. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.d.ts.map +1 -1
  30. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.js +11 -11
  31. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.js.map +1 -1
  32. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.d.ts.map +1 -1
  33. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.js +13 -10
  34. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.js.map +1 -1
  35. package/dist/node/codecs/x690/encoders/encodeObjectIdentifier.d.ts.map +1 -1
  36. package/dist/node/codecs/x690/encoders/encodeObjectIdentifier.js +26 -13
  37. package/dist/node/codecs/x690/encoders/encodeObjectIdentifier.js.map +1 -1
  38. package/dist/node/codecs/x690/encoders/encodeRelativeObjectIdentifier.d.ts.map +1 -1
  39. package/dist/node/codecs/x690/encoders/encodeRelativeObjectIdentifier.js +22 -9
  40. package/dist/node/codecs/x690/encoders/encodeRelativeObjectIdentifier.js.map +1 -1
  41. package/dist/node/types/ObjectIdentifier.d.ts +1 -1
  42. package/dist/node/types/ObjectIdentifier.d.ts.map +1 -1
  43. package/dist/node/types/ObjectIdentifier.js +19 -19
  44. package/dist/node/types/ObjectIdentifier.js.map +1 -1
  45. package/dist/node/utils/decodeBase128.d.ts +2 -1
  46. package/dist/node/utils/decodeBase128.d.ts.map +1 -1
  47. package/dist/node/utils/decodeBase128.js +22 -3
  48. package/dist/node/utils/decodeBase128.js.map +1 -1
  49. package/dist/node/utils/index.d.ts +0 -3
  50. package/dist/node/utils/index.d.ts.map +1 -1
  51. package/dist/node/utils/index.js +1 -7
  52. package/dist/node/utils/index.js.map +1 -1
  53. package/dist/node/utils/splitBytesByContinuationBit.d.ts +2 -1
  54. package/dist/node/utils/splitBytesByContinuationBit.d.ts.map +1 -1
  55. package/dist/node/utils/splitBytesByContinuationBit.js +2 -1
  56. package/dist/node/utils/splitBytesByContinuationBit.js.map +1 -1
  57. package/package.json +1 -2
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  import { ASN1Construction, ASN1TagClass } from "./values";
2
3
  import type Byteable from "./interfaces/Byteable";
3
4
  import type Named from "./interfaces/Named";
@@ -14,10 +15,14 @@ export default abstract class ASN1Element implements Byteable, Elementable, Name
14
15
  private _tagNumber;
15
16
  get tagNumber(): number;
16
17
  set tagNumber(value: number);
17
- value: Uint8Array;
18
+ abstract get value(): Uint8Array;
19
+ abstract set value(v: Uint8Array);
20
+ abstract construct(els: ASN1Element[]): void;
21
+ abstract tagAndLengthBytes(): Uint8Array;
22
+ abstract toBuffers(): Uint8Array[];
23
+ toBytes(): Buffer;
18
24
  get length(): number;
19
25
  abstract fromBytes(bytes: Uint8Array): number;
20
- abstract toBytes(): Uint8Array;
21
26
  abstract set boolean(value: BOOLEAN);
22
27
  abstract get boolean(): BOOLEAN;
23
28
  abstract set integer(value: INTEGER);
@@ -112,44 +117,6 @@ export default abstract class ASN1Element implements Byteable, Elementable, Name
112
117
  rangeConstrainedReal(min: bigint, max?: bigint): REAL;
113
118
  abstract deconstruct(dataType: string): Uint8Array;
114
119
  validateTag(permittedClasses: ASN1TagClass[], permittedConstruction: ASN1Construction[], permittedNumbers: number[]): number;
115
- set bool(value: BOOLEAN);
116
- get bool(): BOOLEAN;
117
- set int(value: INTEGER);
118
- get int(): INTEGER;
119
- set bits(value: BIT_STRING);
120
- get bits(): BIT_STRING;
121
- set octs(value: OCTET_STRING);
122
- get octs(): OCTET_STRING;
123
- set oid(value: OBJECT_IDENTIFIER);
124
- get oid(): OBJECT_IDENTIFIER;
125
- set odesc(value: ObjectDescriptor);
126
- get odesc(): ObjectDescriptor;
127
- set enum(value: ENUMERATED);
128
- get enum(): ENUMERATED;
129
- set utf8(value: UTF8String);
130
- get utf8(): UTF8String;
131
- set roid(value: RELATIVE_OID);
132
- get roid(): RELATIVE_OID;
133
- set seq(value: SEQUENCE<ASN1Element>);
134
- get seq(): SEQUENCE<ASN1Element>;
135
- set nums(value: NumericString);
136
- get nums(): NumericString;
137
- set prints(value: PrintableString);
138
- get prints(): PrintableString;
139
- set ttex(value: TeletexString);
140
- get ttex(): TeletexString;
141
- set vtex(value: VideotexString);
142
- get vtex(): VideotexString;
143
- set ia5(value: IA5String);
144
- get ia5(): IA5String;
145
- set utc(value: UTCTime);
146
- get utc(): UTCTime;
147
- set gtime(value: GeneralizedTime);
148
- get gtime(): GeneralizedTime;
149
- set ustr(value: UniversalString);
150
- get ustr(): UniversalString;
151
- set bmp(value: BMPString);
152
- get bmp(): BMPString;
153
120
  abstract get inner(): ASN1Element;
154
121
  abstract get components(): ASN1Element[];
155
122
  toElement(): ASN1Element;
@@ -1 +1 @@
1
- {"version":3,"file":"asn1.d.ts","sourceRoot":"","sources":["../../source/asn1.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"asn1.d.ts","sourceRoot":"","sources":["../../source/asn1.ts"],"names":[],"mappings":"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"}
package/dist/node/asn1.js CHANGED
@@ -11,7 +11,6 @@ class ASN1Element {
11
11
  this.tagClass = values_1.ASN1TagClass.universal;
12
12
  this.construction = values_1.ASN1Construction.primitive;
13
13
  this._tagNumber = 0;
14
- this.value = new Uint8Array(0);
15
14
  }
16
15
  get tagNumber() {
17
16
  return this._tagNumber;
@@ -22,6 +21,9 @@ class ASN1Element {
22
21
  }
23
22
  this._tagNumber = value;
24
23
  }
24
+ toBytes() {
25
+ return Buffer.concat(this.toBuffers());
26
+ }
25
27
  get length() {
26
28
  return this.value.length;
27
29
  }
@@ -148,120 +150,6 @@ class ASN1Element {
148
150
  return -3;
149
151
  return 0;
150
152
  }
151
- set bool(value) {
152
- this.boolean = value;
153
- }
154
- get bool() {
155
- return this.boolean;
156
- }
157
- set int(value) {
158
- this.integer = value;
159
- }
160
- get int() {
161
- return this.integer;
162
- }
163
- set bits(value) {
164
- this.bitString = value;
165
- }
166
- get bits() {
167
- return this.bitString;
168
- }
169
- set octs(value) {
170
- this.octetString = value;
171
- }
172
- get octs() {
173
- return this.octetString;
174
- }
175
- set oid(value) {
176
- this.objectIdentifier = value;
177
- }
178
- get oid() {
179
- return this.objectIdentifier;
180
- }
181
- set odesc(value) {
182
- this.objectDescriptor = value;
183
- }
184
- get odesc() {
185
- return this.objectDescriptor;
186
- }
187
- set enum(value) {
188
- this.enumerated = value;
189
- }
190
- get enum() {
191
- return this.enumerated;
192
- }
193
- set utf8(value) {
194
- this.utf8String = value;
195
- }
196
- get utf8() {
197
- return this.utf8String;
198
- }
199
- set roid(value) {
200
- this.relativeObjectIdentifier = value;
201
- }
202
- get roid() {
203
- return this.relativeObjectIdentifier;
204
- }
205
- set seq(value) {
206
- this.sequence = value;
207
- }
208
- get seq() {
209
- return this.sequence;
210
- }
211
- set nums(value) {
212
- this.numericString = value;
213
- }
214
- get nums() {
215
- return this.numericString;
216
- }
217
- set prints(value) {
218
- this.printableString = value;
219
- }
220
- get prints() {
221
- return this.printableString;
222
- }
223
- set ttex(value) {
224
- this.teletexString = value;
225
- }
226
- get ttex() {
227
- return this.teletexString;
228
- }
229
- set vtex(value) {
230
- this.videotexString = value;
231
- }
232
- get vtex() {
233
- return this.videotexString;
234
- }
235
- set ia5(value) {
236
- this.ia5String = value;
237
- }
238
- get ia5() {
239
- return this.ia5String;
240
- }
241
- set utc(value) {
242
- this.utcTime = value;
243
- }
244
- get utc() {
245
- return this.utcTime;
246
- }
247
- set gtime(value) {
248
- this.generalizedTime = value;
249
- }
250
- get gtime() {
251
- return this.generalizedTime;
252
- }
253
- set ustr(value) {
254
- this.universalString = value;
255
- }
256
- get ustr() {
257
- return this.universalString;
258
- }
259
- set bmp(value) {
260
- this.bmpString = value;
261
- }
262
- get bmp() {
263
- return this.bmpString;
264
- }
265
153
  toElement() {
266
154
  return this;
267
155
  }
@@ -1 +1 @@
1
- {"version":3,"file":"asn1.js","sourceRoot":"","sources":["../../source/asn1.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"asn1.js","sourceRoot":"","sources":["../../source/asn1.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"decodeGeneralizedTime.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/ber/decoders/decodeGeneralizedTime.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,CAAC,OAAO,UACL,qBAAqB,CAAE,KAAK,EAAE,UAAU,GAAG,eAAe,CAqBlE"}
1
+ {"version":3,"file":"decodeGeneralizedTime.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/ber/decoders/decodeGeneralizedTime.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,CAAC,OAAO,UACL,qBAAqB,CAAE,KAAK,EAAE,UAAU,GAAG,eAAe,CAclE"}
@@ -11,7 +11,6 @@ function decodeGeneralizedTime(value) {
11
11
  if (match === null) {
12
12
  throw new errors.ASN1Error("Malformed GeneralizedTime string.");
13
13
  }
14
- const ret = new Date();
15
14
  const year = Number(match[1]);
16
15
  const month = (Number(match[2]) - 1);
17
16
  const date = Number(match[3]);
@@ -19,13 +18,7 @@ function decodeGeneralizedTime(value) {
19
18
  const minutes = Number(match[5]);
20
19
  const seconds = Number(match[6]);
21
20
  (0, validateDateTime_1.default)("GeneralizedTime", year, month, date, hours, minutes, seconds);
22
- ret.setUTCFullYear(year);
23
- ret.setUTCMonth(month);
24
- ret.setUTCDate(date);
25
- ret.setUTCHours(hours);
26
- ret.setUTCMinutes(minutes);
27
- ret.setUTCSeconds(seconds);
28
- return ret;
21
+ return new Date(Date.UTC(year, month, date, hours, minutes, seconds));
29
22
  }
30
23
  exports.default = decodeGeneralizedTime;
31
24
  //# sourceMappingURL=decodeGeneralizedTime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decodeGeneralizedTime.js","sourceRoot":"","sources":["../../../../../source/codecs/ber/decoders/decodeGeneralizedTime.ts"],"names":[],"mappings":";;;AAAA,gEAA0C;AAC1C,mGAAmE;AACnE,4CAAuD;AACvD,oGAAoE;AAGpE,SACS,qBAAqB,CAAE,KAAiB;IAC7C,MAAM,UAAU,GAAW,IAAA,4BAAkB,EAAC,KAAK,CAAC,CAAC;IACrD,MAAM,KAAK,GAA2B,6BAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5E,IAAI,KAAK,KAAK,IAAI,EAAE;QAChB,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;KACnE;IACD,MAAM,GAAG,GAAS,IAAI,IAAI,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,KAAK,GAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,KAAK,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,OAAO,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,OAAO,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,IAAA,0BAAgB,EAAC,iBAAiB,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAChF,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACzB,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACvB,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACrB,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACvB,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3B,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3B,OAAO,GAAG,CAAC;AACf,CAAC;AAtBD,wCAsBC"}
1
+ {"version":3,"file":"decodeGeneralizedTime.js","sourceRoot":"","sources":["../../../../../source/codecs/ber/decoders/decodeGeneralizedTime.ts"],"names":[],"mappings":";;;AAAA,gEAA0C;AAC1C,mGAAmE;AACnE,4CAAuD;AACvD,oGAAoE;AAGpE,SACS,qBAAqB,CAAE,KAAiB;IAC7C,MAAM,UAAU,GAAW,IAAA,4BAAkB,EAAC,KAAK,CAAC,CAAC;IACrD,MAAM,KAAK,GAA2B,6BAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5E,IAAI,KAAK,KAAK,IAAI,EAAE;QAChB,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;KACnE;IACD,MAAM,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,KAAK,GAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,KAAK,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,OAAO,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,OAAO,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,IAAA,0BAAgB,EAAC,iBAAiB,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAChF,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAC1E,CAAC;AAfD,wCAeC"}
@@ -1 +1 @@
1
- {"version":3,"file":"decodeUTCTime.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/ber/decoders/decodeUTCTime.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,MAAM,CAAC,OAAO,UACL,aAAa,CAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CA+BlD"}
1
+ {"version":3,"file":"decodeUTCTime.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/ber/decoders/decodeUTCTime.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,MAAM,CAAC,OAAO,UACL,aAAa,CAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAwBlD"}
@@ -7,11 +7,10 @@ const values_1 = require("../../../values");
7
7
  const validateDateTime_1 = tslib_1.__importDefault(require("../../../validators/validateDateTime"));
8
8
  function decodeUTCTime(value) {
9
9
  const dateString = (0, convertBytesToText_1.default)(value);
10
- const match = values_1.distinguishedUTCTimeRegex.exec(dateString);
10
+ const match = values_1.utcTimeRegex.exec(dateString);
11
11
  if (match === null) {
12
12
  throw new errors.ASN1Error("Malformed UTCTime string.");
13
13
  }
14
- const ret = new Date();
15
14
  let year = Number(match[1]);
16
15
  year = (year <= 49)
17
16
  ? (2000 + year)
@@ -22,13 +21,7 @@ function decodeUTCTime(value) {
22
21
  const minutes = Number(match[5]);
23
22
  const seconds = Number(match[6]);
24
23
  (0, validateDateTime_1.default)("UTCTime", year, month, date, hours, minutes, seconds);
25
- ret.setUTCFullYear(year);
26
- ret.setUTCMonth(month);
27
- ret.setUTCDate(date);
28
- ret.setUTCHours(hours);
29
- ret.setUTCMinutes(minutes);
30
- ret.setUTCSeconds(seconds);
31
- return ret;
24
+ return new Date(Date.UTC(year, month, date, hours, minutes, seconds));
32
25
  }
33
26
  exports.default = decodeUTCTime;
34
27
  //# sourceMappingURL=decodeUTCTime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decodeUTCTime.js","sourceRoot":"","sources":["../../../../../source/codecs/ber/decoders/decodeUTCTime.ts"],"names":[],"mappings":";;;AAAA,mGAAmE;AACnE,gEAA0C;AAC1C,4CAA4D;AAC5D,oGAAoE;AAGpE,SACS,aAAa,CAAE,KAAiB;IACrC,MAAM,UAAU,GAAW,IAAA,4BAAkB,EAAC,KAAK,CAAC,CAAC;IACrD,MAAM,KAAK,GAA2B,kCAAyB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjF,IAAI,KAAK,KAAK,IAAI,EAAE;QAChB,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;KAC3D;IACD,MAAM,GAAG,GAAS,IAAI,IAAI,EAAE,CAAC;IAC7B,IAAI,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAQpC,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACf,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;QACf,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACpB,MAAM,KAAK,GAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,KAAK,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,OAAO,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,OAAO,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,IAAA,0BAAgB,EAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACxE,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACzB,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACvB,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACrB,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACvB,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3B,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3B,OAAO,GAAG,CAAC;AACf,CAAC;AAhCD,gCAgCC"}
1
+ {"version":3,"file":"decodeUTCTime.js","sourceRoot":"","sources":["../../../../../source/codecs/ber/decoders/decodeUTCTime.ts"],"names":[],"mappings":";;;AAAA,mGAAmE;AACnE,gEAA0C;AAC1C,4CAA+C;AAC/C,oGAAoE;AAGpE,SACS,aAAa,CAAE,KAAiB;IACrC,MAAM,UAAU,GAAW,IAAA,4BAAkB,EAAC,KAAK,CAAC,CAAC;IACrD,MAAM,KAAK,GAA2B,qBAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpE,IAAI,KAAK,KAAK,IAAI,EAAE;QAChB,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;KAC3D;IACD,IAAI,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAQpC,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACf,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;QACf,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACpB,MAAM,KAAK,GAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,KAAK,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,OAAO,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,OAAO,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,IAAA,0BAAgB,EAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACxE,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAC1E,CAAC;AAzBD,gCAyBC"}
@@ -5,6 +5,10 @@ import CharacterString from "../types/CharacterString";
5
5
  import { BOOLEAN, BIT_STRING, OCTET_STRING, ObjectDescriptor, EXTERNAL, REAL, EMBEDDED_PDV, UTF8String, SEQUENCE, SET, GraphicString, NumericString, VisibleString, PrintableString, TeletexString, GeneralString, UniversalString, VideotexString, BMPString, IA5String, UTCTime, GeneralizedTime, DURATION } from "../macros";
6
6
  export default class BERElement extends X690Element {
7
7
  static lengthEncodingPreference: LengthEncodingPreference;
8
+ private _value;
9
+ get value(): Uint8Array;
10
+ set value(v: Uint8Array);
11
+ construct(els: ASN1Element[]): void;
8
12
  set boolean(value: BOOLEAN);
9
13
  get boolean(): BOOLEAN;
10
14
  set bitString(value: BIT_STRING);
@@ -65,7 +69,8 @@ export default class BERElement extends X690Element {
65
69
  set inner(value: BERElement);
66
70
  constructor(tagClass?: ASN1TagClass, construction?: ASN1Construction, tagNumber?: number, value?: any);
67
71
  fromBytes(bytes: Uint8Array): number;
68
- toBytes(): Uint8Array;
72
+ tagAndLengthBytes(): Uint8Array;
73
+ toBuffers(): Uint8Array[];
69
74
  deconstruct(dataType: string): Uint8Array;
70
75
  get components(): BERElement[];
71
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ber.d.ts","sourceRoot":"","sources":["../../../source/codecs/ber.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ber.d.ts","sourceRoot":"","sources":["../../../source/codecs/ber.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,18 @@ const decodeDuration_1 = tslib_1.__importDefault(require("../codecs/ber/decoders
43
43
  const macros_1 = require("../macros");
44
44
  const utils_1 = require("../utils");
45
45
  class BERElement extends x690_1.default {
46
+ get value() {
47
+ if (this._value instanceof Uint8Array) {
48
+ return this._value;
49
+ }
50
+ return (0, encodeSequence_1.default)(this._value);
51
+ }
52
+ set value(v) {
53
+ this._value = v;
54
+ }
55
+ construct(els) {
56
+ this._value = els;
57
+ }
46
58
  set boolean(value) {
47
59
  this.value = (0, encodeBoolean_1.default)(value);
48
60
  }
@@ -126,13 +138,16 @@ class BERElement extends x690_1.default {
126
138
  return (0, convertBytesToText_1.default)(this.deconstruct("UTF8String"));
127
139
  }
128
140
  set sequence(value) {
129
- this.value = (0, encodeSequence_1.default)(value);
141
+ this.construct(value);
130
142
  this.construction = values_1.ASN1Construction.constructed;
131
143
  }
132
144
  get sequence() {
133
145
  if (this.construction !== values_1.ASN1Construction.constructed) {
134
146
  throw new errors.ASN1ConstructionError("SET or SEQUENCE cannot be primitively constructed.", this);
135
147
  }
148
+ if (Array.isArray(this._value)) {
149
+ return this._value;
150
+ }
136
151
  return (0, decodeSequence_1.default)(this.value);
137
152
  }
138
153
  set set(value) {
@@ -146,13 +161,16 @@ class BERElement extends x690_1.default {
146
161
  return ret;
147
162
  }
148
163
  set sequenceOf(value) {
149
- this.value = (0, encodeSequence_1.default)(value);
164
+ this.construct(value);
150
165
  this.construction = values_1.ASN1Construction.constructed;
151
166
  }
152
167
  get sequenceOf() {
153
168
  if (this.construction !== values_1.ASN1Construction.constructed) {
154
169
  throw new errors.ASN1ConstructionError("SET or SEQUENCE cannot be primitively constructed.", this);
155
170
  }
171
+ if (Array.isArray(this._value)) {
172
+ return this._value;
173
+ }
156
174
  return (0, decodeSequence_1.default)(this.value);
157
175
  }
158
176
  set setOf(value) {
@@ -413,6 +431,7 @@ class BERElement extends x690_1.default {
413
431
  }
414
432
  constructor(tagClass = values_1.ASN1TagClass.universal, construction = values_1.ASN1Construction.primitive, tagNumber = values_1.ASN1UniversalType.endOfContent, value = undefined) {
415
433
  super();
434
+ this._value = new Uint8Array(0);
416
435
  this.encode(value);
417
436
  this.tagClass = tagClass;
418
437
  this.construction = construction;
@@ -531,10 +550,13 @@ class BERElement extends x690_1.default {
531
550
  return (cursor + length);
532
551
  }
533
552
  }
534
- toBytes() {
553
+ tagAndLengthBytes() {
535
554
  const tagBytes = [0x00];
536
555
  tagBytes[0] |= (this.tagClass << 6);
537
- tagBytes[0] |= (this.construction << 5);
556
+ tagBytes[0] |= ((BERElement.lengthEncodingPreference === values_1.LengthEncodingPreference.indefinite)
557
+ || this.construction === values_1.ASN1Construction.constructed)
558
+ ? (1 << 5)
559
+ : 0;
538
560
  if (this.tagNumber < 31) {
539
561
  tagBytes[0] |= this.tagNumber;
540
562
  }
@@ -579,15 +601,22 @@ class BERElement extends x690_1.default {
579
601
  default:
580
602
  throw new errors.ASN1UndefinedError("Invalid LengthEncodingPreference encountered!", this);
581
603
  }
582
- const ret = new Uint8Array(tagBytes.length
583
- + lengthOctets.length
584
- + this.value.length
585
- + (BERElement.lengthEncodingPreference === values_1.LengthEncodingPreference.indefinite ? 2 : 0));
604
+ const ret = new Uint8Array(tagBytes.length + lengthOctets.length);
586
605
  ret.set(tagBytes, 0);
587
606
  ret.set(lengthOctets, tagBytes.length);
588
- ret.set(this.value, (tagBytes.length + lengthOctets.length));
589
607
  return ret;
590
608
  }
609
+ toBuffers() {
610
+ return [
611
+ this.tagAndLengthBytes(),
612
+ ...(Array.isArray(this._value)
613
+ ? this._value.flatMap((el) => el.toBuffers())
614
+ : [this._value]),
615
+ ...(BERElement.lengthEncodingPreference === values_1.LengthEncodingPreference.indefinite
616
+ ? [new Uint8Array(2)]
617
+ : []),
618
+ ];
619
+ }
591
620
  deconstruct(dataType) {
592
621
  if (this.construction === values_1.ASN1Construction.primitive) {
593
622
  return new Uint8Array(this.value);