Intro to Cryptography
Definitions • Cryptography • Cryptanalysis • Cryptology
CRYPTOGRAPHY Plaintext Cyphertext
More definitions • block cipher • stream cipher • hash function • shared key • public key • digital signature scheme
Caesar Cipher • Rotate all letters by a fixed amount. • Htruzyjw xhnjshj nx fbjxtrj
Vigenère Cipher • Fixed short pad • Plain: tobeornottobethatisthequestion • Key: runrunrunrunrunrunrunrunrunrun • KIOVIEEIGKIOVNURNVJNUVKHVMGZIA
Playfair Cipher P A L M E lo rd gr an vi lx le sl et te rz R S T O N B C D F G MT TB BN ES WH TL MP TA LN NL NV H I K Q U V W X Y Z
Exercises • Caesar Cipher: Zgo dgfy vg qgm osfl lzwkw ewkksywk lg jwesaf kwujwl • Vigenère: Encrypt “Computer science is fun” with “secure” • Playfair: Same as above
One Time Pad • Provably perfectly secret • Pad as long as plaintext • Pad perfectly random • Pad only used precisely once • Red Phone
One-Way Function • Given the output, you cannot compute the input in polynomial time. One-way Function Plaintext Cyphertext Cyphertext Plaintext
One-Way Functions • Password hashing • Code books • others?
Public Key Crypto Mailbox Letter
Public Key Crypto Plaintext Cyphertext What if only one person could decipher all the cipher texts?
Public Key Crypto • Each person has a key pair • public key — published for all the world to see • private key — decrypts messages • Anyone can encrypt a message with a public key • Only the owner can decrypt messages
Digital Signatures • Sign a message with a private key • Anybody can verify with my public key • Public key widely published
Issues • How do we know if a cypher is “good”? • How do we avoid usability weaknesses? • Do we plan on using existing devices in our scheme? • How to we model adversarial behaviors? • How do we verify that our adversaries are covered?
Recommend
More recommend