4 ms·
There is one incredibly simple solution to solve the 'multi-device-problem' with security: 1. Allow the user to copy their keys to another device themselves.
by HappyTypist 11y ago
There is one incredibly simple solution to solve the 'multi-device-problem' with security:
1. Allow the user to copy their keys to another device themselves.
To further improve security, you'd want a transfer mechanism that cannot be copied as text / emailed / IM'd / whatever just so the user is discouraged from sending it in their gmail. One suitable candidate is QR codes, but without a camera "Type 1 letter at a time" would also work.
- Spearchucker 11y agoI think this depends on your appetite for risk. Forgive the trivialisation, however if you a). generate a strong symmetric key on the client b). encrypt keys on the client using AES and the strong symmetric key, and c). encrypt the AES symmetric key using the user's password, and d). store that encrypted AES key and the encrypted used keys on a zero-knowledge server, keyed on a hash of the user name, you might be able to log in from another device, using your user name and password. Both encrypted keys are pulled from the server based on the user name, and decrypted by inverting steps a to d.
- tazjin 11y agoThat's always an option, but it will never let you revoke a device again such that future messages won't be encrypted for it.
- zeveb 11y agoYou never want to share keys if you can get away with it. Your suggestion also doesn't solve the problem of lost, compromised or destroyed devices. If I have one phone and one computer, no algorithmic solution can determine if the person holding my phone is me, and the person holding my laptop is a thief, or if the person holding my phone is a thief and the person holding my laptop is me. Honestly, even majority vote is insufficient: is there any reason to trust the person holding my phone and laptop over the person holding my computer? What if my home just burned down? What's needed is for each device to have its own keys, and for messages to 'you' to really be sent to each device. And when you lose a device, you have to let your friends know, and they have to manually verify which of your devices to no longer trust. This can be presented in a pleasing fashion, but you can't eliminate the need for human judgement.