The Internet Identity allows you to add arbitrary cryptographic keys to your account, and it’s API is open. So I think this could be done as a community-created add-on. For example, it could be a a static webpage that, fully on your computer:
- Creates a threshold ECDSA key with your desired n-out-of-m property.
- Shows you the m secret key shares to distribute among your friends.
- Gives you the link (clickable or as QR code) that would add the public key as a new “device” to the Internet computer.
If you need to recover, with your new device;
- You go to the Internet Identity page, and go through the add-device flow.
- You take the generated add-device-link and paste it in the recovery page.
- You also paste enough of the secret key shares.
- The recovery page adds your new device to II and you are back in action.
(I hope I am not missing something, but this might work very well).
So all it takes is a bit of crypto programming in JavaScript and a single static page that you can host on the Internet Compute or elsewhere (no backend needed). At least a working prototype should not be too hard.
Of course, there is a question of whether this should be offered natively by the Internet Identity. But one doesn’t have to wait for it, and one does not have to work for DFINITY to build it.