Commit Graph

5164 Commits

Author SHA1 Message Date
Bruno Windels
4dce93e5ef make sure the key property doesn't leak out of the storage layer
as it ends up in the value we're signing and uploading,
corrupting the signature
2023-03-02 17:13:15 +01:00
Bruno Windels
a9412aa57c fix import paths after TS conversion 2023-03-02 17:12:56 +01:00
Bruno Windels
daf66e1d6c implement signing users and other devices 2023-03-02 15:02:42 +01:00
Bruno Windels
b8fb2b6df1 Store device keys in format needed to sign/verify, convert to TS
In order to sign and verify signatures of design keys, we need
to have them in the format as they are uploaded and downloaded
from the homeserver. So, like the cross-signing keys, we store
them in locally in the same format to avoid constant convertions.

I also renamed deviceIdentities to deviceKeys, analogue to
crossSigningKeys. In order to prevent mistakes in this refactor,
I also converted DeviceTracker to typescript.
2023-02-28 17:25:01 +01:00
Bruno Windels
151090527b Store cross-signing keys in format as returned from server, in separate store
This will make it easier to sign and verify signatures with these keys,
as the signed value needs to have the same layout when signing and
for every verification.
2023-02-28 14:07:55 +01:00
Bruno Windels
8c74e54f9d release v0.3.8 2023-02-14 16:38:29 +01:00
Bruno Windels
1113f2ffb9
Merge pull request #1036 from vector-im/cross-signing/self-sign
Allow to sign own device once MSK is trusted
2023-02-14 16:36:29 +01:00
Bruno Windels
2a6baef259
Merge pull request #1031 from vector-im/cross-signing/verify-msk
Cross-signing: verify MSK with 4S security key
2023-02-14 16:32:52 +01:00
Bruno Windels
7519878264 add stronger warning to enable cross-signing 2023-02-14 16:30:25 +01:00
Bruno Windels
71d7dcb0ca store self-signing keys on userIdentity 2023-02-14 16:26:55 +01:00
Bruno Windels
c7a2b4dc2e expose self-signing in settings UI 2023-02-14 16:26:02 +01:00
Bruno Windels
088fcdc77b logging type definition fix 2023-02-14 16:25:46 +01:00
Bruno Windels
693640d222 implement signing our own device 2023-02-14 16:25:32 +01:00
Bruno Windels
103ae1e789 fix unit tests 2023-02-14 13:24:26 +01:00
Bruno Windels
45d45cb690 show MSK trust status in settings after enabling key backup 2023-02-14 12:13:07 +01:00
Bruno Windels
fdce098245 create cross-signing class, support deriving msk from 4s stored privkey
and check if they match the publicized one and then trust it
2023-02-14 12:12:20 +01:00
Bruno Windels
ce5b27f4b8 support fetching the master signing key for a user in the device tracker 2023-02-14 12:11:59 +01:00
Bruno Windels
2043541f56 fix missing free in key backup 2023-02-10 17:36:14 +01:00
Bruno Windels
ab67a28c74 add feature flag for cross-signing 2023-02-10 17:35:45 +01:00
Bruno Windels
3720de36bb
Merge pull request #1029 from vector-im/bwindels/fix-1014
fix missing msgtype on emote
2023-02-10 16:31:08 +01:00
Bruno Windels
3bb0d26d3f fix missing msgtype on emote 2023-02-10 16:17:47 +01:00
Bruno Windels
551a9e0bc8 release v0.3.7 2023-02-10 14:15:00 +01:00
Bruno Windels
035cfe528f
Merge pull request #1028 from vector-im/bwindels/fix-1009
Fix backfill failing due to synapse pagination token format change
2023-02-10 14:14:22 +01:00
Bruno Windels
c3da2acfb2 adjust margin on features UI 2023-02-10 14:11:45 +01:00
Bruno Windels
7c1117ddd4 keep token in memory to compare stored token with after /messages
and don't look at response.start as it can be different as
the format can change after a server upgrade while
(still pointing at the same location)
2023-02-10 14:08:35 +01:00
Bruno Windels
9e28bdcc88 don't try to fill when we had an error before 2023-02-10 12:35:02 +01:00
Bruno Windels
7777ef83dd adopt errorViewModel in GapTile to report errors 2023-02-10 12:34:47 +01:00
Bruno Windels
8cccc1dfaf
Merge pull request #705 from vector-im/bwindels/calls
Group calls
2023-02-10 11:36:39 +01:00
Bruno Windels
c946319891 remove double experimal warning in UI 2023-02-10 11:33:24 +01:00
Bruno Windels
df05f40de7
Merge pull request #1027 from vector-im/windels/calls-feature-flag
Put calls support behind a feature flag
2023-02-10 11:24:25 +01:00
Bruno Windels
83d1ea05a1 fix unit test 2023-02-10 11:22:13 +01:00
Bruno Windels
da1b7d4108 UI in settings for toggling features 2023-02-10 09:27:18 +01:00
Bruno Windels
bb477b6aad fix not passing features to client construction 2023-02-10 08:48:31 +01:00
Bruno Windels
f9fa59609f fix local variable usage after extracting method 2023-02-10 08:48:10 +01:00
Bruno Windels
4a46c98d12 don't assume the call handler is always set in device message handler 2023-02-09 11:57:45 +01:00
Bruno Windels
22a8182266 feature-gate calls everywhere in the app 2023-02-09 11:57:30 +01:00
Bruno Windels
f86663fe7b pass features to tilesCreator (and all options really for comfort) 2023-02-09 11:56:22 +01:00
Bruno Windels
d5929d9ebe make features available in Client and Session 2023-02-09 11:53:39 +01:00
Bruno Windels
f65b43f612 load features at startup and pass them along in all view models 2023-02-09 11:53:11 +01:00
Bruno Windels
c4944599cf add feature set to keep track of enabled features
already include the calls feature
2023-02-09 11:52:00 +01:00
Bruno Windels
fe5794a4bc don't clear options as error boundary may fire after dispose 2023-02-07 23:26:02 +01:00
Bruno Windels
928419502e no point in ref'ing an item on its parent 2023-02-07 22:44:43 +01:00
Bruno Windels
93661690e1 fix bg color of calls 2023-02-07 22:18:13 +01:00
Bruno Windels
b6c7bbb05c
Merge pull request #1016 from vector-im/calls-fix-1012
Calls: Emit update after sending signalling message + other error fixes
2023-02-07 22:03:36 +01:00
Bruno Windels
dd89aab516 fix typescript error in unit test 2023-02-07 20:19:06 +01:00
Bruno Windels
bcc8e3a6c1
Merge pull request #1019 from vector-im/bwindels/log-1013
Extra logging for call issue
2023-02-07 20:14:48 +01:00
Bruno Windels
5ad3f0c671 look at signalingState when even is fired, not later when it may have changed 2023-02-07 20:11:35 +01:00
Bruno Windels
3ff91639c6 log signalingState on negotiationneeded 2023-02-07 20:07:16 +01:00
Bruno Windels
5c2889aa5b show DOM errors on the member error boundary rather than one for call
gives a bit more context
2023-02-07 19:59:13 +01:00
Bruno Windels
7114428b23 now that the dom handler uses an error boundary, don't need this anymore 2023-02-07 19:57:42 +01:00