Cryptography notes.
This article is about cryptography and asymmetric encryption / decyption.
Asymmetric (public / private key pair) and symmetric (one key to encrypt and decrypt).
– distribute your public key
– keep your private key secret and private 🙂
Ask people who want to send you a secret mail to encrypt it with the public key. Only you, the owner of the private key, are able to decrypt it.
Install openSSH from http://slproweb.com/products/Win32OpenSSL.html (Visual C++ 2008 Redistributables and Win32 OpenSSL v1.0.1c).
Add the installation folder to your path and adjust the environment variable OPENSSL_CONF to point to your configuration file.
Asymmetric encryption of a file:
1. Create a private key and public key pair:
> openssl genrsa -out private.pem 1024
1a. Encrypt you private key:
> openssl rsa -in private.pem -des3 -out private-enc-key.pem
2. Extract the public key from this file (the public.pem, created below, can be freely distributed):
> openssl rsa -in private.pem -out public.pem -outform PEM -pubout
3. Encrypt a file:
> openssl rsautl -encrypt -inkey public.pem -pubin -in file.txt -out file_enc.txt
4. Decrypt the file with your private key:
> openssl rsautl -decrypt -inkey private.pem -in file_enc.txt -out decrypted.txt
Retrieve information about your private key (generated with genrsa command):
> openssl rsa -in privateKey.pem -text
NOTES
Privacy Enhanced Email (PEM)
http://users.dcc.uchile.cl/~pcamacho/tutorial/crypto/openssl/openssl_intro.html