Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

initRustCrypto: allow app to pass in the store key directly #4210

Merged
merged 2 commits into from
May 24, 2024

Conversation

richvdh
Copy link
Member

@richvdh richvdh commented May 16, 2024

... instead of using the pickleKey. This allows us to avoid a slow PBKDF operation.

Part of element-hq/element-web#26821.

... instead of using the pickleKey. This allows us to avoid a slow PBKDF
operation.
@richvdh richvdh force-pushed the rav/rustcrypto_key branch from 0686e51 to 723bda0 Compare May 23, 2024 12:54
@richvdh richvdh marked this pull request as ready for review May 23, 2024 12:56
@richvdh richvdh requested review from a team as code owners May 23, 2024 12:56
Copy link
Member

@andybalaam andybalaam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks!

@richvdh richvdh added this pull request to the merge queue May 24, 2024
Merged via the queue into develop with commit 36196ea May 24, 2024
27 checks passed
@richvdh richvdh deleted the rav/rustcrypto_key branch May 24, 2024 10:15
thoraj added a commit to verji/matrix-js-sdk that referenced this pull request Aug 15, 2024
* Preserve ESM for async imports to work correctly (matrix-org#4187)

* fix: fix lazy rust crypto import

* test: use "commonjs" for tests because of circular deps

* chore: revert commonjs for "module"

* refactor: remove unnecessary example

* refactor: add comments

Signed-off-by: Bayyr Oorjak <[email protected]>

* refactor: improve comment

Signed-off-by: Bayyr Oorjak <[email protected]>

Co-authored-by: Richard van der Hoff <[email protected]>

* Update babel.config.js

---------

Signed-off-by: Bayyr Oorjak <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>

* Update organization (matrix-org#4212)

* v32.4.0

* Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0 (matrix-org#4214)

* Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0

* Disable affected test

Signed-off-by: Michael Telatynski <[email protected]>

---------

Signed-off-by: Michael Telatynski <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <[email protected]>

* `initRustCrypto`: allow app to pass in the store key directly (matrix-org#4210)

* `initRustCrypto`: allow app to pass in the store key directly

... instead of using the pickleKey. This allows us to avoid a slow PBKDF
operation.

* Fix link in doc-comment

* Bump matrix-sdk-crypto-wasm to 5.0.0 (matrix-org#4216)

Slightly more involved than normal because it requires us to pass a backup version into OlmMachine.importBackedUpRoomKeys.

On the other hand we can now re-enable the test that was disabled in matrix-org#4214 due to matrix-org/matrix-rust-sdk#3447

Fixes: element-hq/element-web#27165

* Remove more deprecated methods, fields, and exports (matrix-org#4217)

* Don't run migration for Rust crypto if the legacy store is empty (matrix-org#4218)

* Don't run migration for Rust crypto if the legacy store is empty

Fixes element-hq/element-web#27447

* Add copyright for the TypeScript files in legacy DB dumps

* Provide a type for the accountPickle we check for before migration

* Remove redundant backup response

This is unused

* Simplify keys response

* Downgrade log message.

---------

Co-authored-by: Richard van der Hoff <[email protected]>

* v33.0.0-rc.0

* v33.0.0

---------

Signed-off-by: Bayyr Oorjak <[email protected]>
Signed-off-by: Michael Telatynski <[email protected]>
Co-authored-by: Bayyr Oorjak <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>
Co-authored-by: R Midhun Suresh <[email protected]>
Co-authored-by: RiotRobot <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <[email protected]>
Co-authored-by: Andy Balaam <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>
thoraj added a commit to verji/matrix-js-sdk that referenced this pull request Aug 15, 2024
* Preserve ESM for async imports to work correctly (matrix-org#4187)

* fix: fix lazy rust crypto import

* test: use "commonjs" for tests because of circular deps

* chore: revert commonjs for "module"

* refactor: remove unnecessary example

* refactor: add comments

Signed-off-by: Bayyr Oorjak <[email protected]>

* refactor: improve comment

Signed-off-by: Bayyr Oorjak <[email protected]>

Co-authored-by: Richard van der Hoff <[email protected]>

* Update babel.config.js

---------

Signed-off-by: Bayyr Oorjak <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>

* Update organization (matrix-org#4212)

* v32.4.0

* Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0 (matrix-org#4214)

* Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0

* Disable affected test

Signed-off-by: Michael Telatynski <[email protected]>

---------

Signed-off-by: Michael Telatynski <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <[email protected]>

* `initRustCrypto`: allow app to pass in the store key directly (matrix-org#4210)

* `initRustCrypto`: allow app to pass in the store key directly

... instead of using the pickleKey. This allows us to avoid a slow PBKDF
operation.

* Fix link in doc-comment

* Bump matrix-sdk-crypto-wasm to 5.0.0 (matrix-org#4216)

Slightly more involved than normal because it requires us to pass a backup version into OlmMachine.importBackedUpRoomKeys.

On the other hand we can now re-enable the test that was disabled in matrix-org#4214 due to matrix-org/matrix-rust-sdk#3447

Fixes: element-hq/element-web#27165

* Remove more deprecated methods, fields, and exports (matrix-org#4217)

* Don't run migration for Rust crypto if the legacy store is empty (matrix-org#4218)

* Don't run migration for Rust crypto if the legacy store is empty

Fixes element-hq/element-web#27447

* Add copyright for the TypeScript files in legacy DB dumps

* Provide a type for the accountPickle we check for before migration

* Remove redundant backup response

This is unused

* Simplify keys response

* Downgrade log message.

---------

Co-authored-by: Richard van der Hoff <[email protected]>

* v33.0.0-rc.0

* v33.0.0

---------

Signed-off-by: Bayyr Oorjak <[email protected]>
Signed-off-by: Michael Telatynski <[email protected]>
Co-authored-by: Bayyr Oorjak <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>
Co-authored-by: R Midhun Suresh <[email protected]>
Co-authored-by: RiotRobot <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <[email protected]>
Co-authored-by: Andy Balaam <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>
thoraj added a commit to verji/matrix-js-sdk that referenced this pull request Aug 15, 2024
* Bringing develop to v 33.0.0 (#5)

* Preserve ESM for async imports to work correctly (matrix-org#4187)

* fix: fix lazy rust crypto import

* test: use "commonjs" for tests because of circular deps

* chore: revert commonjs for "module"

* refactor: remove unnecessary example

* refactor: add comments

Signed-off-by: Bayyr Oorjak <[email protected]>

* refactor: improve comment

Signed-off-by: Bayyr Oorjak <[email protected]>

Co-authored-by: Richard van der Hoff <[email protected]>

* Update babel.config.js

---------

Signed-off-by: Bayyr Oorjak <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>

* Update organization (matrix-org#4212)

* v32.4.0

* Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0 (matrix-org#4214)

* Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0

* Disable affected test

Signed-off-by: Michael Telatynski <[email protected]>

---------

Signed-off-by: Michael Telatynski <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <[email protected]>

* `initRustCrypto`: allow app to pass in the store key directly (matrix-org#4210)

* `initRustCrypto`: allow app to pass in the store key directly

... instead of using the pickleKey. This allows us to avoid a slow PBKDF
operation.

* Fix link in doc-comment

* Bump matrix-sdk-crypto-wasm to 5.0.0 (matrix-org#4216)

Slightly more involved than normal because it requires us to pass a backup version into OlmMachine.importBackedUpRoomKeys.

On the other hand we can now re-enable the test that was disabled in matrix-org#4214 due to matrix-org/matrix-rust-sdk#3447

Fixes: element-hq/element-web#27165

* Remove more deprecated methods, fields, and exports (matrix-org#4217)

* Don't run migration for Rust crypto if the legacy store is empty (matrix-org#4218)

* Don't run migration for Rust crypto if the legacy store is empty

Fixes element-hq/element-web#27447

* Add copyright for the TypeScript files in legacy DB dumps

* Provide a type for the accountPickle we check for before migration

* Remove redundant backup response

This is unused

* Simplify keys response

* Downgrade log message.

---------

Co-authored-by: Richard van der Hoff <[email protected]>

* v33.0.0-rc.0

* v33.0.0

---------

Signed-off-by: Bayyr Oorjak <[email protected]>
Signed-off-by: Michael Telatynski <[email protected]>
Co-authored-by: Bayyr Oorjak <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>
Co-authored-by: R Midhun Suresh <[email protected]>
Co-authored-by: RiotRobot <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <[email protected]>
Co-authored-by: Andy Balaam <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>

* Bring develop to v33.0.0 (#6)

* Preserve ESM for async imports to work correctly (matrix-org#4187)

* fix: fix lazy rust crypto import

* test: use "commonjs" for tests because of circular deps

* chore: revert commonjs for "module"

* refactor: remove unnecessary example

* refactor: add comments

Signed-off-by: Bayyr Oorjak <[email protected]>

* refactor: improve comment

Signed-off-by: Bayyr Oorjak <[email protected]>

Co-authored-by: Richard van der Hoff <[email protected]>

* Update babel.config.js

---------

Signed-off-by: Bayyr Oorjak <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>

* Update organization (matrix-org#4212)

* v32.4.0

* Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0 (matrix-org#4214)

* Update dependency @matrix-org/matrix-sdk-crypto-wasm to v4.10.0

* Disable affected test

Signed-off-by: Michael Telatynski <[email protected]>

---------

Signed-off-by: Michael Telatynski <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <[email protected]>

* `initRustCrypto`: allow app to pass in the store key directly (matrix-org#4210)

* `initRustCrypto`: allow app to pass in the store key directly

... instead of using the pickleKey. This allows us to avoid a slow PBKDF
operation.

* Fix link in doc-comment

* Bump matrix-sdk-crypto-wasm to 5.0.0 (matrix-org#4216)

Slightly more involved than normal because it requires us to pass a backup version into OlmMachine.importBackedUpRoomKeys.

On the other hand we can now re-enable the test that was disabled in matrix-org#4214 due to matrix-org/matrix-rust-sdk#3447

Fixes: element-hq/element-web#27165

* Remove more deprecated methods, fields, and exports (matrix-org#4217)

* Don't run migration for Rust crypto if the legacy store is empty (matrix-org#4218)

* Don't run migration for Rust crypto if the legacy store is empty

Fixes element-hq/element-web#27447

* Add copyright for the TypeScript files in legacy DB dumps

* Provide a type for the accountPickle we check for before migration

* Remove redundant backup response

This is unused

* Simplify keys response

* Downgrade log message.

---------

Co-authored-by: Richard van der Hoff <[email protected]>

* v33.0.0-rc.0

* v33.0.0

---------

Signed-off-by: Bayyr Oorjak <[email protected]>
Signed-off-by: Michael Telatynski <[email protected]>
Co-authored-by: Bayyr Oorjak <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>
Co-authored-by: R Midhun Suresh <[email protected]>
Co-authored-by: RiotRobot <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <[email protected]>
Co-authored-by: Andy Balaam <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>

---------

Signed-off-by: Bayyr Oorjak <[email protected]>
Signed-off-by: Michael Telatynski <[email protected]>
Co-authored-by: Bayyr Oorjak <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>
Co-authored-by: R Midhun Suresh <[email protected]>
Co-authored-by: RiotRobot <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <[email protected]>
Co-authored-by: Andy Balaam <[email protected]>
Co-authored-by: Richard van der Hoff <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants