@nmshd/transport 2.0.0-beta.1 → 2.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/buildInformation.js +5 -5
- package/dist/core/CoreCrypto.d.ts +1 -0
- package/dist/core/CoreCrypto.js +17 -14
- package/dist/core/CoreCrypto.js.map +1 -1
- package/dist/core/CoreErrors.d.ts +62 -0
- package/dist/core/CoreErrors.js +138 -0
- package/dist/core/CoreErrors.js.map +1 -0
- package/dist/core/CoreIdHelper.js +2 -1
- package/dist/core/CoreIdHelper.js.map +1 -1
- package/dist/core/CoreSerializable.js.map +1 -1
- package/dist/core/CoreSerializableAsync.js.map +1 -1
- package/dist/core/CoreSynchronizable.js.map +1 -1
- package/dist/core/CoreUtil.js +2 -2
- package/dist/core/CoreUtil.js.map +1 -1
- package/dist/core/Reference.js +3 -3
- package/dist/core/Reference.js.map +1 -1
- package/dist/core/Transport.d.ts +1 -1
- package/dist/core/Transport.js +9 -5
- package/dist/core/Transport.js.map +1 -1
- package/dist/core/TransportController.d.ts +3 -2
- package/dist/core/TransportController.js +8 -6
- package/dist/core/TransportController.js.map +1 -1
- package/dist/core/TransportError.d.ts +2 -0
- package/dist/core/TransportError.js +7 -0
- package/dist/core/TransportError.js.map +1 -0
- package/dist/core/TransportLoggerFactory.js +2 -2
- package/dist/core/TransportLoggerFactory.js.map +1 -1
- package/dist/core/backbone/ClientResult.js +5 -4
- package/dist/core/backbone/ClientResult.js.map +1 -1
- package/dist/core/backbone/RESTClient.d.ts +4 -1
- package/dist/core/backbone/RESTClient.js +35 -41
- package/dist/core/backbone/RESTClient.js.map +1 -1
- package/dist/core/backbone/RESTClientAuthenticate.d.ts +2 -1
- package/dist/core/backbone/RESTClientAuthenticate.js.map +1 -1
- package/dist/core/index.d.ts +2 -1
- package/dist/core/index.js +2 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/types/CoreAddress.d.ts +1 -1
- package/dist/core/types/CoreAddress.js.map +1 -1
- package/dist/core/types/CoreDate.js +4 -4
- package/dist/core/types/CoreDate.js.map +1 -1
- package/dist/core/types/CoreHash.js.map +1 -1
- package/dist/core/types/CoreId.d.ts +1 -1
- package/dist/core/types/CoreId.js +2 -2
- package/dist/core/types/CoreId.js.map +1 -1
- package/dist/modules/accounts/AccountController.d.ts +2 -0
- package/dist/modules/accounts/AccountController.js +32 -12
- package/dist/modules/accounts/AccountController.js.map +1 -1
- package/dist/modules/accounts/IdentityController.d.ts +1 -1
- package/dist/modules/accounts/IdentityController.js +24 -4
- package/dist/modules/accounts/IdentityController.js.map +1 -1
- package/dist/modules/accounts/IdentityUtil.d.ts +1 -1
- package/dist/modules/accounts/IdentityUtil.js +3 -4
- package/dist/modules/accounts/IdentityUtil.js.map +1 -1
- package/dist/modules/accounts/data/Identity.d.ts +0 -18
- package/dist/modules/accounts/data/Identity.js +0 -33
- package/dist/modules/accounts/data/Identity.js.map +1 -1
- package/dist/modules/accounts/data/IdentitySecretCredentials.js.map +1 -1
- package/dist/modules/certificates/data/Certificate.js.map +1 -1
- package/dist/modules/certificates/data/CertificateConstraint.js.map +1 -1
- package/dist/modules/certificates/data/CertificateContent.js.map +1 -1
- package/dist/modules/certificates/data/CertificateItem.js.map +1 -1
- package/dist/modules/certificates/data/constraints/CertificateBorderConstraint.js.map +1 -1
- package/dist/modules/certificates/data/constraints/CertificateCityConstraint.js.map +1 -1
- package/dist/modules/certificates/data/constraints/CertificateIdentityConstraint.js.map +1 -1
- package/dist/modules/certificates/data/constraints/CertificateTimeConstraint.js.map +1 -1
- package/dist/modules/certificates/data/items/CertificateAuthorizationItem.js.map +1 -1
- package/dist/modules/certificates/data/items/CertificateDelegateItem.js.map +1 -1
- package/dist/modules/certificates/data/items/CertificatePrivateAttributeItem.js.map +1 -1
- package/dist/modules/certificates/data/items/CertificatePrivateAttributeItemSource.js.map +1 -1
- package/dist/modules/certificates/data/items/CertificatePublicAttributeItem.js.map +1 -1
- package/dist/modules/certificates/data/items/CertificateRoleItem.js.map +1 -1
- package/dist/modules/challenges/ChallengeController.js +27 -6
- package/dist/modules/challenges/ChallengeController.js.map +1 -1
- package/dist/modules/challenges/data/Challenge.js.map +1 -1
- package/dist/modules/challenges/data/ChallengeSigned.js.map +1 -1
- package/dist/modules/devices/DeviceController.d.ts +1 -1
- package/dist/modules/devices/DeviceController.js +43 -15
- package/dist/modules/devices/DeviceController.js.map +1 -1
- package/dist/modules/devices/DeviceSecretController.js +43 -14
- package/dist/modules/devices/DeviceSecretController.js.map +1 -1
- package/dist/modules/devices/DevicesController.js +4 -4
- package/dist/modules/devices/DevicesController.js.map +1 -1
- package/dist/modules/devices/local/Device.js.map +1 -1
- package/dist/modules/devices/local/DeviceSecretCredentials.js.map +1 -1
- package/dist/modules/devices/local/SendDeviceParameters.js.map +1 -1
- package/dist/modules/devices/transmission/DeviceSharedSecret.js.map +1 -1
- package/dist/modules/files/FileController.d.ts +3 -3
- package/dist/modules/files/FileController.js +51 -25
- package/dist/modules/files/FileController.js.map +1 -1
- package/dist/modules/files/backbone/FileClient.d.ts +2 -1
- package/dist/modules/files/backbone/FileClient.js.map +1 -1
- package/dist/modules/files/local/CachedFile.js.map +1 -1
- package/dist/modules/files/local/File.js.map +1 -1
- package/dist/modules/files/local/SendFileParameters.js.map +1 -1
- package/dist/modules/files/transmission/FileMetadata.js.map +1 -1
- package/dist/modules/files/transmission/FileReference.js.map +1 -1
- package/dist/modules/index.d.ts +4 -4
- package/dist/modules/index.js +4 -4
- package/dist/modules/index.js.map +1 -1
- package/dist/modules/messages/MessageController.js +72 -18
- package/dist/modules/messages/MessageController.js.map +1 -1
- package/dist/modules/messages/local/CachedMessage.js.map +1 -1
- package/dist/modules/messages/local/Message.js.map +1 -1
- package/dist/modules/messages/local/SendMessageParameters.js.map +1 -1
- package/dist/modules/messages/transmission/{MessagePlain.d.ts → MessageContentWrapper.d.ts} +4 -4
- package/dist/modules/messages/transmission/{MessagePlain.js → MessageContentWrapper.js} +12 -12
- package/dist/modules/messages/transmission/MessageContentWrapper.js.map +1 -0
- package/dist/modules/messages/transmission/MessageEnvelope.js.map +1 -1
- package/dist/modules/messages/transmission/MessageEnvelopeRecipient.js.map +1 -1
- package/dist/modules/messages/transmission/MessageSignature.js.map +1 -1
- package/dist/modules/messages/transmission/MessageSigned.js.map +1 -1
- package/dist/modules/relationshipTemplates/RelationshipTemplateController.js +39 -16
- package/dist/modules/relationshipTemplates/RelationshipTemplateController.js.map +1 -1
- package/dist/modules/relationshipTemplates/backbone/BackboneGetRelationshipTemplates.d.ts +0 -1
- package/dist/modules/relationshipTemplates/backbone/BackbonePostRelationshipTemplates.d.ts +0 -5
- package/dist/modules/relationshipTemplates/local/CachedRelationshipTemplate.d.ts +0 -11
- package/dist/modules/relationshipTemplates/local/CachedRelationshipTemplate.js +1 -15
- package/dist/modules/relationshipTemplates/local/CachedRelationshipTemplate.js.map +1 -1
- package/dist/modules/relationshipTemplates/local/RelationshipTemplate.js.map +1 -1
- package/dist/modules/relationshipTemplates/local/SendRelationshipTemplateParameters.d.ts +0 -11
- package/dist/modules/relationshipTemplates/local/SendRelationshipTemplateParameters.js +2 -17
- package/dist/modules/relationshipTemplates/local/SendRelationshipTemplateParameters.js.map +1 -1
- package/dist/modules/relationshipTemplates/transmission/{RelationshipTemplateContent.d.ts → RelationshipTemplateContentWrapper.d.ts} +3 -3
- package/dist/modules/relationshipTemplates/transmission/{RelationshipTemplateContent.js → RelationshipTemplateContentWrapper.js} +10 -10
- package/dist/modules/relationshipTemplates/transmission/RelationshipTemplateContentWrapper.js.map +1 -0
- package/dist/modules/relationshipTemplates/transmission/RelationshipTemplatePublicKey.js.map +1 -1
- package/dist/modules/relationshipTemplates/transmission/RelationshipTemplateReference.js.map +1 -1
- package/dist/modules/relationshipTemplates/transmission/RelationshipTemplateSigned.js.map +1 -1
- package/dist/modules/relationships/RelationshipSecretController.js +89 -18
- package/dist/modules/relationships/RelationshipSecretController.js.map +1 -1
- package/dist/modules/relationships/RelationshipsController.d.ts +3 -3
- package/dist/modules/relationships/RelationshipsController.js +125 -72
- package/dist/modules/relationships/RelationshipsController.js.map +1 -1
- package/dist/modules/relationships/local/CachedRelationship.js.map +1 -1
- package/dist/modules/relationships/local/Relationship.d.ts +1 -0
- package/dist/modules/relationships/local/Relationship.js +9 -9
- package/dist/modules/relationships/local/Relationship.js.map +1 -1
- package/dist/modules/relationships/local/SendRelationshipParameters.js.map +1 -1
- package/dist/modules/relationships/transmission/changes/RelationshipChange.js.map +1 -1
- package/dist/modules/relationships/transmission/changes/RelationshipChangeRequest.js.map +1 -1
- package/dist/modules/relationships/transmission/changes/RelationshipChangeResponse.js.map +1 -1
- package/dist/modules/relationships/transmission/requests/RelationshipCreationChangeRequestCipher.js.map +1 -1
- package/dist/modules/relationships/transmission/requests/{RelationshipCreationChangeRequestContent.d.ts → RelationshipCreationChangeRequestContentWrapper.d.ts} +3 -3
- package/dist/modules/relationships/transmission/requests/{RelationshipCreationChangeRequestContent.js → RelationshipCreationChangeRequestContentWrapper.js} +10 -10
- package/dist/modules/relationships/transmission/requests/RelationshipCreationChangeRequestContentWrapper.js.map +1 -0
- package/dist/modules/relationships/transmission/requests/RelationshipCreationChangeRequestSigned.js.map +1 -1
- package/dist/modules/relationships/transmission/responses/RelationshipCreationChangeResponseCipher.js.map +1 -1
- package/dist/modules/relationships/transmission/responses/{RelationshipCreationChangeResponseContent.d.ts → RelationshipCreationChangeResponseContentWrapper.d.ts} +3 -3
- package/dist/modules/relationships/transmission/responses/{RelationshipCreationChangeResponseContent.js → RelationshipCreationChangeResponseContentWrapper.js} +9 -9
- package/dist/modules/relationships/transmission/responses/RelationshipCreationChangeResponseContentWrapper.js.map +1 -0
- package/dist/modules/relationships/transmission/responses/RelationshipCreationChangeResponseSigned.js.map +1 -1
- package/dist/modules/secrets/SecretController.js +18 -5
- package/dist/modules/secrets/SecretController.js.map +1 -1
- package/dist/modules/secrets/data/SecretContainerCipher.js.map +1 -1
- package/dist/modules/secrets/data/SecretContainerPlain.js.map +1 -1
- package/dist/modules/sync/DatawalletModificationMapper.js +2 -2
- package/dist/modules/sync/DatawalletModificationMapper.js.map +1 -1
- package/dist/modules/sync/DatawalletModificationsProcessor.d.ts +1 -0
- package/dist/modules/sync/DatawalletModificationsProcessor.js +21 -4
- package/dist/modules/sync/DatawalletModificationsProcessor.js.map +1 -1
- package/dist/modules/sync/ExternalEventsProcessor.js +1 -1
- package/dist/modules/sync/ExternalEventsProcessor.js.map +1 -1
- package/dist/modules/sync/SyncController.d.ts +2 -0
- package/dist/modules/sync/SyncController.js +71 -30
- package/dist/modules/sync/SyncController.js.map +1 -1
- package/dist/modules/sync/local/DatawalletModification.js.map +1 -1
- package/dist/modules/tokens/AnonymousTokenController.js +1 -1
- package/dist/modules/tokens/AnonymousTokenController.js.map +1 -1
- package/dist/modules/tokens/TokenController.js +33 -6
- package/dist/modules/tokens/TokenController.js.map +1 -1
- package/dist/modules/tokens/local/CachedToken.js.map +1 -1
- package/dist/modules/tokens/local/SendTokenParameters.js.map +1 -1
- package/dist/modules/tokens/local/Token.js.map +1 -1
- package/dist/modules/tokens/transmission/TokenContentDeviceSharedSecret.js.map +1 -1
- package/dist/modules/tokens/transmission/TokenContentFile.js.map +1 -1
- package/dist/modules/tokens/transmission/TokenContentRelationshipTemplate.js.map +1 -1
- package/dist/modules/tokens/transmission/TokenReference.js.map +1 -1
- package/dist/util/PasswordGenerator.js +2 -2
- package/dist/util/PasswordGenerator.js.map +1 -1
- package/dist/util/Random.js +8 -8
- package/dist/util/Random.js.map +1 -1
- package/lib-web/nmshd.transport.js +3607 -9700
- package/lib-web/nmshd.transport.js.map +1 -1
- package/lib-web/nmshd.transport.min.js +1 -1
- package/lib-web/nmshd.transport.min.js.map +1 -1
- package/package.json +24 -24
- package/dist/core/TransportErrors.d.ts +0 -131
- package/dist/core/TransportErrors.js +0 -284
- package/dist/core/TransportErrors.js.map +0 -1
- package/dist/modules/messages/transmission/MessagePlain.js.map +0 -1
- package/dist/modules/relationshipTemplates/transmission/RelationshipTemplateContent.js.map +0 -1
- package/dist/modules/relationships/transmission/requests/RelationshipCreationChangeRequestContent.js.map +0 -1
- 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.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.
|
|
52
|
+
throw new core_1.TransportError("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;
|
|
@@ -65,15 +70,14 @@ class DeviceController extends core_1.TransportController {
|
|
|
65
70
|
try {
|
|
66
71
|
const credentialContainer = await this.secrets.loadSecret(DeviceSecretController_1.DeviceSecretType.DeviceCredentials);
|
|
67
72
|
if (!credentialContainer) {
|
|
68
|
-
throw new
|
|
73
|
+
throw new core_1.TransportError("There was an error while accessing the device_credentials secret.");
|
|
69
74
|
}
|
|
70
75
|
const credentials = credentialContainer.secret;
|
|
71
76
|
credentials.password = newPassword;
|
|
72
77
|
await this.secrets.storeSecret(credentials, DeviceSecretController_1.DeviceSecretType.DeviceCredentials);
|
|
73
78
|
}
|
|
74
79
|
catch (e) {
|
|
75
|
-
|
|
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.
|
|
97
|
+
throw core_1.CoreErrors.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.
|
|
106
|
+
throw new core_1.TransportError("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.
|
|
113
|
+
throw core_1.CoreErrors.secrets.secretNotFound(DeviceSecretController_1.DeviceSecretType.DeviceCredentials);
|
|
110
114
|
}
|
|
111
115
|
if (!(credentialContainer.secret instanceof DeviceSecretCredentials_1.DeviceSecretCredentials)) {
|
|
112
|
-
throw core_1.
|
|
116
|
+
throw core_1.CoreErrors.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.
|
|
120
|
+
throw core_1.CoreErrors.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":"
|
|
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.
|
|
101
|
+
throw core_1.CoreErrors.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.
|
|
105
|
+
throw core_1.CoreErrors.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.
|
|
111
|
+
throw core_1.CoreErrors.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.
|
|
127
|
-
.secretNotFound(DeviceSecretType.IdentitySynchronizationMaster)
|
|
128
|
-
.logWith(this._log);
|
|
137
|
+
throw core_1.CoreErrors.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.
|
|
143
|
-
.secretNotFound(DeviceSecretType.IdentitySynchronizationMaster)
|
|
144
|
-
.logWith(this._log);
|
|
151
|
+
throw core_1.CoreErrors.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.
|
|
155
|
-
.recordNotFound(crypto_1.CryptoSecretKey, DeviceSecretType.SharedSecretBaseKey)
|
|
156
|
-
.logWith(this._log);
|
|
161
|
+
throw core_1.CoreErrors.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":"
|
|
1
|
+
{"version":3,"file":"DeviceSecretController.js","sourceRoot":"","sources":["../../../src/modules/devices/DeviceSecretController.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,12 +66,12 @@ class DevicesController extends TransportController_1.TransportController {
|
|
|
66
66
|
async getSharedSecret(id) {
|
|
67
67
|
const deviceDoc = await this.devices.read(id.toString());
|
|
68
68
|
if (!deviceDoc) {
|
|
69
|
-
throw core_1.
|
|
69
|
+
throw core_1.CoreErrors.general.recordNotFound(Device_1.Device, id.toString());
|
|
70
70
|
}
|
|
71
71
|
const count = await this.devices.count();
|
|
72
72
|
const device = Device_1.Device.from(deviceDoc);
|
|
73
73
|
if (!device.initialPassword || device.publicKey || device.lastLoginAt) {
|
|
74
|
-
throw core_1.
|
|
74
|
+
throw core_1.CoreErrors.device.alreadyOnboarded();
|
|
75
75
|
}
|
|
76
76
|
const isAdmin = device.isAdmin === true;
|
|
77
77
|
const secret = await this.parent.activeDevice.secrets.createDeviceSharedSecret(device, count, isAdmin);
|
|
@@ -80,7 +80,7 @@ class DevicesController extends TransportController_1.TransportController {
|
|
|
80
80
|
async update(device) {
|
|
81
81
|
const deviceDoc = await this.devices.read(device.id.toString());
|
|
82
82
|
if (!deviceDoc) {
|
|
83
|
-
throw core_1.
|
|
83
|
+
throw core_1.CoreErrors.general.recordNotFound(Device_1.Device, device.id.toString());
|
|
84
84
|
}
|
|
85
85
|
await this.devices.update(deviceDoc, device);
|
|
86
86
|
}
|
|
@@ -89,7 +89,7 @@ class DevicesController extends TransportController_1.TransportController {
|
|
|
89
89
|
}
|
|
90
90
|
async list() {
|
|
91
91
|
const items = await this.devices.list();
|
|
92
|
-
return
|
|
92
|
+
return this.parseArray(items, Device_1.Device);
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
95
|
exports.DevicesController = DevicesController;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevicesController.js","sourceRoot":"","sources":["../../../src/modules/devices/DevicesController.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"DevicesController.js","sourceRoot":"","sources":["../../../src/modules/devices/DevicesController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Device.js","sourceRoot":"","sources":["../../../../src/modules/devices/local/Device.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,0CAAmF;AACnF,uDAAyC;AACzC,wCAAuE;AACvE,2DAAuD;AACvD,uDAAmD;AAEnD,IAAY,UAMX;AAND,WAAY,UAAU;IAClB,iDAAS,CAAA;IACT,6CAAO,CAAA;IACP,+CAAQ,CAAA;IACR,iDAAS,CAAA;IACT,qDAAW,CAAA;AACf,CAAC,EANW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAMrB;
|
|
1
|
+
{"version":3,"file":"Device.js","sourceRoot":"","sources":["../../../../src/modules/devices/local/Device.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceSecretCredentials.js","sourceRoot":"","sources":["../../../../src/modules/devices/local/DeviceSecretCredentials.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,wCAAiE;
|
|
1
|
+
{"version":3,"file":"DeviceSecretCredentials.js","sourceRoot":"","sources":["../../../../src/modules/devices/local/DeviceSecretCredentials.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,wCAAiE;AAS1D,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,uBAAgB;IAalD,MAAM,CAAC,IAAI,CAAC,KAA+B;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AAfG;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACA,aAAM;mDAAA;AAEjB;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACL;AAExB;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACL;AAXf,uBAAuB;IADnC,IAAA,gBAAI,EAAC,yBAAyB,CAAC;GACnB,uBAAuB,CAgBnC;AAhBY,0DAAuB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendDeviceParameters.js","sourceRoot":"","sources":["../../../../src/modules/devices/local/SendDeviceParameters.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,wCAAmE;
|
|
1
|
+
{"version":3,"file":"SendDeviceParameters.js","sourceRoot":"","sources":["../../../../src/modules/devices/local/SendDeviceParameters.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,wCAAmE;AAS5D,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,uBAAgB;IAa/C,MAAM,CAAC,IAAI,CAAC,KAA4B;QAC3C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AAfG;IAAC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;kDACQ;AAEpB;IAAC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;yDACe;AAE3B;IAAC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;qDACY;AAXf,oBAAoB;IADhC,IAAA,gBAAI,EAAC,sBAAsB,CAAC;GAChB,oBAAoB,CAgBhC;AAhBY,oDAAoB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceSharedSecret.js","sourceRoot":"","sources":["../../../../src/modules/devices/transmission/DeviceSharedSecret.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,0CAAwH;AACxH,wCAA2E;AAC3E,2DAAkE;
|
|
1
|
+
{"version":3,"file":"DeviceSharedSecret.js","sourceRoot":"","sources":["../../../../src/modules/devices/transmission/DeviceSharedSecret.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,0CAAwH;AACxH,wCAA2E;AAC3E,2DAAkE;AAkB3D,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,uBAAgB;IAiD7C,MAAM,CAAC,IAAI,CAAC,KAA0B;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AAnDG;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACA,aAAM;8CAAA;AAEjB;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACa,aAAM;2DAAA;AAE9B;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACO,eAAQ;qDAAA;AAE1B;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACT;AAEpB;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACF;AAE3B;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACgB,wBAAe;8DAAA;AAE1C;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACW,wBAAe;yDAAA;AAErC;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;uDACe;AAE1B;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACD,kCAAyB;8DAAA;AAErD;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACM,mBAAQ;oDAAA;AAEzB;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;oDACY;AAEvB;IAAC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;oDACY;AA/Cd,kBAAkB;IAD9B,IAAA,gBAAI,EAAC,oBAAoB,CAAC;GACd,kBAAkB,CAoD9B;AApDY,gDAAkB"}
|
|
@@ -22,9 +22,9 @@ export declare class FileController extends TransportController {
|
|
|
22
22
|
private updateCacheOfExistingFileInDb;
|
|
23
23
|
private updateCacheOfFile;
|
|
24
24
|
private decryptFile;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
getOrLoadFileByTruncated(truncated: string): Promise<File>;
|
|
26
|
+
getOrLoadFileByReference(fileReference: FileReference): Promise<File>;
|
|
27
|
+
getOrLoadFile(id: CoreId, secretKey: CryptoSecretKey): Promise<File>;
|
|
28
28
|
setFileMetadata(idOrFile: CoreId | File, metadata: ISerializable): Promise<File>;
|
|
29
29
|
sendFile(parameters: ISendFileParameters): Promise<File>;
|
|
30
30
|
downloadFileContent(idOrFile: CoreId | File): Promise<CoreBuffer>;
|
|
@@ -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.FileController = 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 DbCollectionName_1 = require("../../core/DbCollectionName");
|
|
@@ -23,7 +33,7 @@ class FileController extends TransportController_1.TransportController {
|
|
|
23
33
|
}
|
|
24
34
|
async getFiles(query) {
|
|
25
35
|
const files = await this.files.find(query);
|
|
26
|
-
return
|
|
36
|
+
return this.parseArray(files, File_1.File);
|
|
27
37
|
}
|
|
28
38
|
async getFile(id) {
|
|
29
39
|
const doc = await this.files.read(id.toString());
|
|
@@ -44,7 +54,6 @@ class FileController extends TransportController_1.TransportController {
|
|
|
44
54
|
if (ids.length < 1) {
|
|
45
55
|
return [];
|
|
46
56
|
}
|
|
47
|
-
// TODO: JSSNMSHDD-2820 (check for items that couldn't be fetched e.g. because it is expired)
|
|
48
57
|
const resultItems = (await this.client.getFiles({ ids })).value;
|
|
49
58
|
const promises = [];
|
|
50
59
|
for await (const resultItem of resultItems) {
|
|
@@ -55,7 +64,7 @@ class FileController extends TransportController_1.TransportController {
|
|
|
55
64
|
async updateCacheOfExistingFileInDb(id, response) {
|
|
56
65
|
const fileDoc = await this.files.read(id);
|
|
57
66
|
if (!fileDoc) {
|
|
58
|
-
throw core_1.
|
|
67
|
+
throw core_1.CoreErrors.general.recordNotFound(File_1.File, id);
|
|
59
68
|
}
|
|
60
69
|
const file = File_1.File.from(fileDoc);
|
|
61
70
|
await this.updateCacheOfFile(file, response);
|
|
@@ -77,22 +86,23 @@ class FileController extends TransportController_1.TransportController {
|
|
|
77
86
|
const plaintextMetadataBuffer = await core_1.CoreCrypto.decrypt(cipher, secretKey);
|
|
78
87
|
const plaintextMetadata = FileMetadata_1.FileMetadata.deserialize(plaintextMetadataBuffer.toUtf8());
|
|
79
88
|
if (!(plaintextMetadata instanceof FileMetadata_1.FileMetadata)) {
|
|
80
|
-
throw core_1.
|
|
89
|
+
throw core_1.CoreErrors.files.invalidMetadata(response.id);
|
|
81
90
|
}
|
|
82
|
-
// TODO: JSSNMSHDD-2486 (check signature)
|
|
83
91
|
const cachedFile = CachedFile_1.CachedFile.fromBackbone(response, plaintextMetadata);
|
|
84
92
|
return cachedFile;
|
|
85
93
|
}
|
|
86
|
-
async
|
|
94
|
+
async getOrLoadFileByTruncated(truncated) {
|
|
87
95
|
const reference = FileReference_1.FileReference.fromTruncated(truncated);
|
|
88
|
-
return await this.
|
|
96
|
+
return await this.getOrLoadFileByReference(reference);
|
|
89
97
|
}
|
|
90
|
-
async
|
|
91
|
-
return await this.
|
|
98
|
+
async getOrLoadFileByReference(fileReference) {
|
|
99
|
+
return await this.getOrLoadFile(fileReference.id, fileReference.key);
|
|
92
100
|
}
|
|
93
|
-
async
|
|
101
|
+
async getOrLoadFile(id, secretKey) {
|
|
94
102
|
const fileDoc = await this.files.read(id.toString());
|
|
95
103
|
if (fileDoc) {
|
|
104
|
+
if (fileDoc.cache)
|
|
105
|
+
return File_1.File.from(fileDoc);
|
|
96
106
|
return await this.updateCacheOfExistingFileInDb(id.toString());
|
|
97
107
|
}
|
|
98
108
|
const file = File_1.File.from({
|
|
@@ -108,7 +118,7 @@ class FileController extends TransportController_1.TransportController {
|
|
|
108
118
|
const id = idOrFile instanceof core_1.CoreId ? idOrFile.toString() : idOrFile.id.toString();
|
|
109
119
|
const fileDoc = await this.files.read(id);
|
|
110
120
|
if (!fileDoc) {
|
|
111
|
-
throw core_1.
|
|
121
|
+
throw core_1.CoreErrors.general.recordNotFound(File_1.File, id.toString());
|
|
112
122
|
}
|
|
113
123
|
const file = File_1.File.from(fileDoc);
|
|
114
124
|
file.setMetadata(metadata);
|
|
@@ -120,7 +130,7 @@ class FileController extends TransportController_1.TransportController {
|
|
|
120
130
|
const content = input.buffer;
|
|
121
131
|
const fileSize = content.length;
|
|
122
132
|
if (fileSize > this.config.platformMaxUnencryptedFileSize) {
|
|
123
|
-
throw core_1.
|
|
133
|
+
throw core_1.CoreErrors.files.maxFileSizeExceeded(fileSize, this.config.platformMaxUnencryptedFileSize);
|
|
124
134
|
}
|
|
125
135
|
const plaintextHashBuffer = await crypto_1.CryptoHash.hash(content, 2 /* CryptoHashAlgorithm.SHA512 */);
|
|
126
136
|
const plaintextHash = core_1.CoreHash.from(plaintextHashBuffer.toBase64URL());
|
|
@@ -183,33 +193,49 @@ class FileController extends TransportController_1.TransportController {
|
|
|
183
193
|
async downloadFileContent(idOrFile) {
|
|
184
194
|
const file = idOrFile instanceof File_1.File ? idOrFile : await this.getFile(idOrFile);
|
|
185
195
|
if (!file) {
|
|
186
|
-
throw core_1.
|
|
187
|
-
}
|
|
188
|
-
if (!file.cache) {
|
|
189
|
-
throw core_1.TransportErrors.general.cacheEmpty(File_1.File, file.id.toString()).logWith(this._log);
|
|
196
|
+
throw core_1.CoreErrors.general.recordNotFound(File_1.File, idOrFile.toString());
|
|
190
197
|
}
|
|
198
|
+
if (!file.cache)
|
|
199
|
+
throw this.newCacheEmptyError(File_1.File, file.id.toString());
|
|
191
200
|
const downloadResponse = (await this.client.downloadFile(file.id.toString())).value;
|
|
192
201
|
const buffer = crypto_1.CoreBuffer.fromObject(downloadResponse);
|
|
193
202
|
const hash = await crypto_1.CryptoHash.hash(buffer, 2 /* CryptoHashAlgorithm.SHA512 */);
|
|
194
203
|
const hashb64 = hash.toBase64URL();
|
|
195
204
|
if (hashb64 !== file.cache.cipherHash.hash) {
|
|
196
|
-
throw core_1.
|
|
197
|
-
}
|
|
198
|
-
/*
|
|
199
|
-
// TODO: JSSNMSHDD-2486 (verify owner signature)
|
|
200
|
-
const valid = await Crypto.verify(parcel.cipher.cipher, parcel.ownerSignature, owner.signing)
|
|
201
|
-
if (!valid) {
|
|
202
|
-
throw CoreErrors.General.SignatureNotValid("file").logWith(this._log)
|
|
205
|
+
throw core_1.CoreErrors.files.cipherMismatch();
|
|
203
206
|
}
|
|
204
|
-
*/
|
|
205
207
|
const cipher = crypto_1.CryptoCipher.fromBase64(buffer.toBase64URL());
|
|
206
208
|
const decrypt = await core_1.CoreCrypto.decrypt(cipher, file.cache.cipherKey);
|
|
207
209
|
const plaintextHashesMatch = await file.cache.plaintextHash.verify(decrypt, 2 /* CryptoHashAlgorithm.SHA512 */);
|
|
208
210
|
if (!plaintextHashesMatch) {
|
|
209
|
-
throw core_1.
|
|
211
|
+
throw core_1.CoreErrors.files.plaintextHashMismatch();
|
|
210
212
|
}
|
|
211
213
|
return decrypt;
|
|
212
214
|
}
|
|
213
215
|
}
|
|
216
|
+
__decorate([
|
|
217
|
+
(0, ts_utils_1.log)(),
|
|
218
|
+
__metadata("design:type", Function),
|
|
219
|
+
__metadata("design:paramtypes", [String, Object]),
|
|
220
|
+
__metadata("design:returntype", Promise)
|
|
221
|
+
], FileController.prototype, "updateCacheOfExistingFileInDb", null);
|
|
222
|
+
__decorate([
|
|
223
|
+
(0, ts_utils_1.log)(),
|
|
224
|
+
__metadata("design:type", Function),
|
|
225
|
+
__metadata("design:paramtypes", [Object, crypto_1.CryptoSecretKey]),
|
|
226
|
+
__metadata("design:returntype", Promise)
|
|
227
|
+
], FileController.prototype, "decryptFile", null);
|
|
228
|
+
__decorate([
|
|
229
|
+
(0, ts_utils_1.log)(),
|
|
230
|
+
__metadata("design:type", Function),
|
|
231
|
+
__metadata("design:paramtypes", [Object, Object]),
|
|
232
|
+
__metadata("design:returntype", Promise)
|
|
233
|
+
], FileController.prototype, "setFileMetadata", null);
|
|
234
|
+
__decorate([
|
|
235
|
+
(0, ts_utils_1.log)(),
|
|
236
|
+
__metadata("design:type", Function),
|
|
237
|
+
__metadata("design:paramtypes", [Object]),
|
|
238
|
+
__metadata("design:returntype", Promise)
|
|
239
|
+
], FileController.prototype, "downloadFileContent", null);
|
|
214
240
|
exports.FileController = FileController;
|
|
215
241
|
//# sourceMappingURL=FileController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileController.js","sourceRoot":"","sources":["../../../src/modules/files/FileController.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FileController.js","sourceRoot":"","sources":["../../../src/modules/files/FileController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
1
2
|
import { ClientResult } from "../../../core/backbone/ClientResult";
|
|
2
3
|
import { Paginator } from "../../../core/backbone/Paginator";
|
|
3
4
|
import { RESTClientAuthenticate } from "../../../core/backbone/RESTClientAuthenticate";
|
|
@@ -8,5 +9,5 @@ export declare class FileClient extends RESTClientAuthenticate {
|
|
|
8
9
|
getFiles(request: BackboneGetFilesRequest): Promise<ClientResult<Paginator<BackboneGetFilesResponse>>>;
|
|
9
10
|
getFile(id: string): Promise<ClientResult<BackboneGetFilesResponse>>;
|
|
10
11
|
deleteFile(id: string): Promise<ClientResult<void>>;
|
|
11
|
-
downloadFile(id: string): Promise<ClientResult<
|
|
12
|
+
downloadFile(id: string): Promise<ClientResult<Buffer | ArrayBuffer>>;
|
|
12
13
|
}
|