Just a thought: how can the public key unencrypt something that was encrypted with a private key? Wouldn’t the receiver need the same private key that was used to create the encryption.
Normally I’d encrypt a hard drive, for example, you’re asked for a password to decrypt it again. And it also generates a long recovery key. If I try to decrypt with the wrong password, it won’t decrypt.
Another thought: surely the sender must be sending the key to the receiver via a server (eg WhatsApp or iCloud)? If so what prevents that server from keeping a copy of the key and the message for future decryption by law enforcement?