if it would only work. but it doesn't. occasionally messages can not be decrypted. it happens randomly, and there is no clue why. had to give up using matrix with one friend because it just happened to often. the key management is also way to complex. there should be one key that protects everything. that can be a key that unlocks other keys, but all this complexity should be invisible to the user.
Messages that can't be decrypted have been a big problem however from personal experience and matrix themselves saying it should be fixed with recent Element X version this should be a thing from the past.
>there should be one key that protects everything
That is more or less the case with the recovery key. https://element.io/help#encryption16