-
Notifications
You must be signed in to change notification settings - Fork 20
Description
To ease the use of this tool, it'd be great if rather than having to export room keys regularly, the client could cross-sign with other clients.
Suggested mock workflow:
$ ./matrix-archive.py --help
Enter URL of your homeserver: [https://matrix-client.matrix.org] https://chat.example.com
Enter your full user ID (e.g. @user:matrix.org): @chrysn:chat.example.com
Password: *****
Enter full path to room E2E keys, or press Enter to start interactive verification. [Enter]
Scan this QR code from your device, or press Enter again to start emoji-based verification:
█▀▀▀▀▀█ ▀▄█▄█ ▀▄█ █▀▀▀▀▀█
█ ███ █ ███ ▄▄▀▀▀ █ ███ █
█ ▀▀▀ █ ▀ ▄█▀ ▀▄ █ ▀▀▀ █
▀▀▀▀▀▀▀ ▀ █ █▄█ ▀ ▀▀▀▀▀▀▀
▀▀█▀ ▀ ▀ █▀██ ▀▄▀▄▄█▀█▄█
▀ ▀██ ▀█ ██▀▀ ▄▀▀▄▄▄███ ▀
▀█ ▄▀▀ █▀▄█ █ ▀▄▄ █▄▄
▄▀█ ▀▀▀ █▄ █ ▀ ▀▀▀ ▄▄ ▄ ▀
▀▀▀▀▀▀███ ▀ ▀▀█▀▀▀███ ▀
█▀▀▀▀▀█ ▀▀▄ ██▄█ ▀ ███▄▀
█ ███ █ ▄▀▀ ▀▀█▀█▀▀▀▄▄▀█
█ ▀▀▀ █ █▄█▄▄▄██▀▀▄ ▀▄ █
▀▀▀▀▀▀▀ ▀ ▀▀ ▀▀ ▀▀ ▀
[Enter]
Does this sequence of icons show on your other device as well?
🍕 🍕 🍕 🍕 🍕 🍕 🍕
Pizza Pizza Pizza Pizza Pizza Pizza Pizza
(Enter "yes" to continue) yes
Cross-signing successful.
Importing keys. This may take a while...
(Just doing this with emoji would do just fine too; the QR code might just be a neat gimmick given that it's supported by the mobile device client.)
One change that'd bring is that suddenly the program would need to keep (and possibly protect, given the IMO weird but seemingly more widespread sentiment that creating user-only accessible may not be good enough) own state. Once established, though, that could persist the other entered data (or any derived from it) as well, eventually allowing a ./matrix-archive.py --all-rooms to be run regularly as part of a backup process without any user intervention (or, possibly, with only that intervention required to unlock the own data if deemed necessary).