Commit Graph

13223 Commits

Author SHA1 Message Date
Benjamin Kampmann 968f80cc1b minor fix 2021-11-30 18:00:20 +01:00
Benjamin Kampmann f185aa2eae reuse cryptostore for sled 2021-11-30 17:58:14 +01:00
Jonas Platte 6519aaff4d crypto: Fix docs for SledStore 2021-11-30 17:48:49 +01:00
Benjamin Kampmann 9f0fe18dfc fix async_test for non-wasm32 envs 2021-11-30 17:46:50 +01:00
Benjamin Kampmann 954cce463e make cryptostore tests reusable 2021-11-30 16:01:42 +01:00
Benjamin Kampmann e3c62825b6 test and impl for outbound 2021-11-30 14:49:00 +01:00
Benjamin Kampmann 1e654acc29 backup and reset for inbound_groups 2021-11-30 13:20:49 +01:00
Benjamin Kampmann 59e3baf819 cover more inbound_group_session functions 2021-11-30 13:01:49 +01:00
Damir Jelić 8494f10583 Merge branch 'up-ruma' 2021-11-30 09:56:01 +01:00
Benjamin Kampmann d509eaa959 implement tracked user 2021-11-29 21:23:01 +01:00
Benjamin Kampmann 85dde94dd5 implement sessions 2021-11-29 20:57:30 +01:00
Benjamin Kampmann c9a10353f2 implement olm_hashes 2021-11-29 20:47:18 +01:00
Benjamin Kampmann 41faa59121 implement keyrequests 2021-11-29 19:43:20 +01:00
Benjamin Kampmann 833802677b implement devices saving and deleting 2021-11-29 15:04:20 +01:00
Jonas Platte 5824cb649e Update tests 2021-11-29 14:30:45 +01:00
Benjamin Kampmann fe257effce properly open encrypted state db 2021-11-29 14:05:48 +01:00
Benjamin Kampmann 47168ca3da implement saving user 2021-11-29 14:05:22 +01:00
Jonas Platte dfd59f42a9 Fix warp build error 2021-11-29 13:36:05 +01:00
Jonas Platte 557e038869 Minimal style improvements 2021-11-29 13:27:38 +01:00
Damir Jelić a628e84b63 fix(crypto): Fix a copy paste error preventing us from verifying users 2021-11-29 09:31:05 +01:00
Jonas Platte 36db5e47dd Upgrade Ruma 2021-11-26 19:22:54 +01:00
Damir Jelić 56d80b91c9 fix(sdk): Send the crypto requests out before a sync as well 2021-11-26 16:52:32 +01:00
Damir Jelić b0f48c9660 fix(crypto): Let users fetch our own device out of the store 2021-11-26 16:52:31 +01:00
Damir Jelić 68a2020516 fix(crypto): Check if the device we get from the server matches our own 2021-11-26 16:26:40 +01:00
Damir Jelić 13db642143 fix(cyrpto): Log database upgrades using the debug log level 2021-11-26 16:26:40 +01:00
Damir Jelić f2c344b39a fix(crypto): Use the DeviceKeys as the inner type for a ReadOnlyDevice 2021-11-26 16:26:40 +01:00
Benjamin Kampmann b42b04e887 account loading and saving 2021-11-26 14:36:14 +01:00
Benjamin Kampmann 229a81bfd6 Implement saving 2021-11-26 12:37:57 +01:00
Benjamin Kampmann 6d9920c239 various minor cleanups of unused imports 2021-11-25 16:44:20 +01:00
Damir Jelić 7b6132b71e feat(crypto): Return the list of room keys we imported
Clients might want to retry decryption after they import room keys, for
this to be efficient they'll need to know which room keys got imported.

This patch extends the return value of the room key import result to
include the map of room keys that got imported.
2021-11-25 16:41:28 +01:00
Benjamin Kampmann 47dff21eda update trait impl of indexeddb 2021-11-25 15:52:57 +01:00
Benjamin Kampmann 32a8ec7782 minor wasm32 fixes 2021-11-25 15:52:27 +01:00
Benjamin Kampmann 4c60db94a2 Implement helper for wasm32 MilliSecondsSinceUnixEpoch 2021-11-25 15:52:03 +01:00
Benjamin Kampmann 42680164ea fix up CI test 2021-11-25 15:49:20 +01:00
Benjamin Kampmann 5cf56adce7 Adding result-signature support for wasm32 async-test-macro 2021-11-25 15:46:17 +01:00
Damir Jelić 10173b990d fix(sdk): Degrade some logs that show user ids to the debug log level 2021-11-25 14:49:07 +01:00
Damir Jelić fc74526699 fix(crypto): Add the ability to mark room keys as backed up when importing 2021-11-25 11:18:09 +01:00
Damir Jelić 55973b5bf1 fix(crypto): Make ExportedRoomKey deserialization laxer
Some clients might have skipped the serialization of an empty
sender_claimed_keys and the forwarding_curve25519_key_chain, while these
fields are required there's really no upside in requiring them if they
are empty.

So create defaults if they are missing.
2021-11-25 10:20:09 +01:00
Marcel 406aaa0b50 Make sure to also include the uuid create serde feature with wasm 2021-11-24 20:50:36 +01:00
Damir Jelić 33b198d505 fix(crypto): Make sure we remove the unsigned object before signing 2021-11-24 15:56:32 +01:00
Damir Jelić be70d38e2a fix(crypto): Use the from constructor for some maps with known values 2021-11-24 15:56:05 +01:00
Damir Jelić 1e70b4f804 fix(crypto): Automatically track your own user if the caller doesn't do so
Users of the crypto crate should mark all members that are part of an
E2EE room for tracking, this will of course mark your own user for
tracking.

If the crypto crate user doesn't have any E2EE rooms he may not add any
members to be tracked. The user might still want to inspect their own
E2EE devices and identities. This patch makes sure that our member is
tracked.
2021-11-24 15:21:50 +01:00
Benjamin Kampmann 4c0bbebb07 Merge remote-tracking branch 'upstream/main' into ben-wasm-store 2021-11-24 11:48:45 +01:00
Benjamin Kampmann 9835c4ad92 Update to webpack5 2021-11-24 11:00:52 +01:00
Damir Jelić a49a7fe1f9 fix(crypto): Clear the master key signatures when we verify our own user 2021-11-22 18:00:52 +01:00
Damir Jelić fa42373cf8 Merge branch 'client-arc' 2021-11-22 16:27:27 +01:00
Damir Jelić a8c36b4041 Merge branch 'fix-session-doc-example' 2021-11-22 16:24:31 +01:00
Damir Jelić b91773a276 Merge branch 'store-upgrade-fix' 2021-11-22 16:23:53 +01:00
Damir Jelić fbc01f015d fix(sdk): Use the correct restore method in an example 2021-11-22 15:44:35 +01:00
Damir Jelić 5d26e36e1f fix(crypto): Make sure we store the store version using the right key 2021-11-22 15:28:21 +01:00