@digitaldefiance/ecies-lib 4.4.14 → 4.4.15
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.
- package/package.json +2 -3
- package/src/builders/ecies-builder.js +9 -5
- package/src/builders/ecies-builder.js.map +1 -1
- package/src/builders/index.js +5 -2
- package/src/builders/index.js.map +1 -1
- package/src/builders/member-builder.js +25 -21
- package/src/builders/member-builder.js.map +1 -1
- package/src/constants.js +79 -68
- package/src/constants.js.map +1 -1
- package/src/core/errors/crypto-error.js +14 -10
- package/src/core/errors/crypto-error.js.map +1 -1
- package/src/core/index.js +5 -2
- package/src/core/index.js.map +1 -1
- package/src/core/types/result.js +5 -1
- package/src/core/types/result.js.map +1 -1
- package/src/email-string.js +13 -8
- package/src/email-string.js.map +1 -1
- package/src/enumerations/disposed-error-type.js +5 -2
- package/src/enumerations/disposed-error-type.js.map +1 -1
- package/src/enumerations/ecies-cipher-suite.js +5 -2
- package/src/enumerations/ecies-cipher-suite.js.map +1 -1
- package/src/enumerations/ecies-encryption-type.js +9 -6
- package/src/enumerations/ecies-encryption-type.js.map +1 -1
- package/src/enumerations/ecies-error-type.js +5 -2
- package/src/enumerations/ecies-error-type.js.map +1 -1
- package/src/enumerations/ecies-string-key.js +5 -2
- package/src/enumerations/ecies-string-key.js.map +1 -1
- package/src/enumerations/ecies-version.js +5 -2
- package/src/enumerations/ecies-version.js.map +1 -1
- package/src/enumerations/guid-brand-type.js +5 -2
- package/src/enumerations/guid-brand-type.js.map +1 -1
- package/src/enumerations/guid-error-type.js +5 -2
- package/src/enumerations/guid-error-type.js.map +1 -1
- package/src/enumerations/id-provider-error-type.js +5 -2
- package/src/enumerations/id-provider-error-type.js.map +1 -1
- package/src/enumerations/index.js +20 -17
- package/src/enumerations/index.js.map +1 -1
- package/src/enumerations/invalid-email-type.js +5 -2
- package/src/enumerations/invalid-email-type.js.map +1 -1
- package/src/enumerations/length-encoding-type.js +5 -2
- package/src/enumerations/length-encoding-type.js.map +1 -1
- package/src/enumerations/length-error-type.js +5 -2
- package/src/enumerations/length-error-type.js.map +1 -1
- package/src/enumerations/member-error-type.js +6 -3
- package/src/enumerations/member-error-type.js.map +1 -1
- package/src/enumerations/member-type.js +6 -3
- package/src/enumerations/member-type.js.map +1 -1
- package/src/enumerations/password-login-error-type.js +5 -2
- package/src/enumerations/password-login-error-type.js.map +1 -1
- package/src/enumerations/pbkdf2-error-type.js +5 -2
- package/src/enumerations/pbkdf2-error-type.js.map +1 -1
- package/src/enumerations/pbkdf2-profile.js +5 -2
- package/src/enumerations/pbkdf2-profile.js.map +1 -1
- package/src/enumerations/secure-storage-error-type.js +5 -2
- package/src/enumerations/secure-storage-error-type.js.map +1 -1
- package/src/errors/disposed.js +9 -5
- package/src/errors/disposed.js.map +1 -1
- package/src/errors/ecies.js +9 -5
- package/src/errors/ecies.js.map +1 -1
- package/src/errors/guid.js +13 -9
- package/src/errors/guid.js.map +1 -1
- package/src/errors/id-provider.js +10 -6
- package/src/errors/id-provider.js.map +1 -1
- package/src/errors/index.js +12 -9
- package/src/errors/index.js.map +1 -1
- package/src/errors/invalid-email.js +9 -5
- package/src/errors/invalid-email.js.map +1 -1
- package/src/errors/length.js +9 -5
- package/src/errors/length.js.map +1 -1
- package/src/errors/member.js +9 -5
- package/src/errors/member.js.map +1 -1
- package/src/errors/pbkdf2.js +9 -5
- package/src/errors/pbkdf2.js.map +1 -1
- package/src/errors/secure-storage.js +10 -6
- package/src/errors/secure-storage.js.map +1 -1
- package/src/errors/simple-ecies.js +10 -6
- package/src/errors/simple-ecies.js.map +1 -1
- package/src/errors/simple-test-error.js +5 -1
- package/src/errors/simple-test-error.js.map +1 -1
- package/src/i18n-setup.js +37 -29
- package/src/i18n-setup.js.map +1 -1
- package/src/index.d.ts +3 -3
- package/src/index.d.ts.map +1 -1
- package/src/index.js +123 -60
- package/src/index.js.map +1 -1
- package/src/interfaces/checksum-config.js +2 -1
- package/src/interfaces/checksum-consts.js +2 -1
- package/src/interfaces/configuration-provenance.js +6 -1
- package/src/interfaces/configuration-provenance.js.map +1 -1
- package/src/interfaces/constants.js +2 -1
- package/src/interfaces/ecies-config.js +2 -1
- package/src/interfaces/ecies-consts.js +2 -1
- package/src/interfaces/ecies-file-service.js +2 -1
- package/src/interfaces/encrypted-chunk.js +4 -1
- package/src/interfaces/encrypted-chunk.js.map +1 -1
- package/src/interfaces/encryption-state.js +4 -1
- package/src/interfaces/encryption-state.js.map +1 -1
- package/src/interfaces/frontend-member-operational.js +2 -1
- package/src/interfaces/guid.js +2 -1
- package/src/interfaces/id-provider.js +5 -1
- package/src/interfaces/id-provider.js.map +1 -1
- package/src/interfaces/index.js +15 -12
- package/src/interfaces/index.js.map +1 -1
- package/src/interfaces/invariant.js +5 -1
- package/src/interfaces/invariant.js.map +1 -1
- package/src/interfaces/library-error.js +2 -1
- package/src/interfaces/member-storage.js +2 -1
- package/src/interfaces/member-with-mnemonic.js +2 -1
- package/src/interfaces/member.js +2 -1
- package/src/interfaces/multi-recipient-chunk.js +6 -1
- package/src/interfaces/multi-recipient-chunk.js.map +1 -1
- package/src/interfaces/pbkdf2-config.js +2 -1
- package/src/interfaces/pbkdf2-consts.js +2 -1
- package/src/interfaces/pbkdf2-result.js +2 -1
- package/src/interfaces/stream-config.js +4 -1
- package/src/interfaces/stream-config.js.map +1 -1
- package/src/interfaces/stream-header.js +4 -1
- package/src/interfaces/stream-header.js.map +1 -1
- package/src/interfaces/stream-progress.js +2 -1
- package/src/lib/configuration-provenance-utils.js +9 -5
- package/src/lib/configuration-provenance-utils.js.map +1 -1
- package/src/lib/crypto-container.js +13 -9
- package/src/lib/crypto-container.js.map +1 -1
- package/src/lib/guid.js +81 -76
- package/src/lib/guid.js.map +1 -1
- package/src/lib/id-providers/custom-provider.js +14 -10
- package/src/lib/id-providers/custom-provider.js.map +1 -1
- package/src/lib/id-providers/guidv4-provider.js +20 -16
- package/src/lib/id-providers/guidv4-provider.js.map +1 -1
- package/src/lib/id-providers/index.js +13 -5
- package/src/lib/id-providers/index.js.map +1 -1
- package/src/lib/id-providers/objectid-provider.js +15 -11
- package/src/lib/id-providers/objectid-provider.js.map +1 -1
- package/src/lib/id-providers/uuid-provider.js +16 -12
- package/src/lib/id-providers/uuid-provider.js.map +1 -1
- package/src/lib/index.js +5 -2
- package/src/lib/index.js.map +1 -1
- package/src/lib/invariant-validator.js +18 -14
- package/src/lib/invariant-validator.js.map +1 -1
- package/src/lib/invariants/encryption-algorithm-consistency.js +6 -2
- package/src/lib/invariants/encryption-algorithm-consistency.js.map +1 -1
- package/src/lib/invariants/index.js +6 -3
- package/src/lib/invariants/index.js.map +1 -1
- package/src/lib/invariants/pbkdf2-profiles-validity.js +13 -9
- package/src/lib/invariants/pbkdf2-profiles-validity.js.map +1 -1
- package/src/lib/invariants/recipient-id-consistency.js +6 -2
- package/src/lib/invariants/recipient-id-consistency.js.map +1 -1
- package/src/lib/multi-recipient-chunk-utils.js +6 -2
- package/src/lib/multi-recipient-chunk-utils.js.map +1 -1
- package/src/member.js +48 -43
- package/src/member.js.map +1 -1
- package/src/pbkdf2-profiles.js +2 -1
- package/src/phone-number.js +11 -7
- package/src/phone-number.js.map +1 -1
- package/src/regexes.js +6 -3
- package/src/regexes.js.map +1 -1
- package/src/secure-buffer.js +21 -17
- package/src/secure-buffer.js.map +1 -1
- package/src/secure-string.js +23 -19
- package/src/secure-string.js.map +1 -1
- package/src/services/aes-gcm.js +25 -21
- package/src/services/aes-gcm.js.map +1 -1
- package/src/services/chunk-processor.js +36 -32
- package/src/services/chunk-processor.js.map +1 -1
- package/src/services/ecies/crypto-core.js +44 -40
- package/src/services/ecies/crypto-core.js.map +1 -1
- package/src/services/ecies/example.js +44 -37
- package/src/services/ecies/example.js.map +1 -1
- package/src/services/ecies/file.js +5 -1
- package/src/services/ecies/file.js.map +1 -1
- package/src/services/ecies/index.js +15 -10
- package/src/services/ecies/index.js.map +1 -1
- package/src/services/ecies/integration.js +28 -23
- package/src/services/ecies/integration.js.map +1 -1
- package/src/services/ecies/interfaces.js +2 -1
- package/src/services/ecies/interfaces.js.map +1 -1
- package/src/services/ecies/manual-test.js +34 -26
- package/src/services/ecies/manual-test.js.map +1 -1
- package/src/services/ecies/multi-recipient.js +68 -64
- package/src/services/ecies/multi-recipient.js.map +1 -1
- package/src/services/ecies/service.js +31 -27
- package/src/services/ecies/service.js.map +1 -1
- package/src/services/ecies/signature.js +13 -9
- package/src/services/ecies/signature.js.map +1 -1
- package/src/services/ecies/single-recipient.js +53 -49
- package/src/services/ecies/single-recipient.js.map +1 -1
- package/src/services/encryption-stream.js +46 -42
- package/src/services/encryption-stream.js.map +1 -1
- package/src/services/index.js +13 -10
- package/src/services/index.js.map +1 -1
- package/src/services/multi-recipient-processor.js +44 -40
- package/src/services/multi-recipient-processor.js.map +1 -1
- package/src/services/password-login.js +37 -33
- package/src/services/password-login.js.map +1 -1
- package/src/services/pbkdf2.js +12 -8
- package/src/services/pbkdf2.js.map +1 -1
- package/src/services/progress-tracker.js +9 -5
- package/src/services/progress-tracker.js.map +1 -1
- package/src/services/resumable-encryption.js +28 -24
- package/src/services/resumable-encryption.js.map +1 -1
- package/src/services/xor.js +5 -1
- package/src/services/xor.js.map +1 -1
- package/src/test-mocks/index.js +4 -1
- package/src/test-mocks/index.js.map +1 -1
- package/src/test-mocks/mock-frontend-member.js +24 -20
- package/src/test-mocks/mock-frontend-member.js.map +1 -1
- package/src/testing.js +4 -1
- package/src/testing.js.map +1 -1
- package/src/translations/de.js +195 -192
- package/src/translations/de.js.map +1 -1
- package/src/translations/en-US.js +195 -192
- package/src/translations/en-US.js.map +1 -1
- package/src/translations/es.js +195 -192
- package/src/translations/es.js.map +1 -1
- package/src/translations/fr.js +195 -192
- package/src/translations/fr.js.map +1 -1
- package/src/translations/ja.js +195 -192
- package/src/translations/ja.js.map +1 -1
- package/src/translations/uk.js +195 -192
- package/src/translations/uk.js.map +1 -1
- package/src/translations/zh-cn.js +195 -192
- package/src/translations/zh-cn.js.map +1 -1
- package/src/types/deep-partial.js +2 -1
- package/src/types.js +2 -1
- package/src/utils/encryption-type-utils.js +21 -15
- package/src/utils/encryption-type-utils.js.map +1 -1
- package/src/utils.js +77 -59
- package/src/utils.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-provider.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/custom-provider.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"custom-provider.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/custom-provider.ts"],"names":[],"mappings":";;;AAAA,qDAAqD;AACrD,sFAAgF;AAChF,0DAA2D;AAC3D,8DAA8D;AAE9D;;;;;;;;;;;GAWG;AACH,MAAa,gBAAiB,SAAQ,4BAAc;IACzC,UAAU,CAAS;IACnB,IAAI,CAAS;IAEtB,YAAY,UAAkB,EAAE,IAAI,GAAG,QAAQ;QAC7C,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,GAAG,EAAE,CAAC;YACxE,MAAM,IAAI,6BAAe,CACvB,4CAAmB,CAAC,0BAA0B,EAC9C,SAAS,EACT,SAAS,EACT,EAAE,KAAK,EAAE,UAAU,EAAE,CACtB,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAA,sBAAW,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,EAAc;QACrB,OAAO,EAAE,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,EAAc;QACtB,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,YAAY,CAAC,CAAC;QAElD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;aAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;aAC3C,IAAI,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,GAAW;QACrB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAAe,CAAC,4CAAmB,CAAC,iBAAiB,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QAC3C,IAAI,GAAG,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;YAClC,MAAM,IAAI,6BAAe,CACvB,4CAAmB,CAAC,mBAAmB,EACvC,SAAS,EACT,SAAS,EACT,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CACjD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,6BAAe,CAAC,4CAAmB,CAAC,iBAAiB,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACM,UAAU,CAAC,EAAW;QAC7B,OAAO,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACM,YAAY,CAAC,GAAW;QAC/B,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;CACF;AA3FD,4CA2FC"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GuidV4Provider = void 0;
|
|
4
|
+
const id_provider_1 = require("../../interfaces/id-provider");
|
|
5
|
+
const guid_1 = require("../guid");
|
|
6
|
+
const id_provider_2 = require("../../errors/id-provider");
|
|
7
|
+
const id_provider_error_type_1 = require("../../enumerations/id-provider-error-type");
|
|
5
8
|
/**
|
|
6
9
|
* ID provider for GUIDv4 (16 bytes raw, 24 bytes base64).
|
|
7
10
|
*
|
|
@@ -10,14 +13,14 @@ import { IdProviderErrorType } from '../../enumerations/id-provider-error-type';
|
|
|
10
13
|
*
|
|
11
14
|
* Serialization uses base64 for compactness (24 characters vs 36 for hex with dashes).
|
|
12
15
|
*/
|
|
13
|
-
|
|
16
|
+
class GuidV4Provider extends id_provider_1.BaseIdProvider {
|
|
14
17
|
byteLength = 16;
|
|
15
18
|
name = 'GUIDv4';
|
|
16
19
|
/**
|
|
17
20
|
* Generate a new random GUIDv4.
|
|
18
21
|
*/
|
|
19
22
|
generate() {
|
|
20
|
-
const guid = GuidV4.generate();
|
|
23
|
+
const guid = guid_1.GuidV4.generate();
|
|
21
24
|
return guid.asRawGuidBufferUnsafe;
|
|
22
25
|
}
|
|
23
26
|
/**
|
|
@@ -30,7 +33,7 @@ export class GuidV4Provider extends BaseIdProvider {
|
|
|
30
33
|
}
|
|
31
34
|
try {
|
|
32
35
|
// Convert to GuidV4 and validate
|
|
33
|
-
const guid = new GuidV4(Buffer.from(id));
|
|
36
|
+
const guid = new guid_1.GuidV4(Buffer.from(id));
|
|
34
37
|
return guid.isValidV4();
|
|
35
38
|
}
|
|
36
39
|
catch {
|
|
@@ -43,11 +46,11 @@ export class GuidV4Provider extends BaseIdProvider {
|
|
|
43
46
|
serialize(id) {
|
|
44
47
|
this.validateLength(id, 'GuidV4Provider.serialize');
|
|
45
48
|
try {
|
|
46
|
-
const guid = new GuidV4(Buffer.from(id));
|
|
49
|
+
const guid = new guid_1.GuidV4(Buffer.from(id));
|
|
47
50
|
return guid.asBase64Guid;
|
|
48
51
|
}
|
|
49
52
|
catch (error) {
|
|
50
|
-
throw new IdProviderError(IdProviderErrorType.InvalidGuidBuffer, { cause: error instanceof Error ? error : undefined }, undefined, { message: error instanceof Error ? error.message : String(error) });
|
|
53
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.InvalidGuidBuffer, { cause: error instanceof Error ? error : undefined }, undefined, { message: error instanceof Error ? error.message : String(error) });
|
|
51
54
|
}
|
|
52
55
|
}
|
|
53
56
|
/**
|
|
@@ -56,14 +59,14 @@ export class GuidV4Provider extends BaseIdProvider {
|
|
|
56
59
|
*/
|
|
57
60
|
deserialize(str) {
|
|
58
61
|
if (typeof str !== 'string') {
|
|
59
|
-
throw new IdProviderError(IdProviderErrorType.InputMustBeString);
|
|
62
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.InputMustBeString);
|
|
60
63
|
}
|
|
61
64
|
try {
|
|
62
|
-
const guid = GuidV4.parse(str);
|
|
65
|
+
const guid = guid_1.GuidV4.parse(str);
|
|
63
66
|
return guid.asRawGuidBufferUnsafe;
|
|
64
67
|
}
|
|
65
68
|
catch (error) {
|
|
66
|
-
throw new IdProviderError(IdProviderErrorType.ParseFailed, { cause: error instanceof Error ? error : undefined }, undefined, { input: str, message: error instanceof Error ? error.message : String(error) });
|
|
69
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.ParseFailed, { cause: error instanceof Error ? error : undefined }, undefined, { input: str, message: error instanceof Error ? error.message : String(error) });
|
|
67
70
|
}
|
|
68
71
|
}
|
|
69
72
|
/**
|
|
@@ -71,7 +74,7 @@ export class GuidV4Provider extends BaseIdProvider {
|
|
|
71
74
|
* Useful for deterministic GUIDs.
|
|
72
75
|
*/
|
|
73
76
|
fromNamespace(namespace, name) {
|
|
74
|
-
const guid = GuidV4.v5(name, namespace);
|
|
77
|
+
const guid = guid_1.GuidV4.v5(name, namespace);
|
|
75
78
|
return guid.asRawGuidBufferUnsafe;
|
|
76
79
|
}
|
|
77
80
|
/**
|
|
@@ -81,7 +84,7 @@ export class GuidV4Provider extends BaseIdProvider {
|
|
|
81
84
|
getVersion(id) {
|
|
82
85
|
this.validateLength(id, 'GuidV4Provider.getVersion');
|
|
83
86
|
try {
|
|
84
|
-
const guid = new GuidV4(Buffer.from(id));
|
|
87
|
+
const guid = new guid_1.GuidV4(Buffer.from(id));
|
|
85
88
|
return guid.getVersion();
|
|
86
89
|
}
|
|
87
90
|
catch {
|
|
@@ -94,7 +97,7 @@ export class GuidV4Provider extends BaseIdProvider {
|
|
|
94
97
|
isEmpty(id) {
|
|
95
98
|
this.validateLength(id, 'GuidV4Provider.isEmpty');
|
|
96
99
|
try {
|
|
97
|
-
const guid = new GuidV4(Buffer.from(id));
|
|
100
|
+
const guid = new guid_1.GuidV4(Buffer.from(id));
|
|
98
101
|
return guid.isEmpty();
|
|
99
102
|
}
|
|
100
103
|
catch {
|
|
@@ -106,7 +109,7 @@ export class GuidV4Provider extends BaseIdProvider {
|
|
|
106
109
|
* Handles Uint8Array, GuidV4 instances, and falls back to String().
|
|
107
110
|
*/
|
|
108
111
|
idToString(id) {
|
|
109
|
-
if (id instanceof GuidV4) {
|
|
112
|
+
if (id instanceof guid_1.GuidV4) {
|
|
110
113
|
return id.asBase64Guid;
|
|
111
114
|
}
|
|
112
115
|
return super.idToString(id);
|
|
@@ -119,4 +122,5 @@ export class GuidV4Provider extends BaseIdProvider {
|
|
|
119
122
|
return this.deserialize(str);
|
|
120
123
|
}
|
|
121
124
|
}
|
|
125
|
+
exports.GuidV4Provider = GuidV4Provider;
|
|
122
126
|
//# sourceMappingURL=guidv4-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guidv4-provider.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/guidv4-provider.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"guidv4-provider.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/guidv4-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
/**
|
|
2
3
|
* ID Providers for recipient identification in multi-recipient encryption.
|
|
3
4
|
*
|
|
@@ -21,9 +22,16 @@
|
|
|
21
22
|
* const guid = guidProvider.generate();
|
|
22
23
|
* ```
|
|
23
24
|
*/
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.BaseIdProvider = exports.CustomIdProvider = exports.UuidProvider = exports.GuidV4Provider = exports.ObjectIdProvider = void 0;
|
|
27
|
+
var objectid_provider_1 = require("./objectid-provider");
|
|
28
|
+
Object.defineProperty(exports, "ObjectIdProvider", { enumerable: true, get: function () { return objectid_provider_1.ObjectIdProvider; } });
|
|
29
|
+
var guidv4_provider_1 = require("./guidv4-provider");
|
|
30
|
+
Object.defineProperty(exports, "GuidV4Provider", { enumerable: true, get: function () { return guidv4_provider_1.GuidV4Provider; } });
|
|
31
|
+
var uuid_provider_1 = require("./uuid-provider");
|
|
32
|
+
Object.defineProperty(exports, "UuidProvider", { enumerable: true, get: function () { return uuid_provider_1.UuidProvider; } });
|
|
33
|
+
var custom_provider_1 = require("./custom-provider");
|
|
34
|
+
Object.defineProperty(exports, "CustomIdProvider", { enumerable: true, get: function () { return custom_provider_1.CustomIdProvider; } });
|
|
35
|
+
var id_provider_1 = require("../../interfaces/id-provider");
|
|
36
|
+
Object.defineProperty(exports, "BaseIdProvider", { enumerable: true, get: function () { return id_provider_1.BaseIdProvider; } });
|
|
29
37
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;AAEH,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AACzB,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,qDAAqD;AAA5C,mHAAA,gBAAgB,OAAA;AAGzB,4DAA8D;AAArD,6GAAA,cAAc,OAAA"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ObjectIdProvider = void 0;
|
|
4
|
+
const id_provider_1 = require("../../interfaces/id-provider");
|
|
5
|
+
const bson_1 = require("bson");
|
|
6
|
+
const id_provider_2 = require("../../errors/id-provider");
|
|
7
|
+
const id_provider_error_type_1 = require("../../enumerations/id-provider-error-type");
|
|
5
8
|
/**
|
|
6
9
|
* ID provider for MongoDB/BSON ObjectIDs (12 bytes).
|
|
7
10
|
*
|
|
@@ -10,7 +13,7 @@ import { IdProviderErrorType } from '../../enumerations/id-provider-error-type';
|
|
|
10
13
|
*
|
|
11
14
|
* @see https://docs.mongodb.com/manual/reference/method/ObjectId/
|
|
12
15
|
*/
|
|
13
|
-
|
|
16
|
+
class ObjectIdProvider extends id_provider_1.BaseIdProvider {
|
|
14
17
|
byteLength = 12;
|
|
15
18
|
name = 'ObjectID';
|
|
16
19
|
constructor() {
|
|
@@ -22,7 +25,7 @@ export class ObjectIdProvider extends BaseIdProvider {
|
|
|
22
25
|
*/
|
|
23
26
|
generate() {
|
|
24
27
|
const buffer = new Uint8Array(12);
|
|
25
|
-
const objectId = new ObjectId();
|
|
28
|
+
const objectId = new bson_1.ObjectId();
|
|
26
29
|
if (typeof objectId.id === 'string') {
|
|
27
30
|
const hex = objectId.id;
|
|
28
31
|
for (let i = 0; i < 12; i++) {
|
|
@@ -66,20 +69,20 @@ export class ObjectIdProvider extends BaseIdProvider {
|
|
|
66
69
|
*/
|
|
67
70
|
deserialize(str) {
|
|
68
71
|
if (typeof str !== 'string') {
|
|
69
|
-
throw new IdProviderError(IdProviderErrorType.InputMustBeString);
|
|
72
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.InputMustBeString);
|
|
70
73
|
}
|
|
71
74
|
if (str.length !== 24) {
|
|
72
|
-
throw new IdProviderError(IdProviderErrorType.InvalidStringLength, undefined, undefined, { expected: 24, actual: str.length });
|
|
75
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.InvalidStringLength, undefined, undefined, { expected: 24, actual: str.length });
|
|
73
76
|
}
|
|
74
77
|
if (!/^[0-9a-fA-F]{24}$/.test(str)) {
|
|
75
|
-
throw new IdProviderError(IdProviderErrorType.InvalidCharacters);
|
|
78
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.InvalidCharacters);
|
|
76
79
|
}
|
|
77
80
|
const buffer = new Uint8Array(12);
|
|
78
81
|
for (let i = 0; i < 12; i++) {
|
|
79
82
|
buffer[i] = parseInt(str.substr(i * 2, 2), 16);
|
|
80
83
|
}
|
|
81
84
|
if (!this.validate(buffer)) {
|
|
82
|
-
throw new IdProviderError(IdProviderErrorType.InvalidDeserializedId);
|
|
85
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.InvalidDeserializedId);
|
|
83
86
|
}
|
|
84
87
|
return buffer;
|
|
85
88
|
}
|
|
@@ -88,7 +91,7 @@ export class ObjectIdProvider extends BaseIdProvider {
|
|
|
88
91
|
* Handles Uint8Array, ObjectId instances, and falls back to String().
|
|
89
92
|
*/
|
|
90
93
|
idToString(id) {
|
|
91
|
-
if (id instanceof ObjectId) {
|
|
94
|
+
if (id instanceof bson_1.ObjectId) {
|
|
92
95
|
return id.toHexString();
|
|
93
96
|
}
|
|
94
97
|
return super.idToString(id);
|
|
@@ -101,4 +104,5 @@ export class ObjectIdProvider extends BaseIdProvider {
|
|
|
101
104
|
return this.deserialize(str);
|
|
102
105
|
}
|
|
103
106
|
}
|
|
107
|
+
exports.ObjectIdProvider = ObjectIdProvider;
|
|
104
108
|
//# sourceMappingURL=objectid-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"objectid-provider.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/objectid-provider.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"objectid-provider.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/objectid-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UuidProvider = void 0;
|
|
4
|
+
const id_provider_1 = require("../../interfaces/id-provider");
|
|
5
|
+
const uuid_1 = require("uuid");
|
|
6
|
+
const id_provider_2 = require("../../errors/id-provider");
|
|
7
|
+
const id_provider_error_type_1 = require("../../enumerations/id-provider-error-type");
|
|
5
8
|
/**
|
|
6
9
|
* ID provider for standard RFC 4122 UUIDs (16 bytes).
|
|
7
10
|
*
|
|
@@ -11,7 +14,7 @@ import { IdProviderErrorType } from '../../enumerations/id-provider-error-type';
|
|
|
11
14
|
* This is functionally similar to GuidV4Provider but uses standard UUID
|
|
12
15
|
* string formatting (with dashes) instead of base64.
|
|
13
16
|
*/
|
|
14
|
-
|
|
17
|
+
class UuidProvider extends id_provider_1.BaseIdProvider {
|
|
15
18
|
byteLength = 16;
|
|
16
19
|
name = 'UUID';
|
|
17
20
|
/**
|
|
@@ -19,7 +22,7 @@ export class UuidProvider extends BaseIdProvider {
|
|
|
19
22
|
*/
|
|
20
23
|
generate() {
|
|
21
24
|
const buffer = new Uint8Array(16);
|
|
22
|
-
|
|
25
|
+
(0, uuid_1.v4)(undefined, buffer);
|
|
23
26
|
return buffer;
|
|
24
27
|
}
|
|
25
28
|
/**
|
|
@@ -33,7 +36,7 @@ export class UuidProvider extends BaseIdProvider {
|
|
|
33
36
|
try {
|
|
34
37
|
// Convert to string and validate
|
|
35
38
|
const str = this.serialize(id);
|
|
36
|
-
return
|
|
39
|
+
return (0, uuid_1.validate)(str);
|
|
37
40
|
}
|
|
38
41
|
catch {
|
|
39
42
|
return false;
|
|
@@ -56,18 +59,18 @@ export class UuidProvider extends BaseIdProvider {
|
|
|
56
59
|
*/
|
|
57
60
|
deserialize(str) {
|
|
58
61
|
if (typeof str !== 'string') {
|
|
59
|
-
throw new IdProviderError(IdProviderErrorType.InputMustBeString);
|
|
62
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.InputMustBeString);
|
|
60
63
|
}
|
|
61
64
|
// Validate format
|
|
62
|
-
if (!
|
|
63
|
-
throw new IdProviderError(IdProviderErrorType.InvalidUuidFormat, undefined, undefined, { input: str });
|
|
65
|
+
if (!(0, uuid_1.validate)(str)) {
|
|
66
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.InvalidUuidFormat, undefined, undefined, { input: str });
|
|
64
67
|
}
|
|
65
68
|
try {
|
|
66
|
-
const buffer =
|
|
69
|
+
const buffer = (0, uuid_1.parse)(str);
|
|
67
70
|
return buffer;
|
|
68
71
|
}
|
|
69
72
|
catch (error) {
|
|
70
|
-
throw new IdProviderError(IdProviderErrorType.ParseFailed, { cause: error instanceof Error ? error : undefined }, undefined, { input: str, message: error instanceof Error ? error.message : String(error) });
|
|
73
|
+
throw new id_provider_2.IdProviderError(id_provider_error_type_1.IdProviderErrorType.ParseFailed, { cause: error instanceof Error ? error : undefined }, undefined, { input: str, message: error instanceof Error ? error.message : String(error) });
|
|
71
74
|
}
|
|
72
75
|
}
|
|
73
76
|
/**
|
|
@@ -107,4 +110,5 @@ export class UuidProvider extends BaseIdProvider {
|
|
|
107
110
|
return this.deserialize(str);
|
|
108
111
|
}
|
|
109
112
|
}
|
|
113
|
+
exports.UuidProvider = UuidProvider;
|
|
110
114
|
//# sourceMappingURL=uuid-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uuid-provider.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/uuid-provider.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"uuid-provider.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/id-providers/uuid-provider.ts"],"names":[],"mappings":"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"}
|
package/src/lib/index.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
/**
|
|
2
3
|
* Library exports for v2 architecture
|
|
3
4
|
*/
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const tslib_1 = require("tslib");
|
|
7
|
+
tslib_1.__exportStar(require("./crypto-container"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./guid"), exports);
|
|
6
9
|
//# sourceMappingURL=index.js.map
|
package/src/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/lib/index.ts"],"names":[],"mappings":"AAAA;;GAEG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/lib/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,6DAAmC;AACnC,iDAAuB"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InvariantValidator = void 0;
|
|
4
|
+
const invariants_1 = require("./invariants");
|
|
5
|
+
const i18n_setup_1 = require("../i18n-setup");
|
|
6
|
+
const ecies_string_key_1 = require("../enumerations/ecies-string-key");
|
|
7
|
+
const i18n_lib_1 = require("@digitaldefiance/i18n-lib");
|
|
5
8
|
/**
|
|
6
9
|
* Validates all configuration invariants.
|
|
7
10
|
*
|
|
@@ -13,14 +16,14 @@ import { TranslatableGenericError } from '@digitaldefiance/i18n-lib';
|
|
|
13
16
|
* 2. Add it to the DEFAULT_INVARIANTS array
|
|
14
17
|
* 3. Tests will automatically validate it
|
|
15
18
|
*/
|
|
16
|
-
|
|
19
|
+
class InvariantValidator {
|
|
17
20
|
/**
|
|
18
21
|
* Default invariants that are always checked
|
|
19
22
|
*/
|
|
20
23
|
static DEFAULT_INVARIANTS = [
|
|
21
|
-
new RecipientIdConsistencyInvariant(),
|
|
22
|
-
new Pbkdf2ProfilesValidityInvariant(),
|
|
23
|
-
new EncryptionAlgorithmConsistencyInvariant(),
|
|
24
|
+
new invariants_1.RecipientIdConsistencyInvariant(),
|
|
25
|
+
new invariants_1.Pbkdf2ProfilesValidityInvariant(),
|
|
26
|
+
new invariants_1.EncryptionAlgorithmConsistencyInvariant(),
|
|
24
27
|
];
|
|
25
28
|
/**
|
|
26
29
|
* Custom invariants registered at runtime
|
|
@@ -59,8 +62,8 @@ export class InvariantValidator {
|
|
|
59
62
|
}
|
|
60
63
|
}
|
|
61
64
|
if (failures.length > 0) {
|
|
62
|
-
const engine = getEciesI18nEngine();
|
|
63
|
-
throw TranslatableGenericError.withEngine(engine, EciesComponentId, EciesStringKey.Error_Invariant_ConfigurationValidationFailedMultipleTemplate, { count: failures.length, failures: failures.join('\n\n') }, undefined, { invariantCount: failures.length });
|
|
65
|
+
const engine = (0, i18n_setup_1.getEciesI18nEngine)();
|
|
66
|
+
throw i18n_lib_1.TranslatableGenericError.withEngine(engine, i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Invariant_ConfigurationValidationFailedMultipleTemplate, { count: failures.length, failures: failures.join('\n\n') }, undefined, { invariantCount: failures.length });
|
|
64
67
|
}
|
|
65
68
|
}
|
|
66
69
|
/**
|
|
@@ -73,8 +76,8 @@ export class InvariantValidator {
|
|
|
73
76
|
static checkInvariant(config, invariantName) {
|
|
74
77
|
const invariant = this.getAllInvariants().find(i => i.name === invariantName);
|
|
75
78
|
if (!invariant) {
|
|
76
|
-
const engine = getEciesI18nEngine();
|
|
77
|
-
throw TranslatableGenericError.withEngine(engine, EciesComponentId, EciesStringKey.Error_Invariant_UnknownInvariantTemplate, { name: invariantName }, undefined, { invariantName });
|
|
79
|
+
const engine = (0, i18n_setup_1.getEciesI18nEngine)();
|
|
80
|
+
throw i18n_lib_1.TranslatableGenericError.withEngine(engine, i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Invariant_UnknownInvariantTemplate, { name: invariantName }, undefined, { invariantName });
|
|
78
81
|
}
|
|
79
82
|
return invariant.check(config);
|
|
80
83
|
}
|
|
@@ -88,10 +91,11 @@ export class InvariantValidator {
|
|
|
88
91
|
static getFailureDetails(config, invariantName) {
|
|
89
92
|
const invariant = this.getAllInvariants().find(i => i.name === invariantName);
|
|
90
93
|
if (!invariant) {
|
|
91
|
-
const engine = getEciesI18nEngine();
|
|
92
|
-
throw TranslatableGenericError.withEngine(engine, EciesComponentId, EciesStringKey.Error_Invariant_UnknownInvariantTemplate, { name: invariantName }, undefined, { invariantName });
|
|
94
|
+
const engine = (0, i18n_setup_1.getEciesI18nEngine)();
|
|
95
|
+
throw i18n_lib_1.TranslatableGenericError.withEngine(engine, i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Invariant_UnknownInvariantTemplate, { name: invariantName }, undefined, { invariantName });
|
|
93
96
|
}
|
|
94
97
|
return invariant.check(config) ? null : invariant.errorMessage(config);
|
|
95
98
|
}
|
|
96
99
|
}
|
|
100
|
+
exports.InvariantValidator = InvariantValidator;
|
|
97
101
|
//# sourceMappingURL=invariant-validator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invariant-validator.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariant-validator.ts"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"file":"invariant-validator.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariant-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EncryptionAlgorithmConsistencyInvariant = void 0;
|
|
4
|
+
const invariant_1 = require("../../interfaces/invariant");
|
|
2
5
|
/**
|
|
3
6
|
* Validates that encryption algorithm parameters are consistent.
|
|
4
7
|
*
|
|
@@ -7,7 +10,7 @@ import { BaseInvariant } from '../../interfaces/invariant';
|
|
|
7
10
|
* - Curve name is supported
|
|
8
11
|
* - Key derivation path is valid
|
|
9
12
|
*/
|
|
10
|
-
|
|
13
|
+
class EncryptionAlgorithmConsistencyInvariant extends invariant_1.BaseInvariant {
|
|
11
14
|
static SUPPORTED_CURVES = [
|
|
12
15
|
'secp256k1',
|
|
13
16
|
'p256',
|
|
@@ -46,4 +49,5 @@ export class EncryptionAlgorithmConsistencyInvariant extends BaseInvariant {
|
|
|
46
49
|
return `Invariant '${this.name}' failed:\n ${issues.join('\n ')}`;
|
|
47
50
|
}
|
|
48
51
|
}
|
|
52
|
+
exports.EncryptionAlgorithmConsistencyInvariant = EncryptionAlgorithmConsistencyInvariant;
|
|
49
53
|
//# sourceMappingURL=encryption-algorithm-consistency.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encryption-algorithm-consistency.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariants/encryption-algorithm-consistency.ts"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"encryption-algorithm-consistency.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariants/encryption-algorithm-consistency.ts"],"names":[],"mappings":";;;AACA,0DAA2D;AAE3D;;;;;;;GAOG;AACH,MAAa,uCAAwC,SAAQ,yBAAa;IAChE,MAAM,CAAU,gBAAgB,GAAG;QACzC,WAAW;QACX,MAAM;QACN,MAAM;QACN,MAAM;KACP,CAAC;IAEF;QACE,KAAK,CACH,gCAAgC,EAChC,oDAAoD,CACrD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAkB;QACtB,gCAAgC;QAChC,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;YAC3C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,2BAA2B;QAC3B,IAAI,CAAC,uCAAuC,CAAC,gBAAgB,CAAC,QAAQ,CACpE,MAAM,CAAC,KAAK,CAAC,UAAU,CACxB,EAAE,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;QAED,iDAAiD;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/D,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,MAAkB;QAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,CACT,uBAAuB,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,0BAA0B,CACjF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,uCAAuC,CAAC,gBAAgB,CAAC,QAAQ,CACpE,MAAM,CAAC,KAAK,CAAC,UAAU,CACxB,EAAE,CAAC;YACF,MAAM,CAAC,IAAI,CACT,eAAe,MAAM,CAAC,KAAK,CAAC,UAAU,qBAAqB,uCAAuC,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACjI,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/D,MAAM,CAAC,IAAI,CACT,gCAAgC,MAAM,CAAC,KAAK,CAAC,2BAA2B,iDAAiD,CAC1H,CAAC;QACJ,CAAC;QAED,OAAO,cAAc,IAAI,CAAC,IAAI,gBAAgB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IACtE,CAAC;;AA5DH,0FA6DC"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./recipient-id-consistency"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./pbkdf2-profiles-validity"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./encryption-algorithm-consistency"), exports);
|
|
4
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariants/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariants/index.ts"],"names":[],"mappings":";;;AAAA,qEAA2C;AAC3C,qEAA2C;AAC3C,6EAAmD"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Pbkdf2ProfilesValidityInvariant = void 0;
|
|
4
|
+
const invariant_1 = require("../../interfaces/invariant");
|
|
5
|
+
const pbkdf2_profile_1 = require("../../enumerations/pbkdf2-profile");
|
|
3
6
|
/**
|
|
4
7
|
* Validates that PBKDF2 profiles have sensible parameters.
|
|
5
8
|
*
|
|
@@ -8,15 +11,15 @@ import { Pbkdf2ProfileEnum } from '../../enumerations/pbkdf2-profile';
|
|
|
8
11
|
* - saltBytes > 0 and reasonable
|
|
9
12
|
* - hashBytes > 0 and matches expected hash output
|
|
10
13
|
*/
|
|
11
|
-
|
|
14
|
+
class Pbkdf2ProfilesValidityInvariant extends invariant_1.BaseInvariant {
|
|
12
15
|
constructor() {
|
|
13
16
|
super('Pbkdf2ProfilesValidity', 'PBKDF2 profiles must have valid cryptographic parameters');
|
|
14
17
|
}
|
|
15
18
|
check(config) {
|
|
16
19
|
const profiles = [
|
|
17
|
-
config.PBKDF2_PROFILES[Pbkdf2ProfileEnum.BROWSER_PASSWORD],
|
|
18
|
-
config.PBKDF2_PROFILES[Pbkdf2ProfileEnum.HIGH_SECURITY],
|
|
19
|
-
config.PBKDF2_PROFILES[Pbkdf2ProfileEnum.TEST_FAST],
|
|
20
|
+
config.PBKDF2_PROFILES[pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD],
|
|
21
|
+
config.PBKDF2_PROFILES[pbkdf2_profile_1.Pbkdf2ProfileEnum.HIGH_SECURITY],
|
|
22
|
+
config.PBKDF2_PROFILES[pbkdf2_profile_1.Pbkdf2ProfileEnum.TEST_FAST],
|
|
20
23
|
];
|
|
21
24
|
for (const profile of profiles) {
|
|
22
25
|
// iterations must be positive and reasonable
|
|
@@ -37,9 +40,9 @@ export class Pbkdf2ProfilesValidityInvariant extends BaseInvariant {
|
|
|
37
40
|
errorMessage(config) {
|
|
38
41
|
const issues = [];
|
|
39
42
|
const profileTests = [
|
|
40
|
-
{ name: 'BROWSER_PASSWORD', profile: config.PBKDF2_PROFILES[Pbkdf2ProfileEnum.BROWSER_PASSWORD] },
|
|
41
|
-
{ name: 'HIGH_SECURITY', profile: config.PBKDF2_PROFILES[Pbkdf2ProfileEnum.HIGH_SECURITY] },
|
|
42
|
-
{ name: 'TEST_FAST', profile: config.PBKDF2_PROFILES[Pbkdf2ProfileEnum.TEST_FAST] },
|
|
43
|
+
{ name: 'BROWSER_PASSWORD', profile: config.PBKDF2_PROFILES[pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD] },
|
|
44
|
+
{ name: 'HIGH_SECURITY', profile: config.PBKDF2_PROFILES[pbkdf2_profile_1.Pbkdf2ProfileEnum.HIGH_SECURITY] },
|
|
45
|
+
{ name: 'TEST_FAST', profile: config.PBKDF2_PROFILES[pbkdf2_profile_1.Pbkdf2ProfileEnum.TEST_FAST] },
|
|
43
46
|
];
|
|
44
47
|
for (const { name, profile } of profileTests) {
|
|
45
48
|
if (profile.iterations < 1000 || profile.iterations > 10_000_000) {
|
|
@@ -55,4 +58,5 @@ export class Pbkdf2ProfilesValidityInvariant extends BaseInvariant {
|
|
|
55
58
|
return `Invariant '${this.name}' failed:\n ${issues.join('\n ')}`;
|
|
56
59
|
}
|
|
57
60
|
}
|
|
61
|
+
exports.Pbkdf2ProfilesValidityInvariant = Pbkdf2ProfilesValidityInvariant;
|
|
58
62
|
//# sourceMappingURL=pbkdf2-profiles-validity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pbkdf2-profiles-validity.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariants/pbkdf2-profiles-validity.ts"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"pbkdf2-profiles-validity.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariants/pbkdf2-profiles-validity.ts"],"names":[],"mappings":";;;AACA,0DAA2D;AAC3D,sEAAsE;AAEtE;;;;;;;GAOG;AACH,MAAa,+BAAgC,SAAQ,yBAAa;IAChE;QACE,KAAK,CACH,wBAAwB,EACxB,0DAA0D,CAC3D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAkB;QACtB,MAAM,QAAQ,GAAG;YACf,MAAM,CAAC,eAAe,CAAC,kCAAiB,CAAC,gBAAgB,CAAC;YAC1D,MAAM,CAAC,eAAe,CAAC,kCAAiB,CAAC,aAAa,CAAC;YACvD,MAAM,CAAC,eAAe,CAAC,kCAAiB,CAAC,SAAS,CAAC;SACpD,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,6CAA6C;YAC7C,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,IAAI,OAAO,CAAC,UAAU,GAAG,UAAU,EAAE,CAAC;gBACjE,OAAO,KAAK,CAAC;YACf,CAAC;YAED,iDAAiD;YACjD,IAAI,OAAO,CAAC,SAAS,GAAG,EAAE,IAAI,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC;gBACtD,OAAO,KAAK,CAAC;YACf,CAAC;YAED,uDAAuD;YACvD,IAAI,OAAO,CAAC,SAAS,GAAG,EAAE,IAAI,OAAO,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC;gBACrD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,MAAkB;QAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG;YACnB,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,kCAAiB,CAAC,gBAAgB,CAAC,EAAE;YACjG,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,kCAAiB,CAAC,aAAa,CAAC,EAAE;YAC3F,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,kCAAiB,CAAC,SAAS,CAAC,EAAE;SACpF,CAAC;QAEF,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,YAAY,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,IAAI,OAAO,CAAC,UAAU,GAAG,UAAU,EAAE,CAAC;gBACjE,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,gBAAgB,OAAO,CAAC,UAAU,uCAAuC,CACjF,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,CAAC,SAAS,GAAG,EAAE,IAAI,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC;gBACtD,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,eAAe,OAAO,CAAC,SAAS,8BAA8B,CACtE,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,CAAC,SAAS,GAAG,EAAE,IAAI,OAAO,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC;gBACrD,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,eAAe,OAAO,CAAC,SAAS,6BAA6B,CACrE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,cAAc,IAAI,CAAC,IAAI,gBAAgB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IACtE,CAAC;CACF;AAjED,0EAiEC"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RecipientIdConsistencyInvariant = void 0;
|
|
4
|
+
const invariant_1 = require("../../interfaces/invariant");
|
|
2
5
|
/**
|
|
3
6
|
* Validates that all recipient ID size configurations are consistent.
|
|
4
7
|
*
|
|
@@ -9,7 +12,7 @@ import { BaseInvariant } from '../../interfaces/invariant';
|
|
|
9
12
|
* - ECIES.MULTIPLE.RECIPIENT_ID_SIZE === idProvider.byteLength
|
|
10
13
|
* - All three values must be in sync
|
|
11
14
|
*/
|
|
12
|
-
|
|
15
|
+
class RecipientIdConsistencyInvariant extends invariant_1.BaseInvariant {
|
|
13
16
|
constructor() {
|
|
14
17
|
super('RecipientIdConsistency', 'All recipient ID size configurations must match the ID provider byte length');
|
|
15
18
|
}
|
|
@@ -28,4 +31,5 @@ export class RecipientIdConsistencyInvariant extends BaseInvariant {
|
|
|
28
31
|
return `Invariant '${this.name}' failed:\n ${issues.join('\n ')}`;
|
|
29
32
|
}
|
|
30
33
|
}
|
|
34
|
+
exports.RecipientIdConsistencyInvariant = RecipientIdConsistencyInvariant;
|
|
31
35
|
//# sourceMappingURL=recipient-id-consistency.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recipient-id-consistency.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariants/recipient-id-consistency.ts"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"recipient-id-consistency.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/lib/invariants/recipient-id-consistency.ts"],"names":[],"mappings":";;;AACA,0DAA2D;AAE3D;;;;;;;;;GASG;AACH,MAAa,+BAAgC,SAAQ,yBAAa;IAChE;QACE,KAAK,CACH,wBAAwB,EACxB,6EAA6E,CAC9E,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAkB;QACtB,OAAO,CACL,MAAM,CAAC,gBAAgB,KAAK,MAAM,CAAC,UAAU,CAAC,UAAU;YACxD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,KAAK,MAAM,CAAC,UAAU,CAAC,UAAU,CACzE,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,MAAkB;QAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,MAAM,CAAC,gBAAgB,KAAK,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YAC7D,MAAM,CAAC,IAAI,CACT,qBAAqB,MAAM,CAAC,gBAAgB,gCAAgC,MAAM,CAAC,UAAU,CAAC,UAAU,GAAG,CAC5G,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,KAAK,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YAC7E,MAAM,CAAC,IAAI,CACT,qCAAqC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,gCAAgC,MAAM,CAAC,UAAU,CAAC,UAAU,GAAG,CAC5I,CAAC;QACJ,CAAC;QAED,OAAO,cAAc,IAAI,CAAC,IAAI,gBAAgB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IACtE,CAAC;CACF;AAhCD,0EAgCC"}
|