@haskou/value-objects 4.1.0 → 5.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.
Files changed (153) hide show
  1. package/README.md +78 -176
  2. package/dist/errors/InvalidPasswordError.d.ts +5 -0
  3. package/dist/errors/InvalidPasswordError.d.ts.map +1 -0
  4. package/dist/errors/InvalidPasswordError.js +11 -0
  5. package/dist/errors/InvalidPasswordError.js.map +1 -0
  6. package/dist/errors/index.d.ts +1 -2
  7. package/dist/errors/index.d.ts.map +1 -1
  8. package/dist/errors/index.js +1 -2
  9. package/dist/errors/index.js.map +1 -1
  10. package/dist/interfaces/PrimitiveOf.d.ts +5 -1
  11. package/dist/interfaces/PrimitiveOf.d.ts.map +1 -1
  12. package/dist/patterns/Assert.d.ts +1 -1
  13. package/dist/patterns/Assert.d.ts.map +1 -1
  14. package/dist/types/Primitive.d.ts +1 -1
  15. package/dist/types/Primitive.d.ts.map +1 -1
  16. package/dist/value-objects/Email.d.ts +1 -0
  17. package/dist/value-objects/Email.d.ts.map +1 -1
  18. package/dist/value-objects/Email.js +2 -1
  19. package/dist/value-objects/Email.js.map +1 -1
  20. package/dist/value-objects/Enum.d.ts +1 -1
  21. package/dist/value-objects/Enum.d.ts.map +1 -1
  22. package/dist/value-objects/Enum.js.map +1 -1
  23. package/dist/value-objects/NumberValueObject.js +1 -1
  24. package/dist/value-objects/NumberValueObject.js.map +1 -1
  25. package/dist/value-objects/Password.d.ts +8 -0
  26. package/dist/value-objects/Password.d.ts.map +1 -0
  27. package/dist/value-objects/Password.js +28 -0
  28. package/dist/value-objects/Password.js.map +1 -0
  29. package/dist/value-objects/UniqueObjectArray.d.ts.map +1 -1
  30. package/dist/value-objects/coordinates/Latitude.d.ts.map +1 -1
  31. package/dist/value-objects/coordinates/Latitude.js +5 -4
  32. package/dist/value-objects/coordinates/Latitude.js.map +1 -1
  33. package/dist/value-objects/coordinates/Longitude.d.ts.map +1 -1
  34. package/dist/value-objects/coordinates/Longitude.js +5 -4
  35. package/dist/value-objects/coordinates/Longitude.js.map +1 -1
  36. package/dist/value-objects/hashes/MD5Hash.d.ts +0 -3
  37. package/dist/value-objects/hashes/MD5Hash.d.ts.map +1 -1
  38. package/dist/value-objects/hashes/MD5Hash.js +0 -4
  39. package/dist/value-objects/hashes/MD5Hash.js.map +1 -1
  40. package/dist/value-objects/hashes/SHA256Hash.d.ts +0 -3
  41. package/dist/value-objects/hashes/SHA256Hash.d.ts.map +1 -1
  42. package/dist/value-objects/hashes/SHA256Hash.js +0 -4
  43. package/dist/value-objects/hashes/SHA256Hash.js.map +1 -1
  44. package/dist/value-objects/hashes/SHA512Hash.d.ts +0 -3
  45. package/dist/value-objects/hashes/SHA512Hash.d.ts.map +1 -1
  46. package/dist/value-objects/hashes/SHA512Hash.js +0 -4
  47. package/dist/value-objects/hashes/SHA512Hash.js.map +1 -1
  48. package/dist/value-objects/ids/ShortId.d.ts +2 -0
  49. package/dist/value-objects/ids/ShortId.d.ts.map +1 -1
  50. package/dist/value-objects/ids/ShortId.js +12 -3
  51. package/dist/value-objects/ids/ShortId.js.map +1 -1
  52. package/dist/value-objects/ids/UUID.d.ts +3 -0
  53. package/dist/value-objects/ids/UUID.d.ts.map +1 -1
  54. package/dist/value-objects/ids/UUID.js +23 -4
  55. package/dist/value-objects/ids/UUID.js.map +1 -1
  56. package/dist/value-objects/index.d.ts +1 -1
  57. package/dist/value-objects/index.d.ts.map +1 -1
  58. package/dist/value-objects/index.js +1 -1
  59. package/dist/value-objects/index.js.map +1 -1
  60. package/dist/value-objects/media/Media.d.ts +2 -0
  61. package/dist/value-objects/media/Media.d.ts.map +1 -1
  62. package/dist/value-objects/media/Media.js +14 -1
  63. package/dist/value-objects/media/Media.js.map +1 -1
  64. package/dist/value-objects/time/CalendarDay.d.ts +2 -1
  65. package/dist/value-objects/time/CalendarDay.d.ts.map +1 -1
  66. package/dist/value-objects/time/CalendarDay.js +25 -11
  67. package/dist/value-objects/time/CalendarDay.js.map +1 -1
  68. package/dist/value-objects/time/DayOfWeek.d.ts.map +1 -1
  69. package/dist/value-objects/time/DayOfWeek.js +2 -3
  70. package/dist/value-objects/time/DayOfWeek.js.map +1 -1
  71. package/dist/value-objects/time/Duration.js +2 -2
  72. package/dist/value-objects/time/Duration.js.map +1 -1
  73. package/dist/value-objects/time/Hour.d.ts +3 -0
  74. package/dist/value-objects/time/Hour.d.ts.map +1 -1
  75. package/dist/value-objects/time/Hour.js +30 -31
  76. package/dist/value-objects/time/Hour.js.map +1 -1
  77. package/dist/value-objects/time/Timestamp.d.ts +3 -0
  78. package/dist/value-objects/time/Timestamp.d.ts.map +1 -1
  79. package/dist/value-objects/time/Timestamp.js +50 -6
  80. package/dist/value-objects/time/Timestamp.js.map +1 -1
  81. package/dist/value-objects/time/TimestampInterval.d.ts +2 -4
  82. package/dist/value-objects/time/TimestampInterval.d.ts.map +1 -1
  83. package/dist/value-objects/time/TimestampInterval.js +0 -10
  84. package/dist/value-objects/time/TimestampInterval.js.map +1 -1
  85. package/package.json +50 -33
  86. package/dist/errors/InvalidKeyError.d.ts +0 -5
  87. package/dist/errors/InvalidKeyError.d.ts.map +0 -1
  88. package/dist/errors/InvalidKeyError.js +0 -11
  89. package/dist/errors/InvalidKeyError.js.map +0 -1
  90. package/dist/errors/InvalidSignatureError.d.ts +0 -5
  91. package/dist/errors/InvalidSignatureError.d.ts.map +0 -1
  92. package/dist/errors/InvalidSignatureError.js +0 -11
  93. package/dist/errors/InvalidSignatureError.js.map +0 -1
  94. package/dist/value-objects/crypto/CryptoAdapter.d.ts +0 -30
  95. package/dist/value-objects/crypto/CryptoAdapter.d.ts.map +0 -1
  96. package/dist/value-objects/crypto/CryptoAdapter.js +0 -96
  97. package/dist/value-objects/crypto/CryptoAdapter.js.map +0 -1
  98. package/dist/value-objects/crypto/CryptoPayload.d.ts +0 -5
  99. package/dist/value-objects/crypto/CryptoPayload.d.ts.map +0 -1
  100. package/dist/value-objects/crypto/CryptoPayload.js +0 -3
  101. package/dist/value-objects/crypto/CryptoPayload.js.map +0 -1
  102. package/dist/value-objects/crypto/EncryptedKeyPair.d.ts +0 -25
  103. package/dist/value-objects/crypto/EncryptedKeyPair.d.ts.map +0 -1
  104. package/dist/value-objects/crypto/EncryptedKeyPair.js +0 -42
  105. package/dist/value-objects/crypto/EncryptedKeyPair.js.map +0 -1
  106. package/dist/value-objects/crypto/EncryptedPayload.d.ts +0 -4
  107. package/dist/value-objects/crypto/EncryptedPayload.d.ts.map +0 -1
  108. package/dist/value-objects/crypto/EncryptedPayload.js +0 -8
  109. package/dist/value-objects/crypto/EncryptedPayload.js.map +0 -1
  110. package/dist/value-objects/crypto/EncryptedPrivateKey.d.ts +0 -11
  111. package/dist/value-objects/crypto/EncryptedPrivateKey.d.ts.map +0 -1
  112. package/dist/value-objects/crypto/EncryptedPrivateKey.js +0 -37
  113. package/dist/value-objects/crypto/EncryptedPrivateKey.js.map +0 -1
  114. package/dist/value-objects/crypto/Key.d.ts +0 -4
  115. package/dist/value-objects/crypto/Key.d.ts.map +0 -1
  116. package/dist/value-objects/crypto/Key.js +0 -8
  117. package/dist/value-objects/crypto/Key.js.map +0 -1
  118. package/dist/value-objects/crypto/KeyPair.d.ts +0 -26
  119. package/dist/value-objects/crypto/KeyPair.d.ts.map +0 -1
  120. package/dist/value-objects/crypto/KeyPair.js +0 -45
  121. package/dist/value-objects/crypto/KeyPair.js.map +0 -1
  122. package/dist/value-objects/crypto/PrivateKey.d.ts +0 -19
  123. package/dist/value-objects/crypto/PrivateKey.d.ts.map +0 -1
  124. package/dist/value-objects/crypto/PrivateKey.js +0 -56
  125. package/dist/value-objects/crypto/PrivateKey.js.map +0 -1
  126. package/dist/value-objects/crypto/PublicKey.d.ts +0 -15
  127. package/dist/value-objects/crypto/PublicKey.d.ts.map +0 -1
  128. package/dist/value-objects/crypto/PublicKey.js +0 -54
  129. package/dist/value-objects/crypto/PublicKey.js.map +0 -1
  130. package/dist/value-objects/crypto/Signature.d.ts +0 -11
  131. package/dist/value-objects/crypto/Signature.d.ts.map +0 -1
  132. package/dist/value-objects/crypto/Signature.js +0 -26
  133. package/dist/value-objects/crypto/Signature.js.map +0 -1
  134. package/dist/value-objects/crypto/encrypted-private-key/CryptoDerivation.d.ts +0 -21
  135. package/dist/value-objects/crypto/encrypted-private-key/CryptoDerivation.d.ts.map +0 -1
  136. package/dist/value-objects/crypto/encrypted-private-key/CryptoDerivation.js +0 -56
  137. package/dist/value-objects/crypto/encrypted-private-key/CryptoDerivation.js.map +0 -1
  138. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.d.ts +0 -14
  139. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.d.ts.map +0 -1
  140. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.js +0 -33
  141. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyLegacy.js.map +0 -1
  142. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.d.ts +0 -20
  143. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.d.ts.map +0 -1
  144. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.js +0 -69
  145. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyV2.js.map +0 -1
  146. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.d.ts +0 -8
  147. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.d.ts.map +0 -1
  148. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.js +0 -10
  149. package/dist/value-objects/crypto/encrypted-private-key/EncryptedPrivateKeyVersion.js.map +0 -1
  150. package/dist/value-objects/crypto/index.d.ts +0 -9
  151. package/dist/value-objects/crypto/index.d.ts.map +0 -1
  152. package/dist/value-objects/crypto/index.js +0 -12
  153. package/dist/value-objects/crypto/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"CryptoPayload.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/CryptoPayload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,iBAAiB,GAAG,MAAM,GAAG,KAAK,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=CryptoPayload.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CryptoPayload.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/CryptoPayload.ts"],"names":[],"mappings":""}
@@ -1,25 +0,0 @@
1
- import type { Buffer } from 'buffer';
2
- import { PrimitiveOf } from '../../interfaces';
3
- import { StringValueObject } from '../StringValueObject';
4
- import { CryptoPayload } from './CryptoPayload';
5
- import { EncryptedPayload } from './EncryptedPayload';
6
- import { EncryptedPrivateKey } from './EncryptedPrivateKey';
7
- import { PrivateKey } from './PrivateKey';
8
- import { PublicKey } from './PublicKey';
9
- import { Signature } from './Signature';
10
- export declare class EncryptedKeyPair {
11
- private readonly publicKey;
12
- private readonly encryptedPrivateKey;
13
- static encryptKeyPair(publicKey: PublicKey, privateKey: PrivateKey, password: string | StringValueObject): Promise<EncryptedKeyPair>;
14
- static fromPrimitives(primitives: PrimitiveOf<EncryptedKeyPair>): EncryptedKeyPair;
15
- constructor(publicKey: PublicKey, encryptedPrivateKey: EncryptedPrivateKey);
16
- isValidSignature(payload: CryptoPayload, signature: Signature): boolean;
17
- sign(payload: CryptoPayload, password: string | StringValueObject): Promise<Signature>;
18
- toPrimitives(): {
19
- encryptedPrivateKey: string;
20
- publicKey: string;
21
- };
22
- encrypt(payload: CryptoPayload): EncryptedPayload;
23
- decrypt(encryptedPayload: EncryptedPayload, password: string | StringValueObject): Promise<Buffer>;
24
- }
25
- //# sourceMappingURL=EncryptedKeyPair.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EncryptedKeyPair.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedKeyPair.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,gBAAgB;IAwBzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;WAxBlB,cAAc,CAChC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,gBAAgB,CAAC;WASd,cAAc,CAC1B,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACxC,gBAAgB;gBAQA,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,mBAAmB;IAGpD,gBAAgB,CACrB,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,SAAS,GACnB,OAAO;IAIG,IAAI,CACf,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,SAAS,CAAC;IAMd,YAAY;;;;IAOZ,OAAO,CAAC,OAAO,EAAE,aAAa,GAAG,gBAAgB;IAI3C,OAAO,CAClB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,MAAM,CAAC;CAKnB"}
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EncryptedKeyPair = void 0;
4
- const EncryptedPrivateKey_1 = require("./EncryptedPrivateKey");
5
- const PublicKey_1 = require("./PublicKey");
6
- class EncryptedKeyPair {
7
- publicKey;
8
- encryptedPrivateKey;
9
- static async encryptKeyPair(publicKey, privateKey, password) {
10
- const encryptedPrivateKey = await EncryptedPrivateKey_1.EncryptedPrivateKey.create(privateKey, password);
11
- return new EncryptedKeyPair(publicKey, encryptedPrivateKey);
12
- }
13
- static fromPrimitives(primitives) {
14
- return new EncryptedKeyPair(new PublicKey_1.PublicKey(primitives.publicKey), new EncryptedPrivateKey_1.EncryptedPrivateKey(primitives.encryptedPrivateKey));
15
- }
16
- constructor(publicKey, encryptedPrivateKey) {
17
- this.publicKey = publicKey;
18
- this.encryptedPrivateKey = encryptedPrivateKey;
19
- }
20
- isValidSignature(payload, signature) {
21
- return this.publicKey.isValidSignature(payload, signature);
22
- }
23
- async sign(payload, password) {
24
- const privateKey = await this.encryptedPrivateKey.decrypt(password);
25
- return privateKey.sign(payload);
26
- }
27
- toPrimitives() {
28
- return {
29
- encryptedPrivateKey: this.encryptedPrivateKey.valueOf(),
30
- publicKey: this.publicKey.valueOf(),
31
- };
32
- }
33
- encrypt(payload) {
34
- return this.publicKey.encrypt(payload);
35
- }
36
- async decrypt(encryptedPayload, password) {
37
- const privateKey = await this.encryptedPrivateKey.decrypt(password);
38
- return privateKey.decrypt(encryptedPayload);
39
- }
40
- }
41
- exports.EncryptedKeyPair = EncryptedKeyPair;
42
- //# sourceMappingURL=EncryptedKeyPair.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EncryptedKeyPair.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedKeyPair.ts"],"names":[],"mappings":";;;AAMA,+DAA4D;AAE5D,2CAAwC;AAGxC,MAAa,gBAAgB;IAwBR;IACA;IAxBZ,MAAM,CAAC,KAAK,CAAC,cAAc,CAChC,SAAoB,EACpB,UAAsB,EACtB,QAAoC;QAEpC,MAAM,mBAAmB,GAAG,MAAM,yCAAmB,CAAC,MAAM,CAC1D,UAAU,EACV,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,gBAAgB,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAC9D,CAAC;IAEM,MAAM,CAAC,cAAc,CAC1B,UAAyC;QAEzC,OAAO,IAAI,gBAAgB,CACzB,IAAI,qBAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EACnC,IAAI,yCAAmB,CAAC,UAAU,CAAC,mBAAmB,CAAC,CACxD,CAAC;IACJ,CAAC;IAED,YACmB,SAAoB,EACpB,mBAAwC;QADxC,cAAS,GAAT,SAAS,CAAW;QACpB,wBAAmB,GAAnB,mBAAmB,CAAqB;IACxD,CAAC;IAEG,gBAAgB,CACrB,OAAsB,EACtB,SAAoB;QAEpB,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;IAEM,KAAK,CAAC,IAAI,CACf,OAAsB,EACtB,QAAoC;QAEpC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEpE,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAEM,YAAY;QACjB,OAAO;YACL,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE;YACvD,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;SACpC,CAAC;IACJ,CAAC;IAEM,OAAO,CAAC,OAAsB;QACnC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAEM,KAAK,CAAC,OAAO,CAClB,gBAAkC,EAClC,QAAoC;QAEpC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEpE,OAAO,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC9C,CAAC;CACF;AA/DD,4CA+DC"}
@@ -1,4 +0,0 @@
1
- import { ValueObject } from '../ValueObject';
2
- export declare class EncryptedPayload extends ValueObject<string> {
3
- }
4
- //# sourceMappingURL=EncryptedPayload.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EncryptedPayload.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedPayload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,gBAAiB,SAAQ,WAAW,CAAC,MAAM,CAAC;CAAG"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EncryptedPayload = void 0;
4
- const ValueObject_1 = require("../ValueObject");
5
- class EncryptedPayload extends ValueObject_1.ValueObject {
6
- }
7
- exports.EncryptedPayload = EncryptedPayload;
8
- //# sourceMappingURL=EncryptedPayload.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EncryptedPayload.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedPayload.ts"],"names":[],"mappings":";;;AAAA,gDAA6C;AAE7C,MAAa,gBAAiB,SAAQ,yBAAmB;CAAG;AAA5D,4CAA4D"}
@@ -1,11 +0,0 @@
1
- import { StringValueObject } from '../StringValueObject';
2
- import { ValueObject } from '../ValueObject';
3
- import { PrivateKey } from './PrivateKey';
4
- export declare class EncryptedPrivateKey extends ValueObject<string> {
5
- private static readonly versions;
6
- static create(privateKey: PrivateKey, password: string | StringValueObject): Promise<EncryptedPrivateKey>;
7
- constructor(encryptedPrivateKey: string | StringValueObject);
8
- decrypt(password: string | StringValueObject): Promise<PrivateKey>;
9
- needsReEncryption(): boolean;
10
- }
11
- //# sourceMappingURL=EncryptedPrivateKey.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EncryptedPrivateKey.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedPrivateKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,qBAAa,mBAAoB,SAAQ,WAAW,CAAC,MAAM,CAAC;IAC1D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAG9B;WAEkB,MAAM,CACxB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,mBAAmB,CAAC;gBASnB,mBAAmB,EAAE,MAAM,GAAG,iBAAiB;IAI9C,OAAO,CAClB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,UAAU,CAAC;IAaf,iBAAiB,IAAI,OAAO;CAYpC"}
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EncryptedPrivateKey = void 0;
4
- const ValueObject_1 = require("../ValueObject");
5
- const EncryptedPrivateKeyLegacy_1 = require("./encrypted-private-key/EncryptedPrivateKeyLegacy");
6
- const EncryptedPrivateKeyV2_1 = require("./encrypted-private-key/EncryptedPrivateKeyV2");
7
- class EncryptedPrivateKey extends ValueObject_1.ValueObject {
8
- static versions = [
9
- new EncryptedPrivateKeyLegacy_1.EncryptedPrivateKeyLegacy(),
10
- new EncryptedPrivateKeyV2_1.EncryptedPrivateKeyV2(),
11
- ];
12
- static async create(privateKey, password) {
13
- const encryptedPrivateKey = await EncryptedPrivateKeyV2_1.EncryptedPrivateKeyV2.encrypt(privateKey, password);
14
- return new EncryptedPrivateKey(encryptedPrivateKey);
15
- }
16
- constructor(encryptedPrivateKey) {
17
- super(encryptedPrivateKey?.valueOf());
18
- }
19
- async decrypt(password) {
20
- const parts = this.valueOf().split('.');
21
- const version = EncryptedPrivateKey.versions.find((handler) => handler.matches(parts));
22
- if (!version) {
23
- throw new Error('Invalid encrypted private key format');
24
- }
25
- return version.decrypt(parts, password);
26
- }
27
- needsReEncryption() {
28
- const parts = this.valueOf().split('.');
29
- const version = EncryptedPrivateKey.versions.find((handler) => handler.matches(parts));
30
- if (!version) {
31
- return false;
32
- }
33
- return version.needsReEncryption();
34
- }
35
- }
36
- exports.EncryptedPrivateKey = EncryptedPrivateKey;
37
- //# sourceMappingURL=EncryptedPrivateKey.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EncryptedPrivateKey.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/EncryptedPrivateKey.ts"],"names":[],"mappings":";;;AACA,gDAA6C;AAC7C,iGAA8F;AAC9F,yFAAsF;AAGtF,MAAa,mBAAoB,SAAQ,yBAAmB;IAClD,MAAM,CAAU,QAAQ,GAAG;QACjC,IAAI,qDAAyB,EAAE;QAC/B,IAAI,6CAAqB,EAAE;KAC5B,CAAC;IAEK,MAAM,CAAC,KAAK,CAAC,MAAM,CACxB,UAAsB,EACtB,QAAoC;QAEpC,MAAM,mBAAmB,GAAG,MAAM,6CAAqB,CAAC,OAAO,CAC7D,UAAU,EACV,QAAQ,CACT,CAAC;QAEF,OAAO,IAAI,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;IACtD,CAAC;IAED,YAAY,mBAA+C;QACzD,KAAK,CAAC,mBAAmB,EAAE,OAAO,EAAE,CAAC,CAAC;IACxC,CAAC;IAEM,KAAK,CAAC,OAAO,CAClB,QAAoC;QAEpC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5D,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CACvB,CAAC;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAEM,iBAAiB;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5D,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CACvB,CAAC;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,OAAO,CAAC,iBAAiB,EAAE,CAAC;IACrC,CAAC;;AAhDH,kDAiDC"}
@@ -1,4 +0,0 @@
1
- import { ValueObject } from '../ValueObject';
2
- export declare abstract class Key extends ValueObject<string> {
3
- }
4
- //# sourceMappingURL=Key.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Key.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/Key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,8BAAsB,GAAI,SAAQ,WAAW,CAAC,MAAM,CAAC;CAAG"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Key = void 0;
4
- const ValueObject_1 = require("../ValueObject");
5
- class Key extends ValueObject_1.ValueObject {
6
- }
7
- exports.Key = Key;
8
- //# sourceMappingURL=Key.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Key.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/Key.ts"],"names":[],"mappings":";;;AAAA,gDAA6C;AAE7C,MAAsB,GAAI,SAAQ,yBAAmB;CAAG;AAAxD,kBAAwD"}
@@ -1,26 +0,0 @@
1
- import type { Buffer } from 'buffer';
2
- import { PrimitiveOf } from '../../interfaces';
3
- import { StringValueObject } from '../StringValueObject';
4
- import { CryptoPayload } from './CryptoPayload';
5
- import { EncryptedKeyPair } from './EncryptedKeyPair';
6
- import { EncryptedPayload } from './EncryptedPayload';
7
- import { PrivateKey } from './PrivateKey';
8
- import { PublicKey } from './PublicKey';
9
- import { Signature } from './Signature';
10
- export declare class KeyPair {
11
- private readonly publicKey;
12
- private readonly privateKey;
13
- static generate(): Promise<KeyPair>;
14
- static fromPrimitives(primitives: PrimitiveOf<KeyPair>): KeyPair;
15
- constructor(publicKey: PublicKey, privateKey: PrivateKey);
16
- encryptKeyPair(password: string | StringValueObject): Promise<EncryptedKeyPair>;
17
- isValidSignature(payload: CryptoPayload, signature: Signature): boolean;
18
- sign(payload: CryptoPayload): Signature;
19
- toPrimitives(): {
20
- privateKey: string;
21
- publicKey: string;
22
- };
23
- encrypt(payload: CryptoPayload): EncryptedPayload;
24
- decrypt(encryptedPayload: EncryptedPayload): Buffer;
25
- }
26
- //# sourceMappingURL=KeyPair.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KeyPair.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/KeyPair.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,OAAO;IAgBhB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,UAAU;WAhBf,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;WAO5B,cAAc,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO;gBAQpD,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU;IAG5B,cAAc,CACzB,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GACnC,OAAO,CAAC,gBAAgB,CAAC;IAQrB,gBAAgB,CACrB,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,SAAS,GACnB,OAAO;IAIH,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS;IAIvC,YAAY;;;;IAOZ,OAAO,CAAC,OAAO,EAAE,aAAa,GAAG,gBAAgB;IAIjD,OAAO,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,MAAM;CAG3D"}
@@ -1,45 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.KeyPair = void 0;
4
- const EncryptedKeyPair_1 = require("./EncryptedKeyPair");
5
- const PrivateKey_1 = require("./PrivateKey");
6
- const PublicKey_1 = require("./PublicKey");
7
- class KeyPair {
8
- publicKey;
9
- privateKey;
10
- static generate() {
11
- const privateKey = PrivateKey_1.PrivateKey.generate();
12
- const publicKey = privateKey.getPublicKey();
13
- return Promise.resolve(new KeyPair(publicKey, privateKey));
14
- }
15
- static fromPrimitives(primitives) {
16
- return new KeyPair(new PublicKey_1.PublicKey(primitives.publicKey), new PrivateKey_1.PrivateKey(primitives.privateKey));
17
- }
18
- constructor(publicKey, privateKey) {
19
- this.publicKey = publicKey;
20
- this.privateKey = privateKey;
21
- }
22
- async encryptKeyPair(password) {
23
- return await EncryptedKeyPair_1.EncryptedKeyPair.encryptKeyPair(this.publicKey, this.privateKey, password.valueOf());
24
- }
25
- isValidSignature(payload, signature) {
26
- return this.publicKey.isValidSignature(payload, signature);
27
- }
28
- sign(payload) {
29
- return this.privateKey.sign(payload);
30
- }
31
- toPrimitives() {
32
- return {
33
- privateKey: this.privateKey.valueOf(),
34
- publicKey: this.publicKey.valueOf(),
35
- };
36
- }
37
- encrypt(payload) {
38
- return this.publicKey.encrypt(payload);
39
- }
40
- decrypt(encryptedPayload) {
41
- return this.privateKey.decrypt(encryptedPayload);
42
- }
43
- }
44
- exports.KeyPair = KeyPair;
45
- //# sourceMappingURL=KeyPair.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KeyPair.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/KeyPair.ts"],"names":[],"mappings":";;;AAKA,yDAAsD;AAEtD,6CAA0C;AAC1C,2CAAwC;AAGxC,MAAa,OAAO;IAgBC;IACA;IAhBZ,MAAM,CAAC,QAAQ;QACpB,MAAM,UAAU,GAAG,uBAAU,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC;QAE5C,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,UAAgC;QAC3D,OAAO,IAAI,OAAO,CAChB,IAAI,qBAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EACnC,IAAI,uBAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CACtC,CAAC;IACJ,CAAC;IAED,YACmB,SAAoB,EACpB,UAAsB;QADtB,cAAS,GAAT,SAAS,CAAW;QACpB,eAAU,GAAV,UAAU,CAAY;IACtC,CAAC;IAEG,KAAK,CAAC,cAAc,CACzB,QAAoC;QAEpC,OAAO,MAAM,mCAAgB,CAAC,cAAc,CAC1C,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,UAAU,EACf,QAAQ,CAAC,OAAO,EAAE,CACnB,CAAC;IACJ,CAAC;IAEM,gBAAgB,CACrB,OAAsB,EACtB,SAAoB;QAEpB,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;IAEM,IAAI,CAAC,OAAsB;QAChC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAEM,YAAY;QACjB,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;YACrC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;SACpC,CAAC;IACJ,CAAC;IAEM,OAAO,CAAC,OAAsB;QACnC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAEM,OAAO,CAAC,gBAAkC;QAC/C,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnD,CAAC;CACF;AAvDD,0BAuDC"}
@@ -1,19 +0,0 @@
1
- import { Buffer } from 'buffer';
2
- import { StringValueObject } from '../StringValueObject';
3
- import { CryptoPayload } from './CryptoPayload';
4
- import { EncryptedPayload } from './EncryptedPayload';
5
- import { Key } from './Key';
6
- import { PublicKey } from './PublicKey';
7
- import { Signature } from './Signature';
8
- export declare class PrivateKey extends Key {
9
- private static readonly LENGTH;
10
- private static readonly PATTERN;
11
- static fromPEM(pem: string | StringValueObject): PrivateKey;
12
- static generate(): PrivateKey;
13
- constructor(value: string | StringValueObject);
14
- private ensureIsValidPrivateKey;
15
- getPublicKey(): PublicKey;
16
- sign(payload: CryptoPayload): Signature;
17
- decrypt(encryptedPayload: EncryptedPayload): Buffer;
18
- }
19
- //# sourceMappingURL=PrivateKey.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrivateKey.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/PrivateKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMhC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,UAAW,SAAQ,GAAG;IACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAO;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CACiD;WAElE,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,GAAG,UAAU;WAIpD,QAAQ,IAAI,UAAU;gBAIxB,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAU7C,OAAO,CAAC,uBAAuB;IAQxB,YAAY,IAAI,SAAS;IAIzB,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS;IAOvC,OAAO,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,MAAM;CAwB3D"}
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PrivateKey = void 0;
4
- const buffer_1 = require("buffer");
5
- const InvalidFormatError_1 = require("../../errors/InvalidFormatError");
6
- const InvalidLengthError_1 = require("../../errors/InvalidLengthError");
7
- const patterns_1 = require("../../patterns");
8
- const NullObject_1 = require("../NullObject");
9
- const CryptoAdapter_1 = require("./CryptoAdapter");
10
- const Key_1 = require("./Key");
11
- const PublicKey_1 = require("./PublicKey");
12
- const Signature_1 = require("./Signature");
13
- class PrivateKey extends Key_1.Key {
14
- static LENGTH = 119;
15
- static PATTERN = /^-----BEGIN PRIVATE KEY-----\n[A-Za-z0-9+/=]+\n-----END PRIVATE KEY-----\n$/;
16
- static fromPEM(pem) {
17
- return new PrivateKey(pem.valueOf());
18
- }
19
- static generate() {
20
- return new PrivateKey(CryptoAdapter_1.CryptoAdapter.randomPrivateKeyPem());
21
- }
22
- constructor(value) {
23
- super(value?.valueOf());
24
- if (NullObject_1.NullObject.isNullObject(this)) {
25
- return this;
26
- }
27
- this.ensureIsValidPrivateKey(this.value);
28
- }
29
- ensureIsValidPrivateKey(value) {
30
- (0, patterns_1.assert)(value.length === PrivateKey.LENGTH, new InvalidLengthError_1.InvalidLengthError(value, PrivateKey.LENGTH));
31
- (0, patterns_1.assert)(PrivateKey.PATTERN.test(value), new InvalidFormatError_1.InvalidFormatError(value));
32
- }
33
- getPublicKey() {
34
- return PublicKey_1.PublicKey.fromPEM(CryptoAdapter_1.CryptoAdapter.getPublicKey(this.valueOf()));
35
- }
36
- sign(payload) {
37
- const messageBuffer = buffer_1.Buffer.from(payload.valueOf());
38
- const signatureBuffer = CryptoAdapter_1.CryptoAdapter.sign(messageBuffer, this.valueOf());
39
- return Signature_1.Signature.fromBuffer(signatureBuffer);
40
- }
41
- decrypt(encryptedPayload) {
42
- const [ephPubB64, ivB64, cipherTextB64, tagB64] = encryptedPayload
43
- .valueOf()
44
- .split('.');
45
- const ephemeralPub = buffer_1.Buffer.from(ephPubB64, 'base64');
46
- const iv = buffer_1.Buffer.from(ivB64, 'base64');
47
- const cipherText = buffer_1.Buffer.from(cipherTextB64, 'base64');
48
- const tag = buffer_1.Buffer.from(tagB64, 'base64');
49
- const x25519Priv = CryptoAdapter_1.CryptoAdapter.privateKeyToX25519(this.valueOf());
50
- const sharedSecret = CryptoAdapter_1.CryptoAdapter.x25519SharedSecret(x25519Priv, ephemeralPub);
51
- const aesKey = CryptoAdapter_1.CryptoAdapter.deriveEncryptionKey(sharedSecret, ephemeralPub);
52
- return CryptoAdapter_1.CryptoAdapter.decryptAes256Gcm(aesKey, iv, cipherText, tag);
53
- }
54
- }
55
- exports.PrivateKey = PrivateKey;
56
- //# sourceMappingURL=PrivateKey.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PrivateKey.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/PrivateKey.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,wEAAqE;AACrE,wEAAqE;AACrE,6CAAwC;AACxC,8CAA2C;AAE3C,mDAAgD;AAGhD,+BAA4B;AAC5B,2CAAwC;AACxC,2CAAwC;AAExC,MAAa,UAAW,SAAQ,SAAG;IACzB,MAAM,CAAU,MAAM,GAAG,GAAG,CAAC;IAC7B,MAAM,CAAU,OAAO,GAC7B,6EAA6E,CAAC;IAEzE,MAAM,CAAC,OAAO,CAAC,GAA+B;QACnD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACvC,CAAC;IAEM,MAAM,CAAC,QAAQ;QACpB,OAAO,IAAI,UAAU,CAAC,6BAAa,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,YAAY,KAAiC;QAC3C,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAExB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAEO,uBAAuB,CAAC,KAAa;QAC3C,IAAA,iBAAM,EACJ,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,EAClC,IAAI,uCAAkB,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CACjD,CAAC;QACF,IAAA,iBAAM,EAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,uCAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC;IAEM,YAAY;QACjB,OAAO,qBAAS,CAAC,OAAO,CAAC,6BAAa,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAEM,IAAI,CAAC,OAAsB;QAChC,MAAM,aAAa,GAAG,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,MAAM,eAAe,GAAG,6BAAa,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAE1E,OAAO,qBAAS,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAC/C,CAAC;IAEM,OAAO,CAAC,gBAAkC;QAC/C,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,GAAG,gBAAgB;aAC/D,OAAO,EAAE;aACT,KAAK,CAAC,GAAG,CAAC,CAAC;QAEd,MAAM,YAAY,GAAG,eAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACtD,MAAM,EAAE,GAAG,eAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,eAAM,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QACxD,MAAM,GAAG,GAAG,eAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAE1C,MAAM,UAAU,GAAG,6BAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEpE,MAAM,YAAY,GAAG,6BAAa,CAAC,kBAAkB,CACnD,UAAU,EACV,YAAY,CACb,CAAC;QAEF,MAAM,MAAM,GAAG,6BAAa,CAAC,mBAAmB,CAC9C,YAAY,EACZ,YAAY,CACb,CAAC;QAEF,OAAO,6BAAa,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;IACrE,CAAC;;AAjEH,gCAkEC"}
@@ -1,15 +0,0 @@
1
- import { StringValueObject } from '../StringValueObject';
2
- import { CryptoPayload } from './CryptoPayload';
3
- import { EncryptedPayload } from './EncryptedPayload';
4
- import { Key } from './Key';
5
- import { Signature } from './Signature';
6
- export declare class PublicKey extends Key {
7
- private static readonly LENGTH;
8
- private static readonly PATTERN;
9
- static fromPEM(pem: string | StringValueObject): PublicKey;
10
- constructor(value: string | StringValueObject);
11
- private ensureIsValidPublicKey;
12
- isValidSignature(payload: CryptoPayload, signature: Signature): boolean;
13
- encrypt(payload: CryptoPayload): EncryptedPayload;
14
- }
15
- //# sourceMappingURL=PublicKey.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PublicKey.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/PublicKey.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,SAAU,SAAQ,GAAG;IAChC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAO;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAC+C;WAEhE,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;gBAIrD,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAU7C,OAAO,CAAC,sBAAsB;IAQvB,gBAAgB,CACrB,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,SAAS,GACnB,OAAO;IAYH,OAAO,CAAC,OAAO,EAAE,aAAa,GAAG,gBAAgB;CAiCzD"}
@@ -1,54 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PublicKey = void 0;
4
- const buffer_1 = require("buffer");
5
- const InvalidFormatError_1 = require("../../errors/InvalidFormatError");
6
- const InvalidLengthError_1 = require("../../errors/InvalidLengthError");
7
- const patterns_1 = require("../../patterns");
8
- const NullObject_1 = require("../NullObject");
9
- const CryptoAdapter_1 = require("./CryptoAdapter");
10
- const EncryptedPayload_1 = require("./EncryptedPayload");
11
- const Key_1 = require("./Key");
12
- class PublicKey extends Key_1.Key {
13
- static LENGTH = 113;
14
- static PATTERN = /^-----BEGIN PUBLIC KEY-----\n[A-Za-z0-9+/=]+\n-----END PUBLIC KEY-----\n$/;
15
- static fromPEM(pem) {
16
- return new PublicKey(pem.valueOf());
17
- }
18
- constructor(value) {
19
- super(value?.valueOf());
20
- if (NullObject_1.NullObject.isNullObject(this)) {
21
- return this;
22
- }
23
- this.ensureIsValidPublicKey(this.value);
24
- }
25
- ensureIsValidPublicKey(value) {
26
- (0, patterns_1.assert)(value.length === PublicKey.LENGTH, new InvalidLengthError_1.InvalidLengthError(value, PublicKey.LENGTH));
27
- (0, patterns_1.assert)(PublicKey.PATTERN.test(value), new InvalidFormatError_1.InvalidFormatError(value));
28
- }
29
- isValidSignature(payload, signature) {
30
- const messageBuffer = buffer_1.Buffer.from(payload.valueOf());
31
- const signatureBuffer = buffer_1.Buffer.from(signature.valueOf(), 'base64');
32
- const valid = CryptoAdapter_1.CryptoAdapter.verify(signatureBuffer, messageBuffer, this.valueOf());
33
- return valid;
34
- }
35
- encrypt(payload) {
36
- const messageBuffer = buffer_1.Buffer.from(payload.valueOf());
37
- const x25519Pub = CryptoAdapter_1.CryptoAdapter.publicKeyToX25519(this.valueOf());
38
- const ephemeralPriv = CryptoAdapter_1.CryptoAdapter.x25519RandomPrivateKey();
39
- const ephemeralPub = CryptoAdapter_1.CryptoAdapter.x25519PublicKey(ephemeralPriv);
40
- const sharedSecret = CryptoAdapter_1.CryptoAdapter.x25519SharedSecret(ephemeralPriv, x25519Pub);
41
- const aesKey = CryptoAdapter_1.CryptoAdapter.deriveEncryptionKey(sharedSecret, ephemeralPub);
42
- const iv = CryptoAdapter_1.CryptoAdapter.randomBytes(12);
43
- const { cipherText, tag } = CryptoAdapter_1.CryptoAdapter.encryptAes256Gcm(aesKey, iv, messageBuffer);
44
- const result = [
45
- buffer_1.Buffer.from(ephemeralPub).toString('base64'),
46
- iv.toString('base64'),
47
- buffer_1.Buffer.from(cipherText).toString('base64'),
48
- buffer_1.Buffer.from(tag).toString('base64'),
49
- ].join('.');
50
- return new EncryptedPayload_1.EncryptedPayload(result);
51
- }
52
- }
53
- exports.PublicKey = PublicKey;
54
- //# sourceMappingURL=PublicKey.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PublicKey.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/PublicKey.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,wEAAqE;AACrE,wEAAqE;AACrE,6CAAwC;AACxC,8CAA2C;AAE3C,mDAAgD;AAEhD,yDAAsD;AACtD,+BAA4B;AAG5B,MAAa,SAAU,SAAQ,SAAG;IACxB,MAAM,CAAU,MAAM,GAAG,GAAG,CAAC;IAC7B,MAAM,CAAU,OAAO,GAC7B,2EAA2E,CAAC;IAEvE,MAAM,CAAC,OAAO,CAAC,GAA+B;QACnD,OAAO,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,YAAY,KAAiC;QAC3C,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAExB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEO,sBAAsB,CAAC,KAAa;QAC1C,IAAA,iBAAM,EACJ,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM,EACjC,IAAI,uCAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAChD,CAAC;QACF,IAAA,iBAAM,EAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,uCAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,CAAC;IAEM,gBAAgB,CACrB,OAAsB,EACtB,SAAoB;QAEpB,MAAM,aAAa,GAAG,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,MAAM,eAAe,GAAG,eAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;QACnE,MAAM,KAAK,GAAG,6BAAa,CAAC,MAAM,CAChC,eAAe,EACf,aAAa,EACb,IAAI,CAAC,OAAO,EAAE,CACf,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,OAAO,CAAC,OAAsB;QACnC,MAAM,aAAa,GAAG,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAErD,MAAM,SAAS,GAAG,6BAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAElE,MAAM,aAAa,GAAG,6BAAa,CAAC,sBAAsB,EAAE,CAAC;QAC7D,MAAM,YAAY,GAAG,6BAAa,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;QAClE,MAAM,YAAY,GAAG,6BAAa,CAAC,kBAAkB,CACnD,aAAa,EACb,SAAS,CACV,CAAC;QAEF,MAAM,MAAM,GAAG,6BAAa,CAAC,mBAAmB,CAC9C,YAAY,EACZ,YAAY,CACb,CAAC;QAEF,MAAM,EAAE,GAAG,6BAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACzC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,6BAAa,CAAC,gBAAgB,CACxD,MAAM,EACN,EAAE,EACF,aAAa,CACd,CAAC;QAEF,MAAM,MAAM,GAAG;YACb,eAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC5C,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACrB,eAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC1C,eAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;SACpC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEZ,OAAO,IAAI,mCAAgB,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;;AA1EH,8BA2EC"}
@@ -1,11 +0,0 @@
1
- import type { Buffer } from 'buffer';
2
- import { StringValueObject } from '../StringValueObject';
3
- import { ValueObject } from '../ValueObject';
4
- export declare class Signature extends ValueObject<string> {
5
- private static readonly LENGTH;
6
- private static readonly PATTERN;
7
- static fromBuffer(buffer: Buffer): Signature;
8
- constructor(value: string | StringValueObject);
9
- private hasValidFormat;
10
- }
11
- //# sourceMappingURL=Signature.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Signature.d.ts","sourceRoot":"","sources":["../../../src/value-objects/crypto/Signature.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,SAAU,SAAQ,WAAW,CAAC,MAAM,CAAC;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAM;IACpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAA2B;WAE5C,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS;gBAIvC,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAU7C,OAAO,CAAC,cAAc;CAGvB"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Signature = void 0;
4
- const InvalidSignatureError_1 = require("../../errors/InvalidSignatureError");
5
- const patterns_1 = require("../../patterns");
6
- const NullObject_1 = require("../NullObject");
7
- const ValueObject_1 = require("../ValueObject");
8
- class Signature extends ValueObject_1.ValueObject {
9
- static LENGTH = 88;
10
- static PATTERN = /^[A-Za-z0-9+/]{86}==$/;
11
- static fromBuffer(buffer) {
12
- return new Signature(buffer.toString('base64'));
13
- }
14
- constructor(value) {
15
- super(value?.valueOf());
16
- if (NullObject_1.NullObject.isNullObject(this)) {
17
- return this;
18
- }
19
- (0, patterns_1.assert)(this.hasValidFormat(), new InvalidSignatureError_1.InvalidSignatureError(Signature.LENGTH));
20
- }
21
- hasValidFormat() {
22
- return Signature.PATTERN.test(this.value);
23
- }
24
- }
25
- exports.Signature = Signature;
26
- //# sourceMappingURL=Signature.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Signature.js","sourceRoot":"","sources":["../../../src/value-objects/crypto/Signature.ts"],"names":[],"mappings":";;;AAEA,8EAA2E;AAC3E,6CAAwC;AACxC,8CAA2C;AAE3C,gDAA6C;AAE7C,MAAa,SAAU,SAAQ,yBAAmB;IACxC,MAAM,CAAU,MAAM,GAAG,EAAE,CAAC;IAC5B,MAAM,CAAU,OAAO,GAAG,uBAAuB,CAAC;IAEnD,MAAM,CAAC,UAAU,CAAC,MAAc;QACrC,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,YAAY,KAAiC;QAC3C,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAExB,IAAI,uBAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAA,iBAAM,EAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,6CAAqB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7E,CAAC;IAEO,cAAc;QACpB,OAAO,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;;AApBH,8BAqBC"}
@@ -1,21 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,56 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,14 +0,0 @@
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
@@ -1 +0,0 @@
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"}