Every message you are interested in reading / modifying is a sequence of 1s and 0s because that is how we do computer systems. they are translated into voltage so you can manipulate them with transistors. Encryption transforms a sequence of 0s and 1s into another sequence of 0s and 1s. This makes it harder to read the original information from it.
Cryptography older definition: the study of secure communication over insecure channels
e.g. your laptop → google is treated as an insecure channel
newer definition: provide rigorous guarantees on the security of data and computation in the presence of an attacker. not just confidentiality but also integrity and authenticity.
alice and bob: main characters trying to send messages to eachother, over an insecure communciation channel
eve: eavesdropper, can read any data sent over the channel .
mallory: manipulator who can read and modify any data over the channel
confidentiality: an adversary cannot read our messages integrity: an adversary cannot change our messages without being detected authenticty: i can prove that this message came from the person who claims to have written it
integrity and authenticity are closely related.
symmetric key model: message sender and receiver have the same key. e.g. one time pad, or aes encryption
asymmetric key model: everybody has two keys, a secret key and a public key. e.g. rsa encryption
kerckhoff’s principle says: cryptosystems should remain secure even when the attacker knows all internal details of the system the key should be the only thing that must be kept secret
our assumption: the attacker knows all algorithms we use. the only information the attacker is missing is the secret keys.