/*
For account-stored keys by using the account keyring.
Encryption of various keys of an account, secret keys of public-key cryptography for example.

If the server is able to move different keys of an account around without impunity the client may be forced into
using keys out-of-place. It's difficult to say exactly what this could reveal about a key or an account, but it must
be prevented in any case.
The encryption keys will be derived for each context and for each key type in those contexts.
    - The 'root' context that encrypts the account's public keys will have a different context to 'room' keys and it
      will include the key-version so curve25519 and ed25519 secret keys won't be able to switch places for example.
    - The 'room' context that encrypts the shared secrets of an owned room will similarly be different, but the
      id of the room must also be incorporated into the context, so these keys cannot be switched around between rooms.
*/
