Commit Graph

5208 Commits

Author SHA1 Message Date
Bruno Windels
cc4da5c7a7 fix ts errors with latest tsc 4.x version (as used on CI) 2023-03-28 18:14:09 +02:00
Bruno Windels
ac9c244315 fix logging after return 2023-03-28 12:39:55 +02:00
Bruno Windels
58f73630b6 fix crossSigning never getting enabled if you haven't fetched your own keys yet 2023-03-28 12:16:20 +02:00
Bruno Windels
3b17dc60b5 fix not being able to switch to passphrase mode anymore for key backup 2023-03-28 11:48:36 +02:00
Bruno Windels
1c923a720b fix login not working 2023-03-28 11:33:59 +02:00
R Midhun Suresh
aeb5e9d97f
Merge pull request #1058 from vector-im/support-arbitrary-toast-notifications
Refactor calls toast code to support other types of toasts
2023-03-28 11:46:08 +05:30
Bruno Windels
07df6a88a3
Merge pull request #1062 from vector-im/cross-signing/user-shield2
Cross-signing: refactor secret storage loading at startup and show user shield in member details panel
2023-03-27 11:09:51 +02:00
Bruno Windels
117ee3ba71
Merge pull request #1042 from vector-im/cross-signing/self-sign-other-device
Cross-signing: sign other users
2023-03-27 11:09:16 +02:00
Bruno Windels
22140614ec clear cross-signing object when disabling 4s 2023-03-27 11:06:30 +02:00
Bruno Windels
21729a6049 add newlines between getters 2023-03-27 10:57:26 +02:00
Bruno Windels
6abc918ce8 show shield as icon 2023-03-27 10:54:44 +02:00
Bruno Windels
eaa7de8a55 fix import 2023-03-24 23:16:54 +01:00
Bruno Windels
9383246f8d remove obsolete parameter here as well 2023-03-24 23:14:30 +01:00
Bruno Windels
d170c6f787 crossSigning is an observable value now 2023-03-24 23:10:54 +01:00
Bruno Windels
90faad551a remove txn argument that was removed in previous commit 2023-03-24 23:07:22 +01:00
Bruno Windels
762a91bd16 don't reuse existing transaction to read from 4S, as webcrypto terminates idb transactions 2023-03-24 13:42:19 +01:00
RMidhunSuresh
93d37aeb93
Create views based on viewmodel 2023-03-22 15:05:58 +05:30
RMidhunSuresh
a1086a7139
Add support for arbitrary notifications 2023-03-22 14:16:02 +05:30
Bruno Windels
dd59f37dce WIP2 2023-03-21 18:24:46 +01:00
RMidhunSuresh
9d8c045c10
Move import up 2023-03-21 21:47:25 +05:30
RMidhunSuresh
ed9fc14f23
Fix import 2023-03-21 21:46:46 +05:30
Bruno Windels
780dfeb199 WIP 2023-03-13 09:15:49 +01:00
Bruno Windels
760da6277a remove unused transaction 2023-03-09 09:08:01 +01:00
Bruno Windels
a69246fb5a return undefined if we don't have the signing key 2023-03-07 14:40:11 +01:00
Bruno Windels
a065189836 delay signature validation of cross-signing keys until calculating trust
always store them, if not we'll think that the user hasn't uploaded
the cross-signing keys if we don't store them in spite of invalid or
missing signature.
2023-03-07 11:00:52 +01:00
Bruno Windels
f1ecad5b58 adjust UI to more detailed trust level 2023-03-07 10:54:07 +01:00
Bruno Windels
bae18c037f return enum explaining user trust level rather than boolean 2023-03-07 10:53:32 +01:00
Bruno Windels
e00d02a599 fix ts error 2023-03-03 16:18:30 +01:00
Bruno Windels
149f187904 expose user trust in member panel 2023-03-03 15:22:02 +01:00
Bruno Windels
4c7f784911 implement verifying signaturs for user trust (green shield/red shield) 2023-03-03 15:21:37 +01:00
Bruno Windels
774efc17d9 extract method to sign key, as most params are always the same 2023-03-03 12:15:54 +01:00
Bruno Windels
c2ee824c1c fix lint warning from previous cross-signing PR 2023-03-03 12:03:31 +01:00
Bruno Windels
eff495c36d also delete old crossSigningKeys field on userIdentities 2023-03-03 11:57:29 +01:00
Bruno Windels
08984ad1bc log amount of marked user identities in migration 2023-03-03 11:57:15 +01:00
Bruno Windels
2563aa23e1 actually write modified values in migration 2023-03-03 11:56:51 +01:00
Bruno Windels
c747d5f228 rename deviceTrackingStatus to keysTrackingStatus
as this field also reflects the tracking status of the cross-signing
keys for a given user.
2023-03-03 11:34:09 +01:00
Bruno Windels
7d806b03b3 mark all existing user identities outdated as cross-signing keys missing 2023-03-03 11:33:19 +01:00
Bruno Windels
1dc3acad03 use enum for device tracking status 2023-03-02 17:32:46 +01:00
Bruno Windels
9789e5881d cleanup 2023-03-02 17:29:30 +01:00
Bruno Windels
fa662db70b show cross-sign user option in right panel 2023-03-02 17:16:53 +01:00
Bruno Windels
3a303ff84d cleanup comments 2023-03-02 17:15:05 +01:00
Bruno Windels
34b113b26e don't upload pre-existing signatures when signing 2023-03-02 17:14:50 +01:00
Bruno Windels
504d869b38 provide correct user id for signing key owner when signing other user 2023-03-02 17:14:27 +01:00
Bruno Windels
20a6fcda72 don't allow signing own user 2023-03-02 17:14:05 +01:00
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