@enbox/dwn-sdk-js 0.4.9 → 0.4.11

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 (138) hide show
  1. package/dist/browser.mjs +1 -1
  2. package/dist/browser.mjs.map +4 -4
  3. package/dist/esm/generated/precompiled-validators.js +1262 -3888
  4. package/dist/esm/generated/precompiled-validators.js.map +1 -1
  5. package/dist/esm/src/core/constants.js +0 -26
  6. package/dist/esm/src/core/constants.js.map +1 -1
  7. package/dist/esm/src/core/encryption-control.js +0 -10
  8. package/dist/esm/src/core/encryption-control.js.map +1 -1
  9. package/dist/esm/src/core/replication-apply.js.map +1 -1
  10. package/dist/esm/src/handlers/records-query.js +9 -11
  11. package/dist/esm/src/handlers/records-query.js.map +1 -1
  12. package/dist/esm/src/handlers/records-read.js +15 -6
  13. package/dist/esm/src/handlers/records-read.js.map +1 -1
  14. package/dist/esm/src/handlers/records-subscribe.js +8 -11
  15. package/dist/esm/src/handlers/records-subscribe.js.map +1 -1
  16. package/dist/esm/src/handlers/records-write.js +6 -12
  17. package/dist/esm/src/handlers/records-write.js.map +1 -1
  18. package/dist/esm/src/index.js +1 -1
  19. package/dist/esm/src/index.js.map +1 -1
  20. package/dist/esm/src/interfaces/records-write-query.js +3 -0
  21. package/dist/esm/src/interfaces/records-write-query.js.map +1 -1
  22. package/dist/esm/src/interfaces/records-write.js +0 -9
  23. package/dist/esm/src/interfaces/records-write.js.map +1 -1
  24. package/dist/esm/src/store/message-store-level.js +104 -3
  25. package/dist/esm/src/store/message-store-level.js.map +1 -1
  26. package/dist/esm/src/store/storage-controller.js +44 -33
  27. package/dist/esm/src/store/storage-controller.js.map +1 -1
  28. package/dist/esm/src/utils/encryption.js +2 -7
  29. package/dist/esm/src/utils/encryption.js.map +1 -1
  30. package/dist/esm/src/utils/hd-key.js +0 -27
  31. package/dist/esm/src/utils/hd-key.js.map +1 -1
  32. package/dist/esm/src/utils/initial-write-attachment.js +48 -0
  33. package/dist/esm/src/utils/initial-write-attachment.js.map +1 -0
  34. package/dist/esm/src/utils/protocols.js +23 -51
  35. package/dist/esm/src/utils/protocols.js.map +1 -1
  36. package/dist/esm/src/utils/records.js +17 -31
  37. package/dist/esm/src/utils/records.js.map +1 -1
  38. package/dist/esm/tests/core/constants.spec.js +1 -11
  39. package/dist/esm/tests/core/constants.spec.js.map +1 -1
  40. package/dist/esm/tests/core/validation-read-closure.spec.js +1 -1
  41. package/dist/esm/tests/core/validation-read-closure.spec.js.map +1 -1
  42. package/dist/esm/tests/features/protocol-composition.spec.js +15 -60
  43. package/dist/esm/tests/features/protocol-composition.spec.js.map +1 -1
  44. package/dist/esm/tests/handlers/records-delete.spec.js +1 -1
  45. package/dist/esm/tests/handlers/records-delete.spec.js.map +1 -1
  46. package/dist/esm/tests/handlers/records-query.spec.js +82 -0
  47. package/dist/esm/tests/handlers/records-query.spec.js.map +1 -1
  48. package/dist/esm/tests/handlers/records-read.spec.js +40 -13
  49. package/dist/esm/tests/handlers/records-read.spec.js.map +1 -1
  50. package/dist/esm/tests/handlers/records-subscribe.spec.js +60 -1
  51. package/dist/esm/tests/handlers/records-subscribe.spec.js.map +1 -1
  52. package/dist/esm/tests/handlers/records-write.spec.js +10 -10
  53. package/dist/esm/tests/handlers/records-write.spec.js.map +1 -1
  54. package/dist/esm/tests/interfaces/protocols-configure.spec.js +5 -5
  55. package/dist/esm/tests/interfaces/protocols-configure.spec.js.map +1 -1
  56. package/dist/esm/tests/interfaces/records-write.spec.js +5 -51
  57. package/dist/esm/tests/interfaces/records-write.spec.js.map +1 -1
  58. package/dist/esm/tests/scenarios/end-to-end-tests.spec.js +2 -2
  59. package/dist/esm/tests/scenarios/end-to-end-tests.spec.js.map +1 -1
  60. package/dist/esm/tests/store/message-store.spec.js +105 -0
  61. package/dist/esm/tests/store/message-store.spec.js.map +1 -1
  62. package/dist/esm/tests/utils/encryption-callbacks.spec.js +18 -30
  63. package/dist/esm/tests/utils/encryption-callbacks.spec.js.map +1 -1
  64. package/dist/esm/tests/utils/encryption-control-test-utils.js +1 -1
  65. package/dist/esm/tests/utils/encryption-control-test-utils.js.map +1 -1
  66. package/dist/esm/tests/utils/encryption.spec.js +30 -33
  67. package/dist/esm/tests/utils/encryption.spec.js.map +1 -1
  68. package/dist/esm/tests/utils/test-data-generator.js +76 -24
  69. package/dist/esm/tests/utils/test-data-generator.js.map +1 -1
  70. package/dist/esm/tests/validation/json-schemas/protocols/protocols-configure.spec.js +1 -1
  71. package/dist/esm/tests/validation/json-schemas/protocols/protocols-configure.spec.js.map +1 -1
  72. package/dist/types/generated/precompiled-validators.d.ts +88 -120
  73. package/dist/types/generated/precompiled-validators.d.ts.map +1 -1
  74. package/dist/types/src/core/constants.d.ts +0 -13
  75. package/dist/types/src/core/constants.d.ts.map +1 -1
  76. package/dist/types/src/core/encryption-control.d.ts +0 -1
  77. package/dist/types/src/core/encryption-control.d.ts.map +1 -1
  78. package/dist/types/src/core/replication-apply.d.ts +0 -7
  79. package/dist/types/src/core/replication-apply.d.ts.map +1 -1
  80. package/dist/types/src/handlers/records-query.d.ts.map +1 -1
  81. package/dist/types/src/handlers/records-read.d.ts.map +1 -1
  82. package/dist/types/src/handlers/records-subscribe.d.ts.map +1 -1
  83. package/dist/types/src/index.d.ts +2 -2
  84. package/dist/types/src/index.d.ts.map +1 -1
  85. package/dist/types/src/interfaces/records-write-query.d.ts.map +1 -1
  86. package/dist/types/src/interfaces/records-write.d.ts +0 -4
  87. package/dist/types/src/interfaces/records-write.d.ts.map +1 -1
  88. package/dist/types/src/store/message-store-level.d.ts +9 -1
  89. package/dist/types/src/store/message-store-level.d.ts.map +1 -1
  90. package/dist/types/src/store/storage-controller.d.ts +18 -8
  91. package/dist/types/src/store/storage-controller.d.ts.map +1 -1
  92. package/dist/types/src/types/message-store.d.ts +36 -0
  93. package/dist/types/src/types/message-store.d.ts.map +1 -1
  94. package/dist/types/src/utils/encryption.d.ts +0 -3
  95. package/dist/types/src/utils/encryption.d.ts.map +1 -1
  96. package/dist/types/src/utils/hd-key.d.ts +1 -11
  97. package/dist/types/src/utils/hd-key.d.ts.map +1 -1
  98. package/dist/types/src/utils/initial-write-attachment.d.ts +17 -0
  99. package/dist/types/src/utils/initial-write-attachment.d.ts.map +1 -0
  100. package/dist/types/src/utils/protocols.d.ts +2 -7
  101. package/dist/types/src/utils/protocols.d.ts.map +1 -1
  102. package/dist/types/src/utils/records.d.ts +1 -8
  103. package/dist/types/src/utils/records.d.ts.map +1 -1
  104. package/dist/types/tests/features/protocol-composition.spec.d.ts.map +1 -1
  105. package/dist/types/tests/handlers/records-query.spec.d.ts.map +1 -1
  106. package/dist/types/tests/handlers/records-read.spec.d.ts.map +1 -1
  107. package/dist/types/tests/handlers/records-subscribe.spec.d.ts.map +1 -1
  108. package/dist/types/tests/scenarios/end-to-end-tests.spec.d.ts.map +1 -1
  109. package/dist/types/tests/store/message-store.spec.d.ts.map +1 -1
  110. package/dist/types/tests/utils/test-data-generator.d.ts +17 -1
  111. package/dist/types/tests/utils/test-data-generator.d.ts.map +1 -1
  112. package/package.json +3 -3
  113. package/src/core/constants.ts +0 -30
  114. package/src/core/encryption-control.ts +1 -17
  115. package/src/core/replication-apply.ts +0 -8
  116. package/src/handlers/records-query.ts +21 -22
  117. package/src/handlers/records-read.ts +22 -9
  118. package/src/handlers/records-subscribe.ts +9 -15
  119. package/src/handlers/records-write.ts +15 -15
  120. package/src/index.ts +1 -2
  121. package/src/interfaces/records-write-query.ts +3 -0
  122. package/src/interfaces/records-write.ts +0 -13
  123. package/src/store/message-store-level.ts +160 -5
  124. package/src/store/storage-controller.ts +57 -43
  125. package/src/types/message-store.ts +37 -0
  126. package/src/utils/encryption.ts +2 -15
  127. package/src/utils/hd-key.ts +1 -32
  128. package/src/utils/initial-write-attachment.ts +64 -0
  129. package/src/utils/protocols.ts +15 -78
  130. package/src/utils/records.ts +15 -57
  131. package/dist/esm/tests/validation/json-schemas/encryption/delivery.spec.js +0 -47
  132. package/dist/esm/tests/validation/json-schemas/encryption/delivery.spec.js.map +0 -1
  133. package/dist/esm/tests/validation/json-schemas/encryption/grant-key.spec.js +0 -72
  134. package/dist/esm/tests/validation/json-schemas/encryption/grant-key.spec.js.map +0 -1
  135. package/dist/types/tests/validation/json-schemas/encryption/delivery.spec.d.ts +0 -2
  136. package/dist/types/tests/validation/json-schemas/encryption/delivery.spec.d.ts.map +0 -1
  137. package/dist/types/tests/validation/json-schemas/encryption/grant-key.spec.d.ts +0 -2
  138. package/dist/types/tests/validation/json-schemas/encryption/grant-key.spec.d.ts.map +0 -1
@@ -5,7 +5,6 @@ import { DidKey } from '@enbox/dids';
5
5
  import { ed25519 } from '../../src/jose/algorithms/signing/ed25519.js';
6
6
  import { Encoder } from '../../src/utils/encoder.js';
7
7
  import { Jws } from '../../src/utils/jws.js';
8
- import { KeyDerivationScheme } from '../../src/utils/hd-key.js';
9
8
  import { MessagesQuery } from '../../src/interfaces/messages-query.js';
10
9
  import { MessagesRead } from '../../src/interfaces/messages-read.js';
11
10
  import { MessagesSubscribe } from '../../src/interfaces/messages-subscribe.js';
@@ -13,6 +12,7 @@ import { PermissionsProtocol } from '../../src/protocols/permissions.js';
13
12
  import { PrivateKeySigner } from '../../src/utils/private-key-signer.js';
14
13
  import { ProtocolsConfigure } from '../../src/interfaces/protocols-configure.js';
15
14
  import { ProtocolsQuery } from '../../src/interfaces/protocols-query.js';
15
+ import { Records } from '../../src/utils/records.js';
16
16
  import { RecordsCount } from '../../src/interfaces/records-count.js';
17
17
  import { RecordsDelete } from '../../src/interfaces/records-delete.js';
18
18
  import { RecordsQuery } from '../../src/interfaces/records-query.js';
@@ -25,6 +25,7 @@ import { Time } from '../../src/utils/time.js';
25
25
  import { X25519 } from '@enbox/crypto';
26
26
  import { ContentEncryptionAlgorithm, Encryption, KeyAgreementAlgorithm } from '../../src/utils/encryption.js';
27
27
  import { DwnInterfaceName, DwnMethodName } from '../../src/enums/dwn-interface-method.js';
28
+ import { HdKey, KeyDerivationScheme } from '../../src/utils/hd-key.js';
28
29
  /**
29
30
  * Protocol definition that matches the defaults used by `TestDataGenerator.generateRecordsWrite()`:
30
31
  * `protocol: 'http://test-protocol.xyz'`, `protocolPath: 'testRecord'`.
@@ -248,6 +249,58 @@ export class TestDataGenerator {
248
249
  };
249
250
  }
250
251
  ;
252
+ /**
253
+ * Creates an `EncryptionKeyDeriver` that derives protocol-path public encryption keys from the
254
+ * given root private key, mirroring how the agent's KMS-backed key deriver behaves.
255
+ */
256
+ static createProtocolPathKeyDeriver(rootKeyId, rootPrivateJwk) {
257
+ return {
258
+ derivationScheme: KeyDerivationScheme.ProtocolPath,
259
+ derivePublicKey: async (fullDerivationPath) => {
260
+ const rootPrivateKeyBytes = await X25519.privateKeyToBytes({ privateKey: rootPrivateJwk });
261
+ const leafPrivateKeyBytes = await HdKey.derivePrivateKeyBytes(rootPrivateKeyBytes, fullDerivationPath);
262
+ const leafPrivateKey = await X25519.bytesToPrivateKey({ privateKeyBytes: leafPrivateKeyBytes });
263
+ return await X25519.getPublicKey({ key: leafPrivateKey });
264
+ },
265
+ rootKeyId,
266
+ };
267
+ }
268
+ /**
269
+ * Creates a `KeyDecrypter` that unwraps content encryption keys using a leaf key derived from the
270
+ * given ancestor private key. The ancestor may be the root key or any derived subtree key.
271
+ */
272
+ static createKeyDecrypter(ancestorPrivateKey) {
273
+ const deriveLeafPrivateKey = async (fullDerivationPath) => {
274
+ const leafPrivateKeyBytes = await Records.derivePrivateKey(ancestorPrivateKey, fullDerivationPath);
275
+ return X25519.bytesToPrivateKey({ privateKeyBytes: leafPrivateKeyBytes });
276
+ };
277
+ return {
278
+ decrypt: async (fullDerivationPath, keyUnwrapPayload) => {
279
+ const leafPrivateKey = await deriveLeafPrivateKey(fullDerivationPath);
280
+ return Encryption.unwrapKey(leafPrivateKey, keyUnwrapPayload.keyEncryption);
281
+ },
282
+ derivationScheme: ancestorPrivateKey.derivationScheme,
283
+ derivePublicKey: async (fullDerivationPath) => {
284
+ const leafPrivateKey = await deriveLeafPrivateKey(fullDerivationPath);
285
+ return await X25519.getPublicKey({ key: leafPrivateKey });
286
+ },
287
+ rootKeyId: ancestorPrivateKey.rootKeyId,
288
+ };
289
+ }
290
+ /**
291
+ * Derives a descendant `DerivedPrivateJwk` from the given ancestor key along the given sub-derivation path.
292
+ */
293
+ static async deriveDescendantPrivateKey(ancestorKey, subDerivationPath) {
294
+ const ancestorPrivateKeyBytes = await X25519.privateKeyToBytes({ privateKey: ancestorKey.derivedPrivateKey });
295
+ const descendantPrivateKeyBytes = await HdKey.derivePrivateKeyBytes(ancestorPrivateKeyBytes, subDerivationPath);
296
+ const descendantPrivateKeyJwk = await X25519.bytesToPrivateKey({ privateKeyBytes: descendantPrivateKeyBytes });
297
+ return {
298
+ rootKeyId: ancestorKey.rootKeyId,
299
+ derivationScheme: ancestorKey.derivationScheme,
300
+ derivationPath: [...(ancestorKey.derivationPath ?? []), ...subDerivationPath],
301
+ derivedPrivateKey: descendantPrivateKeyJwk,
302
+ };
303
+ }
251
304
  /**
252
305
  * Generates a encrypted RecordsWrite message for testing.
253
306
  *
@@ -265,25 +318,9 @@ export class TestDataGenerator {
265
318
  const dataEncryptionInitializationVector = TestDataGenerator.randomBytes(16);
266
319
  const dataEncryptionKey = TestDataGenerator.randomBytes(32);
267
320
  const encryptedDataBytes = await Encryption.encrypt(ContentEncryptionAlgorithm.A256CTR, dataEncryptionKey, dataEncryptionInitializationVector, plaintextBytes);
268
- // author generates a RecordsWrite using the encrypted data
321
+ // compute the key encryption inputs BEFORE creating the RecordsWrite, mirroring the live agent flow
269
322
  const protocolPathSegments = protocolPath.split('/');
270
- const recordType = protocolPathSegments[protocolPathSegments.length - 1];
271
- const { message, dataStream, recordsWrite } = await TestDataGenerator.generateRecordsWrite({
272
- author,
273
- recipient,
274
- protocol: protocolDefinition.protocol,
275
- protocolPath,
276
- parentContextId: protocolParentContextId,
277
- schema: protocolDefinition.types[recordType].schema,
278
- dataFormat: protocolDefinition.types[recordType].dataFormats?.[0],
279
- data: encryptedDataBytes
280
- });
281
- // final encryption input (`keyEncryptionInputs` to be populated below)
282
- const encryptionInput = {
283
- initializationVector: dataEncryptionInitializationVector,
284
- key: dataEncryptionKey,
285
- keyEncryptionInputs: []
286
- };
323
+ const keyEncryptionInputs = [];
287
324
  if (input.encryptSymmetricKeyWithProtocolPathDerivedKey) {
288
325
  // locate the rule set corresponding the protocol path of the message
289
326
  let protocolRuleSetSegment = protocolDefinition.structure;
@@ -291,16 +328,31 @@ export class TestDataGenerator {
291
328
  protocolRuleSetSegment = protocolRuleSetSegment[pathSegment];
292
329
  }
293
330
  const protocolPathDerivedPublicKeyJwk = protocolRuleSetSegment.$keyAgreement?.publicKeyJwk;
294
- const protocolPathDerivedKeyEncryptionInput = {
331
+ keyEncryptionInputs.push({
295
332
  algorithm: KeyAgreementAlgorithm.X25519HkdfSha256A256Kw,
296
333
  keyId: await Encryption.getKeyId(protocolPathDerivedPublicKeyJwk),
297
334
  publicKey: protocolPathDerivedPublicKeyJwk,
298
335
  derivationScheme: KeyDerivationScheme.ProtocolPath
299
- };
300
- encryptionInput.keyEncryptionInputs.push(protocolPathDerivedKeyEncryptionInput);
336
+ });
301
337
  }
302
- await recordsWrite.encryptSymmetricEncryptionKey(encryptionInput);
303
- await recordsWrite.sign({ signer: Jws.createSigner(author) });
338
+ const encryptionInput = {
339
+ initializationVector: dataEncryptionInitializationVector,
340
+ key: dataEncryptionKey,
341
+ keyEncryptionInputs
342
+ };
343
+ // author generates a RecordsWrite using the encrypted data
344
+ const recordType = protocolPathSegments[protocolPathSegments.length - 1];
345
+ const { message, dataStream, recordsWrite } = await TestDataGenerator.generateRecordsWrite({
346
+ author,
347
+ recipient,
348
+ protocol: protocolDefinition.protocol,
349
+ protocolPath,
350
+ parentContextId: protocolParentContextId,
351
+ schema: protocolDefinition.types[recordType].schema,
352
+ dataFormat: protocolDefinition.types[recordType].dataFormats?.[0],
353
+ data: encryptedDataBytes,
354
+ encryptionInput
355
+ });
304
356
  return { message, dataStream: dataStream, recordsWrite, encryptedDataBytes, encryptionInput };
305
357
  }
306
358
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"test-data-generator.js","sourceRoot":"","sources":["../../../../tests/utils/test-data-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-data-generator.js","sourceRoot":"","sources":["../../../../tests/utils/test-data-generator.ts"],"names":[],"mappings":"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"}
@@ -149,7 +149,7 @@ describe('ProtocolsConfigure schema definition', () => {
149
149
  },
150
150
  },
151
151
  };
152
- const hydratedDefinition = await Protocols.deriveAndInjectPublicEncryptionKeys(protocolDefinition, 'root-key-id', alice.encryptionKeyPair.privateJwk);
152
+ const hydratedDefinition = await Protocols.deriveAndInjectPublicEncryptionKeys(protocolDefinition, TestDataGenerator.createProtocolPathKeyDeriver('root-key-id', alice.encryptionKeyPair.privateJwk));
153
153
  const messageRuleSet = hydratedDefinition.structure.message;
154
154
  const replyRuleSet = messageRuleSet.reply;
155
155
  expect(hydratedDefinition.$keyAgreement?.publicKeyJwk).toBeDefined();
@@ -1 +1 @@
1
- {"version":3,"file":"protocols-configure.spec.js","sourceRoot":"","sources":["../../../../../../tests/validation/json-schemas/protocols/protocols-configure.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocols-configure.spec.js","sourceRoot":"","sources":["../../../../../../tests/validation/json-schemas/protocols/protocols-configure.spec.ts"],"names":[],"mappings":"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"}