Wouldn't it be better to feed the RSA public key into an existing message encryption system like gpg? There are a few things you could improve that way:<p>* No message integrity - it would be good to be able to sign and encrypt.<p>* Encrypting the same plaintext twice gives the same ciphertext (there is no randomness). This means that an attacker can confirm if a given ciphertext corresponds to a suspected plaintext.<p>* RSA is comparatively slow; it is usually better to encrypt a symmetric key with RSA and then encrypt the message with the symmetric key.