@digitaldefiance/ecies-lib 1.3.20 → 2.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.
- package/README.md +122 -9
- package/package.json +6 -3
- package/src/builders/ecies-builder.d.ts +14 -0
- package/src/builders/ecies-builder.d.ts.map +1 -0
- package/src/builders/ecies-builder.js +32 -0
- package/src/builders/ecies-builder.js.map +1 -0
- package/src/builders/index.d.ts +6 -0
- package/src/builders/index.d.ts.map +1 -0
- package/src/builders/index.js +9 -0
- package/src/builders/index.js.map +1 -0
- package/src/builders/member-builder.d.ts +18 -0
- package/src/builders/member-builder.d.ts.map +1 -0
- package/src/builders/member-builder.js +43 -0
- package/src/builders/member-builder.js.map +1 -0
- package/src/core/errors/crypto-error.d.ts +35 -0
- package/src/core/errors/crypto-error.d.ts.map +1 -0
- package/src/core/errors/crypto-error.js +62 -0
- package/src/core/errors/crypto-error.js.map +1 -0
- package/src/core/index.d.ts +6 -0
- package/src/core/index.d.ts.map +1 -0
- package/src/core/index.js +9 -0
- package/src/core/index.js.map +1 -0
- package/src/core/types/result.d.ts +16 -0
- package/src/core/types/result.d.ts.map +1 -0
- package/src/core/types/result.js +16 -0
- package/src/core/types/result.js.map +1 -0
- package/src/errors/disposed.d.ts.map +1 -1
- package/src/errors/disposed.js +2 -8
- package/src/errors/disposed.js.map +1 -1
- package/src/errors/ecies.d.ts +3 -3
- package/src/errors/ecies.d.ts.map +1 -1
- package/src/errors/ecies.js +2 -3
- package/src/errors/ecies.js.map +1 -1
- package/src/errors/guid.d.ts +3 -3
- package/src/errors/guid.d.ts.map +1 -1
- package/src/errors/guid.js +2 -2
- package/src/errors/guid.js.map +1 -1
- package/src/errors/invalid-email.d.ts +3 -3
- package/src/errors/invalid-email.d.ts.map +1 -1
- package/src/errors/invalid-email.js +2 -2
- package/src/errors/invalid-email.js.map +1 -1
- package/src/errors/length.d.ts +3 -3
- package/src/errors/length.d.ts.map +1 -1
- package/src/errors/length.js +2 -2
- package/src/errors/length.js.map +1 -1
- package/src/errors/member.d.ts +3 -3
- package/src/errors/member.d.ts.map +1 -1
- package/src/errors/member.js +2 -2
- package/src/errors/member.js.map +1 -1
- package/src/errors/pbkdf2.d.ts +3 -3
- package/src/errors/pbkdf2.d.ts.map +1 -1
- package/src/errors/pbkdf2.js +2 -2
- package/src/errors/pbkdf2.js.map +1 -1
- package/src/errors/secure-storage.d.ts +3 -3
- package/src/errors/secure-storage.d.ts.map +1 -1
- package/src/errors/secure-storage.js +2 -2
- package/src/errors/secure-storage.js.map +1 -1
- package/src/errors/simple-ecies.d.ts +3 -3
- package/src/errors/simple-ecies.d.ts.map +1 -1
- package/src/errors/simple-ecies.js +2 -2
- package/src/errors/simple-ecies.js.map +1 -1
- package/src/guid.d.ts.map +1 -1
- package/src/guid.js +20 -21
- package/src/guid.js.map +1 -1
- package/src/i18n-setup.d.ts +33 -20
- package/src/i18n-setup.d.ts.map +1 -1
- package/src/i18n-setup.js +85 -108
- package/src/i18n-setup.js.map +1 -1
- package/src/index.d.ts +23 -0
- package/src/index.d.ts.map +1 -1
- package/src/index.js +46 -0
- package/src/index.js.map +1 -1
- package/src/lib/crypto-container.d.ts +25 -0
- package/src/lib/crypto-container.d.ts.map +1 -0
- package/src/lib/crypto-container.js +49 -0
- package/src/lib/crypto-container.js.map +1 -0
- package/src/lib/index.d.ts +5 -0
- package/src/lib/index.d.ts.map +1 -0
- package/src/lib/index.js +8 -0
- package/src/lib/index.js.map +1 -0
- package/src/services/password-login.d.ts +2 -3
- package/src/services/password-login.d.ts.map +1 -1
- package/src/services/password-login.js +4 -6
- package/src/services/password-login.js.map +1 -1
- package/src/services/pbkdf2.d.ts +2 -3
- package/src/services/pbkdf2.d.ts.map +1 -1
- package/src/services/pbkdf2.js +4 -6
- package/src/services/pbkdf2.js.map +1 -1
package/src/index.js
CHANGED
|
@@ -1,6 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ECIES Library v2.0 - Modern Architecture
|
|
4
|
+
*
|
|
5
|
+
* New exports for v2 architecture with:
|
|
6
|
+
* - Unified error handling
|
|
7
|
+
* - Service container
|
|
8
|
+
* - Fluent builders
|
|
9
|
+
* - Result pattern
|
|
10
|
+
* - i18n 2.0 integration
|
|
11
|
+
*/
|
|
2
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.ConstantsRegistry = exports.Constants = exports.SecureBuffer = exports.SecureString = exports.GuidV4 = exports.EmailString = exports.Pbkdf2ProfileEnum = exports.MemberType = exports.EciesStringKey = exports.EciesComponentId = exports.EciesI18nEngineKey = exports.safeEciesTranslation = exports.getEciesTranslation = exports.resetEciesI18nEngine = exports.createEciesI18nEngine = exports.getEciesI18nEngine = void 0;
|
|
3
14
|
const tslib_1 = require("tslib");
|
|
15
|
+
// Core v2 exports
|
|
16
|
+
tslib_1.__exportStar(require("./core"), exports);
|
|
17
|
+
tslib_1.__exportStar(require("./builders"), exports);
|
|
18
|
+
tslib_1.__exportStar(require("./lib"), exports);
|
|
19
|
+
// i18n v2
|
|
20
|
+
var i18n_setup_1 = require("./i18n-setup");
|
|
21
|
+
Object.defineProperty(exports, "getEciesI18nEngine", { enumerable: true, get: function () { return i18n_setup_1.getEciesI18nEngine; } });
|
|
22
|
+
Object.defineProperty(exports, "createEciesI18nEngine", { enumerable: true, get: function () { return i18n_setup_1.createEciesI18nEngine; } });
|
|
23
|
+
Object.defineProperty(exports, "resetEciesI18nEngine", { enumerable: true, get: function () { return i18n_setup_1.resetEciesI18nEngine; } });
|
|
24
|
+
Object.defineProperty(exports, "getEciesTranslation", { enumerable: true, get: function () { return i18n_setup_1.getEciesTranslation; } });
|
|
25
|
+
Object.defineProperty(exports, "safeEciesTranslation", { enumerable: true, get: function () { return i18n_setup_1.safeEciesTranslation; } });
|
|
26
|
+
Object.defineProperty(exports, "EciesI18nEngineKey", { enumerable: true, get: function () { return i18n_setup_1.EciesI18nEngineKey; } });
|
|
27
|
+
Object.defineProperty(exports, "EciesComponentId", { enumerable: true, get: function () { return i18n_setup_1.EciesComponentId; } });
|
|
28
|
+
// Re-export existing types and enums (unchanged)
|
|
29
|
+
var ecies_string_key_1 = require("./enumerations/ecies-string-key");
|
|
30
|
+
Object.defineProperty(exports, "EciesStringKey", { enumerable: true, get: function () { return ecies_string_key_1.EciesStringKey; } });
|
|
31
|
+
var member_type_1 = require("./enumerations/member-type");
|
|
32
|
+
Object.defineProperty(exports, "MemberType", { enumerable: true, get: function () { return member_type_1.MemberType; } });
|
|
33
|
+
var pbkdf2_profile_1 = require("./enumerations/pbkdf2-profile");
|
|
34
|
+
Object.defineProperty(exports, "Pbkdf2ProfileEnum", { enumerable: true, get: function () { return pbkdf2_profile_1.Pbkdf2ProfileEnum; } });
|
|
35
|
+
// Re-export value objects (unchanged)
|
|
36
|
+
var email_string_1 = require("./email-string");
|
|
37
|
+
Object.defineProperty(exports, "EmailString", { enumerable: true, get: function () { return email_string_1.EmailString; } });
|
|
38
|
+
var guid_1 = require("./guid");
|
|
39
|
+
Object.defineProperty(exports, "GuidV4", { enumerable: true, get: function () { return guid_1.GuidV4; } });
|
|
40
|
+
var secure_string_1 = require("./secure-string");
|
|
41
|
+
Object.defineProperty(exports, "SecureString", { enumerable: true, get: function () { return secure_string_1.SecureString; } });
|
|
42
|
+
var secure_buffer_1 = require("./secure-buffer");
|
|
43
|
+
Object.defineProperty(exports, "SecureBuffer", { enumerable: true, get: function () { return secure_buffer_1.SecureBuffer; } });
|
|
44
|
+
// Re-export constants (unchanged)
|
|
45
|
+
var constants_1 = require("./constants");
|
|
46
|
+
Object.defineProperty(exports, "Constants", { enumerable: true, get: function () { return constants_1.Constants; } });
|
|
47
|
+
Object.defineProperty(exports, "ConstantsRegistry", { enumerable: true, get: function () { return constants_1.ConstantsRegistry; } });
|
|
48
|
+
// Note: Existing services will be re-exported once migrated to v2
|
|
49
|
+
// For now, import from main index.ts for backward compatibility
|
|
4
50
|
tslib_1.__exportStar(require("./constants"), exports);
|
|
5
51
|
tslib_1.__exportStar(require("./email-string"), exports);
|
|
6
52
|
tslib_1.__exportStar(require("./enumerations"), exports);
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-ecies-lib/src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-ecies-lib/src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;AAEH,kBAAkB;AAClB,iDAAuB;AACvB,qDAA2B;AAC3B,gDAAsB;AAEtB,UAAU;AACV,2CAQsB;AAPpB,gHAAA,kBAAkB,OAAA;AAClB,mHAAA,qBAAqB,OAAA;AACrB,kHAAA,oBAAoB,OAAA;AACpB,iHAAA,mBAAmB,OAAA;AACnB,kHAAA,oBAAoB,OAAA;AACpB,gHAAA,kBAAkB,OAAA;AAClB,8GAAA,gBAAgB,OAAA;AAGlB,iDAAiD;AACjD,oEAAiE;AAAxD,kHAAA,cAAc,OAAA;AACvB,0DAAwD;AAA/C,yGAAA,UAAU,OAAA;AACnB,gEAAkE;AAAzD,mHAAA,iBAAiB,OAAA;AAE1B,sCAAsC;AACtC,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,+BAAgC;AAAvB,8FAAA,MAAM,OAAA;AACf,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAErB,kCAAkC;AAClC,yCAA2D;AAAlD,sGAAA,SAAS,OAAA;AAAE,8GAAA,iBAAiB,OAAA;AAGrC,kEAAkE;AAClE,gEAAgE;AAEhE,sDAA4B;AAC5B,yDAA+B;AAC/B,yDAA+B;AAC/B,mDAAyB;AACzB,iDAAuB;AACvB,uDAA6B;AAC7B,uDAA6B;AAC7B,mDAAyB;AACzB,4DAAkC;AAClC,yDAA+B;AAC/B,0DAAgC;AAChC,0DAAgC;AAChC,qDAA2B;AAC3B,kDAAwB;AACxB,kDAAwB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service Container for dependency injection
|
|
3
|
+
*/
|
|
4
|
+
import { PluginI18nEngine } from '@digitaldefiance/i18n-lib';
|
|
5
|
+
import { IConstants } from '../interfaces';
|
|
6
|
+
export declare enum CryptoServiceKey {
|
|
7
|
+
ECIES = "ecies",
|
|
8
|
+
PBKDF2 = "pbkdf2",
|
|
9
|
+
AES_GCM = "aes-gcm",
|
|
10
|
+
PASSWORD_LOGIN = "password-login",
|
|
11
|
+
FILE = "file",
|
|
12
|
+
XOR = "xor"
|
|
13
|
+
}
|
|
14
|
+
export declare class CryptoContainer {
|
|
15
|
+
private services;
|
|
16
|
+
private config;
|
|
17
|
+
private i18n;
|
|
18
|
+
private constructor();
|
|
19
|
+
static create(config?: IConstants, i18n?: PluginI18nEngine<string>): CryptoContainer;
|
|
20
|
+
get<T>(key: CryptoServiceKey): T;
|
|
21
|
+
private initServices;
|
|
22
|
+
getConfig(): IConstants;
|
|
23
|
+
getI18n(): PluginI18nEngine<string>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=crypto-container.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crypto-container.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/lib/crypto-container.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,oBAAY,gBAAgB;IAC1B,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,cAAc,mBAAmB;IACjC,IAAI,SAAS;IACb,GAAG,QAAQ;CACZ;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAwC;IACxD,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,IAAI,CAA2B;IAEvC,OAAO;IAMP,MAAM,CAAC,MAAM,CAAC,MAAM,GAAE,UAAsB,EAAE,IAAI,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,eAAe;IAI/F,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,gBAAgB,GAAG,CAAC;IAQhC,OAAO,CAAC,YAAY;IAKpB,SAAS,IAAI,UAAU;IAIvB,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC;CAGpC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Service Container for dependency injection
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.CryptoContainer = exports.CryptoServiceKey = void 0;
|
|
7
|
+
const constants_1 = require("../constants");
|
|
8
|
+
const i18n_setup_1 = require("../i18n-setup");
|
|
9
|
+
var CryptoServiceKey;
|
|
10
|
+
(function (CryptoServiceKey) {
|
|
11
|
+
CryptoServiceKey["ECIES"] = "ecies";
|
|
12
|
+
CryptoServiceKey["PBKDF2"] = "pbkdf2";
|
|
13
|
+
CryptoServiceKey["AES_GCM"] = "aes-gcm";
|
|
14
|
+
CryptoServiceKey["PASSWORD_LOGIN"] = "password-login";
|
|
15
|
+
CryptoServiceKey["FILE"] = "file";
|
|
16
|
+
CryptoServiceKey["XOR"] = "xor";
|
|
17
|
+
})(CryptoServiceKey || (exports.CryptoServiceKey = CryptoServiceKey = {}));
|
|
18
|
+
class CryptoContainer {
|
|
19
|
+
services = new Map();
|
|
20
|
+
config;
|
|
21
|
+
i18n;
|
|
22
|
+
constructor(config, i18n) {
|
|
23
|
+
this.config = config;
|
|
24
|
+
this.i18n = i18n;
|
|
25
|
+
this.initServices();
|
|
26
|
+
}
|
|
27
|
+
static create(config = constants_1.Constants, i18n) {
|
|
28
|
+
return new CryptoContainer(config, i18n || (0, i18n_setup_1.getEciesI18nEngine)());
|
|
29
|
+
}
|
|
30
|
+
get(key) {
|
|
31
|
+
const service = this.services.get(key);
|
|
32
|
+
if (!service) {
|
|
33
|
+
throw new Error(`Service ${key} not found in container`);
|
|
34
|
+
}
|
|
35
|
+
return service;
|
|
36
|
+
}
|
|
37
|
+
initServices() {
|
|
38
|
+
// Services will be lazily loaded to avoid circular dependencies
|
|
39
|
+
// Implementation will be added as services are migrated
|
|
40
|
+
}
|
|
41
|
+
getConfig() {
|
|
42
|
+
return this.config;
|
|
43
|
+
}
|
|
44
|
+
getI18n() {
|
|
45
|
+
return this.i18n;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.CryptoContainer = CryptoContainer;
|
|
49
|
+
//# sourceMappingURL=crypto-container.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crypto-container.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/lib/crypto-container.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAIH,4CAAyC;AACzC,8CAAmD;AAEnD,IAAY,gBAOX;AAPD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;IACf,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;IACnB,qDAAiC,CAAA;IACjC,iCAAa,CAAA;IACb,+BAAW,CAAA;AACb,CAAC,EAPW,gBAAgB,gCAAhB,gBAAgB,QAO3B;AAED,MAAa,eAAe;IAClB,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;IAChD,MAAM,CAAa;IACnB,IAAI,CAA2B;IAEvC,YAAoB,MAAkB,EAAE,IAA8B;QACpE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,SAAqB,qBAAS,EAAE,IAA+B;QAC3E,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE,IAAI,IAAI,IAAA,+BAAkB,GAAE,CAAC,CAAC;IACnE,CAAC;IAED,GAAG,CAAI,GAAqB;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,WAAW,GAAG,yBAAyB,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,OAAY,CAAC;IACtB,CAAC;IAEO,YAAY;QAClB,gEAAgE;QAChE,wDAAwD;IAC1D,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;CACF;AAnCD,0CAmCC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/lib/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,oBAAoB,CAAC"}
|
package/src/lib/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/lib/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,6DAAmC"}
|
|
@@ -3,18 +3,17 @@ import { Pbkdf2ProfileEnum } from '../enumerations/pbkdf2-profile';
|
|
|
3
3
|
import { SecureString } from '../secure-string';
|
|
4
4
|
import { ECIESService } from './ecies/service';
|
|
5
5
|
import { Pbkdf2Service } from './pbkdf2';
|
|
6
|
-
import { CoreLanguageCode
|
|
6
|
+
import { CoreLanguageCode } from '@digitaldefiance/i18n-lib';
|
|
7
7
|
import { IECIESConstants } from '../interfaces/ecies-consts';
|
|
8
8
|
export declare class PasswordLoginService<TLanguage extends CoreLanguageCode = CoreLanguageCode> {
|
|
9
9
|
protected readonly eciesService: ECIESService;
|
|
10
10
|
protected readonly pbkdf2Service: Pbkdf2Service<TLanguage>;
|
|
11
|
-
protected readonly engine: PluginI18nEngine<TLanguage>;
|
|
12
11
|
protected readonly eciesConsts: IECIESConstants;
|
|
13
12
|
static readonly privateKeyStorageKey = "encryptedPrivateKey";
|
|
14
13
|
static readonly saltStorageKey = "passwordLoginSalt";
|
|
15
14
|
static readonly encryptedMnemonicStorageKey = "encryptedMnemonic";
|
|
16
15
|
static readonly profileStorageKey = "pbkdf2Profile";
|
|
17
|
-
constructor(eciesService: ECIESService, pbkdf2Service: Pbkdf2Service<TLanguage>,
|
|
16
|
+
constructor(eciesService: ECIESService, pbkdf2Service: Pbkdf2Service<TLanguage>, eciesParams?: IECIESConstants);
|
|
18
17
|
createPasswordLoginBundle(mnemonic: SecureString, password: SecureString, profile?: Pbkdf2ProfileEnum): Promise<{
|
|
19
18
|
salt: Uint8Array;
|
|
20
19
|
encryptedPrivateKey: Uint8Array;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"password-login.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/password-login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAkB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"password-login.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/password-login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAkB,gBAAgB,EAAgF,MAAM,2BAA2B,CAAC;AAC3J,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAK7D,qBAAa,oBAAoB,CAAC,SAAS,SAAS,gBAAgB,GAAG,gBAAgB;IACrF,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAC3D,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IAChD,gBAAuB,oBAAoB,yBAAyB;IACpE,gBAAuB,cAAc,uBAAuB;IAC5D,gBAAuB,2BAA2B,uBAAuB;IACzE,gBAAuB,iBAAiB,mBAAmB;gBAE/C,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,WAAW,GAAE,eAAiC;IAMlH,yBAAyB,CACpC,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,iBAAsD,GAC9D,OAAO,CAAC;QACT,IAAI,EAAE,UAAU,CAAC;QACjB,mBAAmB,EAAE,UAAU,CAAC;QAChC,iBAAiB,EAAE,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IAwCF;;;;OAIG;IACU,oCAAoC,CAC/C,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,iBAAsD,GAC9D,OAAO,CAAC,MAAM,CAAC;IA4BL,+CAA+C,CAC1D,IAAI,EAAE,UAAU,EAChB,mBAAmB,EAAE,UAAU,EAC/B,iBAAiB,EAAE,UAAU,EAC7B,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,iBAAsD,GAC9D,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IAuCtD;;;;OAIG;IACU,0CAA0C,CACrD,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IAmCtD;;;OAGG;WACW,oBAAoB,IAAI,OAAO;CAkB9C"}
|
|
@@ -14,16 +14,14 @@ const i18n_setup_1 = require("../i18n-setup");
|
|
|
14
14
|
class PasswordLoginService {
|
|
15
15
|
eciesService;
|
|
16
16
|
pbkdf2Service;
|
|
17
|
-
engine;
|
|
18
17
|
eciesConsts;
|
|
19
18
|
static privateKeyStorageKey = 'encryptedPrivateKey';
|
|
20
19
|
static saltStorageKey = 'passwordLoginSalt';
|
|
21
20
|
static encryptedMnemonicStorageKey = 'encryptedMnemonic';
|
|
22
21
|
static profileStorageKey = 'pbkdf2Profile';
|
|
23
|
-
constructor(eciesService, pbkdf2Service,
|
|
22
|
+
constructor(eciesService, pbkdf2Service, eciesParams = constants_1.Constants.ECIES) {
|
|
24
23
|
this.eciesService = eciesService;
|
|
25
24
|
this.pbkdf2Service = pbkdf2Service;
|
|
26
|
-
this.engine = engine;
|
|
27
25
|
this.eciesConsts = eciesParams;
|
|
28
26
|
}
|
|
29
27
|
async createPasswordLoginBundle(mnemonic, password, profile = pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD) {
|
|
@@ -60,13 +58,13 @@ class PasswordLoginService {
|
|
|
60
58
|
localStorage.setItem(PasswordLoginService.profileStorageKey, profile);
|
|
61
59
|
}
|
|
62
60
|
catch (error) {
|
|
63
|
-
throw new i18n_lib_1.PluginTypedHandleableError(
|
|
61
|
+
throw new i18n_lib_1.PluginTypedHandleableError(i18n_setup_1.EciesComponentId, enumerations_1.PasswordLoginErrorTypeEnum.FailedToStoreLoginData, (0, i18n_lib_1.buildReasonMap)(enumerations_1.PasswordLoginErrorTypeEnum, ['Error', 'PasswordLoginError']), new Error(), { cause: error instanceof Error ? error : undefined });
|
|
64
62
|
}
|
|
65
63
|
return wallet;
|
|
66
64
|
}
|
|
67
65
|
async getWalletAndMnemonicFromEncryptedPasswordBundle(salt, encryptedPrivateKey, encryptedMnemonic, password, profile = pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD) {
|
|
68
66
|
if (!salt || !encryptedPrivateKey || !encryptedMnemonic) {
|
|
69
|
-
throw new i18n_lib_1.PluginTypedHandleableError(
|
|
67
|
+
throw new i18n_lib_1.PluginTypedHandleableError(i18n_setup_1.EciesComponentId, enumerations_1.PasswordLoginErrorTypeEnum.PasswordLoginNotSetUp, (0, i18n_lib_1.buildReasonMap)(enumerations_1.PasswordLoginErrorTypeEnum, ['Error', 'PasswordLoginError']), new Error());
|
|
70
68
|
}
|
|
71
69
|
const derivedKey = await this.pbkdf2Service.deriveKeyFromPasswordWithProfileAsync(password.valueAsUint8Array, profile, salt);
|
|
72
70
|
// Decrypt private key with derived key
|
|
@@ -93,7 +91,7 @@ class PasswordLoginService {
|
|
|
93
91
|
saltHex === '' ||
|
|
94
92
|
encryptedPrivateKeyHex === '' ||
|
|
95
93
|
encryptedMnemonicHex === '') {
|
|
96
|
-
throw new i18n_lib_1.PluginTypedHandleableError(
|
|
94
|
+
throw new i18n_lib_1.PluginTypedHandleableError(i18n_setup_1.EciesComponentId, enumerations_1.PasswordLoginErrorTypeEnum.PasswordLoginNotSetUp, (0, i18n_lib_1.buildReasonMap)(enumerations_1.PasswordLoginErrorTypeEnum, ['Error', 'PasswordLoginError']), new Error());
|
|
97
95
|
}
|
|
98
96
|
const salt = (0, utils_1.hexToUint8Array)(saltHex);
|
|
99
97
|
const encryptedPrivateKey = (0, utils_1.hexToUint8Array)(encryptedPrivateKeyHex);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"password-login.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/password-login.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAC5C,iFAAgF;AAChF,mEAAmE;AACnE,oDAAgD;AAChD,oCAA4D;AAC5D,uCAA0C;AAG1C,kDAA6E;AAC7E,wDAA2J;AAE3J,4CAAyC;AACzC,8CAAiD;AAGjD,MAAa,oBAAoB;IACZ,YAAY,CAAe;IAC3B,aAAa,CAA2B;IACxC,
|
|
1
|
+
{"version":3,"file":"password-login.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/password-login.ts"],"names":[],"mappings":"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"}
|
package/src/services/pbkdf2.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CoreLanguageCode
|
|
1
|
+
import { CoreLanguageCode } from '@digitaldefiance/i18n-lib';
|
|
2
2
|
import { Pbkdf2ProfileEnum } from '../enumerations/pbkdf2-profile';
|
|
3
3
|
import { IPbkdf2Config } from '../interfaces/pbkdf2-config';
|
|
4
4
|
import { IPbkdf2Result } from '../interfaces/pbkdf2-result';
|
|
@@ -13,11 +13,10 @@ import { IPBkdf2Consts } from '../interfaces/pbkdf2-consts';
|
|
|
13
13
|
* - Both synchronous and asynchronous key derivation
|
|
14
14
|
*/
|
|
15
15
|
export declare class Pbkdf2Service<TLanguage extends CoreLanguageCode> {
|
|
16
|
-
protected readonly engine: PluginI18nEngine<TLanguage>;
|
|
17
16
|
protected readonly profiles: Record<string, IPbkdf2Config>;
|
|
18
17
|
protected readonly eciesConsts: IECIESConstants;
|
|
19
18
|
protected readonly pbkdf2Consts: IPBkdf2Consts;
|
|
20
|
-
constructor(
|
|
19
|
+
constructor(profiles?: Record<string, IPbkdf2Config>, eciesParams?: IECIESConstants, pbkdf2Params?: IPBkdf2Consts);
|
|
21
20
|
/**
|
|
22
21
|
* Get a predefined configuration profile for common use cases
|
|
23
22
|
* @param profile The name of the profile to use
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pbkdf2.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/pbkdf2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"pbkdf2.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/pbkdf2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D;;;;;;;GAOG;AACH,qBAAa,aAAa,CAAC,SAAS,SAAS,gBAAgB;IAC3D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC3D,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IAChD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;gBAG7C,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAA6B,EACnE,WAAW,GAAE,eAAiC,EAC9C,YAAY,GAAE,aAAgC;IAMhD;;;;OAIG;IACI,gBAAgB,CACrB,OAAO,EAAE,MAAM,GACd,aAAa;IAahB;;;;;;;OAOG;IACI,SAAS,CACd,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,GACjB,aAAa;IAkBhB;;;;;;;;;OASG;IACU,0BAA0B,CACrC,QAAQ,EAAE,UAAU,EACpB,IAAI,CAAC,EAAE,UAAU,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,aAAa,CAAC;IA8CzB;;;;;;OAMG;IACU,qCAAqC,CAChD,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,CAAC,EAAE,UAAU,GAChB,OAAO,CAAC,aAAa,CAAC;CAW1B"}
|
package/src/services/pbkdf2.js
CHANGED
|
@@ -13,12 +13,10 @@ const pbkdf2_1 = require("../errors/pbkdf2");
|
|
|
13
13
|
* - Both synchronous and asynchronous key derivation
|
|
14
14
|
*/
|
|
15
15
|
class Pbkdf2Service {
|
|
16
|
-
engine;
|
|
17
16
|
profiles;
|
|
18
17
|
eciesConsts;
|
|
19
18
|
pbkdf2Consts;
|
|
20
|
-
constructor(
|
|
21
|
-
this.engine = engine;
|
|
19
|
+
constructor(profiles = constants_1.Constants.PBKDF2_PROFILES, eciesParams = constants_1.Constants.ECIES, pbkdf2Params = constants_1.Constants.PBKDF2) {
|
|
22
20
|
this.profiles = profiles;
|
|
23
21
|
this.eciesConsts = eciesParams;
|
|
24
22
|
this.pbkdf2Consts = pbkdf2Params;
|
|
@@ -31,7 +29,7 @@ class Pbkdf2Service {
|
|
|
31
29
|
getProfileConfig(profile) {
|
|
32
30
|
const profileConfig = this.profiles[profile];
|
|
33
31
|
if (!profileConfig) {
|
|
34
|
-
throw new pbkdf2_1.Pbkdf2Error(pbkdf2_error_type_1.Pbkdf2ErrorType.InvalidProfile
|
|
32
|
+
throw new pbkdf2_1.Pbkdf2Error(pbkdf2_error_type_1.Pbkdf2ErrorType.InvalidProfile);
|
|
35
33
|
}
|
|
36
34
|
return {
|
|
37
35
|
hashBytes: profileConfig.hashBytes,
|
|
@@ -79,7 +77,7 @@ class Pbkdf2Service {
|
|
|
79
77
|
const config = this.getConfig(iterations, saltBytes, keySize, algorithm);
|
|
80
78
|
const saltBytes_ = salt ?? crypto.getRandomValues(new Uint8Array(config.saltBytes));
|
|
81
79
|
if (saltBytes_.length !== config.saltBytes) {
|
|
82
|
-
throw new pbkdf2_1.Pbkdf2Error(pbkdf2_error_type_1.Pbkdf2ErrorType.InvalidSaltLength
|
|
80
|
+
throw new pbkdf2_1.Pbkdf2Error(pbkdf2_error_type_1.Pbkdf2ErrorType.InvalidSaltLength);
|
|
83
81
|
}
|
|
84
82
|
const keyMaterial = await crypto.subtle.importKey('raw', new Uint8Array(password), 'PBKDF2', false, ['deriveBits']);
|
|
85
83
|
const keyArray = await crypto.subtle.deriveBits({
|
|
@@ -90,7 +88,7 @@ class Pbkdf2Service {
|
|
|
90
88
|
}, keyMaterial, config.hashBytes * 8);
|
|
91
89
|
const keyBytes = new Uint8Array(keyArray);
|
|
92
90
|
if (keyBytes.length !== config.hashBytes) {
|
|
93
|
-
throw new pbkdf2_1.Pbkdf2Error(pbkdf2_error_type_1.Pbkdf2ErrorType.InvalidHashLength
|
|
91
|
+
throw new pbkdf2_1.Pbkdf2Error(pbkdf2_error_type_1.Pbkdf2ErrorType.InvalidHashLength);
|
|
94
92
|
}
|
|
95
93
|
return {
|
|
96
94
|
salt: saltBytes_,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pbkdf2.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/pbkdf2.ts"],"names":[],"mappings":";;;AACA,4CAAyC;AACzC,yEAAoE;AAEpE,6CAA+C;AAM/C;;;;;;;GAOG;AACH,MAAa,aAAa;IACL,
|
|
1
|
+
{"version":3,"file":"pbkdf2.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/services/pbkdf2.ts"],"names":[],"mappings":"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"}
|