@protontech/drive-sdk 0.10.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/dist/crypto/driveCrypto.d.ts +20 -2
  2. package/dist/crypto/driveCrypto.js +72 -14
  3. package/dist/crypto/driveCrypto.js.map +1 -1
  4. package/dist/crypto/driveCrypto.test.js +3 -2
  5. package/dist/crypto/driveCrypto.test.js.map +1 -1
  6. package/dist/crypto/interface.d.ts +22 -8
  7. package/dist/crypto/openPGPCrypto.d.ts +30 -7
  8. package/dist/crypto/openPGPCrypto.js +46 -8
  9. package/dist/crypto/openPGPCrypto.js.map +1 -1
  10. package/dist/diagnostic/telemetry.js +3 -0
  11. package/dist/diagnostic/telemetry.js.map +1 -1
  12. package/dist/interface/featureFlags.d.ts +4 -1
  13. package/dist/interface/featureFlags.js +5 -0
  14. package/dist/interface/featureFlags.js.map +1 -1
  15. package/dist/interface/index.d.ts +2 -0
  16. package/dist/interface/index.js +5 -1
  17. package/dist/interface/index.js.map +1 -1
  18. package/dist/interface/photos.d.ts +13 -1
  19. package/dist/interface/photos.js +14 -0
  20. package/dist/interface/photos.js.map +1 -1
  21. package/dist/interface/telemetry.d.ts +12 -1
  22. package/dist/interface/telemetry.js.map +1 -1
  23. package/dist/internal/apiService/apiService.d.ts +1 -1
  24. package/dist/internal/apiService/apiService.js +2 -2
  25. package/dist/internal/apiService/apiService.js.map +1 -1
  26. package/dist/internal/nodes/apiService.js.map +1 -1
  27. package/dist/internal/nodes/nodesAccess.js +1 -1
  28. package/dist/internal/nodes/nodesAccess.js.map +1 -1
  29. package/dist/internal/photos/addToAlbum.d.ts +1 -5
  30. package/dist/internal/photos/addToAlbum.js +8 -87
  31. package/dist/internal/photos/addToAlbum.js.map +1 -1
  32. package/dist/internal/photos/{albums.d.ts → albumsManager.d.ts} +1 -1
  33. package/dist/internal/photos/{albums.js → albumsManager.js} +4 -4
  34. package/dist/internal/photos/albumsManager.js.map +1 -0
  35. package/dist/internal/photos/{albums.test.js → albumsManager.test.js} +3 -3
  36. package/dist/internal/photos/albumsManager.test.js.map +1 -0
  37. package/dist/internal/photos/apiService.d.ts +8 -4
  38. package/dist/internal/photos/apiService.js +38 -6
  39. package/dist/internal/photos/apiService.js.map +1 -1
  40. package/dist/internal/photos/index.d.ts +7 -5
  41. package/dist/internal/photos/index.js +7 -4
  42. package/dist/internal/photos/index.js.map +1 -1
  43. package/dist/internal/photos/interface.d.ts +3 -26
  44. package/dist/internal/photos/interface.js +0 -14
  45. package/dist/internal/photos/interface.js.map +1 -1
  46. package/dist/internal/photos/nodes.js +1 -1
  47. package/dist/internal/photos/nodes.js.map +1 -1
  48. package/dist/internal/photos/photosManager.d.ts +22 -0
  49. package/dist/internal/photos/photosManager.js +101 -0
  50. package/dist/internal/photos/photosManager.js.map +1 -0
  51. package/dist/internal/photos/photosManager.test.d.ts +1 -0
  52. package/dist/internal/photos/photosManager.test.js +222 -0
  53. package/dist/internal/photos/photosManager.test.js.map +1 -0
  54. package/dist/internal/photos/photosTransferPayloadBuilder.d.ts +57 -0
  55. package/dist/internal/photos/photosTransferPayloadBuilder.js +113 -0
  56. package/dist/internal/photos/photosTransferPayloadBuilder.js.map +1 -0
  57. package/dist/internal/photos/photosTransferPayloadBuilder.test.d.ts +1 -0
  58. package/dist/internal/photos/photosTransferPayloadBuilder.test.js +289 -0
  59. package/dist/internal/photos/photosTransferPayloadBuilder.test.js.map +1 -0
  60. package/dist/internal/photos/upload.d.ts +2 -2
  61. package/dist/internal/photos/upload.js +3 -3
  62. package/dist/internal/photos/upload.js.map +1 -1
  63. package/dist/internal/sharingPublic/nodes.js +11 -4
  64. package/dist/internal/sharingPublic/nodes.js.map +1 -1
  65. package/dist/internal/upload/apiService.d.ts +0 -4
  66. package/dist/internal/upload/apiService.js +0 -4
  67. package/dist/internal/upload/apiService.js.map +1 -1
  68. package/dist/internal/upload/cryptoService.d.ts +4 -2
  69. package/dist/internal/upload/cryptoService.js +18 -6
  70. package/dist/internal/upload/cryptoService.js.map +1 -1
  71. package/dist/internal/upload/index.d.ts +2 -2
  72. package/dist/internal/upload/index.js +2 -2
  73. package/dist/internal/upload/index.js.map +1 -1
  74. package/dist/internal/upload/interface.d.ts +1 -1
  75. package/dist/internal/upload/streamUploader.d.ts +1 -1
  76. package/dist/internal/upload/streamUploader.js +12 -13
  77. package/dist/internal/upload/streamUploader.js.map +1 -1
  78. package/dist/internal/upload/streamUploader.test.js +28 -4
  79. package/dist/internal/upload/streamUploader.test.js.map +1 -1
  80. package/dist/protonDriveClient.js +2 -2
  81. package/dist/protonDriveClient.js.map +1 -1
  82. package/dist/protonDrivePhotosClient.d.ts +20 -3
  83. package/dist/protonDrivePhotosClient.js +27 -3
  84. package/dist/protonDrivePhotosClient.js.map +1 -1
  85. package/dist/protonDrivePublicLinkClient.d.ts +3 -2
  86. package/dist/protonDrivePublicLinkClient.js +7 -3
  87. package/dist/protonDrivePublicLinkClient.js.map +1 -1
  88. package/package.json +1 -1
  89. package/src/crypto/driveCrypto.test.ts +3 -1
  90. package/src/crypto/driveCrypto.ts +82 -7
  91. package/src/crypto/interface.ts +21 -8
  92. package/src/crypto/openPGPCrypto.ts +68 -8
  93. package/src/diagnostic/telemetry.ts +3 -0
  94. package/src/interface/featureFlags.ts +5 -1
  95. package/src/interface/index.ts +2 -0
  96. package/src/interface/photos.ts +14 -1
  97. package/src/interface/telemetry.ts +14 -1
  98. package/src/internal/apiService/apiService.ts +6 -2
  99. package/src/internal/nodes/apiService.ts +2 -2
  100. package/src/internal/nodes/nodesAccess.ts +1 -1
  101. package/src/internal/photos/addToAlbum.ts +29 -136
  102. package/src/internal/photos/{albums.test.ts → albumsManager.test.ts} +3 -3
  103. package/src/internal/photos/{albums.ts → albumsManager.ts} +1 -1
  104. package/src/internal/photos/apiService.ts +73 -16
  105. package/src/internal/photos/index.ts +9 -4
  106. package/src/internal/photos/interface.ts +3 -28
  107. package/src/internal/photos/nodes.ts +1 -1
  108. package/src/internal/photos/photosManager.test.ts +266 -0
  109. package/src/internal/photos/photosManager.ts +144 -0
  110. package/src/internal/photos/photosTransferPayloadBuilder.test.ts +380 -0
  111. package/src/internal/photos/photosTransferPayloadBuilder.ts +203 -0
  112. package/src/internal/photos/upload.ts +20 -7
  113. package/src/internal/sharingPublic/nodes.ts +11 -4
  114. package/src/internal/upload/apiService.ts +7 -9
  115. package/src/internal/upload/cryptoService.ts +28 -7
  116. package/src/internal/upload/index.ts +3 -2
  117. package/src/internal/upload/interface.ts +1 -1
  118. package/src/internal/upload/streamUploader.test.ts +33 -4
  119. package/src/internal/upload/streamUploader.ts +13 -13
  120. package/src/protonDriveClient.ts +2 -1
  121. package/src/protonDrivePhotosClient.ts +39 -2
  122. package/src/protonDrivePublicLinkClient.ts +9 -1
  123. package/dist/internal/photos/albums.js.map +0 -1
  124. package/dist/internal/photos/albums.test.js.map +0 -1
  125. /package/dist/internal/photos/{albums.test.d.ts → albumsManager.test.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"protonDrivePhotosClient.js","sourceRoot":"","sources":["../src/protonDrivePhotosClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protonDrivePhotosClient.js","sourceRoot":"","sources":["../src/protonDrivePhotosClient.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { OpenPGPCrypto, PrivateKey, SRPModule, SessionKey } from './crypto';
2
- import { ProtonDriveHTTPClient, ProtonDriveTelemetry, ProtonDriveConfig, NodeOrUid, ProtonDriveAccount, MaybeNode, NodeType, MaybeMissingNode, FileDownloader, ThumbnailType, ThumbnailResult, UploadMetadata, FileUploader, NodeResult, SDKEvent, MemberRole } from './interface';
2
+ import { ProtonDriveHTTPClient, ProtonDriveTelemetry, ProtonDriveConfig, NodeOrUid, ProtonDriveAccount, MaybeNode, NodeType, MaybeMissingNode, FileDownloader, ThumbnailType, ThumbnailResult, UploadMetadata, FileUploader, NodeResult, SDKEvent, MemberRole, FeatureFlagProvider } from './interface';
3
3
  import { NodesSecurityScanResult } from './internal/sharingPublic/nodesSecurity';
4
4
  /**
5
5
  * ProtonDrivePublicLinkClient is the interface for the public link client.
@@ -50,13 +50,14 @@ export declare class ProtonDrivePublicLinkClient {
50
50
  */
51
51
  createDocument: (parentNodeUid: NodeOrUid, documentName: string, documentType: 1 | 2) => Promise<MaybeNode>;
52
52
  };
53
- constructor({ httpClient, account, openPGPCryptoModule, srpModule, config, telemetry, url, token, publicShareKey, publicRootNodeUid, isAnonymousContext, publicRole, }: {
53
+ constructor({ httpClient, account, openPGPCryptoModule, srpModule, config, telemetry, featureFlagProvider, url, token, publicShareKey, publicRootNodeUid, isAnonymousContext, publicRole, }: {
54
54
  httpClient: ProtonDriveHTTPClient;
55
55
  account: ProtonDriveAccount;
56
56
  openPGPCryptoModule: OpenPGPCrypto;
57
57
  srpModule: SRPModule;
58
58
  config?: ProtonDriveConfig;
59
59
  telemetry?: ProtonDriveTelemetry;
60
+ featureFlagProvider?: FeatureFlagProvider;
60
61
  url: string;
61
62
  token: string;
62
63
  publicShareKey: PrivateKey;
@@ -10,6 +10,7 @@ const download_1 = require("./internal/download");
10
10
  const sdkEvents_1 = require("./internal/sdkEvents");
11
11
  const sharingPublic_1 = require("./internal/sharingPublic");
12
12
  const upload_1 = require("./internal/upload");
13
+ const featureFlags_1 = require("./featureFlags");
13
14
  /**
14
15
  * ProtonDrivePublicLinkClient is the interface for the public link client.
15
16
  *
@@ -30,10 +31,13 @@ class ProtonDrivePublicLinkClient {
30
31
  download;
31
32
  upload;
32
33
  experimental;
33
- constructor({ httpClient, account, openPGPCryptoModule, srpModule, config, telemetry, url, token, publicShareKey, publicRootNodeUid, isAnonymousContext, publicRole, }) {
34
+ constructor({ httpClient, account, openPGPCryptoModule, srpModule, config, telemetry, featureFlagProvider, url, token, publicShareKey, publicRootNodeUid, isAnonymousContext, publicRole, }) {
34
35
  if (!telemetry) {
35
36
  telemetry = new telemetry_1.Telemetry();
36
37
  }
38
+ if (!featureFlagProvider) {
39
+ featureFlagProvider = new featureFlags_1.NullFeatureFlagProvider();
40
+ }
37
41
  this.logger = telemetry.getLogger('publicLink-interface');
38
42
  // Use only in memory cache for public link as there are no events to keep it up to date if persisted.
39
43
  const entitiesCache = new cache_1.MemoryCache();
@@ -41,13 +45,13 @@ class ProtonDrivePublicLinkClient {
41
45
  const fullConfig = (0, config_1.getConfig)(config);
42
46
  this.sdkEvents = new sdkEvents_1.SDKEvents(telemetry);
43
47
  const apiService = new sharingPublic_1.UnauthDriveAPIService(telemetry, this.sdkEvents, httpClient, fullConfig.baseUrl, fullConfig.language);
44
- const cryptoModule = new crypto_1.DriveCrypto(openPGPCryptoModule, srpModule);
48
+ const cryptoModule = new crypto_1.DriveCrypto(telemetry, openPGPCryptoModule, srpModule);
45
49
  this.sharingPublic = (0, sharingPublic_1.initSharingPublicModule)(telemetry, apiService, entitiesCache, cryptoCache, cryptoModule, account, url, token, publicShareKey, publicRootNodeUid, publicRole, isAnonymousContext);
46
50
  this.download = (0, download_1.initDownloadModule)(telemetry, apiService, cryptoModule, account, this.sharingPublic.shares, this.sharingPublic.nodes.access, this.sharingPublic.nodes.revisions,
47
51
  // Ignore manifest integrity verifications for public links.
48
52
  // Anonymous user on public page cannot load public keys of other users (yet).
49
53
  true);
50
- this.upload = (0, upload_1.initUploadModule)(telemetry, apiService, cryptoModule, this.sharingPublic.shares, this.sharingPublic.nodes.access, fullConfig.clientUid);
54
+ this.upload = (0, upload_1.initUploadModule)(telemetry, apiService, cryptoModule, this.sharingPublic.shares, this.sharingPublic.nodes.access, featureFlagProvider, fullConfig.clientUid);
51
55
  this.experimental = {
52
56
  getNodeUrl: async (nodeUid) => {
53
57
  this.logger.debug(`Getting node URL for ${(0, transformers_1.getUid)(nodeUid)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"protonDrivePublicLinkClient.js","sourceRoot":"","sources":["../src/protonDrivePublicLinkClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protonDrivePublicLinkClient.js","sourceRoot":"","sources":["../src/protonDrivePublicLinkClient.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@protontech/drive-sdk",
3
- "version": "0.10.0",
3
+ "version": "0.12.0",
4
4
  "description": "Proton Drive SDK",
5
5
  "license": "GPL-3.0",
6
6
  "main": "dist/index.js",
@@ -1,4 +1,5 @@
1
1
  import { uint8ArrayToUtf8, arrayToHexString, DriveCrypto } from './driveCrypto';
2
+ import { getMockTelemetry } from '../tests/telemetry';
2
3
 
3
4
  describe('uint8ArrayToUtf8', () => {
4
5
  it('should convert a Uint8Array to a UTF-8 string', () => {
@@ -53,7 +54,7 @@ describe('DriveCrypto.encryptShareUrlPassword', () => {
53
54
  };
54
55
 
55
56
  const mockSrpModule = jest.fn();
56
- const driveCrypto = new DriveCrypto(mockOpenPGPCrypto as any, mockSrpModule as any);
57
+ const driveCrypto = new DriveCrypto(getMockTelemetry(), mockOpenPGPCrypto as any, mockSrpModule as any);
57
58
 
58
59
  const password = 'testPassword123';
59
60
  const encryptionKey = 'mockEncryptionKey' as any;
@@ -67,6 +68,7 @@ describe('DriveCrypto.encryptShareUrlPassword', () => {
67
68
  undefined,
68
69
  [encryptionKey],
69
70
  signingKey,
71
+ { enableAeadWithEncryptionKeys: false },
70
72
  );
71
73
  });
72
74
  });
@@ -1,3 +1,4 @@
1
+ import { ProtonDriveTelemetry } from '../interface';
1
2
  import {
2
3
  OpenPGPCrypto,
3
4
  PrivateKey,
@@ -26,12 +27,27 @@ enum SIGNING_CONTEXTS {
26
27
  * but we do share same key generation across shares and nodes modules,
27
28
  * for example, which we can generelise here and in each module just
28
29
  * call with specific arguments.
30
+ *
31
+ * Note about AEAD encryption:
32
+ *
33
+ * The algorithm of generated session key or encrypted data is defined by
34
+ * the encryption key preferences. If encryption key was generated with
35
+ * `aeadProtect` set to true, session key or encrypted data should use
36
+ * AEAD algorithm.
37
+ *
38
+ * However, in Drive, we do not want to use the AEAD algorithm everywhere,
39
+ * only for file content. Thus, we must pass the `enableAeadWithEncryptionKeys`
40
+ * flag explicitely to control whether to use the encryption key preferences
41
+ * to avoid using AEAD on places where it would not be supported. It should
42
+ * be set to false by default everywhere except for content encryption.
29
43
  */
30
44
  export class DriveCrypto {
31
45
  constructor(
46
+ private telemetry: ProtonDriveTelemetry,
32
47
  private openPGPCrypto: OpenPGPCrypto,
33
48
  private srpModule: SRPModule,
34
49
  ) {
50
+ this.telemetry = telemetry;
35
51
  this.openPGPCrypto = openPGPCrypto;
36
52
  this.srpModule = srpModule;
37
53
  }
@@ -52,6 +68,7 @@ export class DriveCrypto {
52
68
  async generateKey(
53
69
  encryptionKeys: PrivateKey[],
54
70
  signingKey: PrivateKey,
71
+ { enableAead }: { enableAead: boolean } = { enableAead: false },
55
72
  ): Promise<{
56
73
  encrypted: {
57
74
  armoredKey: string;
@@ -66,8 +83,9 @@ export class DriveCrypto {
66
83
  }> {
67
84
  const passphrase = this.openPGPCrypto.generatePassphrase();
68
85
  const [{ privateKey, armoredKey }, passphraseSessionKey] = await Promise.all([
69
- this.openPGPCrypto.generateKey(passphrase),
70
- this.openPGPCrypto.generateSessionKey(encryptionKeys),
86
+ this.openPGPCrypto.generateKey(passphrase, { enableAead }),
87
+ // See note in the interface documentation about AEAD encryption.
88
+ this.openPGPCrypto.generateSessionKey(encryptionKeys, { enableAeadWithEncryptionKeys: false }),
71
89
  ]);
72
90
 
73
91
  const { armoredPassphrase, armoredPassphraseSignature } = await this.encryptPassphrase(
@@ -106,7 +124,10 @@ export class DriveCrypto {
106
124
  contentKeyPacketSessionKey: SessionKey;
107
125
  };
108
126
  }> {
109
- const contentKeyPacketSessionKey = await this.openPGPCrypto.generateSessionKey([encryptionKey]);
127
+ // See note in the interface documentation about AEAD encryption.
128
+ const contentKeyPacketSessionKey = await this.openPGPCrypto.generateSessionKey([encryptionKey], {
129
+ enableAeadWithEncryptionKeys: true,
130
+ });
110
131
  const { signature: armoredContentKeyPacketSignature } = await this.openPGPCrypto.signArmored(
111
132
  contentKeyPacketSessionKey.data,
112
133
  [encryptionKey],
@@ -146,6 +167,8 @@ export class DriveCrypto {
146
167
  sessionKey,
147
168
  encryptionKeys,
148
169
  signingKey,
170
+ // See note in the interface documentation about AEAD encryption.
171
+ { enableAeadWithEncryptionKeys: false },
149
172
  );
150
173
 
151
174
  return {
@@ -239,7 +262,13 @@ export class DriveCrypto {
239
262
  srp: SRPVerifier;
240
263
  }> {
241
264
  const [{ armoredData: armoredPassword }, { keyPacket }, srp] = await Promise.all([
242
- this.openPGPCrypto.encryptArmored(new TextEncoder().encode(password), [addressKey]),
265
+ this.openPGPCrypto.encryptArmored(
266
+ new TextEncoder().encode(password),
267
+ [addressKey],
268
+ undefined,
269
+ // See note in the interface documentation about AEAD encryption.
270
+ { enableAeadWithEncryptionKeys: false },
271
+ ),
243
272
  this.openPGPCrypto.encryptSessionKeyWithPassword(sharePassphraseSessionKey, bcryptPassphrase),
244
273
  this.srpModule.getSrpVerifier(password),
245
274
  ]);
@@ -353,6 +382,8 @@ export class DriveCrypto {
353
382
  signature,
354
383
  [encryptionKey],
355
384
  sessionKey,
385
+ // See note in the interface documentation about AEAD encryption.
386
+ { enableAeadWithEncryptionKeys: false },
356
387
  );
357
388
  return {
358
389
  armoredSignature,
@@ -378,6 +409,8 @@ export class DriveCrypto {
378
409
  undefined,
379
410
  [encryptionAndSigningKey],
380
411
  encryptionAndSigningKey,
412
+ // See note in the interface documentation about AEAD encryption.
413
+ { enableAeadWithEncryptionKeys: false },
381
414
  );
382
415
  return {
383
416
  armoredHashKey,
@@ -417,6 +450,8 @@ export class DriveCrypto {
417
450
  sessionKey,
418
451
  encryptionKey ? [encryptionKey] : [],
419
452
  signingKey,
453
+ // See note in the interface documentation about AEAD encryption.
454
+ { enableAeadWithEncryptionKeys: false },
420
455
  );
421
456
  return {
422
457
  armoredNodeName,
@@ -499,7 +534,8 @@ export class DriveCrypto {
499
534
  undefined,
500
535
  [encryptionKey],
501
536
  signingKey,
502
- { compress: true },
537
+ // See note in the interface documentation about AEAD encryption.
538
+ { compress: true, enableAeadWithEncryptionKeys: false },
503
539
  );
504
540
  return {
505
541
  armoredExtendedAttributes,
@@ -617,12 +653,16 @@ export class DriveCrypto {
617
653
  ): Promise<{
618
654
  encryptedData: Uint8Array<ArrayBuffer>;
619
655
  }> {
656
+ const start = performance.now();
620
657
  const { encryptedData } = await this.openPGPCrypto.encryptAndSign(
621
658
  thumbnailData,
622
659
  sessionKey,
623
660
  [], // Thumbnails use the session key so we do not send encryption key.
624
661
  signingKey,
662
+ // See note in the interface documentation about AEAD encryption.
663
+ { enableAeadWithEncryptionKeys: true },
625
664
  );
665
+ this.recordPerformance('content_encryption', sessionKey, thumbnailData.length, start);
626
666
 
627
667
  return {
628
668
  encryptedData,
@@ -638,11 +678,13 @@ export class DriveCrypto {
638
678
  verified: VERIFICATION_STATUS;
639
679
  verificationErrors?: Error[];
640
680
  }> {
681
+ const start = performance.now();
641
682
  const {
642
683
  data: decryptedThumbnail,
643
684
  verified,
644
685
  verificationErrors,
645
686
  } = await this.openPGPCrypto.decryptAndVerify(encryptedThumbnail, sessionKey, verificationKeys);
687
+ this.recordPerformance('content_decryption', sessionKey, decryptedThumbnail.length, start);
646
688
  return {
647
689
  decryptedThumbnail,
648
690
  verified,
@@ -659,12 +701,16 @@ export class DriveCrypto {
659
701
  encryptedData: Uint8Array<ArrayBuffer>;
660
702
  armoredSignature: string;
661
703
  }> {
704
+ const start = performance.now();
662
705
  const { encryptedData, signature } = await this.openPGPCrypto.encryptAndSignDetached(
663
706
  blockData,
664
707
  sessionKey,
665
708
  [], // Blocks use the session key so we do not send encryption key.
666
709
  signingKey,
710
+ // See note in the interface documentation about AEAD encryption.
711
+ { enableAeadWithEncryptionKeys: true },
667
712
  );
713
+ this.recordPerformance('content_encryption', sessionKey, blockData.length, start);
668
714
 
669
715
  const { armoredSignature } = await this.encryptSignature(signature, encryptionKey, sessionKey);
670
716
 
@@ -674,8 +720,13 @@ export class DriveCrypto {
674
720
  };
675
721
  }
676
722
 
677
- async decryptBlock(encryptedBlock: Uint8Array<ArrayBuffer>, sessionKey: SessionKey): Promise<Uint8Array<ArrayBuffer>> {
723
+ async decryptBlock(
724
+ encryptedBlock: Uint8Array<ArrayBuffer>,
725
+ sessionKey: SessionKey,
726
+ ): Promise<Uint8Array<ArrayBuffer>> {
727
+ const start = performance.now();
678
728
  const { data: decryptedBlock } = await this.openPGPCrypto.decryptAndVerify(encryptedBlock, sessionKey, []);
729
+ this.recordPerformance('content_decryption', sessionKey, decryptedBlock.length, start);
679
730
 
680
731
  return decryptedBlock;
681
732
  }
@@ -716,15 +767,39 @@ export class DriveCrypto {
716
767
  return uint8ArrayToUtf8(password);
717
768
  }
718
769
 
719
- async encryptShareUrlPassword(password: string, encryptionKey: PrivateKey, signingKey: PrivateKey): Promise<string> {
770
+ async encryptShareUrlPassword(
771
+ password: string,
772
+ encryptionKey: PrivateKey,
773
+ signingKey: PrivateKey,
774
+ ): Promise<string> {
720
775
  const { armoredData } = await this.openPGPCrypto.encryptAndSignArmored(
721
776
  new TextEncoder().encode(password),
722
777
  undefined,
723
778
  [encryptionKey],
724
779
  signingKey,
780
+ // See note in the interface documentation about AEAD encryption.
781
+ { enableAeadWithEncryptionKeys: false },
725
782
  );
726
783
  return armoredData;
727
784
  }
785
+
786
+ private recordPerformance(
787
+ type: 'content_encryption' | 'content_decryption',
788
+ sessionKey: SessionKey,
789
+ bytesProcessed: number,
790
+ start: number,
791
+ ) {
792
+ const end = performance.now();
793
+ const duration = end - start;
794
+ const cryptoModel = sessionKey.aeadAlgorithm ? 'v1.5' : 'v1';
795
+ this.telemetry.recordMetric({
796
+ eventName: 'performance',
797
+ type,
798
+ cryptoModel,
799
+ bytesProcessed,
800
+ milliseconds: Math.round(duration),
801
+ });
802
+ }
728
803
  }
729
804
 
730
805
  export function uint8ArrayToUtf8(input: Uint8Array<ArrayBuffer>): string {
@@ -2,7 +2,7 @@
2
2
  export interface PublicKey {
3
3
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4
4
  readonly _idx: any;
5
- readonly _keyContentHash: [string, string];
5
+ readonly _keyContentHash: [string, string];
6
6
 
7
7
  getVersion(): number;
8
8
  getFingerprint(): string;
@@ -39,8 +39,8 @@ export interface PrivateKey extends PublicKey {
39
39
 
40
40
  export interface SessionKey {
41
41
  data: Uint8Array<ArrayBuffer>;
42
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
43
- algorithm: any;
42
+ algorithm: string | null;
43
+ aeadAlgorithm: string | null;
44
44
  }
45
45
 
46
46
  export enum VERIFICATION_STATUS {
@@ -91,7 +91,10 @@ export interface OpenPGPCrypto {
91
91
  */
92
92
  generatePassphrase: () => string;
93
93
 
94
- generateSessionKey: (encryptionKeys: PublicKey[]) => Promise<SessionKey>;
94
+ generateSessionKey: (
95
+ encryptionKeys: PublicKey[],
96
+ options: { enableAeadWithEncryptionKeys: boolean },
97
+ ) => Promise<SessionKey>;
95
98
 
96
99
  encryptSessionKey: (
97
100
  sessionKey: SessionKey,
@@ -112,7 +115,10 @@ export interface OpenPGPCrypto {
112
115
  *
113
116
  * The key pair is generated using the Curve25519 algorithm.
114
117
  */
115
- generateKey: (passphrase: string) => Promise<{
118
+ generateKey: (
119
+ passphrase: string,
120
+ options: { enableAead: boolean },
121
+ ) => Promise<{
116
122
  privateKey: PrivateKey;
117
123
  armoredKey: string;
118
124
  }>;
@@ -120,7 +126,8 @@ export interface OpenPGPCrypto {
120
126
  encryptArmored: (
121
127
  data: Uint8Array<ArrayBuffer>,
122
128
  encryptionKeys: PublicKey[],
123
- sessionKey?: SessionKey,
129
+ sessionKey: SessionKey | undefined,
130
+ options: { enableAeadWithEncryptionKeys: boolean },
124
131
  ) => Promise<{
125
132
  armoredData: string;
126
133
  }>;
@@ -130,6 +137,7 @@ export interface OpenPGPCrypto {
130
137
  sessionKey: SessionKey,
131
138
  encryptionKeys: PublicKey[],
132
139
  signingKey: PrivateKey,
140
+ options: { enableAeadWithEncryptionKeys: boolean },
133
141
  ) => Promise<{
134
142
  encryptedData: Uint8Array<ArrayBuffer>;
135
143
  }>;
@@ -139,7 +147,7 @@ export interface OpenPGPCrypto {
139
147
  sessionKey: SessionKey | undefined,
140
148
  encryptionKeys: PublicKey[],
141
149
  signingKey: PrivateKey,
142
- options?: { compress?: boolean },
150
+ options: { compress?: boolean; enableAeadWithEncryptionKeys: boolean },
143
151
  ) => Promise<{
144
152
  armoredData: string;
145
153
  }>;
@@ -149,6 +157,7 @@ export interface OpenPGPCrypto {
149
157
  sessionKey: SessionKey,
150
158
  encryptionKeys: PublicKey[],
151
159
  signingKey: PrivateKey,
160
+ options: { enableAeadWithEncryptionKeys: boolean },
152
161
  ) => Promise<{
153
162
  encryptedData: Uint8Array<ArrayBuffer>;
154
163
  signature: Uint8Array<ArrayBuffer>;
@@ -159,6 +168,7 @@ export interface OpenPGPCrypto {
159
168
  sessionKey: SessionKey,
160
169
  encryptionKeys: PublicKey[],
161
170
  signingKey: PrivateKey,
171
+ options: { enableAeadWithEncryptionKeys: boolean },
162
172
  ) => Promise<{
163
173
  armoredData: string;
164
174
  armoredSignature: string;
@@ -198,7 +208,10 @@ export interface OpenPGPCrypto {
198
208
  verificationErrors?: Error[];
199
209
  }>;
200
210
 
201
- decryptSessionKey: (data: Uint8Array<ArrayBuffer>, decryptionKeys: PrivateKey | PrivateKey[]) => Promise<SessionKey>;
211
+ decryptSessionKey: (
212
+ data: Uint8Array<ArrayBuffer>,
213
+ decryptionKeys: PrivateKey | PrivateKey[],
214
+ ) => Promise<SessionKey>;
202
215
 
203
216
  decryptArmoredSessionKey: (armoredData: string, decryptionKeys: PrivateKey | PrivateKey[]) => Promise<SessionKey>;
204
217