Encryption and Secure Computer Networks
A method for obtaining digital signatures and public-key cryptosystems