Public-key cryptography (this documentation is a work in progress. Feel free to contribute a nice intro to public-key cryptography!)