Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography •...
-
Upload
truongdieu -
Category
Documents
-
view
223 -
download
2
Transcript of Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography •...
![Page 1: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/1.jpg)
CryptographyCS 555
Topic 1: Course Overview & What is Cryptography
1
![Page 2: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/2.jpg)
Administrative Note
• Professor Blocki is traveling and will be back on Wednesday. • E-mail: [email protected]
• Thanks to Professor Spafford for covering the first lecture!
2
https://www.cs.purdue.edu/homes/jblocki/courses/555_Spring17/index.html(also on syllabus)
![Page 3: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/3.jpg)
What is Cryptography?
“the art of writing or solving codes” – Concise Oxford English Dictionary
3
![Page 4: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/4.jpg)
What is Cryptography?“the art of writing or solving codes” – Concise Oxford English Dictionary
“The study of mathematical techniques for securing digital information, systems and distributed
computation against adversarial attacks.” -- Intro to Modern Cryptography
Late 20th centuryArt Science
4
![Page 5: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/5.jpg)
What Does It Mean to “Secure Information”
• Confidentiality (Security/Privacy)• Only intended recipient can see the communication
5
![Page 6: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/6.jpg)
What Does It Mean to “Secure Information”
• Confidentiality (Security/Privacy)• Only intended recipient can see the communication
• Integrity (Authenticity)• The message was actually sent by the alleged sender
BobAlice
I love you Alice… - Bob
We need to break up -Bob
6
![Page 7: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/7.jpg)
Two Attacker Models
• Passive Attacker• Attacker can eavesdrop • Protection Requires?
• Confidentiality
• Active Attacker• Has full control over communication channel• Protection Requires?
• Confidentiality & Integrity
7
![Page 8: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/8.jpg)
Steganography vs Cryptography
• Steganography• Goal: Hide existence of a message
• Invisible Ink, Tattoo Underneath Hair, …
• Assumption: Method is secret
8
![Page 9: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/9.jpg)
Steganography vs Cryptography
• Steganography• Goal: Hide existence of a message
• Invisible Ink, Tattoo Underneath Hair, …• Assumption: Method is secret
• Cryptography• Goal: Hide the meaning of a message• Depends only on secrecy of a (short) key• Kerckhoff’s Principle: Cipher method should not be required to be secret.
9
![Page 10: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/10.jpg)
Symmetric Key Encryption
• What cryptography has historically been all about (Pre 1970)• Two parties (sender and receiver) share secret key
• Sender uses key to encrypt (“scramble”) the message before transmission
• Receiver uses the key to decrypt (“unscramble”) and recover the original message
10
![Page 11: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/11.jpg)
Encryption: Basic Terminology
• Plaintext• The original message m
• Plaintext Space (Message Space)• The set ℳ of all possible plaintext messages• Example 1: ℳ = ′𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑘𝑘′, ′𝑟𝑟𝑒𝑒𝑎𝑎𝑟𝑟𝑒𝑒𝑎𝑎𝑎𝑎′, ′ℎ𝑜𝑜𝑜𝑜𝑜𝑜 𝑎𝑎𝑐𝑐𝑟𝑟𝑟𝑟𝑒𝑒𝑐𝑐𝑎𝑎 𝑝𝑝𝑜𝑜𝑝𝑝𝑝𝑝𝑎𝑎𝑝𝑝𝑜𝑜𝑐𝑐𝑝• Example 2: ℳ = 0,1 𝑐𝑐 - all n − bit messages
• Ciphertext c ∈ 𝒞𝒞• An encrypted (“scrambled”) message c ∈ 𝒞𝒞 (ciphertext space)
• Key/Keyspace k ∈ 𝒦𝒦
11
![Page 12: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/12.jpg)
Private Key Encryption Syntax
• Message Space: ℳ• Key Space: 𝒦𝒦• Three Algorithms
• Gen(𝑅𝑅) (Key-generation algorithm)• Input: Random Bits R• Output: Secret key k ∈ 𝒦𝒦
• Enck(𝑚𝑚) (Encryption algorithm)• Input: Secret key k ∈ 𝒦𝒦 and message m ∈ ℳ• Output: ciphertext c
• Deck(𝑎𝑎) (Decryption algorithm)• Input: Secret key k ∈ 𝒦𝒦 and a ciphertex c• Output: a plaintext message m ∈ ℳ
• Invariant: Deck(Enck(m))=m
Typically picks k ∈ 𝒦𝒦uniformly at random
Trusted Parties (e.g., Alice and Bob) must run Gen in advance to obtain
secret k.
Assumption: Adversary does not get to see output of Gen
12
![Page 13: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/13.jpg)
Cryptography History
• 2500+ years• Ongoing battle
• Codemakers and codebreakers
13
Shannon Entropy/Perfect Secrecy(~1950)
Caesar Shift Cipher (50 BC)
Frequency AnalysisCipher Machines (1900s)
1970s
Public Key Crypto/RSA
Formalization of Modern Crypto (1976+)
![Page 14: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/14.jpg)
Who Uses Cryptography
• Traditionally: Militias• Modern Times: Everyone!
14
Revolutionary WarCaesar Shift Cipher (50 BC)Modern Crypto
![Page 15: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/15.jpg)
Course Goals
• Understand the mathematics underlying cryptographic algorithms and protocols
• Understand the power (and limitations) of common cryptographic tools
• Understand the formal approach to security in modern cryptography
15
![Page 16: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/16.jpg)
Course Background
• Some probability• Algorithms and complexity• General Mathematical Maturity
• Understand what is (is not) a proper definition• Know how to write a proof
16
![Page 17: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/17.jpg)
Coming Up…
• Classic Ciphers + Frequency Analysis
• Before Next Class • Read: Katz and Lindell 1.3• Plus Katz and Lindell 1.1-1.2 if you haven’t already
17
![Page 18: Cryptography CS 555 - Purdue University · Steganography vs Cryptography • Steganography • Goal: Hide existence of a message • Invisible Ink, ... Public Key Crypto/RSA. Formalization](https://reader033.fdocuments.us/reader033/viewer/2022052516/5af042c57f8b9ac2468dd049/html5/thumbnails/18.jpg)
18