namirasoft-core 1.2.6 → 1.2.8

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.
@@ -0,0 +1,6 @@
1
+ export declare class EncryptionOperation {
2
+ private static encrypt;
3
+ private static decrypt;
4
+ static AES256CCMEncrypt(secret: string, message: any): string;
5
+ static AES256CCMDecrypt(secret: string, message: string): any;
6
+ }
@@ -0,0 +1,50 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.EncryptionOperation = void 0;
27
+ const crypto = __importStar(require("node:crypto"));
28
+ class EncryptionOperation {
29
+ static encrypt(algorithm, secret, message) {
30
+ const iv = Buffer.alloc(16, 0);
31
+ const cipher = crypto.createCipheriv(algorithm, secret, iv);
32
+ return cipher.update(JSON.stringify(message), 'utf8', 'hex') + cipher.final('hex');
33
+ }
34
+ static decrypt(algorithm, secret, message) {
35
+ let encryptedText = Buffer.from(message, 'hex');
36
+ const iv = Buffer.alloc(16, 0);
37
+ const decipher = crypto.createDecipheriv(algorithm, secret, iv);
38
+ let decrypted = decipher.update(encryptedText);
39
+ decrypted = Buffer.concat([decrypted, decipher.final()]);
40
+ return JSON.parse(decrypted.toString());
41
+ }
42
+ static AES256CCMEncrypt(secret, message) {
43
+ return EncryptionOperation.encrypt("aes-256-ccm", secret, message);
44
+ }
45
+ static AES256CCMDecrypt(secret, message) {
46
+ return EncryptionOperation.decrypt("aes-256-ccm", secret, message);
47
+ }
48
+ }
49
+ exports.EncryptionOperation = EncryptionOperation;
50
+ //# sourceMappingURL=EncryptionOperation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EncryptionOperation.js","sourceRoot":"","sources":["../src/EncryptionOperation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAsC;AAEtC,MAAa,mBAAmB;IAEpB,MAAM,CAAC,OAAO,CAAC,SAAiB,EAAE,MAAc,EAAE,OAAY;QAElE,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAC5D,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvF,CAAC;IACO,MAAM,CAAC,OAAO,CAAC,SAAiB,EAAE,MAAc,EAAE,OAAe;QAErE,IAAI,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAEhE,IAAI,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC/C,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,CAAC,gBAAgB,CAAC,MAAc,EAAE,OAAY;QAEhD,OAAO,mBAAmB,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,CAAC,gBAAgB,CAAC,MAAc,EAAE,OAAe;QAEnD,OAAO,mBAAmB,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;CACJ;AA3BD,kDA2BC"}
@@ -0,0 +1,4 @@
1
+ export declare class HashOperation {
2
+ static sha256Secret(secret: string, message: any): string;
3
+ static sha256(message: any): string;
4
+ }
@@ -0,0 +1,41 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.HashOperation = void 0;
27
+ const crypto = __importStar(require("node:crypto"));
28
+ class HashOperation {
29
+ static sha256Secret(secret, message) {
30
+ const hash = crypto.createHmac('sha256', secret);
31
+ hash.update(JSON.stringify(message));
32
+ return hash.digest('hex');
33
+ }
34
+ static sha256(message) {
35
+ const hash = crypto.createHash('sha256');
36
+ hash.update(JSON.stringify(message));
37
+ return hash.digest('hex');
38
+ }
39
+ }
40
+ exports.HashOperation = HashOperation;
41
+ //# sourceMappingURL=HashOperation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HashOperation.js","sourceRoot":"","sources":["../src/HashOperation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAsC;AAEtC,MAAa,aAAa;IAEtB,MAAM,CAAC,YAAY,CAAC,MAAc,EAAE,OAAY;QAE5C,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,CAAC,MAAM,CAAC,OAAY;QAEtB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;CACJ;AAdD,sCAcC"}
@@ -1,4 +1,4 @@
1
1
  export declare class SignOperation {
2
- static sign(key: string, values: any): string;
2
+ static sign(secret: string, message: any): string;
3
3
  static isValid(key: string, values: any, signature: string): boolean;
4
4
  }
@@ -1,38 +1,10 @@
1
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  Object.defineProperty(exports, "__esModule", { value: true });
26
3
  exports.SignOperation = void 0;
27
- const crypto = __importStar(require("crypto"));
4
+ const HashOperation_1 = require("./HashOperation");
28
5
  class SignOperation {
29
- static sign(key, values) {
30
- let message = key;
31
- for (let i in values)
32
- message += "-" + values[i];
33
- const hash = crypto.createHash('sha256');
34
- hash.update(message);
35
- return hash.digest('hex');
6
+ static sign(secret, message) {
7
+ return HashOperation_1.HashOperation.sha256Secret(secret, message);
36
8
  }
37
9
  static isValid(key, values, signature) {
38
10
  return this.sign(key, values).toLowerCase() === signature.toLowerCase();
@@ -1 +1 @@
1
- {"version":3,"file":"SignOperation.js","sourceRoot":"","sources":["../src/SignOperation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AACjC,MAAa,aAAa;IAEtB,MAAM,CAAC,IAAI,CAAC,GAAW,EAAE,MAAW;QAEhC,IAAI,OAAO,GAAG,GAAG,CAAC;QAClB,KAAK,IAAI,CAAC,IAAI,MAAM;YAChB,OAAO,IAAI,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,CAAC,OAAO,CAAC,GAAW,EAAE,MAAW,EAAE,SAAiB;QAEtD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CAAC;IAC5E,CAAC;CACJ;AAfD,sCAeC"}
1
+ {"version":3,"file":"SignOperation.js","sourceRoot":"","sources":["../src/SignOperation.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAEhD,MAAa,aAAa;IAEtB,MAAM,CAAC,IAAI,CAAC,MAAc,EAAE,OAAY;QAEpC,OAAO,6BAAa,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,CAAC,OAAO,CAAC,GAAW,EAAE,MAAW,EAAE,SAAiB;QAEtD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CAAC;IAC5E,CAAC;CACJ;AAVD,sCAUC"}
package/dist/index.d.ts CHANGED
@@ -4,9 +4,11 @@ export * from "./Countries";
4
4
  export * from "./ConvertService";
5
5
  export * from "./Country";
6
6
  export * from "./CountryOperation";
7
+ export * from "./EncryptionOperation";
7
8
  export * from "./ErrorOperation";
8
9
  export * from "./FileOperation";
9
10
  export * from "./GeoOperation";
11
+ export * from "./HashOperation";
10
12
  export * from "./HTTPError";
11
13
  export * from "./HTTPMethod";
12
14
  export * from "./IStorage";
package/dist/index.js CHANGED
@@ -20,9 +20,11 @@ __exportStar(require("./Countries"), exports);
20
20
  __exportStar(require("./ConvertService"), exports);
21
21
  __exportStar(require("./Country"), exports);
22
22
  __exportStar(require("./CountryOperation"), exports);
23
+ __exportStar(require("./EncryptionOperation"), exports);
23
24
  __exportStar(require("./ErrorOperation"), exports);
24
25
  __exportStar(require("./FileOperation"), exports);
25
26
  __exportStar(require("./GeoOperation"), exports);
27
+ __exportStar(require("./HashOperation"), exports);
26
28
  __exportStar(require("./HTTPError"), exports);
27
29
  __exportStar(require("./HTTPMethod"), exports);
28
30
  __exportStar(require("./IStorage"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,+CAA6B;AAC7B,8CAA4B;AAC5B,mDAAiC;AACjC,4CAA0B;AAC1B,qDAAmC;AACnC,mDAAiC;AACjC,kDAAgC;AAChC,iDAA+B;AAC/B,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,kDAAgC;AAChC,mDAAiC;AACjC,kDAAgC;AAChC,mDAAiC;AACjC,oDAAkC;AAClC,mDAAiC;AACjC,kDAAgC;AAChC,oDAAkC;AAClC,kDAAgC;AAChC,iDAA+B;AAC/B,qDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,+CAA6B;AAC7B,8CAA4B;AAC5B,mDAAiC;AACjC,4CAA0B;AAC1B,qDAAmC;AACnC,wDAAsC;AACtC,mDAAiC;AACjC,kDAAgC;AAChC,iDAA+B;AAC/B,kDAAgC;AAChC,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,kDAAgC;AAChC,mDAAiC;AACjC,kDAAgC;AAChC,mDAAiC;AACjC,oDAAkC;AAClC,mDAAiC;AACjC,kDAAgC;AAChC,oDAAkC;AAClC,kDAAgC;AAChC,iDAA+B;AAC/B,qDAAmC"}
package/package.json CHANGED
@@ -1,17 +1,15 @@
1
1
  {
2
2
  "name": "namirasoft-core",
3
3
  "description": "Namira Software Corporation Core NPM Package",
4
- "version": "1.2.6",
4
+ "version": "1.2.8",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
7
7
  "scripts": {},
8
8
  "author": "Amir Abolhasani",
9
9
  "license": "MIT",
10
10
  "dependencies": {
11
- "@types/md5": "^2.3.5",
12
11
  "@types/node": "^20.11.24",
13
12
  "axios": "^1.6.7",
14
- "md5": "^2.3.0",
15
13
  "moment": "^2.30.1",
16
14
  "phone": "^3.1.42"
17
15
  }
@@ -0,0 +1,30 @@
1
+ import * as crypto from 'node:crypto';
2
+
3
+ export class EncryptionOperation
4
+ {
5
+ private static encrypt(algorithm: string, secret: string, message: any)
6
+ {
7
+ const iv = Buffer.alloc(16, 0);
8
+ const cipher = crypto.createCipheriv(algorithm, secret, iv);
9
+ return cipher.update(JSON.stringify(message), 'utf8', 'hex') + cipher.final('hex');
10
+ }
11
+ private static decrypt(algorithm: string, secret: string, message: string): any
12
+ {
13
+ let encryptedText = Buffer.from(message, 'hex');
14
+
15
+ const iv = Buffer.alloc(16, 0);
16
+ const decipher = crypto.createDecipheriv(algorithm, secret, iv);
17
+
18
+ let decrypted = decipher.update(encryptedText);
19
+ decrypted = Buffer.concat([decrypted, decipher.final()]);
20
+ return JSON.parse(decrypted.toString());
21
+ }
22
+ static AES256CCMEncrypt(secret: string, message: any)
23
+ {
24
+ return EncryptionOperation.encrypt("aes-256-ccm", secret, message);
25
+ }
26
+ static AES256CCMDecrypt(secret: string, message: string): any
27
+ {
28
+ return EncryptionOperation.decrypt("aes-256-ccm", secret, message);
29
+ }
30
+ }
@@ -0,0 +1,17 @@
1
+ import * as crypto from 'node:crypto';
2
+
3
+ export class HashOperation
4
+ {
5
+ static sha256Secret(secret: string, message: any)
6
+ {
7
+ const hash = crypto.createHmac('sha256', secret);
8
+ hash.update(JSON.stringify(message));
9
+ return hash.digest('hex');
10
+ }
11
+ static sha256(message: any)
12
+ {
13
+ const hash = crypto.createHash('sha256');
14
+ hash.update(JSON.stringify(message));
15
+ return hash.digest('hex');
16
+ }
17
+ }
@@ -1,14 +1,10 @@
1
- import * as crypto from 'crypto';
1
+ import { HashOperation } from "./HashOperation";
2
+
2
3
  export class SignOperation
3
4
  {
4
- static sign(key: string, values: any)
5
+ static sign(secret: string, message: any)
5
6
  {
6
- let message = key;
7
- for (let i in values)
8
- message += "-" + values[i];
9
- const hash = crypto.createHash('sha256');
10
- hash.update(message);
11
- return hash.digest('hex');
7
+ return HashOperation.sha256Secret(secret, message);
12
8
  }
13
9
  static isValid(key: string, values: any, signature: string)
14
10
  {
package/src/index.ts CHANGED
@@ -4,9 +4,11 @@ export * from "./Countries";
4
4
  export * from "./ConvertService";
5
5
  export * from "./Country";
6
6
  export * from "./CountryOperation";
7
+ export * from "./EncryptionOperation";
7
8
  export * from "./ErrorOperation";
8
9
  export * from "./FileOperation";
9
10
  export * from "./GeoOperation";
11
+ export * from "./HashOperation";
10
12
  export * from "./HTTPError";
11
13
  export * from "./HTTPMethod";
12
14
  export * from "./IStorage";