@nmshd/transport 2.0.0-beta.5 → 2.0.0-beta.7

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 (101) hide show
  1. package/dist/buildInformation.js +5 -5
  2. package/dist/core/CoreCrypto.d.ts +1 -0
  3. package/dist/core/CoreCrypto.js +14 -12
  4. package/dist/core/CoreCrypto.js.map +1 -1
  5. package/dist/core/CoreUtil.js +1 -2
  6. package/dist/core/CoreUtil.js.map +1 -1
  7. package/dist/core/Reference.js +2 -2
  8. package/dist/core/Reference.js.map +1 -1
  9. package/dist/core/Transport.js +4 -1
  10. package/dist/core/Transport.js.map +1 -1
  11. package/dist/core/TransportController.d.ts +1 -1
  12. package/dist/core/TransportController.js +2 -3
  13. package/dist/core/TransportController.js.map +1 -1
  14. package/dist/core/TransportErrors.d.ts +5 -73
  15. package/dist/core/TransportErrors.js +10 -153
  16. package/dist/core/TransportErrors.js.map +1 -1
  17. package/dist/core/TransportLoggerFactory.js +1 -2
  18. package/dist/core/TransportLoggerFactory.js.map +1 -1
  19. package/dist/core/types/CoreAddress.d.ts +1 -1
  20. package/dist/core/types/CoreAddress.js.map +1 -1
  21. package/dist/core/types/CoreDate.js +3 -4
  22. package/dist/core/types/CoreDate.js.map +1 -1
  23. package/dist/core/types/CoreId.d.ts +1 -1
  24. package/dist/core/types/CoreId.js +1 -2
  25. package/dist/core/types/CoreId.js.map +1 -1
  26. package/dist/modules/accounts/AccountController.d.ts +2 -0
  27. package/dist/modules/accounts/AccountController.js +30 -10
  28. package/dist/modules/accounts/AccountController.js.map +1 -1
  29. package/dist/modules/accounts/IdentityController.d.ts +1 -1
  30. package/dist/modules/accounts/IdentityController.js +24 -4
  31. package/dist/modules/accounts/IdentityController.js.map +1 -1
  32. package/dist/modules/accounts/IdentityUtil.d.ts +1 -1
  33. package/dist/modules/accounts/IdentityUtil.js +3 -4
  34. package/dist/modules/accounts/IdentityUtil.js.map +1 -1
  35. package/dist/modules/accounts/data/Identity.d.ts +0 -18
  36. package/dist/modules/accounts/data/Identity.js +0 -33
  37. package/dist/modules/accounts/data/Identity.js.map +1 -1
  38. package/dist/modules/challenges/ChallengeController.js +26 -5
  39. package/dist/modules/challenges/ChallengeController.js.map +1 -1
  40. package/dist/modules/devices/DeviceController.d.ts +1 -1
  41. package/dist/modules/devices/DeviceController.js +42 -14
  42. package/dist/modules/devices/DeviceController.js.map +1 -1
  43. package/dist/modules/devices/DeviceSecretController.js +43 -14
  44. package/dist/modules/devices/DeviceSecretController.js.map +1 -1
  45. package/dist/modules/files/FileController.js +41 -16
  46. package/dist/modules/files/FileController.js.map +1 -1
  47. package/dist/modules/index.d.ts +4 -4
  48. package/dist/modules/index.js +4 -4
  49. package/dist/modules/index.js.map +1 -1
  50. package/dist/modules/messages/MessageController.js +70 -16
  51. package/dist/modules/messages/MessageController.js.map +1 -1
  52. package/dist/modules/messages/transmission/{MessagePlain.d.ts → MessageContentWrapper.d.ts} +4 -4
  53. package/dist/modules/messages/transmission/{MessagePlain.js → MessageContentWrapper.js} +12 -12
  54. package/dist/modules/messages/transmission/MessageContentWrapper.js.map +1 -0
  55. package/dist/modules/relationshipTemplates/RelationshipTemplateController.js +35 -14
  56. package/dist/modules/relationshipTemplates/RelationshipTemplateController.js.map +1 -1
  57. package/dist/modules/relationshipTemplates/backbone/BackboneGetRelationshipTemplates.d.ts +0 -1
  58. package/dist/modules/relationshipTemplates/backbone/BackbonePostRelationshipTemplates.d.ts +0 -5
  59. package/dist/modules/relationshipTemplates/local/CachedRelationshipTemplate.d.ts +0 -11
  60. package/dist/modules/relationshipTemplates/local/CachedRelationshipTemplate.js +1 -15
  61. package/dist/modules/relationshipTemplates/local/CachedRelationshipTemplate.js.map +1 -1
  62. package/dist/modules/relationshipTemplates/local/SendRelationshipTemplateParameters.d.ts +0 -11
  63. package/dist/modules/relationshipTemplates/local/SendRelationshipTemplateParameters.js +2 -17
  64. package/dist/modules/relationshipTemplates/local/SendRelationshipTemplateParameters.js.map +1 -1
  65. package/dist/modules/relationshipTemplates/transmission/{RelationshipTemplateContent.d.ts → RelationshipTemplateContentWrapper.d.ts} +3 -3
  66. package/dist/modules/relationshipTemplates/transmission/{RelationshipTemplateContent.js → RelationshipTemplateContentWrapper.js} +10 -10
  67. package/dist/modules/relationshipTemplates/transmission/RelationshipTemplateContentWrapper.js.map +1 -0
  68. package/dist/modules/relationships/RelationshipSecretController.js +88 -17
  69. package/dist/modules/relationships/RelationshipSecretController.js.map +1 -1
  70. package/dist/modules/relationships/RelationshipsController.d.ts +3 -3
  71. package/dist/modules/relationships/RelationshipsController.js +119 -66
  72. package/dist/modules/relationships/RelationshipsController.js.map +1 -1
  73. package/dist/modules/relationships/transmission/requests/{RelationshipCreationChangeRequestContent.d.ts → RelationshipCreationChangeRequestContentWrapper.d.ts} +3 -3
  74. package/dist/modules/relationships/transmission/requests/{RelationshipCreationChangeRequestContent.js → RelationshipCreationChangeRequestContentWrapper.js} +10 -10
  75. package/dist/modules/relationships/transmission/requests/RelationshipCreationChangeRequestContentWrapper.js.map +1 -0
  76. package/dist/modules/relationships/transmission/responses/{RelationshipCreationChangeResponseContent.d.ts → RelationshipCreationChangeResponseContentWrapper.d.ts} +3 -3
  77. package/dist/modules/relationships/transmission/responses/{RelationshipCreationChangeResponseContent.js → RelationshipCreationChangeResponseContentWrapper.js} +9 -9
  78. package/dist/modules/relationships/transmission/responses/RelationshipCreationChangeResponseContentWrapper.js.map +1 -0
  79. package/dist/modules/secrets/SecretController.js +18 -5
  80. package/dist/modules/secrets/SecretController.js.map +1 -1
  81. package/dist/modules/sync/DatawalletModificationsProcessor.d.ts +1 -0
  82. package/dist/modules/sync/DatawalletModificationsProcessor.js +20 -3
  83. package/dist/modules/sync/DatawalletModificationsProcessor.js.map +1 -1
  84. package/dist/modules/sync/SyncController.d.ts +1 -0
  85. package/dist/modules/sync/SyncController.js +53 -24
  86. package/dist/modules/sync/SyncController.js.map +1 -1
  87. package/dist/modules/tokens/TokenController.js +31 -4
  88. package/dist/modules/tokens/TokenController.js.map +1 -1
  89. package/dist/util/PasswordGenerator.js +1 -2
  90. package/dist/util/PasswordGenerator.js.map +1 -1
  91. package/dist/util/Random.js +7 -8
  92. package/dist/util/Random.js.map +1 -1
  93. package/lib-web/nmshd.transport.js +874 -633
  94. package/lib-web/nmshd.transport.js.map +1 -1
  95. package/lib-web/nmshd.transport.min.js +1 -1
  96. package/lib-web/nmshd.transport.min.js.map +1 -1
  97. package/package.json +6 -6
  98. package/dist/modules/messages/transmission/MessagePlain.js.map +0 -1
  99. package/dist/modules/relationshipTemplates/transmission/RelationshipTemplateContent.js.map +0 -1
  100. package/dist/modules/relationships/transmission/requests/RelationshipCreationChangeRequestContent.js.map +0 -1
  101. package/dist/modules/relationships/transmission/responses/RelationshipCreationChangeResponseContent.js.map +0 -1
@@ -1,9 +1,20 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.IdentityController = void 0;
13
+ const ts_utils_1 = require("@js-soft/ts-utils");
4
14
  const crypto_1 = require("@nmshd/crypto");
5
15
  const core_1 = require("../../core");
6
16
  const DeviceSecretController_1 = require("../devices/DeviceSecretController");
17
+ const Identity_1 = require("./data/Identity");
7
18
  class IdentityController extends core_1.TransportController {
8
19
  constructor(parent) {
9
20
  super(core_1.ControllerName.Identity, parent);
@@ -22,9 +33,6 @@ class IdentityController extends core_1.TransportController {
22
33
  }
23
34
  async init(identity) {
24
35
  await super.init();
25
- if (!identity) {
26
- throw core_1.TransportErrors.identity.identityNotSet().logWith(this._log);
27
- }
28
36
  this._identity = identity;
29
37
  return this;
30
38
  }
@@ -37,7 +45,7 @@ class IdentityController extends core_1.TransportController {
37
45
  async sign(content) {
38
46
  const privateKeyContainer = await this.parent.activeDevice.secrets.loadSecret(DeviceSecretController_1.DeviceSecretType.IdentitySignature);
39
47
  if (!privateKeyContainer || !(privateKeyContainer.secret instanceof crypto_1.CryptoSignaturePrivateKey)) {
40
- throw core_1.TransportErrors.secrets.secretNotFound(DeviceSecretController_1.DeviceSecretType.IdentitySignature).logWith(this._log);
48
+ throw core_1.TransportErrors.secrets.secretNotFound(DeviceSecretController_1.DeviceSecretType.IdentitySignature);
41
49
  }
42
50
  const privateKey = privateKeyContainer.secret;
43
51
  const signature = await core_1.CoreCrypto.sign(content, privateKey);
@@ -49,5 +57,17 @@ class IdentityController extends core_1.TransportController {
49
57
  return valid;
50
58
  }
51
59
  }
60
+ __decorate([
61
+ (0, ts_utils_1.log)(),
62
+ __metadata("design:type", Function),
63
+ __metadata("design:paramtypes", [Identity_1.Identity]),
64
+ __metadata("design:returntype", Promise)
65
+ ], IdentityController.prototype, "init", null);
66
+ __decorate([
67
+ (0, ts_utils_1.log)(),
68
+ __metadata("design:type", Function),
69
+ __metadata("design:paramtypes", [crypto_1.CoreBuffer]),
70
+ __metadata("design:returntype", Promise)
71
+ ], IdentityController.prototype, "sign", null);
52
72
  exports.IdentityController = IdentityController;
53
73
  //# sourceMappingURL=IdentityController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityController.js","sourceRoot":"","sources":["../../../src/modules/accounts/IdentityController.ts"],"names":[],"mappings":";;;AAAA,0CAAgH;AAChH,qCAA0G;AAE1G,8EAAoE;AAGpE,MAAa,kBAAmB,SAAQ,0BAAmB;IAkBvD,YAAmB,MAAyB;QACxC,KAAK,CAAC,qBAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAC1C,CAAC;IAnBD,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAA;IACjC,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAA;IACnC,CAAC;IAED,IAAW,KAAK;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;IAC/B,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAA;IACzB,CAAC;IAOe,KAAK,CAAC,IAAI,CAAC,QAAmB;QAC1C,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;QAElB,IAAI,CAAC,QAAQ,EAAE;YACX,MAAM,sBAAe,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SACrE;QACD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;QAEzB,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,IAAI,CAAC,OAAoB;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACvC,CAAC;IAEM,KAAK,CAAC,MAAM;QACf,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzD,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,OAAmB;QACjC,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CACzE,yCAAgB,CAAC,iBAAiB,CACrC,CAAA;QACD,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC,mBAAmB,CAAC,MAAM,YAAY,kCAAyB,CAAC,EAAE;YAC5F,MAAM,sBAAe,CAAC,OAAO,CAAC,cAAc,CAAC,yCAAgB,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SACtG;QACD,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAA;QAE7C,MAAM,SAAS,GAAG,MAAM,iBAAU,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QAC5D,UAAU,CAAC,KAAK,EAAE,CAAA;QAClB,OAAO,SAAS,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,OAAmB,EAAE,SAA0B;QAC/D,MAAM,KAAK,GAAG,MAAM,iBAAU,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;QACzE,OAAO,KAAK,CAAA;IAChB,CAAC;CACJ;AA3DD,gDA2DC"}
1
+ {"version":3,"file":"IdentityController.js","sourceRoot":"","sources":["../../../src/modules/accounts/IdentityController.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAAuC;AACvC,0CAAgH;AAChH,qCAA0G;AAE1G,8EAAoE;AACpE,8CAAiD;AAEjD,MAAa,kBAAmB,SAAQ,0BAAmB;IAkBvD,YAAmB,MAAyB;QACxC,KAAK,CAAC,qBAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAC1C,CAAC;IAnBD,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAA;IACjC,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAA;IACnC,CAAC;IAED,IAAW,KAAK;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;IAC/B,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAA;IACzB,CAAC;IAQqB,AAAN,KAAK,CAAC,IAAI,CAAC,QAAkB;QACzC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;QAElB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;QACzB,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,IAAI,CAAC,OAAoB;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACvC,CAAC;IAEM,KAAK,CAAC,MAAM;QACf,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzD,CAAC;IAGY,AAAN,KAAK,CAAC,IAAI,CAAC,OAAmB;QACjC,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CACzE,yCAAgB,CAAC,iBAAiB,CACrC,CAAA;QACD,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC,mBAAmB,CAAC,MAAM,YAAY,kCAAyB,CAAC,EAAE;YAC5F,MAAM,sBAAe,CAAC,OAAO,CAAC,cAAc,CAAC,yCAAgB,CAAC,iBAAiB,CAAC,CAAA;SACnF;QACD,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAA;QAE7C,MAAM,SAAS,GAAG,MAAM,iBAAU,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QAC5D,UAAU,CAAC,KAAK,EAAE,CAAA;QAClB,OAAO,SAAS,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,OAAmB,EAAE,SAA0B;QAC/D,MAAM,KAAK,GAAG,MAAM,iBAAU,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;QACzE,OAAO,KAAK,CAAA;IAChB,CAAC;CACJ;AAlCyB;IADrB,IAAA,cAAG,GAAE;;qCAC+B,mBAAQ;;8CAK5C;AAWY;IADZ,IAAA,cAAG,GAAE;;qCACqB,mBAAU;;8CAYpC;AAnDL,gDAyDC"}
@@ -1,6 +1,6 @@
1
1
  import { ICryptoSignaturePublicKey } from "@nmshd/crypto";
2
2
  import { CoreAddress } from "../../core";
3
3
  export declare class IdentityUtil {
4
- static createAddress(publicKey: ICryptoSignaturePublicKey, realm?: string): Promise<CoreAddress>;
4
+ static createAddress(publicKey: ICryptoSignaturePublicKey, realm: string): Promise<CoreAddress>;
5
5
  static checkAddress(address: CoreAddress, publicKey?: ICryptoSignaturePublicKey, realm?: string): Promise<boolean>;
6
6
  }
@@ -4,10 +4,9 @@ exports.IdentityUtil = void 0;
4
4
  const crypto_1 = require("@nmshd/crypto");
5
5
  const core_1 = require("../../core");
6
6
  class IdentityUtil {
7
- static async createAddress(publicKey, realm = "ID0") {
8
- if (realm && realm.length !== 3) {
9
- throw core_1.TransportErrors.identity.realmLength();
10
- }
7
+ static async createAddress(publicKey, realm) {
8
+ if (realm.length !== 3)
9
+ throw core_1.TransportErrors.general.realmLength();
11
10
  const sha512buffer = await crypto_1.CryptoHash.hash(publicKey.publicKey, 2 /* CryptoHashAlgorithm.SHA512 */);
12
11
  const hash = await crypto_1.CryptoHash.hash(sha512buffer, 1 /* CryptoHashAlgorithm.SHA256 */);
13
12
  const hashedPublicKey = new crypto_1.CoreBuffer(hash.buffer.slice(0, 20));
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityUtil.js","sourceRoot":"","sources":["../../../src/modules/accounts/IdentityUtil.ts"],"names":[],"mappings":";;;AAAA,0CAAsG;AACtG,qCAAyD;AAEzD,MAAa,YAAY;IACd,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,SAAoC,EAAE,KAAK,GAAG,KAAK;QACjF,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,MAAM,sBAAe,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAA;SAC/C;QACD,MAAM,YAAY,GAAG,MAAM,mBAAU,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,qCAA6B,CAAA;QAC3F,MAAM,IAAI,GAAG,MAAM,mBAAU,CAAC,IAAI,CAAC,YAAY,qCAA6B,CAAA;QAC5E,MAAM,eAAe,GAAG,IAAI,mBAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QAEhE,MAAM,cAAc,GAAG,mBAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACjD,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;QAEtC,MAAM,gBAAgB,GAAG,MAAM,mBAAU,CAAC,IAAI,CAAC,cAAc,qCAA6B,CAAA;QAC1F,MAAM,YAAY,GAAG,MAAM,mBAAU,CAAC,IAAI,CAAC,gBAAgB,qCAA6B,CAAA;QACxF,MAAM,QAAQ,GAAG,IAAI,mBAAU,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAEhE,MAAM,aAAa,GAAG,eAAe,CAAA;QACrC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAE9B,MAAM,aAAa,GAAG,KAAK,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAA;QACtD,MAAM,UAAU,GAAG,kBAAW,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAA;QAC/D,OAAO,UAAU,CAAA;IACrB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,YAAY,CAC5B,OAAoB,EACpB,SAAqC,EACrC,KAAK,GAAG,KAAK;QAEb,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAA;QAC9B,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACjC,IAAI,KAAK,IAAI,QAAQ,KAAK,KAAK,EAAE;YAC7B,OAAO,KAAK,CAAA;SACf;QAED,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAEhC,MAAM,aAAa,GAAG,mBAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAAA;QAE9D,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;QACxE,MAAM,aAAa,GAAG,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,UAAU,GAAG,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;QAEjG,MAAM,cAAc,GAAG,mBAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACpD,cAAc,CAAC,MAAM,CAAC,IAAI,mBAAU,CAAC,WAAW,CAAC,CAAC,CAAA;QAClD,MAAM,gBAAgB,GAAG,MAAM,mBAAU,CAAC,IAAI,CAAC,cAAc,qCAA6B,CAAA;QAC1F,MAAM,gBAAgB,GAAG,MAAM,mBAAU,CAAC,IAAI,CAAC,gBAAgB,qCAA6B,CAAA;QAC5F,MAAM,oBAAoB,GAAG,IAAI,mBAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAChF,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,mBAAU,CAAC,aAAa,CAAC,CAAC,EAAE;YAC7D,OAAO,KAAK,CAAA;SACf;QAED,IAAI,SAAS,EAAE;YACX,MAAM,YAAY,GAAG,MAAM,mBAAU,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,qCAA6B,CAAA;YAC3F,IAAI,YAAY,GAAG,MAAM,mBAAU,CAAC,IAAI,CAAC,YAAY,qCAA6B,CAAA;YAClF,YAAY,GAAG,IAAI,mBAAU,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;YAC/D,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,mBAAU,CAAC,WAAW,CAAC,CAAC,EAAE;gBACnD,4CAA4C;gBAC5C,OAAO,KAAK,CAAA;aACf;SACJ;QACD,OAAO,IAAI,CAAA;IACf,CAAC;CACJ;AA9DD,oCA8DC"}
1
+ {"version":3,"file":"IdentityUtil.js","sourceRoot":"","sources":["../../../src/modules/accounts/IdentityUtil.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { CryptoSignaturePublicKey, ICryptoSignaturePublicKey } from "@nmshd/crypto";
2
2
  import { CoreSerializable, ICoreSerializable } from "../../../core/CoreSerializable";
3
3
  import { CoreAddress } from "../../../core/types/CoreAddress";
4
- import { CoreDate } from "../../../core/types/CoreDate";
5
4
  export interface IIdentity extends ICoreSerializable {
6
5
  address: CoreAddress;
7
6
  publicKey: ICryptoSignaturePublicKey;
@@ -16,22 +15,5 @@ export declare class Identity extends CoreSerializable implements IIdentity {
16
15
  address: CoreAddress;
17
16
  publicKey: CryptoSignaturePublicKey;
18
17
  realm: Realm;
19
- /**
20
- * @deprecated
21
- */
22
- name: string;
23
- /**
24
- * @deprecated
25
- */
26
- description: string;
27
- /**
28
- * @deprecated
29
- */
30
- createdAt: CoreDate;
31
- /**
32
- * @deprecated
33
- */
34
- type: string;
35
- protected static postFrom(value: any): any;
36
18
  static from(value: IIdentity): Identity;
37
19
  }
@@ -14,7 +14,6 @@ const ts_serval_1 = require("@js-soft/ts-serval");
14
14
  const crypto_1 = require("@nmshd/crypto");
15
15
  const CoreSerializable_1 = require("../../../core/CoreSerializable");
16
16
  const CoreAddress_1 = require("../../../core/types/CoreAddress");
17
- const CoreDate_1 = require("../../../core/types/CoreDate");
18
17
  var Realm;
19
18
  (function (Realm) {
20
19
  Realm["Dev"] = "dev";
@@ -22,14 +21,6 @@ var Realm;
22
21
  Realm["Prod"] = "id1";
23
22
  })(Realm = exports.Realm || (exports.Realm = {}));
24
23
  let Identity = class Identity extends CoreSerializable_1.CoreSerializable {
25
- static postFrom(value) {
26
- // TODO: Remove these default values once we're sure that nobody is accessing the deprecated properties anymore
27
- value.name = "";
28
- value.description = "";
29
- value.type = "unknown";
30
- value.createdAt = CoreDate_1.CoreDate.from("2020-01-01T00:00:00Z");
31
- return value;
32
- }
33
24
  static from(value) {
34
25
  return this.fromAny(value);
35
26
  }
@@ -49,30 +40,6 @@ __decorate([
49
40
  (0, ts_serval_1.serialize)(),
50
41
  __metadata("design:type", String)
51
42
  ], Identity.prototype, "realm", void 0);
52
- __decorate([
53
- (0, ts_serval_1.validate)({ nullable: true }),
54
- (0, ts_serval_1.serialize)(),
55
- __metadata("design:type", String)
56
- ], Identity.prototype, "name", void 0);
57
- __decorate([
58
- (0, ts_serval_1.validate)({ nullable: true }),
59
- (0, ts_serval_1.serialize)(),
60
- __metadata("design:type", String)
61
- ], Identity.prototype, "description", void 0);
62
- __decorate([
63
- (0, ts_serval_1.validate)({ nullable: true }),
64
- (0, ts_serval_1.serialize)(),
65
- __metadata("design:type", CoreDate_1.CoreDate
66
- /**
67
- * @deprecated
68
- */
69
- )
70
- ], Identity.prototype, "createdAt", void 0);
71
- __decorate([
72
- (0, ts_serval_1.validate)({ nullable: true }),
73
- (0, ts_serval_1.serialize)(),
74
- __metadata("design:type", String)
75
- ], Identity.prototype, "type", void 0);
76
43
  Identity = __decorate([
77
44
  (0, ts_serval_1.type)("Identity")
78
45
  ], Identity);
@@ -1 +1 @@
1
- {"version":3,"file":"Identity.js","sourceRoot":"","sources":["../../../../src/modules/accounts/data/Identity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,0CAAmF;AACnF,qEAAoF;AACpF,iEAA6D;AAC7D,2DAAuD;AAQvD,IAAY,KAIX;AAJD,WAAY,KAAK;IACb,oBAAW,CAAA;IACX,sBAAa,CAAA;IACb,qBAAY,CAAA;AAChB,CAAC,EAJW,KAAK,GAAL,aAAK,KAAL,aAAK,QAIhB;AAGM,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,mCAAgB;IAyChC,MAAM,CAAU,QAAQ,CAAC,KAAU;QACzC,+GAA+G;QAE/G,KAAK,CAAC,IAAI,GAAG,EAAE,CAAA;QACf,KAAK,CAAC,WAAW,GAAG,EAAE,CAAA;QACtB,KAAK,CAAC,IAAI,GAAG,SAAS,CAAA;QACtB,KAAK,CAAC,SAAS,GAAG,mBAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;QAEvD,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,KAAgB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AAtDG;IAAC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;8BACI,yBAAW;yCAAA;AAE3B;IAAC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;8BACM,iCAAwB;2CAAA;AAE1C;IAAC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;;uCACO;AAKnB;IAAC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;sCACO;AAKnB;IAAC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;6CACc;AAK1B;IAAC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;8BACM,mBAAQ;IAE1B;;OAEG;;2CAJuB;AAK1B;IAAC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;sCACO;AAvCV,QAAQ;IADpB,IAAA,gBAAI,EAAC,UAAU,CAAC;GACJ,QAAQ,CAuDpB;AAvDY,4BAAQ"}
1
+ {"version":3,"file":"Identity.js","sourceRoot":"","sources":["../../../../src/modules/accounts/data/Identity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,0CAAmF;AACnF,qEAAoF;AACpF,iEAA6D;AAQ7D,IAAY,KAIX;AAJD,WAAY,KAAK;IACb,oBAAW,CAAA;IACX,sBAAa,CAAA;IACb,qBAAY,CAAA;AAChB,CAAC,EAJW,KAAK,GAAL,aAAK,KAAL,aAAK,QAIhB;AAGM,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,mCAAgB;IAanC,MAAM,CAAC,IAAI,CAAC,KAAgB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AAfG;IAAC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;8BACI,yBAAW;yCAAA;AAE3B;IAAC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;8BACM,iCAAwB;2CAAA;AAE1C;IAAC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;;uCACO;AAXV,QAAQ;IADpB,IAAA,gBAAI,EAAC,UAAU,CAAC;GACJ,QAAQ,CAgBpB;AAhBY,4BAAQ"}
@@ -1,6 +1,16 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.ChallengeController = void 0;
13
+ const ts_utils_1 = require("@js-soft/ts-utils");
4
14
  const crypto_1 = require("@nmshd/crypto");
5
15
  const core_1 = require("../../core");
6
16
  const TransportController_1 = require("../../core/TransportController");
@@ -33,7 +43,7 @@ class ChallengeController extends TransportController_1.TransportController {
33
43
  isValid = await this.parent.relationships.verifyIdentity(relationship, challengeBuffer, signedChallenge.signature);
34
44
  break;
35
45
  case Challenge_1.ChallengeType.Device:
36
- throw core_1.TransportErrors.general.notImplemented().logWith(this._log);
46
+ throw core_1.TransportErrors.general.notSupported();
37
47
  case Challenge_1.ChallengeType.Relationship:
38
48
  isValid = await this.parent.relationships.verify(relationship, challengeBuffer, signedChallenge.signature);
39
49
  break;
@@ -52,8 +62,6 @@ class ChallengeController extends TransportController_1.TransportController {
52
62
  if (backboneChallengeResponse.isError)
53
63
  return { isValid: false };
54
64
  if ((challenge.createdBy && backboneChallengeResponse.value.createdBy !== challenge.createdBy.toString()) ||
55
- // TODO: JSSNMSHDD-2472 (Reenable check once the backbone returns with same timestamp)
56
- // response.expiresAt !== challenge.expiresAt.toString() ||
57
65
  backboneChallengeResponse.value.id !== challenge.id.toString()) {
58
66
  return { isValid: false };
59
67
  }
@@ -77,7 +85,7 @@ class ChallengeController extends TransportController_1.TransportController {
77
85
  }
78
86
  async createChallenge(type = Challenge_1.ChallengeType.Identity, relationship) {
79
87
  if (type === Challenge_1.ChallengeType.Relationship && !relationship) {
80
- throw core_1.TransportErrors.challenges.challengeTypeRequiredRelationship().logWith(this._log);
88
+ throw core_1.TransportErrors.challenges.challengeTypeRequiresRelationship();
81
89
  }
82
90
  const backboneResponse = (await this.authClient.createChallenge()).value;
83
91
  const challenge = Challenge_1.Challenge.from({
@@ -101,7 +109,7 @@ class ChallengeController extends TransportController_1.TransportController {
101
109
  break;
102
110
  case Challenge_1.ChallengeType.Relationship:
103
111
  if (!relationship) {
104
- throw core_1.TransportErrors.challenges.challengeTypeRequiredRelationship().logWith(this._log);
112
+ throw core_1.TransportErrors.challenges.challengeTypeRequiresRelationship();
105
113
  }
106
114
  signature = await this.parent.relationships.sign(relationship, challengeBuffer);
107
115
  break;
@@ -113,5 +121,18 @@ class ChallengeController extends TransportController_1.TransportController {
113
121
  return signedChallenge;
114
122
  }
115
123
  }
124
+ __decorate([
125
+ (0, ts_utils_1.log)(),
126
+ __metadata("design:type", Function),
127
+ __metadata("design:paramtypes", [Challenge_1.Challenge,
128
+ ChallengeSigned_1.ChallengeSigned]),
129
+ __metadata("design:returntype", Promise)
130
+ ], ChallengeController.prototype, "validateChallengeLocally", null);
131
+ __decorate([
132
+ (0, ts_utils_1.log)(),
133
+ __metadata("design:type", Function),
134
+ __metadata("design:paramtypes", [String, Relationship_1.Relationship]),
135
+ __metadata("design:returntype", Promise)
136
+ ], ChallengeController.prototype, "createChallenge", null);
116
137
  exports.ChallengeController = ChallengeController;
117
138
  //# sourceMappingURL=ChallengeController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChallengeController.js","sourceRoot":"","sources":["../../../src/modules/challenges/ChallengeController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChallengeController.js","sourceRoot":"","sources":["../../../src/modules/challenges/ChallengeController.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ export declare class DeviceController extends TransportController {
18
18
  get device(): Device;
19
19
  get deviceOrUndefined(): Device | undefined;
20
20
  constructor(parent: AccountController);
21
- init(baseKey?: CryptoSecretKey, device?: Device): Promise<DeviceController>;
21
+ init(baseKey: CryptoSecretKey, device: Device): Promise<DeviceController>;
22
22
  changePassword(newPassword: string): Promise<void>;
23
23
  update(update: {
24
24
  name?: string;
@@ -1,9 +1,20 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.DeviceController = void 0;
13
+ const ts_utils_1 = require("@js-soft/ts-utils");
4
14
  const crypto_1 = require("@nmshd/crypto");
5
15
  const core_1 = require("../../core");
6
16
  const DeviceSecretController_1 = require("./DeviceSecretController");
17
+ const Device_1 = require("./local/Device");
7
18
  const DeviceSecretCredentials_1 = require("./local/DeviceSecretCredentials");
8
19
  class DeviceController extends core_1.TransportController {
9
20
  constructor(parent) {
@@ -38,7 +49,7 @@ class DeviceController extends core_1.TransportController {
38
49
  }
39
50
  get device() {
40
51
  if (!this._device)
41
- throw core_1.TransportErrors.device.deviceNotSet();
52
+ throw new Error("The Device controller is not initialized.");
42
53
  return this._device;
43
54
  }
44
55
  get deviceOrUndefined() {
@@ -46,12 +57,6 @@ class DeviceController extends core_1.TransportController {
46
57
  }
47
58
  async init(baseKey, device) {
48
59
  await super.init();
49
- if (!device) {
50
- throw core_1.TransportErrors.device.deviceNotSet().logWith(this._log);
51
- }
52
- if (!baseKey) {
53
- throw core_1.TransportErrors.secrets.secretNotFound("BaseKey").logWith(this._log);
54
- }
55
60
  this._device = device;
56
61
  this._secrets = await new DeviceSecretController_1.DeviceSecretController(this.parent, baseKey).init();
57
62
  return this;
@@ -72,8 +77,7 @@ class DeviceController extends core_1.TransportController {
72
77
  await this.secrets.storeSecret(credentials, DeviceSecretController_1.DeviceSecretType.DeviceCredentials);
73
78
  }
74
79
  catch (e) {
75
- // TODO: JSSNMSHDD-2473 (rollback if password saving failed)
76
- this.log.warn(`We've changed the device password on the backboen but weren't able to store it to the database. The new password is '${newPassword}'.`);
80
+ this.log.warn(`We've changed the device password on the backbone but weren't able to store it to the database. The new password is '${newPassword}'.`);
77
81
  throw e;
78
82
  }
79
83
  }
@@ -90,7 +94,7 @@ class DeviceController extends core_1.TransportController {
90
94
  async sign(content) {
91
95
  const privateKeyContainer = await this.secrets.loadSecret(DeviceSecretController_1.DeviceSecretType.DeviceSignature);
92
96
  if (!privateKeyContainer || !(privateKeyContainer.secret instanceof crypto_1.CryptoSignaturePrivateKey)) {
93
- throw core_1.TransportErrors.secrets.secretNotFound(DeviceSecretController_1.DeviceSecretType.DeviceSignature).logWith(this._log);
97
+ throw core_1.TransportErrors.secrets.secretNotFound(DeviceSecretController_1.DeviceSecretType.DeviceSignature);
94
98
  }
95
99
  const privateKey = privateKeyContainer.secret;
96
100
  const signature = await core_1.CoreCrypto.sign(content, privateKey);
@@ -99,21 +103,21 @@ class DeviceController extends core_1.TransportController {
99
103
  }
100
104
  async verify(content, signature) {
101
105
  if (!this.publicKey) {
102
- throw core_1.TransportErrors.device.notOnboardedYet().logWith(this._log);
106
+ throw new Error("The device has no public key to verify a signature. This can happen if the device is not onboarded yet.");
103
107
  }
104
108
  return await core_1.CoreCrypto.verify(content, signature, this.publicKey);
105
109
  }
106
110
  async getCredentials() {
107
111
  const credentialContainer = await this.secrets.loadSecret(DeviceSecretController_1.DeviceSecretType.DeviceCredentials);
108
112
  if (!credentialContainer) {
109
- throw core_1.TransportErrors.secrets.secretNotFound(DeviceSecretController_1.DeviceSecretType.DeviceCredentials).logWith(this._log);
113
+ throw core_1.TransportErrors.secrets.secretNotFound(DeviceSecretController_1.DeviceSecretType.DeviceCredentials);
110
114
  }
111
115
  if (!(credentialContainer.secret instanceof DeviceSecretCredentials_1.DeviceSecretCredentials)) {
112
- throw core_1.TransportErrors.secrets.wrongSecretType(DeviceSecretController_1.DeviceSecretType.DeviceCredentials).logWith(this._log);
116
+ throw core_1.TransportErrors.secrets.wrongSecretType(DeviceSecretController_1.DeviceSecretType.DeviceCredentials);
113
117
  }
114
118
  const credentials = credentialContainer.secret;
115
119
  if (!credentials.username || !credentials.password) {
116
- throw core_1.TransportErrors.secrets.wrongSecretType(DeviceSecretController_1.DeviceSecretType.DeviceCredentials).logWith(this._log);
120
+ throw core_1.TransportErrors.secrets.wrongSecretType(DeviceSecretController_1.DeviceSecretType.DeviceCredentials);
117
121
  }
118
122
  return {
119
123
  username: credentials.username,
@@ -121,5 +125,29 @@ class DeviceController extends core_1.TransportController {
121
125
  };
122
126
  }
123
127
  }
128
+ __decorate([
129
+ (0, ts_utils_1.log)(),
130
+ __metadata("design:type", Function),
131
+ __metadata("design:paramtypes", [crypto_1.CryptoSecretKey, Device_1.Device]),
132
+ __metadata("design:returntype", Promise)
133
+ ], DeviceController.prototype, "init", null);
134
+ __decorate([
135
+ (0, ts_utils_1.log)(),
136
+ __metadata("design:type", Function),
137
+ __metadata("design:paramtypes", [crypto_1.CoreBuffer]),
138
+ __metadata("design:returntype", Promise)
139
+ ], DeviceController.prototype, "sign", null);
140
+ __decorate([
141
+ (0, ts_utils_1.log)(),
142
+ __metadata("design:type", Function),
143
+ __metadata("design:paramtypes", [crypto_1.CoreBuffer, crypto_1.CryptoSignature]),
144
+ __metadata("design:returntype", Promise)
145
+ ], DeviceController.prototype, "verify", null);
146
+ __decorate([
147
+ (0, ts_utils_1.log)(),
148
+ __metadata("design:type", Function),
149
+ __metadata("design:paramtypes", []),
150
+ __metadata("design:returntype", Promise)
151
+ ], DeviceController.prototype, "getCredentials", null);
124
152
  exports.DeviceController = DeviceController;
125
153
  //# sourceMappingURL=DeviceController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceController.js","sourceRoot":"","sources":["../../../src/modules/devices/DeviceController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeviceController.js","sourceRoot":"","sources":["../../../src/modules/devices/DeviceController.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,25 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.DeviceSecretController = exports.DeviceSecretType = void 0;
4
13
  const ts_serval_1 = require("@js-soft/ts-serval");
14
+ const ts_utils_1 = require("@js-soft/ts-utils");
5
15
  const crypto_1 = require("@nmshd/crypto");
6
16
  const core_1 = require("../../core");
7
17
  const TransportController_1 = require("../../core/TransportController");
8
18
  const TransportIds_1 = require("../../core/TransportIds");
9
19
  const SecretContainerCipher_1 = require("../secrets/data/SecretContainerCipher");
10
20
  const SecretContainerPlain_1 = require("../secrets/data/SecretContainerPlain");
21
+ const DatawalletModification_1 = require("../sync/local/DatawalletModification");
22
+ const Device_1 = require("./local/Device");
11
23
  const DeviceSharedSecret_1 = require("./transmission/DeviceSharedSecret");
12
24
  var DeviceSecretType;
13
25
  (function (DeviceSecretType) {
@@ -86,17 +98,17 @@ class DeviceSecretController extends TransportController_1.TransportController {
86
98
  async createDeviceSharedSecret(device, deviceIndex, includeIdentityPrivateKey = false) {
87
99
  const synchronizationKey = await this.loadSecret(DeviceSecretType.IdentitySynchronizationMaster);
88
100
  if (!synchronizationKey || !(synchronizationKey.secret instanceof crypto_1.CryptoSecretKey)) {
89
- throw core_1.TransportErrors.secrets.secretNotFound("SynchronizationKey").logWith(this._log);
101
+ throw core_1.TransportErrors.secrets.secretNotFound("SynchronizationKey");
90
102
  }
91
103
  const baseKey = await this.loadSecret(DeviceSecretType.SharedSecretBaseKey);
92
104
  if (!baseKey || !(baseKey.secret instanceof crypto_1.CryptoSecretKey)) {
93
- throw core_1.TransportErrors.secrets.secretNotFound("baseKey").logWith(this._log);
105
+ throw core_1.TransportErrors.secrets.secretNotFound("baseKey");
94
106
  }
95
107
  let identityPrivateKey;
96
108
  if (includeIdentityPrivateKey) {
97
109
  identityPrivateKey = await this.loadSecret(DeviceSecretType.IdentitySignature);
98
110
  if (!identityPrivateKey || !(identityPrivateKey.secret instanceof crypto_1.CryptoSignaturePrivateKey)) {
99
- throw core_1.TransportErrors.secrets.secretNotFound("IdentityKey").logWith(this._log);
111
+ throw core_1.TransportErrors.secrets.secretNotFound("IdentityKey");
100
112
  }
101
113
  }
102
114
  const deviceSharedSecret = DeviceSharedSecret_1.DeviceSharedSecret.from({
@@ -113,7 +125,6 @@ class DeviceSecretController extends TransportController_1.TransportController {
113
125
  password: device.initialPassword,
114
126
  identity: this.parent.identity.identity
115
127
  });
116
- // TODO: JSSNMSHDD-2474 (Rollback on error)
117
128
  return deviceSharedSecret;
118
129
  }
119
130
  async encryptDatawalletModificationPayload(event, index) {
@@ -123,9 +134,7 @@ class DeviceSecretController extends TransportController_1.TransportController {
123
134
  const serializedEvent = crypto_1.CoreBuffer.fromUtf8(JSON.stringify(event.payload));
124
135
  const privSync = await this.loadSecret(DeviceSecretType.IdentitySynchronizationMaster);
125
136
  if (!privSync || !(privSync.secret instanceof crypto_1.CryptoSecretKey)) {
126
- throw core_1.TransportErrors.secrets
127
- .secretNotFound(DeviceSecretType.IdentitySynchronizationMaster)
128
- .logWith(this._log);
137
+ throw core_1.TransportErrors.secrets.secretNotFound(DeviceSecretType.IdentitySynchronizationMaster);
129
138
  }
130
139
  const encryptionKey = await core_1.CoreCrypto.deriveKeyFromBase(privSync.secret, index, "DataSync");
131
140
  const cipher = await core_1.CoreCrypto.encrypt(serializedEvent, encryptionKey);
@@ -139,9 +148,7 @@ class DeviceSecretController extends TransportController_1.TransportController {
139
148
  const payloadCipher = crypto_1.CryptoCipher.fromBase64(payloadCipherBase64);
140
149
  const privSync = await this.loadSecret(DeviceSecretType.IdentitySynchronizationMaster);
141
150
  if (!privSync || !(privSync.secret instanceof crypto_1.CryptoSecretKey)) {
142
- throw core_1.TransportErrors.secrets
143
- .secretNotFound(DeviceSecretType.IdentitySynchronizationMaster)
144
- .logWith(this._log);
151
+ throw core_1.TransportErrors.secrets.secretNotFound(DeviceSecretType.IdentitySynchronizationMaster);
145
152
  }
146
153
  const decryptionKey = await core_1.CoreCrypto.deriveKeyFromBase(privSync.secret, index, "DataSync");
147
154
  const plaintext = await core_1.CoreCrypto.decrypt(payloadCipher, decryptionKey);
@@ -151,13 +158,35 @@ class DeviceSecretController extends TransportController_1.TransportController {
151
158
  }
152
159
  getBaseKey() {
153
160
  if (!this.baseKey) {
154
- throw core_1.TransportErrors.general
155
- .recordNotFound(crypto_1.CryptoSecretKey, DeviceSecretType.SharedSecretBaseKey)
156
- .logWith(this._log);
161
+ throw core_1.TransportErrors.general.recordNotFound(crypto_1.CryptoSecretKey, DeviceSecretType.SharedSecretBaseKey);
157
162
  }
158
163
  return this.baseKey;
159
164
  }
160
165
  }
161
- exports.DeviceSecretController = DeviceSecretController;
162
166
  DeviceSecretController.secretContext = "DEVICE01";
167
+ __decorate([
168
+ (0, ts_utils_1.log)(),
169
+ __metadata("design:type", Function),
170
+ __metadata("design:paramtypes", [Device_1.Device, Number, Object]),
171
+ __metadata("design:returntype", Promise)
172
+ ], DeviceSecretController.prototype, "createDeviceSharedSecret", null);
173
+ __decorate([
174
+ (0, ts_utils_1.log)(),
175
+ __metadata("design:type", Function),
176
+ __metadata("design:paramtypes", [DatawalletModification_1.DatawalletModification, Number]),
177
+ __metadata("design:returntype", Promise)
178
+ ], DeviceSecretController.prototype, "encryptDatawalletModificationPayload", null);
179
+ __decorate([
180
+ (0, ts_utils_1.log)(),
181
+ __metadata("design:type", Function),
182
+ __metadata("design:paramtypes", [Object, Number]),
183
+ __metadata("design:returntype", Promise)
184
+ ], DeviceSecretController.prototype, "decryptDatawalletModificationPayload", null);
185
+ __decorate([
186
+ (0, ts_utils_1.log)(),
187
+ __metadata("design:type", Function),
188
+ __metadata("design:paramtypes", []),
189
+ __metadata("design:returntype", crypto_1.CryptoSecretKey)
190
+ ], DeviceSecretController.prototype, "getBaseKey", null);
191
+ exports.DeviceSecretController = DeviceSecretController;
163
192
  //# sourceMappingURL=DeviceSecretController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceSecretController.js","sourceRoot":"","sources":["../../../src/modules/devices/DeviceSecretController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeviceSecretController.js","sourceRoot":"","sources":["../../../src/modules/devices/DeviceSecretController.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,kDAAiD;AACjD,gDAAuC;AACvC,0CAUsB;AACtB,qCAAkE;AAClE,wEAAoF;AACpF,0DAAsD;AAEtD,iFAAqG;AACrG,+EAA2E;AAC3E,iFAA6E;AAC7E,2CAAuC;AAEvC,0EAAsE;AAEtE,IAAY,gBAOX;AAPD,WAAY,gBAAgB;IACxB,qFAAiE,CAAA;IACjE,4DAAwC,CAAA;IACxC,0DAAsC,CAAA;IACtC,0DAAsC,CAAA;IACtC,wDAAoC,CAAA;IACpC,4DAAwC,CAAA;AAC5C,CAAC,EAPW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAO3B;AAED;;;;GAIG;AACH,MAAa,sBAAuB,SAAQ,yCAAmB;IAO3D,YAAmB,MAAyB,EAAE,OAAwB;QAClE,KAAK,CAAC,oCAAc,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;IAEe,KAAK,CAAC,IAAI;QACtB,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;QAElB,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;QAEpD,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,KAAK,CAAC,WAAW,CACpB,MAMqB,EACrB,IAAY;QAEZ,MAAM,WAAW,GAAW,MAAM,CAAC,SAAS,EAAE,CAAA;QAC9C,MAAM,WAAW,GAAe,mBAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAEhE,MAAM,aAAa,GAAoB,MAAM,iBAAU,CAAC,iBAAiB,CACrE,IAAI,CAAC,UAAU,EAAE,EACjB,CAAC,EACD,sBAAsB,CAAC,aAAa,CACvC,CAAA;QAED,MAAM,MAAM,GAAkB,MAAM,iBAAU,CAAC,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,CAAA;QAClF,MAAM,IAAI,GAAa,eAAQ,CAAC,GAAG,EAAE,CAAA;QACrC,MAAM,wBAAwB,GAA2B;YACrD,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,IAAI;YACf,IAAI,EAAE,IAAI;YACV,EAAE,EAAE,MAAM,2BAAY,CAAC,MAAM,CAAC,QAAQ,EAAE;YACxC,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;SACf,CAAA;QACD,MAAM,SAAS,GAA0B,6CAAqB,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;QAE7F,IAAI,CAAC,GAAG,CAAC,KAAK,CACV,4BAA4B,SAAS,CAAC,EAAE,SAAS,SAAS,CAAC,IAAI,OAAO,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,GAAG,CAC7G,CAAA;QAED,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;QAEhD,OAAO,SAAS,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,IAAY;QAChC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,SAAS;YAAE,OAAM;QAEtB,MAAM,OAAO,GAAoB,IAAI,CAAC,UAAU,EAAE,CAAA;QAClD,MAAM,MAAM,GAA0B,6CAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAC3E,MAAM,aAAa,GAAoB,MAAM,iBAAU,CAAC,iBAAiB,CACrE,OAAO,EACP,CAAC,EACD,sBAAsB,CAAC,aAAa,CACvC,CAAA;QACD,MAAM,WAAW,GAAgB,MAAM,iBAAU,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QACvF,MAAM,WAAW,GAAW,WAAW,CAAC,MAAM,EAAE,CAAA;QAEhD,MAAM,eAAe,GAAG,wBAAY,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAA;QAEpE,MAAM,WAAW,GAAyB,2CAAoB,CAAC,IAAI,CAAC;YAChE,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,eAAe;YACvB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;SACxB,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,KAAK,CACV,6BAA6B,WAAW,CAAC,EAAE,SAAS,WAAW,CAAC,IAAI,OAAO,eAAQ,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,GAAG,CAC7G,CAAA;QACD,OAAO,WAAW,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,IAAY;QAClC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,SAAS,EAAE;YACZ,OAAO,KAAK,CAAA;SACf;QACD,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,GAAG,CAAC,KAAK,CACV,4BAA4B,SAAS,CAAC,EAAE,SAAS,SAAS,CAAC,IAAI,OAAO,eAAQ,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,GAAG,CACxG,CAAA;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IAGY,AAAN,KAAK,CAAC,wBAAwB,CACjC,MAAc,EACd,WAAmB,EACnB,yBAAyB,GAAG,KAAK;QAEjC,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,CAAA;QAChG,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC,kBAAkB,CAAC,MAAM,YAAY,wBAAe,CAAC,EAAE;YAChF,MAAM,sBAAe,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAA;SACrE;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAA;QAC3E,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,YAAY,wBAAe,CAAC,EAAE;YAC1D,MAAM,sBAAe,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAA;SAC1D;QAED,IAAI,kBAAkB,CAAA;QACtB,IAAI,yBAAyB,EAAE;YAC3B,kBAAkB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAA;YAC9E,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC,kBAAkB,CAAC,MAAM,YAAY,kCAAyB,CAAC,EAAE;gBAC1F,MAAM,sBAAe,CAAC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;aAC9D;SACJ;QAED,MAAM,kBAAkB,GAAG,uCAAkB,CAAC,IAAI,CAAC;YAC/C,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,WAAW,EAAE,WAAW;YACxB,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,kBAAkB,EAAE,kBAAkB,CAAC,MAAM;YAC7C,kBAAkB,EAAE,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,MAAmC;YAC3E,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,eAAgB;YACjC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ;SAC1C,CAAC,CAAA;QAEF,OAAO,kBAAkB,CAAA;IAC7B,CAAC;IAGY,AAAN,KAAK,CAAC,oCAAoC,CAC7C,KAA6B,EAC7B,KAAa;QAEb,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YAChB,OAAO,SAAS,CAAA;SACnB;QAED,MAAM,eAAe,GAAG,mBAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;QAC1E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,CAAA;QACtF,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,YAAY,wBAAe,CAAC,EAAE;YAC5D,MAAM,sBAAe,CAAC,OAAO,CAAC,cAAc,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,CAAA;SAC/F;QAED,MAAM,aAAa,GAAG,MAAM,iBAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QAE5F,MAAM,MAAM,GAAG,MAAM,iBAAU,CAAC,OAAO,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;QACvE,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QACvB,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;IAC5B,CAAC;IAGY,AAAN,KAAK,CAAC,oCAAoC,CAC7C,mBAAkC,EAClC,KAAa;QAEb,IAAI,CAAC,mBAAmB,EAAE;YACtB,OAAO,SAAS,CAAA;SACnB;QAED,MAAM,aAAa,GAAG,qBAAY,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAA;QAElE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,CAAA;QACtF,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,YAAY,wBAAe,CAAC,EAAE;YAC5D,MAAM,sBAAe,CAAC,OAAO,CAAC,cAAc,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,CAAA;SAC/F;QAED,MAAM,aAAa,GAAG,MAAM,iBAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QAE5F,MAAM,SAAS,GAAG,MAAM,iBAAU,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,CAAA;QACxE,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QAEvB,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;QAEzD,OAAO,kBAAkB,CAAA;IAC7B,CAAC;IAGO,UAAU;QACd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,MAAM,sBAAe,CAAC,OAAO,CAAC,cAAc,CAAC,wBAAe,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAA;SACtG;QAED,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;;AArMuB,oCAAa,GAAW,UAAU,CAAA;AAqG7C;IADZ,IAAA,cAAG,GAAE;;qCAEM,eAAM;;sEAsCjB;AAGY;IADZ,IAAA,cAAG,GAAE;;qCAEK,+CAAsB;;kFAkBhC;AAGY;IADZ,IAAA,cAAG,GAAE;;;;kFAwBL;AAED;IAAC,IAAA,cAAG,GAAE;;;oCACgB,wBAAe;wDAMpC;AAxML,wDAyMC"}