I watched a video on Coursera through Stanford University titled Cryptography. Here are some things that I learned from the first week:
Cryptography = secure communication between two entities.
Cryptography consists of two parts:
- Secret key establishment
- Secure communication
Both entities need to have a shared key in order to communicate with each other. Cryptography provides confidentiality and integrity for the data being transmitted.
Cryptography also provides bi-directional anonymity though mix net (i.e. onion routing (Tor), anonymous re-mailers).
Mix net – Alice sends Bob messages through a series of proxies (i.e. different public IP’s 65.87.234.34, 123.3.234.12, 89.24.124.35, etc.) so Bob will not know where Alice is.
Anonymous digital cash – Can I spend a “digital coin” without anyone knowing who I am? How to prevent double spending?
Cryptography is a rigorous science.
The three steps of cryptography:
- Precisely specify threat model (i.e. How to make something un-forgeable?)
- Propose a construction
- Prove that breaking construction under threat mode will solve an underlying problem (i.e. How to keep your data safe no matter what?)
(Originally posted on March 8th, 2015. Updated on December 29th, 2020)