@haskou/value-objects 2.5.0 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/README.md +4 -4
  2. package/dist/value-objects/crypto/CryptoAdapter.d.ts +30 -0
  3. package/dist/value-objects/crypto/CryptoAdapter.d.ts.map +1 -0
  4. package/dist/value-objects/crypto/CryptoAdapter.js +96 -0
  5. package/dist/value-objects/crypto/CryptoAdapter.js.map +1 -0
  6. package/dist/value-objects/crypto/CryptoPayload.d.ts +1 -0
  7. package/dist/value-objects/crypto/CryptoPayload.d.ts.map +1 -1
  8. package/dist/value-objects/crypto/EncryptedKeyPair.d.ts +1 -0
  9. package/dist/value-objects/crypto/EncryptedKeyPair.d.ts.map +1 -1
  10. package/dist/value-objects/crypto/EncryptedKeyPair.js.map +1 -1
  11. package/dist/value-objects/crypto/EncryptedPrivateKey.d.ts +2 -5
  12. package/dist/value-objects/crypto/EncryptedPrivateKey.d.ts.map +1 -1
  13. package/dist/value-objects/crypto/EncryptedPrivateKey.js +21 -39
  14. package/dist/value-objects/crypto/EncryptedPrivateKey.js.map +1 -1
  15. package/dist/value-objects/crypto/KeyPair.d.ts +1 -0
  16. package/dist/value-objects/crypto/KeyPair.d.ts.map +1 -1
  17. package/dist/value-objects/crypto/KeyPair.js +4 -10
  18. package/dist/value-objects/crypto/KeyPair.js.map +1 -1
  19. package/dist/value-objects/crypto/PrivateKey.d.ts +1 -0
  20. package/dist/value-objects/crypto/PrivateKey.d.ts.map +1 -1
  21. package/dist/value-objects/crypto/PrivateKey.js +14 -33
  22. package/dist/value-objects/crypto/PrivateKey.js.map +1 -1
  23. package/dist/value-objects/crypto/PublicKey.d.ts.map +1 -1
  24. package/dist/value-objects/crypto/PublicKey.js +16 -29
  25. package/dist/value-objects/crypto/PublicKey.js.map +1 -1
  26. package/dist/value-objects/crypto/Signature.d.ts +1 -0
  27. package/dist/value-objects/crypto/Signature.d.ts.map +1 -1
  28. package/dist/value-objects/crypto/Signature.js.map +1 -1
  29. package/dist/value-objects/crypto/encrypted-private-key/CryptoDerivation.d.ts +21 -0
  30. package/dist/value-objects/crypto/encrypted-private-key/CryptoDerivation.d.ts.map +1 -0
  31. package/dist/value-objects/crypto/encrypted-private-key/CryptoDerivation.js +56 -0
  32. package/dist/value-objects/crypto/encrypted-private-key/CryptoDerivation.js.map +1 -0
  33. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.d.ts +14 -0
  34. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.d.ts.map +1 -0
  35. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.js +33 -0
  36. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.js.map +1 -0
  37. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.d.ts +20 -0
  38. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.d.ts.map +1 -0
  39. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.js +69 -0
  40. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.js.map +1 -0
  41. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.d.ts +8 -0
  42. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.d.ts.map +1 -0
  43. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.js +10 -0
  44. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.js.map +1 -0
  45. package/dist/value-objects/hashes/Hash.d.ts.map +1 -1
  46. package/dist/value-objects/hashes/Hash.js +2 -1
  47. package/dist/value-objects/hashes/Hash.js.map +1 -1
  48. package/dist/value-objects/hashes/MD5Hash.d.ts +1 -0
  49. package/dist/value-objects/hashes/MD5Hash.d.ts.map +1 -1
  50. package/dist/value-objects/hashes/MD5Hash.js +2 -3
  51. package/dist/value-objects/hashes/MD5Hash.js.map +1 -1
  52. package/dist/value-objects/hashes/SHA256Hash.d.ts +1 -0
  53. package/dist/value-objects/hashes/SHA256Hash.d.ts.map +1 -1
  54. package/dist/value-objects/hashes/SHA256Hash.js +4 -3
  55. package/dist/value-objects/hashes/SHA256Hash.js.map +1 -1
  56. package/dist/value-objects/hashes/SHA512Hash.d.ts +1 -0
  57. package/dist/value-objects/hashes/SHA512Hash.d.ts.map +1 -1
  58. package/dist/value-objects/hashes/SHA512Hash.js +4 -3
  59. package/dist/value-objects/hashes/SHA512Hash.js.map +1 -1
  60. package/dist/value-objects/media/Media.d.ts +1 -0
  61. package/dist/value-objects/media/Media.d.ts.map +1 -1
  62. package/dist/value-objects/media/Media.js +2 -1
  63. package/dist/value-objects/media/Media.js.map +1 -1
  64. package/package.json +4 -1
  65. package/dist/errors/InvalidValueError.d.ts +0 -5
  66. package/dist/errors/InvalidValueError.d.ts.map +0 -1
  67. package/dist/errors/InvalidValueError.js +0 -11
  68. package/dist/errors/InvalidValueError.js.map +0 -1
@@ -0,0 +1,21 @@
1
+ import { Buffer } from 'buffer';
2
+ type NodeLikeCrypto = {
3
+ pbkdf2?: (password: string, salt: Buffer, iterations: number, keyLength: number, algorithm: string, callback: (err: Error | null, key: Buffer) => void) => void;
4
+ randomBytes?: (size: number, callback: (err: Error | null, bytes: Buffer) => void) => void;
5
+ scrypt?: (password: string, salt: Buffer, keylen: number, options: {
6
+ N: number;
7
+ r: number;
8
+ p: number;
9
+ }, callback: (err: Error | null, key: Buffer) => void) => void;
10
+ };
11
+ export declare class CryptoDerivation {
12
+ static pbkdf2Async(password: string, salt: Buffer, iterations: number, keyLength: number, algorithm: string, cryptoModule?: NodeLikeCrypto): Promise<Buffer>;
13
+ static scryptAsync(password: string, salt: Buffer, keylen: number, options: {
14
+ N: number;
15
+ r: number;
16
+ p: number;
17
+ }, cryptoModule?: NodeLikeCrypto): Promise<Buffer>;
18
+ static randomBytesAsync(size: number, cryptoModule?: NodeLikeCrypto): Promise<Buffer>;
19
+ }
20
+ export {};
21
+ //# sourceMappingURL=CryptoDerivation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CryptoDerivation.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/CryptoDerivation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,KAAK,cAAc,GAAG;IACpB,MAAM,CAAC,EAAE,CACP,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,KAC/C,IAAI,CAAC;IACV,WAAW,CAAC,EAAE,CACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,KACjD,IAAI,CAAC;IACV,MAAM,CAAC,EAAE,CACP,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAC5C,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,KAC/C,IAAI,CAAC;CACX,CAAC;AAEF,qBAAa,gBAAgB;WACP,WAAW,CAC7B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,cAAc,GAC5B,OAAO,CAAC,MAAM,CAAC;WA0BJ,WAAW,CACvB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAC5C,YAAY,CAAC,EAAE,cAAc,GAC5B,OAAO,CAAC,MAAM,CAAC;WAeE,gBAAgB,CAClC,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,cAAc,GAC5B,OAAO,CAAC,MAAM,CAAC;CAYnB"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CryptoDerivation = void 0;
4
+ const pbkdf2_js_1 = require("@noble/hashes/pbkdf2.js");
5
+ const scrypt_js_1 = require("@noble/hashes/scrypt.js");
6
+ const sha2_js_1 = require("@noble/hashes/sha2.js");
7
+ const buffer_1 = require("buffer");
8
+ const CryptoAdapter_1 = require("../CryptoAdapter");
9
+ class CryptoDerivation {
10
+ static async pbkdf2Async(password, salt, iterations, keyLength, algorithm, cryptoModule) {
11
+ if (cryptoModule?.pbkdf2) {
12
+ return new Promise((resolve, reject) => {
13
+ cryptoModule.pbkdf2(password, salt, iterations, keyLength, algorithm, (err, key) => {
14
+ if (err)
15
+ reject(err);
16
+ else
17
+ resolve(key);
18
+ });
19
+ });
20
+ }
21
+ const hash = algorithm === 'sha512' ? sha2_js_1.sha512 : sha2_js_1.sha256;
22
+ const key = await (0, pbkdf2_js_1.pbkdf2Async)(hash, password, salt, {
23
+ c: iterations,
24
+ dkLen: keyLength,
25
+ });
26
+ return buffer_1.Buffer.from(key);
27
+ }
28
+ static scryptAsync(password, salt, keylen, options, cryptoModule) {
29
+ if (cryptoModule?.scrypt) {
30
+ return new Promise((resolve, reject) => {
31
+ cryptoModule.scrypt(password, salt, keylen, options, (err, key) => {
32
+ if (err)
33
+ reject(err);
34
+ else
35
+ resolve(key);
36
+ });
37
+ });
38
+ }
39
+ return (0, scrypt_js_1.scryptAsync)(password, salt, { ...options, dkLen: keylen }).then(buffer_1.Buffer.from);
40
+ }
41
+ static async randomBytesAsync(size, cryptoModule) {
42
+ if (cryptoModule?.randomBytes) {
43
+ return new Promise((resolve, reject) => {
44
+ cryptoModule.randomBytes(size, (err, bytes) => {
45
+ if (err)
46
+ reject(err);
47
+ else
48
+ resolve(bytes);
49
+ });
50
+ });
51
+ }
52
+ return CryptoAdapter_1.CryptoAdapter.randomBytes(size);
53
+ }
54
+ }
55
+ exports.CryptoDerivation = CryptoDerivation;
56
+ //# sourceMappingURL=CryptoDerivation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CryptoDerivation.js","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/CryptoDerivation.ts"],"names":[],"mappings":";;;AAAA,uDAAsD;AACtD,uDAAsD;AACtD,mDAAuD;AACvD,mCAAgC;AAEhC,oDAAiD;AAwBjD,MAAa,gBAAgB;IACpB,MAAM,CAAC,KAAK,CAAC,WAAW,CAC7B,QAAgB,EAChB,IAAY,EACZ,UAAkB,EAClB,SAAiB,EACjB,SAAiB,EACjB,YAA6B;QAE7B,IAAI,YAAY,EAAE,MAAM,EAAE,CAAC;YACzB,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC7C,YAAY,CAAC,MAAO,CAClB,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,SAAS,EACT,SAAS,EACT,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;oBACX,IAAI,GAAG;wBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;wBAChB,OAAO,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC,CACF,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAG,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAM,CAAC,CAAC,CAAC,gBAAM,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,IAAA,uBAAW,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;YAClD,CAAC,EAAE,UAAU;YACb,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,OAAO,eAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAEM,MAAM,CAAC,WAAW,CACvB,QAAgB,EAChB,IAAY,EACZ,MAAc,EACd,OAA4C,EAC5C,YAA6B;QAE7B,IAAI,YAAY,EAAE,MAAM,EAAE,CAAC;YACzB,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC7C,YAAY,CAAC,MAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;oBACjE,IAAI,GAAG;wBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;wBAChB,OAAO,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAA,uBAAW,EAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CACpE,eAAM,CAAC,IAAI,CACZ,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAClC,IAAY,EACZ,YAA6B;QAE7B,IAAI,YAAY,EAAE,WAAW,EAAE,CAAC;YAC9B,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC7C,YAAY,CAAC,WAAY,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;oBAC7C,IAAI,GAAG;wBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;wBAChB,OAAO,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,6BAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;CACF;AAtED,4CAsEC"}
@@ -0,0 +1,14 @@
1
+ import { StringValueObject } from '../../StringValueObject';
2
+ import { PrivateKey } from '../PrivateKey';
3
+ import { EncryptedPrivateKeyVersion } from './EncryptedPrivateKeyVersion';
4
+ export declare class EncryptedPrivateKeyLegacy extends EncryptedPrivateKeyVersion {
5
+ private static readonly LEGACY_ITERATIONS;
6
+ private static readonly LEGACY_ALGORITHM;
7
+ private static readonly KEY_LENGTH;
8
+ private static readonly CIPHER;
9
+ private static readonly EXPECTED_PARTS;
10
+ matches(parts: string[]): boolean;
11
+ decrypt(parts: string[], password: string | StringValueObject): Promise<PrivateKey>;
12
+ needsReEncryption(): boolean;
13
+ }
14
+ //# sourceMappingURL=EncryptedPrivateKeyLegacy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EncryptedPrivateKeyLegacy.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,qBAAa,yBAA0B,SAAQ,0BAA0B;IACvE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAU;IACnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAY;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAM;IACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAC/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAK;IAEpC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO;IAI3B,OAAO,CAClB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,UAAU,CAAC;IAoBf,iBAAiB,IAAI,OAAO;CAGpC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EncryptedPrivateKeyLegacy = void 0;
4
+ const buffer_1 = require("buffer");
5
+ const CryptoAdapter_1 = require("../CryptoAdapter");
6
+ const PrivateKey_1 = require("../PrivateKey");
7
+ const CryptoDerivation_1 = require("./CryptoDerivation");
8
+ const EncryptedPrivateKeyVersion_1 = require("./EncryptedPrivateKeyVersion");
9
+ class EncryptedPrivateKeyLegacy extends EncryptedPrivateKeyVersion_1.EncryptedPrivateKeyVersion {
10
+ static LEGACY_ITERATIONS = 100000;
11
+ static LEGACY_ALGORITHM = 'sha256';
12
+ static KEY_LENGTH = 32;
13
+ static CIPHER = 'aes-256-gcm';
14
+ static EXPECTED_PARTS = 4;
15
+ matches(parts) {
16
+ return parts.length === EncryptedPrivateKeyLegacy.EXPECTED_PARTS;
17
+ }
18
+ async decrypt(parts, password) {
19
+ const [cipherTextB64, ivB64, saltB64, tagB64] = parts;
20
+ const cipherText = buffer_1.Buffer.from(cipherTextB64, 'base64');
21
+ const iv = buffer_1.Buffer.from(ivB64, 'base64');
22
+ const salt = buffer_1.Buffer.from(saltB64, 'base64');
23
+ const tag = buffer_1.Buffer.from(tagB64, 'base64');
24
+ const key = await CryptoDerivation_1.CryptoDerivation.pbkdf2Async(password.valueOf(), salt, EncryptedPrivateKeyLegacy.LEGACY_ITERATIONS, EncryptedPrivateKeyLegacy.KEY_LENGTH, EncryptedPrivateKeyLegacy.LEGACY_ALGORITHM);
25
+ const decrypted = CryptoAdapter_1.CryptoAdapter.decryptAes256Gcm(key, iv, cipherText, tag);
26
+ return new PrivateKey_1.PrivateKey(decrypted.toString());
27
+ }
28
+ needsReEncryption() {
29
+ return true;
30
+ }
31
+ }
32
+ exports.EncryptedPrivateKeyLegacy = EncryptedPrivateKeyLegacy;
33
+ //# sourceMappingURL=EncryptedPrivateKeyLegacy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EncryptedPrivateKeyLegacy.js","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAGhC,oDAAiD;AACjD,8CAA2C;AAC3C,yDAAsD;AACtD,6EAA0E;AAE1E,MAAa,yBAA0B,SAAQ,uDAA0B;IAC/D,MAAM,CAAU,iBAAiB,GAAG,MAAM,CAAC;IAC3C,MAAM,CAAU,gBAAgB,GAAG,QAAQ,CAAC;IAC5C,MAAM,CAAU,UAAU,GAAG,EAAE,CAAC;IAChC,MAAM,CAAU,MAAM,GAAG,aAAa,CAAC;IACvC,MAAM,CAAU,cAAc,GAAG,CAAC,CAAC;IAEpC,OAAO,CAAC,KAAe;QAC5B,OAAO,KAAK,CAAC,MAAM,KAAK,yBAAyB,CAAC,cAAc,CAAC;IACnE,CAAC;IAEM,KAAK,CAAC,OAAO,CAClB,KAAe,EACf,QAAoC;QAEpC,MAAM,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;QACtD,MAAM,UAAU,GAAG,eAAM,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QACxD,MAAM,EAAE,GAAG,eAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,eAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,eAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAE1C,MAAM,GAAG,GAAG,MAAM,mCAAgB,CAAC,WAAW,CAC5C,QAAQ,CAAC,OAAO,EAAE,EAClB,IAAI,EACJ,yBAAyB,CAAC,iBAAiB,EAC3C,yBAAyB,CAAC,UAAU,EACpC,yBAAyB,CAAC,gBAAgB,CAC3C,CAAC;QAEF,MAAM,SAAS,GAAG,6BAAa,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;QAE3E,OAAO,IAAI,uBAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9C,CAAC;IAEM,iBAAiB;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;;AApCH,8DAqCC"}
@@ -0,0 +1,20 @@
1
+ import { StringValueObject } from '../../StringValueObject';
2
+ import { PrivateKey } from '../PrivateKey';
3
+ import { EncryptedPrivateKeyVersion } from './EncryptedPrivateKeyVersion';
4
+ export declare class EncryptedPrivateKeyV2 extends EncryptedPrivateKeyVersion {
5
+ private static readonly VERSION;
6
+ private static readonly KDF;
7
+ private static readonly SCRYPT_N;
8
+ private static readonly SCRYPT_R;
9
+ private static readonly SCRYPT_P;
10
+ private static readonly SALT_ENTROPY;
11
+ private static readonly IV_ENTROPY;
12
+ private static readonly KEY_LENGTH;
13
+ private static readonly CIPHER;
14
+ private static readonly EXPECTED_PARTS;
15
+ private static hasSupportedScryptParameters;
16
+ static encrypt(privateKey: PrivateKey, password: string | StringValueObject): Promise<string>;
17
+ matches(parts: string[]): boolean;
18
+ decrypt(parts: string[], password: string | StringValueObject): Promise<PrivateKey>;
19
+ }
20
+ //# sourceMappingURL=EncryptedPrivateKeyV2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EncryptedPrivateKeyV2.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,qBAAa,qBAAsB,SAAQ,0BAA0B;IACnE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAQ;IACvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAY;IACvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAS;IACzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAK;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAK;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAM;IAC1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAM;IACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAM;IACxC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAC/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAK;IAE3C,OAAO,CAAC,MAAM,CAAC,4BAA4B;WAQvB,OAAO,CACzB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,MAAM,CAAC;IAoCX,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO;IAS3B,OAAO,CAClB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,UAAU,CAAC;CAwBvB"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EncryptedPrivateKeyV2 = void 0;
4
+ const buffer_1 = require("buffer");
5
+ const CryptoAdapter_1 = require("../CryptoAdapter");
6
+ const PrivateKey_1 = require("../PrivateKey");
7
+ const CryptoDerivation_1 = require("./CryptoDerivation");
8
+ const EncryptedPrivateKeyVersion_1 = require("./EncryptedPrivateKeyVersion");
9
+ class EncryptedPrivateKeyV2 extends EncryptedPrivateKeyVersion_1.EncryptedPrivateKeyVersion {
10
+ static VERSION = 'v2';
11
+ static KDF = 'scrypt';
12
+ static SCRYPT_N = 16384;
13
+ static SCRYPT_R = 8;
14
+ static SCRYPT_P = 1;
15
+ static SALT_ENTROPY = 16;
16
+ static IV_ENTROPY = 12;
17
+ static KEY_LENGTH = 32;
18
+ static CIPHER = 'aes-256-gcm';
19
+ static EXPECTED_PARTS = 9;
20
+ static hasSupportedScryptParameters(parts) {
21
+ return (parts[2] === `N${EncryptedPrivateKeyV2.SCRYPT_N}` &&
22
+ parts[3] === `r${EncryptedPrivateKeyV2.SCRYPT_R}` &&
23
+ parts[4] === `p${EncryptedPrivateKeyV2.SCRYPT_P}`);
24
+ }
25
+ static async encrypt(privateKey, password) {
26
+ const salt = await CryptoDerivation_1.CryptoDerivation.randomBytesAsync(EncryptedPrivateKeyV2.SALT_ENTROPY);
27
+ const key = await CryptoDerivation_1.CryptoDerivation.scryptAsync(password.valueOf(), salt, EncryptedPrivateKeyV2.KEY_LENGTH, {
28
+ N: EncryptedPrivateKeyV2.SCRYPT_N,
29
+ p: EncryptedPrivateKeyV2.SCRYPT_P,
30
+ r: EncryptedPrivateKeyV2.SCRYPT_R,
31
+ });
32
+ const iv = await CryptoDerivation_1.CryptoDerivation.randomBytesAsync(EncryptedPrivateKeyV2.IV_ENTROPY);
33
+ const { cipherText, tag } = CryptoAdapter_1.CryptoAdapter.encryptAes256Gcm(key, iv, buffer_1.Buffer.from(privateKey.valueOf()));
34
+ return [
35
+ EncryptedPrivateKeyV2.VERSION,
36
+ EncryptedPrivateKeyV2.KDF,
37
+ `N${EncryptedPrivateKeyV2.SCRYPT_N}`,
38
+ `r${EncryptedPrivateKeyV2.SCRYPT_R}`,
39
+ `p${EncryptedPrivateKeyV2.SCRYPT_P}`,
40
+ salt.toString('base64'),
41
+ iv.toString('base64'),
42
+ buffer_1.Buffer.from(tag).toString('base64'),
43
+ buffer_1.Buffer.from(cipherText).toString('base64'),
44
+ ].join('.');
45
+ }
46
+ matches(parts) {
47
+ return (parts.length === EncryptedPrivateKeyV2.EXPECTED_PARTS &&
48
+ parts[0] === EncryptedPrivateKeyV2.VERSION &&
49
+ parts[1] === EncryptedPrivateKeyV2.KDF &&
50
+ EncryptedPrivateKeyV2.hasSupportedScryptParameters(parts));
51
+ }
52
+ async decrypt(parts, password) {
53
+ if (!EncryptedPrivateKeyV2.hasSupportedScryptParameters(parts)) {
54
+ throw new Error('Unsupported encrypted private key parameters');
55
+ }
56
+ const N = parseInt(parts[2].slice(1), 10);
57
+ const r = parseInt(parts[3].slice(1), 10);
58
+ const p = parseInt(parts[4].slice(1), 10);
59
+ const salt = buffer_1.Buffer.from(parts[5], 'base64');
60
+ const iv = buffer_1.Buffer.from(parts[6], 'base64');
61
+ const tag = buffer_1.Buffer.from(parts[7], 'base64');
62
+ const cipherText = buffer_1.Buffer.from(parts[8], 'base64');
63
+ const key = await CryptoDerivation_1.CryptoDerivation.scryptAsync(password.valueOf(), salt, EncryptedPrivateKeyV2.KEY_LENGTH, { N, p, r });
64
+ const decrypted = CryptoAdapter_1.CryptoAdapter.decryptAes256Gcm(key, iv, cipherText, tag);
65
+ return new PrivateKey_1.PrivateKey(decrypted.toString());
66
+ }
67
+ }
68
+ exports.EncryptedPrivateKeyV2 = EncryptedPrivateKeyV2;
69
+ //# sourceMappingURL=EncryptedPrivateKeyV2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EncryptedPrivateKeyV2.js","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { StringValueObject } from '../../StringValueObject';
2
+ import { PrivateKey } from '../PrivateKey';
3
+ export declare abstract class EncryptedPrivateKeyVersion {
4
+ abstract matches(parts: string[]): boolean;
5
+ abstract decrypt(parts: string[], password: string | StringValueObject): Promise<PrivateKey>;
6
+ needsReEncryption(): boolean;
7
+ }
8
+ //# sourceMappingURL=EncryptedPrivateKeyVersion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EncryptedPrivateKeyVersion.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,8BAAsB,0BAA0B;aAC9B,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO;aACjC,OAAO,CACrB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,UAAU,CAAC;IAEf,iBAAiB,IAAI,OAAO;CAGpC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EncryptedPrivateKeyVersion = void 0;
4
+ class EncryptedPrivateKeyVersion {
5
+ needsReEncryption() {
6
+ return false;
7
+ }
8
+ }
9
+ exports.EncryptedPrivateKeyVersion = EncryptedPrivateKeyVersion;
10
+ //# sourceMappingURL=EncryptedPrivateKeyVersion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EncryptedPrivateKeyVersion.js","sourceRoot":"","sources":["../../../../src/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.ts"],"names":[],"mappings":";;;AAGA,MAAsB,0BAA0B;IAOvC,iBAAiB;QACtB,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAVD,gEAUC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/Hash.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,8BAAsB,IAAK,SAAQ,WAAW,CAAC,MAAM,CAAC;gBACxC,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAQvC,QAAQ,IAAI,iBAAiB;CAKrC"}
1
+ {"version":3,"file":"Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/Hash.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,8BAAsB,IAAK,SAAQ,WAAW,CAAC,MAAM,CAAC;gBACxC,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAQvC,QAAQ,IAAI,iBAAiB;CAKrC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Hash = void 0;
4
+ const buffer_1 = require("buffer");
4
5
  const NullObject_1 = require("../NullObject");
5
6
  const StringValueObject_1 = require("../StringValueObject");
6
7
  const ValueObject_1 = require("../ValueObject");
@@ -12,7 +13,7 @@ class Hash extends ValueObject_1.ValueObject {
12
13
  }
13
14
  }
14
15
  toBase64() {
15
- return new StringValueObject_1.StringValueObject(Buffer.from(this.valueOf(), 'hex').toString('base64'));
16
+ return new StringValueObject_1.StringValueObject(buffer_1.Buffer.from(this.valueOf(), 'hex').toString('base64'));
16
17
  }
17
18
  }
18
19
  exports.Hash = Hash;
@@ -1 +1 @@
1
- {"version":3,"file":"Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/Hash.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAsB,IAAK,SAAQ,yBAAmB;IACpD,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AAdD,oBAcC"}
1
+ {"version":3,"file":"Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/Hash.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAsB,IAAK,SAAQ,yBAAmB;IACpD,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AAdD,oBAcC"}
@@ -1,3 +1,4 @@
1
+ import { Buffer } from 'buffer';
1
2
  import { Media } from '../media/Media';
2
3
  import { StringValueObject } from '../StringValueObject';
3
4
  import { Hash } from './Hash';
@@ -1 +1 @@
1
- {"version":3,"file":"MD5Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/MD5Hash.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,OAAQ,SAAQ,IAAI;WACjB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,OAAO;gBAME,MAAM,EAAE,MAAM,GAAG,iBAAiB;CAY/C"}
1
+ {"version":3,"file":"MD5Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/MD5Hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,OAAQ,SAAQ,IAAI;WACjB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,OAAO;gBAIE,MAAM,EAAE,MAAM,GAAG,iBAAiB;CAY/C"}
@@ -1,10 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MD5Hash = void 0;
4
- const tslib_1 = require("tslib");
5
- const node_crypto_1 = tslib_1.__importDefault(require("node:crypto"));
6
4
  const InvalidHashError_1 = require("../../errors/InvalidHashError");
7
5
  const patterns_1 = require("../../patterns");
6
+ const CryptoAdapter_1 = require("../crypto/CryptoAdapter");
8
7
  const NullObject_1 = require("../NullObject");
9
8
  const Hash_1 = require("./Hash");
10
9
  class MD5Hash extends Hash_1.Hash {
@@ -12,7 +11,7 @@ class MD5Hash extends Hash_1.Hash {
12
11
  return !!hash.valueOf().match(/^[a-f0-9]{32}$/);
13
12
  }
14
13
  static from(buffer) {
15
- return new MD5Hash(node_crypto_1.default.createHash('md5').update(buffer.valueOf()).digest('hex'));
14
+ return new MD5Hash(CryptoAdapter_1.CryptoAdapter.hash('md5', buffer.valueOf()));
16
15
  }
17
16
  constructor(source) {
18
17
  super(source?.valueOf());
@@ -1 +1 @@
1
- {"version":3,"file":"MD5Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/MD5Hash.ts"],"names":[],"mappings":";;;;AAAA,sEAAiC;AAEjC,oEAAiE;AACjE,6CAAwC;AAExC,8CAA2C;AAE3C,iCAA8B;AAE9B,MAAa,OAAQ,SAAQ,WAAI;IACxB,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,OAAO,CAChB,qBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAChE,CAAC;IACJ,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAC/B,IAAI,mCAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAC9C,CAAC;IACJ,CAAC;CACF;AAzBD,0BAyBC"}
1
+ {"version":3,"file":"MD5Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/MD5Hash.ts"],"names":[],"mappings":";;;AAEA,oEAAiE;AACjE,6CAAwC;AACxC,2DAAwD;AAExD,8CAA2C;AAE3C,iCAA8B;AAE9B,MAAa,OAAQ,SAAQ,WAAI;IACxB,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,OAAO,CAAC,6BAAa,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAC/B,IAAI,mCAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAC9C,CAAC;IACJ,CAAC;CACF;AAvBD,0BAuBC"}
@@ -1,3 +1,4 @@
1
+ import { Buffer } from 'buffer';
1
2
  import { Media } from '../media/Media';
2
3
  import { StringValueObject } from '../StringValueObject';
3
4
  import { ValueObject } from '../ValueObject';
@@ -1 +1 @@
1
- {"version":3,"file":"SHA256Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA256Hash.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,UAAW,SAAQ,WAAW,CAAC,MAAM,CAAC;WACnC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,UAAU;gBAMD,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAavC,QAAQ,IAAI,iBAAiB;CAKrC"}
1
+ {"version":3,"file":"SHA256Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA256Hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,UAAW,SAAQ,WAAW,CAAC,MAAM,CAAC;WACnC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,UAAU;gBAID,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAavC,QAAQ,IAAI,iBAAiB;CAKrC"}
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SHA256Hash = void 0;
4
- const crypto_1 = require("crypto");
4
+ const buffer_1 = require("buffer");
5
5
  const InvalidHashError_1 = require("../../errors/InvalidHashError");
6
6
  const patterns_1 = require("../../patterns");
7
+ const CryptoAdapter_1 = require("../crypto/CryptoAdapter");
7
8
  const NullObject_1 = require("../NullObject");
8
9
  const StringValueObject_1 = require("../StringValueObject");
9
10
  const ValueObject_1 = require("../ValueObject");
@@ -12,7 +13,7 @@ class SHA256Hash extends ValueObject_1.ValueObject {
12
13
  return !!hash.valueOf().match(/^[a-f0-9]{64}$/i);
13
14
  }
14
15
  static from(buffer) {
15
- return new SHA256Hash((0, crypto_1.createHash)('sha256').update(buffer.valueOf()).digest('hex'));
16
+ return new SHA256Hash(CryptoAdapter_1.CryptoAdapter.hash('sha256', buffer.valueOf()));
16
17
  }
17
18
  constructor(source) {
18
19
  super(source?.valueOf());
@@ -22,7 +23,7 @@ class SHA256Hash extends ValueObject_1.ValueObject {
22
23
  (0, patterns_1.assert)(SHA256Hash.isValid(this.valueOf()), new InvalidHashError_1.InvalidHashError('SHA256', source.valueOf()));
23
24
  }
24
25
  toBase64() {
25
- return new StringValueObject_1.StringValueObject(Buffer.from(this.valueOf(), 'hex').toString('base64'));
26
+ return new StringValueObject_1.StringValueObject(buffer_1.Buffer.from(this.valueOf(), 'hex').toString('base64'));
26
27
  }
27
28
  }
28
29
  exports.SHA256Hash = SHA256Hash;
@@ -1 +1 @@
1
- {"version":3,"file":"SHA256Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA256Hash.ts"],"names":[],"mappings":";;;AAAA,mCAAoC;AAEpC,oEAAiE;AACjE,6CAAwC;AAExC,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAa,UAAW,SAAQ,yBAAmB;IAC1C,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,UAAU,CACnB,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAC5D,CAAC;IACJ,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAClC,IAAI,mCAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CACjD,CAAC;IACJ,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AA/BD,gCA+BC"}
1
+ {"version":3,"file":"SHA256Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA256Hash.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,oEAAiE;AACjE,6CAAwC;AACxC,2DAAwD;AAExD,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAa,UAAW,SAAQ,yBAAmB;IAC1C,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,UAAU,CAAC,6BAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAClC,IAAI,mCAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CACjD,CAAC;IACJ,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AA7BD,gCA6BC"}
@@ -1,3 +1,4 @@
1
+ import { Buffer } from 'buffer';
1
2
  import { Media } from '../media/Media';
2
3
  import { StringValueObject } from '../StringValueObject';
3
4
  import { ValueObject } from '../ValueObject';
@@ -1 +1 @@
1
- {"version":3,"file":"SHA512Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA512Hash.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,UAAW,SAAQ,WAAW,CAAC,MAAM,CAAC;WACnC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,UAAU;gBAMD,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAavC,QAAQ,IAAI,iBAAiB;CAKrC"}
1
+ {"version":3,"file":"SHA512Hash.d.ts","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA512Hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,UAAW,SAAQ,WAAW,CAAC,MAAM,CAAC;WACnC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,OAAO;WAIlD,IAAI,CAChB,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAClD,UAAU;gBAID,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAavC,QAAQ,IAAI,iBAAiB;CAKrC"}
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SHA512Hash = void 0;
4
- const crypto_1 = require("crypto");
4
+ const buffer_1 = require("buffer");
5
5
  const InvalidHashError_1 = require("../../errors/InvalidHashError");
6
6
  const patterns_1 = require("../../patterns");
7
+ const CryptoAdapter_1 = require("../crypto/CryptoAdapter");
7
8
  const NullObject_1 = require("../NullObject");
8
9
  const StringValueObject_1 = require("../StringValueObject");
9
10
  const ValueObject_1 = require("../ValueObject");
@@ -12,7 +13,7 @@ class SHA512Hash extends ValueObject_1.ValueObject {
12
13
  return !!hash.valueOf().match(/^[a-f0-9]{128}$/i);
13
14
  }
14
15
  static from(buffer) {
15
- return new SHA512Hash((0, crypto_1.createHash)('sha512').update(buffer.valueOf()).digest('hex'));
16
+ return new SHA512Hash(CryptoAdapter_1.CryptoAdapter.hash('sha512', buffer.valueOf()));
16
17
  }
17
18
  constructor(source) {
18
19
  super(source?.valueOf());
@@ -22,7 +23,7 @@ class SHA512Hash extends ValueObject_1.ValueObject {
22
23
  (0, patterns_1.assert)(SHA512Hash.isValid(this.valueOf()), new InvalidHashError_1.InvalidHashError('SHA512', source.valueOf()));
23
24
  }
24
25
  toBase64() {
25
- return new StringValueObject_1.StringValueObject(Buffer.from(this.valueOf(), 'hex').toString('base64'));
26
+ return new StringValueObject_1.StringValueObject(buffer_1.Buffer.from(this.valueOf(), 'hex').toString('base64'));
26
27
  }
27
28
  }
28
29
  exports.SHA512Hash = SHA512Hash;
@@ -1 +1 @@
1
- {"version":3,"file":"SHA512Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA512Hash.ts"],"names":[],"mappings":";;;AAAA,mCAAoC;AAEpC,oEAAiE;AACjE,6CAAwC;AAExC,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAa,UAAW,SAAQ,yBAAmB;IAC1C,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACpD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,UAAU,CACnB,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAC5D,CAAC;IACJ,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAClC,IAAI,mCAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CACjD,CAAC;IACJ,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AA/BD,gCA+BC"}
1
+ {"version":3,"file":"SHA512Hash.js","sourceRoot":"","sources":["../../../src/value-objects/hashes/SHA512Hash.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,oEAAiE;AACjE,6CAAwC;AACxC,2DAAwD;AAExD,8CAA2C;AAC3C,4DAAyD;AACzD,gDAA6C;AAE7C,MAAa,UAAW,SAAQ,yBAAmB;IAC1C,MAAM,CAAC,OAAO,CAAC,IAAgC;QACpD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACpD,CAAC;IAEM,MAAM,CAAC,IAAI,CAChB,MAAmD;QAEnD,OAAO,IAAI,UAAU,CAAC,6BAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,YAAY,MAAkC;QAC5C,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAClC,IAAI,mCAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CACjD,CAAC;IACJ,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,qCAAiB,CAC1B,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACtD,CAAC;IACJ,CAAC;CACF;AA7BD,gCA6BC"}
@@ -1,3 +1,4 @@
1
+ import { Buffer } from 'buffer';
1
2
  import { ValueObject } from '../ValueObject';
2
3
  export declare class Media extends ValueObject<string> {
3
4
  constructor(value: string | Buffer);
@@ -1 +1 @@
1
- {"version":3,"file":"Media.d.ts","sourceRoot":"","sources":["../../../src/value-objects/media/Media.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,KAAM,SAAQ,WAAW,CAAC,MAAM,CAAC;gBAChC,KAAK,EAAE,MAAM,GAAG,MAAM;IAQ3B,SAAS,IAAI,MAAM;IAInB,OAAO,IAAI,MAAM;IAIjB,SAAS,IAAI,MAAM;CAG3B"}
1
+ {"version":3,"file":"Media.d.ts","sourceRoot":"","sources":["../../../src/value-objects/media/Media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,KAAM,SAAQ,WAAW,CAAC,MAAM,CAAC;gBAChC,KAAK,EAAE,MAAM,GAAG,MAAM;IAQ3B,SAAS,IAAI,MAAM;IAInB,OAAO,IAAI,MAAM;IAIjB,SAAS,IAAI,MAAM;CAG3B"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Media = void 0;
4
+ const buffer_1 = require("buffer");
4
5
  const NullObject_1 = require("../NullObject");
5
6
  const ValueObject_1 = require("../ValueObject");
6
7
  class Media extends ValueObject_1.ValueObject {
@@ -11,7 +12,7 @@ class Media extends ValueObject_1.ValueObject {
11
12
  }
12
13
  }
13
14
  getBuffer() {
14
- return Buffer.from(this.value);
15
+ return buffer_1.Buffer.from(this.value);
15
16
  }
16
17
  getSize() {
17
18
  return this.getBuffer().length;
@@ -1 +1 @@
1
- {"version":3,"file":"Media.js","sourceRoot":"","sources":["../../../src/value-objects/media/Media.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAC3C,gDAA6C;AAE7C,MAAa,KAAM,SAAQ,yBAAmB;IAC5C,YAAY,KAAsB;QAChC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEM,SAAS;QACd,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;IACjC,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;CACF;AApBD,sBAoBC"}
1
+ {"version":3,"file":"Media.js","sourceRoot":"","sources":["../../../src/value-objects/media/Media.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,8CAA2C;AAC3C,gDAA6C;AAE7C,MAAa,KAAM,SAAQ,yBAAmB;IAC5C,YAAY,KAAsB;QAChC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEzB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEM,SAAS;QACd,OAAO,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;IACjC,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;CACF;AApBD,sBAoBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@haskou/value-objects",
3
- "version": "2.5.0",
3
+ "version": "2.6.0",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "files": [
@@ -52,8 +52,11 @@
52
52
  "typescript": "^5.8.3"
53
53
  },
54
54
  "dependencies": {
55
+ "@noble/ciphers": "^2.2.0",
55
56
  "@noble/curves": "^2.0.1",
57
+ "@noble/hashes": "^2.0.1",
56
58
  "bson-objectid": "^2.0.4",
59
+ "buffer": "^6.0.3",
57
60
  "uuid": "8"
58
61
  }
59
62
  }
@@ -1,5 +0,0 @@
1
- import { DomainError } from './DomainError';
2
- export declare class InvalidValueError extends DomainError {
3
- constructor(message?: string, value?: unknown);
4
- }
5
- //# sourceMappingURL=InvalidValueError.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InvalidValueError.d.ts","sourceRoot":"","sources":["../../src/errors/InvalidValueError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,iBAAkB,SAAQ,WAAW;gBACpC,OAAO,GAAE,MAA8B,EAAE,KAAK,CAAC,EAAE,OAAO;CAGrE"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InvalidValueError = void 0;
4
- const DomainError_1 = require("./DomainError");
5
- class InvalidValueError extends DomainError_1.DomainError {
6
- constructor(message = 'Invalid Value Error', value) {
7
- super(`${message} with value: '${value}'`);
8
- }
9
- }
10
- exports.InvalidValueError = InvalidValueError;
11
- //# sourceMappingURL=InvalidValueError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InvalidValueError.js","sourceRoot":"","sources":["../../src/errors/InvalidValueError.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,MAAa,iBAAkB,SAAQ,yBAAW;IAChD,YAAY,UAAkB,qBAAqB,EAAE,KAAe;QAClE,KAAK,CAAC,GAAG,OAAO,iBAAiB,KAAK,GAAG,CAAC,CAAC;IAC7C,CAAC;CACF;AAJD,8CAIC"}