@diia-inhouse/crypto 1.20.19 → 2.0.5
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/dist/index.d.ts +12 -0
- package/dist/index.js +8 -19
- package/dist/interfaces/auth.d.ts +9 -0
- package/dist/interfaces/crypto.d.ts +10 -0
- package/dist/interfaces/deps.d.ts +13 -0
- package/dist/interfaces/identifier.d.ts +10 -0
- package/dist/interfaces/index.d.ts +5 -0
- package/dist/interfaces/jwt.d.ts +25 -0
- package/dist/services/auth.d.ts +41 -0
- package/dist/services/auth.js +90 -113
- package/dist/services/crypto.d.ts +15 -0
- package/dist/services/crypto.js +23 -24
- package/dist/services/hash.d.ts +9 -0
- package/dist/services/hash.js +16 -18
- package/dist/services/identifier.d.ts +12 -0
- package/dist/services/identifier.js +22 -29
- package/dist/services/index.d.ts +6 -0
- package/dist/services/index.js +7 -23
- package/dist/services/jwe.d.ts +17 -0
- package/dist/services/jwe.js +43 -59
- package/dist/services/jwt.d.ts +30 -0
- package/dist/services/jwt.js +40 -81
- package/package.json +33 -22
- package/dist/index.js.map +0 -1
- package/dist/interfaces/auth.js +0 -3
- package/dist/interfaces/auth.js.map +0 -1
- package/dist/interfaces/crypto.js +0 -3
- package/dist/interfaces/crypto.js.map +0 -1
- package/dist/interfaces/deps.js +0 -3
- package/dist/interfaces/deps.js.map +0 -1
- package/dist/interfaces/identifier.js +0 -3
- package/dist/interfaces/identifier.js.map +0 -1
- package/dist/interfaces/index.js +0 -22
- package/dist/interfaces/index.js.map +0 -1
- package/dist/interfaces/jwt.js +0 -3
- package/dist/interfaces/jwt.js.map +0 -1
- package/dist/services/auth.js.map +0 -1
- package/dist/services/crypto.js.map +0 -1
- package/dist/services/hash.js.map +0 -1
- package/dist/services/identifier.js.map +0 -1
- package/dist/services/index.js.map +0 -1
- package/dist/services/jwe.js.map +0 -1
- package/dist/services/jwt.js.map +0 -1
- package/dist/types/index.d.ts +0 -2
- package/dist/types/interfaces/auth.d.ts +0 -5
- package/dist/types/interfaces/crypto.d.ts +0 -7
- package/dist/types/interfaces/deps.d.ts +0 -7
- package/dist/types/interfaces/identifier.d.ts +0 -7
- package/dist/types/interfaces/index.d.ts +0 -5
- package/dist/types/interfaces/jwt.d.ts +0 -21
- package/dist/types/services/auth.d.ts +0 -37
- package/dist/types/services/crypto.d.ts +0 -11
- package/dist/types/services/hash.d.ts +0 -5
- package/dist/types/services/identifier.d.ts +0 -8
- package/dist/types/services/index.d.ts +0 -6
- package/dist/types/services/jwe.d.ts +0 -13
- package/dist/types/services/jwt.d.ts +0 -26
package/dist/services/jwe.js
CHANGED
|
@@ -1,59 +1,43 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
default: {
|
|
47
|
-
return uriHandler(data);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
getKey() {
|
|
52
|
-
if (!this.key) {
|
|
53
|
-
throw new Error('JWK key is not defined!');
|
|
54
|
-
}
|
|
55
|
-
return this.key;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
exports.JweService = JweService;
|
|
59
|
-
//# sourceMappingURL=jwe.js.map
|
|
1
|
+
import nodeJose from "node-jose";
|
|
2
|
+
//#region src/services/jwe.ts
|
|
3
|
+
const { JWE, JWK } = nodeJose;
|
|
4
|
+
var JweService = class {
|
|
5
|
+
jwkSecretData;
|
|
6
|
+
logger;
|
|
7
|
+
key;
|
|
8
|
+
constructor(jwkSecretData, logger) {
|
|
9
|
+
this.jwkSecretData = jwkSecretData;
|
|
10
|
+
this.logger = logger;
|
|
11
|
+
}
|
|
12
|
+
async onInit() {
|
|
13
|
+
this.key = await JWK.asKey(this.jwkSecretData, "json");
|
|
14
|
+
}
|
|
15
|
+
async encryptJWE(tokenData) {
|
|
16
|
+
const dataToEncrypt = this.handleUriData(tokenData, encodeURIComponent);
|
|
17
|
+
return await JWE.createEncrypt({ format: "compact" }, this.getKey()).update(JSON.stringify(dataToEncrypt)).final();
|
|
18
|
+
}
|
|
19
|
+
async decryptJWE(data) {
|
|
20
|
+
const dec = await JWE.createDecrypt(this.getKey()).decrypt(data);
|
|
21
|
+
const plainTokenData = JSON.parse(dec.plaintext.toString());
|
|
22
|
+
const decodedTokenData = this.handleUriData(plainTokenData, decodeURIComponent);
|
|
23
|
+
this.logger.debug("Token successfully decrypted", decodedTokenData);
|
|
24
|
+
return decodedTokenData;
|
|
25
|
+
}
|
|
26
|
+
handleUriData(data, uriHandler) {
|
|
27
|
+
switch (true) {
|
|
28
|
+
case Array.isArray(data): return data.map((item) => this.handleUriData(item, uriHandler));
|
|
29
|
+
case typeof data === "boolean": return data;
|
|
30
|
+
case typeof data === "object" && data !== null:
|
|
31
|
+
for (const [key, value] of Object.entries(data)) data[key] = this.handleUriData(value, uriHandler);
|
|
32
|
+
return data;
|
|
33
|
+
case data === void 0: return;
|
|
34
|
+
default: return uriHandler(data);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
getKey() {
|
|
38
|
+
if (!this.key) throw new Error("JWK key is not defined!");
|
|
39
|
+
return this.key;
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
//#endregion
|
|
43
|
+
export { JweService };
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { JwtServiceParams, JwtToken } from "../interfaces/jwt.js";
|
|
2
|
+
import { DecodeOptions, Jwt, JwtPayload, VerifyOptions } from "jsonwebtoken";
|
|
3
|
+
import { KeyObject } from "node:crypto";
|
|
4
|
+
|
|
5
|
+
//#region src/services/jwt.d.ts
|
|
6
|
+
declare class JwtService {
|
|
7
|
+
private readonly privateKey;
|
|
8
|
+
private readonly publicKey;
|
|
9
|
+
private readonly tokenSignOptions;
|
|
10
|
+
private readonly tokenVerifyOptions;
|
|
11
|
+
constructor(jwtServiceConfig: JwtServiceParams);
|
|
12
|
+
sign(data: string, expiresIn?: string): string;
|
|
13
|
+
signPayload(payload: string | Buffer | object, expiresIn?: string): string;
|
|
14
|
+
verify(jwtToken: string): JwtToken;
|
|
15
|
+
verifyWithOptions(jwtToken: string, publicKey: KeyObject, options?: VerifyOptions & {
|
|
16
|
+
complete?: true;
|
|
17
|
+
}): Jwt;
|
|
18
|
+
verifyWithOptions(jwtToken: string, publicKey: KeyObject, options?: VerifyOptions & {
|
|
19
|
+
complete?: false;
|
|
20
|
+
}): JwtPayload | string;
|
|
21
|
+
decode(token: string): JwtToken;
|
|
22
|
+
decodeWithOptions(token: string, options?: DecodeOptions & {
|
|
23
|
+
complete: true;
|
|
24
|
+
}): null | Jwt;
|
|
25
|
+
decodeWithOptions(token: string, options?: DecodeOptions & {
|
|
26
|
+
json: true;
|
|
27
|
+
}): null | JwtPayload;
|
|
28
|
+
}
|
|
29
|
+
//#endregion
|
|
30
|
+
export { JwtService };
|
package/dist/services/jwt.js
CHANGED
|
@@ -1,81 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
publicKey;
|
|
42
|
-
tokenSignOptions;
|
|
43
|
-
tokenVerifyOptions;
|
|
44
|
-
constructor(jwtServiceConfig) {
|
|
45
|
-
const { privateKey, publicKey, tokenSignOptions, tokenVerifyOptions } = jwtServiceConfig;
|
|
46
|
-
this.privateKey = privateKey;
|
|
47
|
-
this.publicKey = publicKey;
|
|
48
|
-
this.tokenSignOptions = tokenSignOptions;
|
|
49
|
-
this.tokenVerifyOptions = tokenVerifyOptions;
|
|
50
|
-
}
|
|
51
|
-
sign(data, expiresIn) {
|
|
52
|
-
return this.signPayload({ data }, expiresIn);
|
|
53
|
-
}
|
|
54
|
-
signPayload(payload, expiresIn) {
|
|
55
|
-
if (!this.privateKey) {
|
|
56
|
-
throw new Error('Private key not provided to sign data');
|
|
57
|
-
}
|
|
58
|
-
const signOptions = { ...this.tokenSignOptions };
|
|
59
|
-
if (expiresIn) {
|
|
60
|
-
signOptions.expiresIn = expiresIn;
|
|
61
|
-
}
|
|
62
|
-
return jwt.sign(payload, this.privateKey, signOptions);
|
|
63
|
-
}
|
|
64
|
-
verify(jwtToken) {
|
|
65
|
-
if (!this.publicKey) {
|
|
66
|
-
throw new Error('Public key is not provided to verify jwt');
|
|
67
|
-
}
|
|
68
|
-
return jwt.verify(jwtToken, this.publicKey, this.tokenVerifyOptions);
|
|
69
|
-
}
|
|
70
|
-
verifyWithOptions(jwtToken, publicKey, options) {
|
|
71
|
-
return jwt.verify(jwtToken, publicKey, options);
|
|
72
|
-
}
|
|
73
|
-
decode(token) {
|
|
74
|
-
return (0, jsonwebtoken_1.decode)(token);
|
|
75
|
-
}
|
|
76
|
-
decodeWithOptions(token, options) {
|
|
77
|
-
return (0, jsonwebtoken_1.decode)(token, options);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
exports.JwtService = JwtService;
|
|
81
|
-
//# sourceMappingURL=jwt.js.map
|
|
1
|
+
import jwt from "jsonwebtoken";
|
|
2
|
+
//#region src/services/jwt.ts
|
|
3
|
+
const { decode } = jwt;
|
|
4
|
+
var JwtService = class {
|
|
5
|
+
privateKey;
|
|
6
|
+
publicKey;
|
|
7
|
+
tokenSignOptions;
|
|
8
|
+
tokenVerifyOptions;
|
|
9
|
+
constructor(jwtServiceConfig) {
|
|
10
|
+
const { privateKey, publicKey, tokenSignOptions, tokenVerifyOptions } = jwtServiceConfig;
|
|
11
|
+
this.privateKey = privateKey;
|
|
12
|
+
this.publicKey = publicKey;
|
|
13
|
+
this.tokenSignOptions = tokenSignOptions;
|
|
14
|
+
this.tokenVerifyOptions = tokenVerifyOptions;
|
|
15
|
+
}
|
|
16
|
+
sign(data, expiresIn) {
|
|
17
|
+
return this.signPayload({ data }, expiresIn);
|
|
18
|
+
}
|
|
19
|
+
signPayload(payload, expiresIn) {
|
|
20
|
+
if (!this.privateKey) throw new Error("Private key not provided to sign data");
|
|
21
|
+
const signOptions = { ...this.tokenSignOptions };
|
|
22
|
+
if (expiresIn) signOptions.expiresIn = expiresIn;
|
|
23
|
+
return jwt.sign(payload, this.privateKey, signOptions);
|
|
24
|
+
}
|
|
25
|
+
verify(jwtToken) {
|
|
26
|
+
if (!this.publicKey) throw new Error("Public key is not provided to verify jwt");
|
|
27
|
+
return jwt.verify(jwtToken, this.publicKey, this.tokenVerifyOptions);
|
|
28
|
+
}
|
|
29
|
+
verifyWithOptions(jwtToken, publicKey, options) {
|
|
30
|
+
return jwt.verify(jwtToken, publicKey, options);
|
|
31
|
+
}
|
|
32
|
+
decode(token) {
|
|
33
|
+
return decode(token);
|
|
34
|
+
}
|
|
35
|
+
decodeWithOptions(token, options) {
|
|
36
|
+
return decode(token, options);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
//#endregion
|
|
40
|
+
export { JwtService };
|
package/package.json
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@diia-inhouse/crypto",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.5",
|
|
4
|
+
"type": "module",
|
|
4
5
|
"description": "Tools for encryption and auth",
|
|
5
6
|
"main": "dist/index.js",
|
|
6
|
-
"types": "dist/
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"default": "./dist/index.js"
|
|
12
|
+
},
|
|
13
|
+
"./package.json": "./package.json"
|
|
14
|
+
},
|
|
7
15
|
"repository": "https://github.com/diia-open-source/be-pkg-crypto",
|
|
8
16
|
"author": "Diia",
|
|
9
17
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
@@ -11,14 +19,14 @@
|
|
|
11
19
|
"dist"
|
|
12
20
|
],
|
|
13
21
|
"engines": {
|
|
14
|
-
"node": ">=
|
|
22
|
+
"node": ">=24"
|
|
15
23
|
},
|
|
16
24
|
"scripts": {
|
|
17
25
|
"prebuild": "rimraf dist",
|
|
18
|
-
"build": "
|
|
26
|
+
"build": "tsdown",
|
|
19
27
|
"semantic-release": "semantic-release",
|
|
20
|
-
"lint": "
|
|
21
|
-
"lint-fix": "
|
|
28
|
+
"lint": "oxlint && oxfmt --check .",
|
|
29
|
+
"lint-fix": "oxlint --fix && oxfmt .",
|
|
22
30
|
"lint:lockfile": "lockfile-lint --path package-lock.json --allowed-hosts registry.npmjs.org --validate-https",
|
|
23
31
|
"prepare": "npm run build",
|
|
24
32
|
"test": "tsc --project tests/tsconfig.json --noEmit && vitest run",
|
|
@@ -36,24 +44,28 @@
|
|
|
36
44
|
"@diia-inhouse/utils": ">=2.1.0"
|
|
37
45
|
},
|
|
38
46
|
"devDependencies": {
|
|
39
|
-
"@diia-inhouse/configs": "
|
|
40
|
-
"@diia-inhouse/diia-logger": "
|
|
41
|
-
"@diia-inhouse/errors": "1.
|
|
42
|
-
"@diia-inhouse/
|
|
43
|
-
"@diia-inhouse/test": "
|
|
44
|
-
"@diia-inhouse/types": "
|
|
45
|
-
"@diia-inhouse/utils": "
|
|
46
|
-
"@diia-inhouse/validators": "
|
|
47
|
-
"@types/node": "25.
|
|
47
|
+
"@diia-inhouse/configs": "7.0.0",
|
|
48
|
+
"@diia-inhouse/diia-logger": "4.2.2",
|
|
49
|
+
"@diia-inhouse/errors": "2.1.1",
|
|
50
|
+
"@diia-inhouse/oxc-config": "1.10.0",
|
|
51
|
+
"@diia-inhouse/test": "8.2.1",
|
|
52
|
+
"@diia-inhouse/types": "13.2.0",
|
|
53
|
+
"@diia-inhouse/utils": "6.0.10",
|
|
54
|
+
"@diia-inhouse/validators": "2.2.2",
|
|
55
|
+
"@types/node": "25.6.2",
|
|
48
56
|
"@types/node-jose": "1.1.13",
|
|
49
|
-
"@vitest/coverage-v8": "4.
|
|
50
|
-
"@vitest/ui": "4.
|
|
51
|
-
"glob": "
|
|
52
|
-
"lockfile-lint": "
|
|
57
|
+
"@vitest/coverage-v8": "4.1.5",
|
|
58
|
+
"@vitest/ui": "4.1.5",
|
|
59
|
+
"glob": "13.0.6",
|
|
60
|
+
"lockfile-lint": "5.0.0",
|
|
53
61
|
"madge": "8.0.0",
|
|
62
|
+
"oxfmt": "0.48.0",
|
|
63
|
+
"oxlint": "1.63.0",
|
|
64
|
+
"oxlint-tsgolint": "0.22.1",
|
|
54
65
|
"rimraf": "6.1.3",
|
|
55
|
-
"
|
|
56
|
-
"vitest
|
|
66
|
+
"tsdown": "0.22.0",
|
|
67
|
+
"vitest": "4.1.5",
|
|
68
|
+
"vitest-mock-extended": "4.0.0"
|
|
57
69
|
},
|
|
58
70
|
"release": {
|
|
59
71
|
"extends": "@diia-inhouse/configs/dist/semantic-release/package",
|
|
@@ -64,7 +76,6 @@
|
|
|
64
76
|
"commitlint": {
|
|
65
77
|
"extends": "@diia-inhouse/configs/dist/commitlint"
|
|
66
78
|
},
|
|
67
|
-
"prettier": "@diia-inhouse/eslint-config/prettier",
|
|
68
79
|
"madge": {
|
|
69
80
|
"tsConfig": "./tsconfig.json"
|
|
70
81
|
}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAE5B,6CAA0B"}
|
package/dist/interfaces/auth.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/interfaces/auth.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/interfaces/crypto.ts"],"names":[],"mappings":""}
|
package/dist/interfaces/deps.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deps.js","sourceRoot":"","sources":["../../src/interfaces/deps.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"identifier.js","sourceRoot":"","sources":["../../src/interfaces/identifier.ts"],"names":[],"mappings":""}
|
package/dist/interfaces/index.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./deps"), exports);
|
|
18
|
-
__exportStar(require("./auth"), exports);
|
|
19
|
-
__exportStar(require("./crypto"), exports);
|
|
20
|
-
__exportStar(require("./jwt"), exports);
|
|
21
|
-
__exportStar(require("./identifier"), exports);
|
|
22
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AAEtB,yCAAsB;AAEtB,2CAAwB;AAExB,wCAAqB;AAErB,+CAA4B"}
|
package/dist/interfaces/jwt.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../src/interfaces/jwt.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/services/crypto.ts"],"names":[],"mappings":";;;AAIA,MAAa,aAAa;IAED;IACA;IAFrB,YACqB,IAAiB,EACjB,IAAiB;QADjB,SAAI,GAAJ,IAAI,CAAa;QACjB,SAAI,GAAJ,IAAI,CAAa;IACnC,CAAC;IAEJ,KAAK,CAAC,WAAW,CAAC,aAA6C;QAC3D,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACrG,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QAE/D,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAA;IACtC,CAAC;IAED,gBAAgB,CAAC,aAAoC;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,EAAE,CAAC,CAAA;IAC1E,CAAC;IAED,KAAK,CAAC,WAAW,CAAI,aAAqB;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAiB,CAAA;IAC9D,CAAC;CACJ;AApBD,sCAoBC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hash.js","sourceRoot":"","sources":["../../src/services/hash.ts"],"names":[],"mappings":";;;AAAA,6CAA0E;AAE1E,MAAa,WAAW;IACpB,IAAI,CAAC,IAAY,EAAE,MAAc,EAAE,SAAS,GAAG,QAAQ,EAAE,WAAiC,KAAK;QAC3F,MAAM,IAAI,GAAG,IAAA,wBAAU,EAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAE1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAEjB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAChC,CAAC;IAED,IAAI,CAAC,IAAY,EAAE,SAAS,GAAG,QAAQ,EAAE,WAAiC,KAAK;QAC3E,MAAM,IAAI,GAAG,IAAA,wBAAU,EAAC,SAAS,CAAC,CAAA;QAElC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAEjB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAChC,CAAC;CACJ;AAhBD,kCAgBC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"identifier.js","sourceRoot":"","sources":["../../src/services/identifier.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAExC,+CAAmE;AAInE,MAAa,iBAAiB;IACT,IAAI,CAAQ;IAE7B,YAAY,gBAAkC;QAC1C,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAA;IACrC,CAAC;IAED,gBAAgB,CAAC,GAAW,EAAE,MAAqB,EAAE;QACjD,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,GAAG,CAAA;QACvC,MAAM,IAAI,GAAG,IAAA,wBAAU,EAAC,QAAQ,EAAE,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,CAAA;QAE1D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAEhB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAE/B,OAAO,GAAG,MAAM,GAAG,IAAI,EAAE,CAAA;IAC7B,CAAC;IAED,4BAA4B,CAAC,cAAsB;QAC/C,IAAI,cAAc,CAAC,UAAU,CAAC,wBAAgB,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACjE,OAAO,mBAAW,CAAC,kBAAkB,CAAA;QACzC,CAAC;QAED,IAAI,cAAc,CAAC,UAAU,CAAC,wBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;YACxD,OAAO,mBAAW,CAAC,SAAS,CAAA;QAChC,CAAC;QAED,OAAO,mBAAW,CAAC,IAAI,CAAA;IAC3B,CAAC;CACJ;AA7BD,8CA6BC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AAEtB,2CAAwB;AAExB,wCAAqB;AAErB,wCAAqB;AAErB,+CAA4B;AAE5B,yCAAsB"}
|
package/dist/services/jwe.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"jwe.js","sourceRoot":"","sources":["../../src/services/jwe.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AAMpC,MAAa,UAAU;IAIP;IACA;IAJJ,GAAG,CAAU;IAErB,YACY,aAAqB,EACrB,MAAc;QADd,kBAAa,GAAb,aAAa,CAAQ;QACrB,WAAM,GAAN,MAAM,CAAQ;IACvB,CAAC;IAEJ,KAAK,CAAC,MAAM;QACR,IAAI,CAAC,GAAG,GAAG,MAAM,eAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAkB;QAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;QACvE,MAAM,GAAG,GAAG,MAAM,eAAG,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;QAEvH,OAAO,GAAG,CAAA;IACd,CAAC;IAED,KAAK,CAAC,UAAU,CAAgB,IAAsB;QAClD,MAAM,GAAG,GAAG,MAAM,eAAG,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAChE,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC3D,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;QAE/E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,gBAAgB,CAAC,CAAA;QAEnE,OAAO,gBAAgB,CAAA;IAC3B,CAAC;IAED,8DAA8D;IACtD,aAAa,CAAC,IAAS,EAAE,UAAmC;QAChE,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACvB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAA;YAC5E,CAAC;YACD,KAAK,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC;gBAC7B,OAAO,IAAI,CAAA;YACf,CAAC;YACD,KAAK,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;gBAC7C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9C,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;gBACrD,CAAC;gBAED,OAAO,IAAI,CAAA;YACf,CAAC;YACD,KAAK,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC;gBACtB,OAAM;YACV,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACN,OAAO,UAAU,CAAC,IAAI,CAAC,CAAA;YAC3B,CAAC;QACL,CAAC;IACL,CAAC;IAEO,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAC9C,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,CAAA;IACnB,CAAC;CACJ;AA7DD,gCA6DC"}
|
package/dist/services/jwt.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../src/services/jwt.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,kDAAmC;AACnC,+CAAoF;AAIpF,MAAa,UAAU;IACF,UAAU,CAAoB;IAE9B,SAAS,CAAoB;IAE7B,gBAAgB,CAA8B;IAE9C,kBAAkB,CAAoB;IAEvD,YAAY,gBAAkC;QAC1C,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,gBAAgB,CAAA;QAExF,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;IAChD,CAAC;IAED,IAAI,CAAC,IAAY,EAAE,SAAkB;QACjC,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC,CAAA;IAChD,CAAC;IAED,WAAW,CAAC,OAAiC,EAAE,SAAkB;QAC7D,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;QAC5D,CAAC;QAED,MAAM,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAChD,IAAI,SAAS,EAAE,CAAC;YACZ,WAAW,CAAC,SAAS,GAAG,SAAS,CAAA;QACrC,CAAC;QAED,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,WAA8B,CAAC,CAAA;IAC7E,CAAC;IAED,MAAM,CAAC,QAAgB;QACnB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;QAC/D,CAAC;QAED,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAa,CAAA;IACpF,CAAC;IAID,iBAAiB,CAAC,QAAgB,EAAE,SAAoB,EAAE,OAAuB;QAC7E,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAAC,KAAa;QAChB,OAAO,IAAA,qBAAM,EAAC,KAAK,CAAa,CAAA;IACpC,CAAC;IAID,iBAAiB,CAAC,KAAa,EAAE,OAAuB;QACpD,OAAO,IAAA,qBAAM,EAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACjC,CAAC;CACJ;AA1DD,gCA0DC"}
|
package/dist/types/index.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export type { Jwt, JwtPayload, JwtHeader } from 'jsonwebtoken';
|
|
2
|
-
export interface JwtServiceParams {
|
|
3
|
-
tokenVerifyOptions: TokenVerifyOptions;
|
|
4
|
-
tokenSignOptions?: TokenSignOptions;
|
|
5
|
-
privateKey?: string;
|
|
6
|
-
publicKey?: string;
|
|
7
|
-
}
|
|
8
|
-
export interface TokenSignOptions {
|
|
9
|
-
algorithm: string;
|
|
10
|
-
expiresIn: string;
|
|
11
|
-
}
|
|
12
|
-
export type Algorithm = 'HS256' | 'HS384' | 'HS512' | 'RS256' | 'RS384' | 'RS512' | 'ES256' | 'ES384' | 'ES512' | 'PS256' | 'PS384' | 'PS512' | 'none';
|
|
13
|
-
export interface TokenVerifyOptions {
|
|
14
|
-
algorithms: Algorithm[];
|
|
15
|
-
ignoreExpiration: boolean;
|
|
16
|
-
}
|
|
17
|
-
export interface JwtToken {
|
|
18
|
-
data: string;
|
|
19
|
-
exp?: number;
|
|
20
|
-
iat?: number;
|
|
21
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { KeyObject } from 'node:crypto';
|
|
2
|
-
import { Jwt, VerifyOptions } from 'jsonwebtoken';
|
|
3
|
-
import { AcquirerTokenData, EResidentApplicantTokenData, EResidentTokenData, Logger, OnInit, PartnerTokenData, PortalUserTokenData, ServiceEntranceTokenData, ServiceUserTokenData, SessionType, TemporaryTokenData, TokenData, UserTokenData, VerifiedBaseTokenData } from '@diia-inhouse/types';
|
|
4
|
-
import { AuthConfig } from '../interfaces/auth';
|
|
5
|
-
export declare class AuthService implements OnInit {
|
|
6
|
-
private readonly authConfig;
|
|
7
|
-
private readonly logger;
|
|
8
|
-
private jwe;
|
|
9
|
-
private jwt;
|
|
10
|
-
constructor(authConfig: AuthConfig, logger: Logger);
|
|
11
|
-
onInit(): Promise<void>;
|
|
12
|
-
newInstance(authConfig: AuthConfig, logger: Logger): AuthService;
|
|
13
|
-
/** Decodes JWT token and decrypts JWE payload */
|
|
14
|
-
decodeToken<T = TokenData>(token: string, shouldDecrypt?: boolean): Promise<T | null>;
|
|
15
|
-
/** Only decodes JWT token returning complete token data (header, payload, signature) */
|
|
16
|
-
decodeTokenComplete(token: string): Jwt | null;
|
|
17
|
-
verifyToken<T>(token: string, publicKey: KeyObject, options?: VerifyOptions & {
|
|
18
|
-
complete?: false;
|
|
19
|
-
}): T;
|
|
20
|
-
getJweInJwt(data: unknown, expiresIn?: string): Promise<string>;
|
|
21
|
-
getJWT(enc: string, expiresIn?: string): Promise<string>;
|
|
22
|
-
getJWTPayload(payload: string | Buffer | object, expiresIn?: string): Promise<string>;
|
|
23
|
-
encryptJWE(data: unknown): Promise<string>;
|
|
24
|
-
decryptJWE<T = TokenData>(data: string): Promise<T>;
|
|
25
|
-
validate(authToken: string | null, tokenSessionType: SessionType.Acquirer, mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<AcquirerTokenData>>;
|
|
26
|
-
validate(authToken: string | null, tokenSessionType: SessionType.ServiceUser, mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<ServiceUserTokenData>>;
|
|
27
|
-
validate(authToken: string | null, tokenSessionType: SessionType.ServiceEntrance, mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<ServiceEntranceTokenData>>;
|
|
28
|
-
validate(authToken: string | null, tokenSessionType: SessionType.Temporary, mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<TemporaryTokenData>>;
|
|
29
|
-
validate(authToken: string | null, tokenSessionType: SessionType.EResident, mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<EResidentTokenData>>;
|
|
30
|
-
validate(authToken: string | null, tokenSessionType: SessionType.EResidentApplicant, mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<EResidentApplicantTokenData>>;
|
|
31
|
-
validate(authToken: string | null, tokenSessionType: SessionType.PortalUser, mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<PortalUserTokenData>>;
|
|
32
|
-
validate(authToken: string | null, tokenSessionType: SessionType.Partner, mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<PartnerTokenData>>;
|
|
33
|
-
validate(authToken: string | null, tokenSessionType: SessionType.User, mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<UserTokenData>>;
|
|
34
|
-
validate<T extends TokenData = TokenData>(authToken: string | null, allowedSessionTypes: SessionType | SessionType[], mobileUid?: string, skipJwtVerification?: boolean): Promise<VerifiedBaseTokenData<T>>;
|
|
35
|
-
private getJwtService;
|
|
36
|
-
private getJweService;
|
|
37
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { DocumentDecryptedData, DocumentEncryptedDataResult } from '../interfaces/crypto';
|
|
2
|
-
import { AuthService } from './auth';
|
|
3
|
-
import { HashService } from './hash';
|
|
4
|
-
export declare class CryptoService {
|
|
5
|
-
private readonly auth;
|
|
6
|
-
private readonly hash;
|
|
7
|
-
constructor(auth: AuthService, hash: HashService);
|
|
8
|
-
encryptData(dataToEncrypt: DocumentDecryptedData | string): Promise<DocumentEncryptedDataResult>;
|
|
9
|
-
generateHashData(dataToEncrypt: DocumentDecryptedData): string;
|
|
10
|
-
decryptData<T>(encryptedData: string): Promise<T>;
|
|
11
|
-
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { BinaryToTextEncoding } from 'node:crypto';
|
|
2
|
-
export declare class HashService {
|
|
3
|
-
hmac(data: string, secret: string, algorithm?: string, encodeTo?: BinaryToTextEncoding): string;
|
|
4
|
-
hash(data: string, algorithm?: string, encodeTo?: BinaryToTextEncoding): string;
|
|
5
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { SessionType } from '@diia-inhouse/types';
|
|
2
|
-
import { IdentifierConfig, IdentifierOps } from '../interfaces/identifier';
|
|
3
|
-
export declare class IdentifierService {
|
|
4
|
-
private readonly salt;
|
|
5
|
-
constructor(identifierConfig: IdentifierConfig);
|
|
6
|
-
createIdentifier(itn: string, ops?: IdentifierOps): string;
|
|
7
|
-
getSessionTypeFromIdentifier(userIdentifier: string): SessionType;
|
|
8
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Logger, OnInit, TokenData } from '@diia-inhouse/types';
|
|
2
|
-
import { JwtToken } from '../interfaces/jwt';
|
|
3
|
-
export declare class JweService implements OnInit {
|
|
4
|
-
private jwkSecretData;
|
|
5
|
-
private logger;
|
|
6
|
-
private key?;
|
|
7
|
-
constructor(jwkSecretData: string, logger: Logger);
|
|
8
|
-
onInit(): Promise<void>;
|
|
9
|
-
encryptJWE(tokenData: unknown): Promise<string>;
|
|
10
|
-
decryptJWE<T = TokenData>(data: JwtToken['data']): Promise<T>;
|
|
11
|
-
private handleUriData;
|
|
12
|
-
private getKey;
|
|
13
|
-
}
|