210 likes | 568 Views
Cryptography. Lecture 1: Introduction Piotr Faliszewski. Introduction. Instructor: Piotr Faliszewski Office: 70-357 5 pf@cs.rit.edu Website: http://www.cs.rit.edu/~pf/crypto. Prerequisites. Mathematics Some number theory We will revise what we need! Some probability Etc.
E N D
Cryptography Lecture 1: Introduction Piotr Faliszewski
Introduction • Instructor: • Piotr Faliszewski • Office: 70-3575 • pf@cs.rit.edu • Website: • http://www.cs.rit.edu/~pf/crypto
Prerequisites • Mathematics • Some number theory • We will revise what we need! • Some probability • Etc. • Programming
Cryptography • Two approaches to security of information • Steganography: hiding the message • Cryptography: scrambling the message • Often combined • Cryptology, cryptanalisis, cryptography... Steganography Cryptography Steganos (covered) Graphein (writing) Kryptos (hidden) Graphein (writing)
Cryptography in a Nutshell • Cryptography in the classical era • Roman ciphers • Ceasar’s cipher: shift-by-three • A D, B E, … • Greek letters cipher • Write in latin, but using greek letters • Atbash • Substitution cipher for the hebrew alphabet • Kama-sutra • 45th art: the art of secret writing Security: Via concealing the algorithm
Cryptography in a Nutshell • “Medieval” times • Substitution ciphers • Frequency analysis! • Polyalphabetic ciphers • Vigenére cipher • “unbreakable” cipher (considered so even in early 20th century!!!) • Modern era • Kerckhoff’s principle • Breaking of the Vigenére cipher Security: Via hiding a relatively short key
Kerckhoff’s Principle • Means to achieve security • Unknown method/small key • Unknown symmetric key • Unknown public key • Kerckhoff’s principle • The algorithm is known • Security rests on the key used within the algorithm • Security through hardness • Key should be long… • … but not all ciphers use their keys efficiently • Other applications… political science and voting!
Cryptography in a Nutshell • Twentieth century • Codetalkers • Using simple codes based on very rare native languages (e.g., U.S. Navy’s Navajo program) • Electromechanical devices • Enigma and others • Cryptography for the masses • DES, AES • Public-key cryptography Security: through computational hardness
Ciphers Ciphers symmetric public-key substitution DES AES RSA ElGamal shift affine Diffie-Hellman (key exchange)
The Basic Scenario • Two parties communicate • Alice and Bob • Insecure channel: Eve is listening! • Scenario: • Alice: plaintext ciphertext (using some algorithm) • Ciphertext sent to Bob (Eve receive’s it as well) • Bob: ciphertext plaintext
Information Security • Information security requires • Confidentiality – messages stay secret • Data integrity – messages are not altered • Authentication – Bob knows that Alice sent the message • Non-repuditation – Alice can’t deny sending the message
Possible Attacks • Attacks on confidentiality • Ciphertext only • Known plaintext • Chosen plaintext • Chosen ciphertext • Key-only (public-key cryptography)
Applications of Cryptography • Cryptographic applications • Digital signatures • Identification/password protection • Key establishment • Secret sharing • Security protocols • Electronic cash • Games • Zero-knowledge techniques
Unbreakable cipher • Is it possible to create an unbreakable cipher?
Unbreakable cipher • Is it possible to create an unbreakable cipher? • One-time pad • Plaintext: x1x2x3 ... xn • Random string: b1b2b3 ... bn • Ciphertext: yi = xi bi • Cryptanalisis? • Applications?
One-Time Pad Keys • Generate random sequence • Hardware generators • Thermal noise from a semiconductor device • Random fluctuations in disk sector latency times • Etc. • Software generators • Deterministic • Initiated „randomly” • System clock • Elapsed time between keystrokes • Etc.
Pseudorandom Numbers • Linear congruential generator • xi = axi-1 + b (mod m) • Dangerous for cryptography! • Blum-Blum-Shub generator • xi = xi-12 (mod n) • ui = xi (mod 2) • Many others...