Cryptography CS Principles January 19, 2017
Needs for Privacy What are some specific needs for privacy when using the internet?
Information Security for… Defending against external/internal hackers Defending against industrial espionage Securing E-commerce Securing bank accounts/electronic transfers Securing intellectual property Avoiding liability Pervasiveness of email/networks Online storage of sensitive information Insecure technologies (e.g. wireless) Trend towards paperless society Weak legal protection of email privacy
Sharing secrets activity Find out the average GPA of THE PEOPLE in your group without anyone telling their GPA
History 50 B.C. Julius Caesar uses cryptographic technique 400 A.D. Kama Sutra in India mentions cryptographic techniques 1250 British monk Roger Bacon describes simple ciphers 1466 Leon Alberti develops a cipher disk 1861 Union forces use a cipher during Civil War
History 1914 World War I – British, French, and German forces use encryption technology 1917 William Friedman, Father of U.S. encryption efforts starts a school for teaching cryptanalysis in Illinois 1917 AT&T employee Gilbert Vernam invents polyalphabetic cipher 1919 Germans develop the Engima machine for encryption
History 1937 Japanese design the Purple machine for encryption 1942 Navajo windtalkers help with secure communication during World War II 1948 Claude Shannon develops statistical methods for encryption/decryption 1976 IBM develops DES 1976 Diffie – Hellman develop public key / private key cryptography 1977 Rivest – Shamir – Adleman develop the RSA algorithm for public key / private key
50 B.C. Julius Caesar uses cryptographic technique Make your cipher wheel
Practice encoding and decoding HELP (ROT 6) -> NKRV Encoding NKRV -> HELP Decoding Decide on a encoding (ROTx) and encode a 2 word message. Exchange messages with someone at a different table and decode.
Substitution Cipher HAPPY wednesday What does this mean? LETTC AIHRIWHEC Is this easier? JCRRA YGFPGUFCA HAPPY wednesday
Caesar Cipher A substitution cipher where each plaintext letters is replaced by some letter a fixed number spaces down in the alphabet
ROT13 Network data encryption / decryption using ROT13 algorithm Rotates characters by 13 places ‘A’ ‘N’, ‘M’ ‘Z’, ‘a’ ‘n’, ‘m’ ‘z’ Encryption Example: ‘Hello World’ encrypts to ‘Uryyb Jbeyq’ Decryption Example: ‘Uryyb Jbeyq’ decrypts to ‘Hello World’
Implementing ROT13 Consider the following four cases IF (ch >= ‘A’) && (ch <= ‘M’) Rotate “Right” ch by 13 characters IF (ch >= ‘N’) && (ch <= ‘Z’) Rotate “Left” ch by 13 characters IF (ch >= ‘a’) && (ch <= ‘m’) IF (ch >= ‘n’) && (ch <= ‘z’)
1919 Germans develop the Engima machine for encryption Enigma video Enigma simulator
Alice 3 Assignment Implement a caesar cipher in alice 3 Have a character say something in code and then decode it later in the animation Make it interactive allowing the user to input text and encode/decode the text Anything else
Interactivity in alice 3 Create events in “Edit Code” mode