Secrets & Lies, Knowledge & Trust. (Modern Cryptography)

Slides:



Advertisements
Similar presentations
Secrets & Lies, Knowledge & Trust. (Modern Cryptography) COS 116, Spring 2010 Adam Finkelstein.
Advertisements

22C:19 Discrete Math Integers and Modular Arithmetic Fall 2010 Sukumar Ghosh.
Great Theoretical Ideas in Computer Science.
Public-key Cryptography Montclair State University CMPT 109 J.W. Benham Spring, 1998.
CC3.12 Erdal KOSE Privacy & Digital Security Encryption.
CRYPTOGRAPHY Modern techniques. Computers and Cryptography Computers allow more sophisticated enciphering than mechanical devices Computers are faster.
Cryptography Lecture 11: Oct 12. Cryptography AliceBob Cryptography is the study of methods for sending and receiving secret messages. adversary Goal:
Digital Envelopes, Zero Knowledge, and other wonders of modern cryptography (How computational complexity enables digital security & privacy) Guy Rothblum.
1 Lecture #10 Public Key Algorithms HAIT Summer 2005 Shimrit Tzur-David.
Public Key Cryptography
WS Algorithmentheorie 03 – Randomized Algorithms (Public Key Cryptosystems) Prof. Dr. Th. Ottmann.
WS Algorithmentheorie 03 – Randomized Algorithms (Public Key Cryptosystems) Prof. Dr. Th. Ottmann.
Encryption. Introduction Computer security is the prevention of or protection against –access to information by unauthorized recipients –intentional but.
Public Key Model 8. Cryptography part 2.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
Great Theoretical Ideas in Computer Science.
RSA Ramki Thurimella.
Cryptography Dec 29. This Lecture In this last lecture for number theory, we will see probably the most important application of number theory in computer.
1 Lecture 9 Public Key Cryptography Public Key Algorithms CIS CIS 5357 Network Security.
Public Key Cryptography. symmetric key crypto requires sender, receiver know shared secret key Q: how to agree on key in first place (particularly if.
CS461/ECE422 Spring 2012 Nikita Borisov — UIUC1.  Text Chapters 2 and 21  Handbook of Applied Cryptography, Chapter 8 
1 Simple and Unbreakable: The Mathematics of Internet Security Dr. Monica Nevins Department of Mathematics and Statistics University of Ottawa University.
Secrets & Lies, Knowledge & Trust. (Modern Cryptography) COS 116 4/17/2007 Guest Lecturer: Ari Feldman.
CRYPTOGRAPHY. WHAT IS PUBLIC-KEY ENCRYPTION? Encryption is the key to information security The main idea- by using only public information, a sender can.
CS 150 – Computing: From Ada to the Web Cryptography.
Week 4 - Wednesday.  What did we talk about last time?  Finished DES  AES.
Cryptography CS Lecture 19 Prof. Amit Sahai.
EE 122: Lecture 24 (Security) Ion Stoica December 4, 2001.
RSA Pubic Key Encryption CSCI 5857: Encoding and Encryption.
Elgamal Public Key Encryption CSCI 5857: Encoding and Encryption.
What is the Smallest RSA Private Key Why is there, at all, such a thing? Why is it not 42? Why is the smallest public key not 35? Or,
Network security Cryptographic Principles
Encryption with Keys and Passwords
Public Key Cryptography
Digital Signatures.
Lesson 2-18 AP Computer Science Principles
CS480 Cryptography and Information Security
Public Key Encryption.
Practical Aspects of Modern Cryptography
Basics of Cryptography
Asymmetric-Key Cryptography
RSA Slides by Kent Seamons and Tim van der Horst
CS 2210:0001Discrete Structures Modular Arithmetic and Cryptography
Public Key Encryption Systems
Public Key Encryption and Digital Signatures
Public-key Cryptography
Public Key Encryption and the RSA Algorithm
Big Numbers: Mathematics and Internet Commerce
Cryptography.
Encryption NSA – used to be able to crack most codes, technology has changed that Encryption is the art of encoding messages so they can’t be understood.
Diffie-Hellman Key-Exchange Algorithm
Foundations of Network and Computer Security
Public Key Cryptography Diffie-Hellman, Discrete Log, RSA
Encryption NSA – used to be able to crack most codes, technology has changed that. Now other methods are applied by NSA to access transmissions (see 2013.
NET 311 Information Security
Cryptography: Basics (2)
Appendix 5: Cryptography p
CS 115: COMPUTING FOR The Socio-Techno Web
NET 311 Information Security
Discrete Math for CS CMPSC 360 LECTURE 14 Last time:
Encryption NSA – used to be able to crack most codes, technology has changed that Encryption is the art of encoding messages so they can’t be understood.
Chapter 3 - Public-Key Cryptography & Authentication
Public – Private Key Cryptography
Fluency with Information Technology Lawrence Snyder
Modern Cryptography.
Public Key Encryption Systems
Security: Public Key Cryptography
Campbell R. Harvey Duke University and NBER
Presentation transcript:

Secrets & Lies, Knowledge & Trust. (Modern Cryptography) COS 116 4/14/2011 Instructor: Sanjeev Arora

Complexity-based cryptography (post-1976) Cryptography: 1 : secret writing 2 : the enciphering and deciphering of messages in secret code or cipher Ancient ideas: (pre-1976) Complexity-based cryptography (post-1976) Basic component of Digital World; about much more than just encryption or secret writing.

Main themes of today’s lecture Creating problems can be easier than solving them Difference between seeing information and making sense of it Role of randomness in the above Ability of 2 complete strangers to exchange secret information

Theme 1: Creating problems can be easier than solving them Example: (Aside: This particular problem is trivial for computers!) Reminiscent of something similar that is hard for current computers?

Letter scrambling: ancient cryptographic idea Example 1: “Caesar cipher” (c. 100BC) Example 2: Cipher used in conspiracy plot involving Queen Mary of Scots, 1587

Mafia Boss's Messages Deciphered From Discovery Channel, Apr 17 2006 Mafia Boss's Messages Deciphered “Boss of bosses” Bernardo Provenzano, captured after 40 years Sent “pizzini” (little messages on scraps of paper) using variant of Caesar cipher "...I met 512151522 191212154 and we agreed that we will see each other after the holidays...,“ 5 = B, 12 = I, 15 = N, etc. “It will keep your kid sister out, but it won't keep the police out.” - Bruce Schneier (Cryptographer)

Letter scrambling (cont.) Example 3: Enigma Used by Nazi Germany (1940’s) Broken by British (Turing), Polish “Won us the war.” – Churchill Moral: Computers  need for new ideas for encryption.

Integer factoring Easy-to-generate problem Say n = 128 Generation: Pick two n-bit prime numbers p, q, and multiply them to get r = pq Factoring problem Given r, find p and q Hard to solve Suggest an algorithm? Running time?

Status of factoring Despite many centuries of work, no efficient algorithms. Believed to be computationally hard, but remains unproved (“almost –exponential time”) You rely on it every time you use e-commerce (coming up) (Aside: If quantum computers ever get built, may become easy to solve.)

Theme 2: Difference between seeing information and making sense of it Theme 3: Role of randomness. Simple example that illustrates both: one-time pad (“daily codebook.”)

Random source hypothesis Integral to modern cryptography I and my computer have a source of random bits These bits look completely random and unpredictable to the rest of the world. Ways to generate: Quantum phenomena in semi-conductors, timing between keystrokes, etc. 0110101010011010011011101010010010001…

One-time pad (modern version) Goal: transmit n-bit message One-time pad: random sequence of n bits (shared between sender and receiver) Alice Bob Eve

Using one-time pad Encryption: Interpret one-time pad as “noise” for the message 0 means “don’t flip” 1 means “flip” Example: Encryption Decryption Message 0110010 Pad 1011001 Encrypted 1101011 Encrypted 1101011 Pad 1011001 Message 0110010

Musings about one-time pad Incredibly strong security: encrypted message “looks random” – equally likely to be encryption of any n-bit string How would you use one-time pad? How can you and Amazon agree on a one-time pad? Insecure link (Internet) (Jeff Bezos ’86)

Theme: How perfect strangers can send each other encrypted messages. Powerful idea: public-key encryption Diffie-Hellman-Merkle [1976] Rivest, Shamir, Adleman [1977]

Public-key cryptography c = Encrypt(m, Kpub) Private key Kpriv (512-bit number, known only to Amazon.) Message m Public key Kpub (512 bit number, publicly available, e.g. from Verisign Inc) m = Decrypt(c, Kpriv) Important: encryption and decryption algorithms are not secret, only private key! Decryption seems to require factoring.

Public-key encryption at a conceptual level “Box that clicks shut, and only Amazon has the key to open it.” (unbreakable digital safe) Example: Key exchange [Diffie-Hellman] User generates random string (“one-time pad”) Put it in box, ship it to Amazon Amazon opens box, recovers random string (Many other applications of PKE) 01011 01011

Public-Key Encryption at a mathematical level (RSA version) Key generation: Pick random primes p, q. Let N = p X q Find k that is not divisible by p, q. (“Public Key”) Encryption: m is encrypted as mk (mod N) Random Source Hypothesis! Decryption: Symmmetric to Encryption; use “inverse” of k (this is private key) “Modular” math

Discussion Time Read handout “PGP Encryption Proves Powerful” Discuss: Should citizens have free access to cryptography? Write your opinion on a page with a couple of lines justifying it.

Last theme: What does it mean to learn nothing? Zhuang Tse: “See how the small fish are darting about in the river. That is the happiness of the fish.” Hui Tse: “You are not a fish yourself. How can you know the happiness of the fish?” Zhuang Tse: “And you not being I, how can you know that I do not know?” Zhuang Tse, 300BC

One-time pad revisited In what sense did Eve learn nothing about the message? Answer 1: Transmission was a sequence of random bits Answer 2: Transmission looked like (i.e. was indistinguishable from)something she could easily have generated herself c = 010010 m = 100100 pad = 110110 c = 010010 pad = 110110 m = 100100 Eve Eureka! moment for modern cryptography

Zero Knowledge Proofs [Goldwasser, Micali, Rackoff ’85] Desire: Prox card reader should not store “signatures” – potential security leak Just ability to recognize signatures! Learn nothing about signature except that it is a signature prox card prox card reader Student “ZK Proof”: Everything that the verifier sees in the interaction, it could easily have generated itself.

Illustration: Zero-Knowledge Proof that “Sock A is different from sock B” Usual proof: “Look, sock A has a tiny hole and sock B doesn’t!” ZKP: “OK, why don’t you put both socks behind your back. Show me a random one, and I will say whether it is sock A or sock B. Repeat as many times as you like, I will always be right.” Why does verifier learn “nothing”? (Except that socks are indeed different.) Sock A Sock B

Actual ZK Proofs Use numbers, number theory, etc.

(From Lecture 1): Public closed-ballot elections Hold an election in this room Everyone can speak publicly (i.e. no computers, email, etc.) At the end everyone must agree on who won and by what margin No one should know which way anyone else voted Is this possible? Yes! (A. Yao, Princeton) “Privacy-preserving Computations” (Important research area)