Cs3102: Theory of Computation Class 27: NP-Complete Desserts (DNA, RSA, BQP, NSA) Spring 2010 University of Virginia David Evans.

Slides:



Advertisements
Similar presentations
Slide 1 Introduction to Quantum Cryptography Nick Papanikolaou
Advertisements

CS211 Problems: unsolvable, unfeasible and unsolved Topic 3: P and NP.
1 Complexity ©D.Moshkovitz Cryptography Where Complexity Finally Comes In Handy…
David Evans CS588: Security and Privacy University of Virginia Computer Science Lecture 11: Birthday Paradoxes.
Great Theoretical Ideas in Computer Science.
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 40: Computing with Glue and Photons.
RSA ( Rivest, Shamir, Adleman) Public Key Cryptosystem
CNS2009handout 21 :: quantum cryptography1 ELEC5616 computer and network security matt barrie
1 Lecture #10 Public Key Algorithms HAIT Summer 2005 Shimrit Tzur-David.
Quantum Cryptography Prafulla Basavaraja CS 265 – Spring 2005.
Fall 2010/Lecture 311 CS 426 (Fall 2010) Public Key Encryption and Digital Signatures.
Introduction to Computer and Network Security Iliano Cervesato 26 August 2008 – Modern Cryptography.
Cs3102: Theory of Computation Class 20: Busy Beavers Spring 2010 University of Virginia David Evans Office hours: I am not able to hold my Thursday morning.
Lecture 5 Overview Does DES Work? Differential Cryptanalysis Idea – Use two plaintext that barely differ – Study the difference in the corresponding.
Chapter 12 Cryptography (slides edited by Erin Chambers)
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
Dominique Unruh 3 September 2012 Quantum Cryptography Dominique Unruh.
Merkle-Hellman Knapsack Cryptosystem Merkle offered $100 award for breaking singly - iterated knapsack Singly-iterated Merkle - Hellman KC was broken by.
RSA Ramki Thurimella.
The Complexity of Primality Testing. What is Primality Testing? Testing whether an integer is prime or not. – An integer p is prime if the only integers.
BY CLAYTON PETTY Leonard Max Adleman. Background Born Dec. 31, 1945 in California Attended UC Berkeley  BA in Mathematics in 1968  Ph.D. in EECS in.
DNA Computing BY DIVYA TADESERA. Contents  Introduction  History and its origin  Relevancy of DNA computing in 1. Hamilton path problem(NP problem)
Quantum Information Jan Guzowski. Universal Quantum Computers are Only Years Away From David’s Deutsch weblog: „For a long time my standard answer to.
Limits and Horizon of Computing Post silicon computing.
David Evans CS200: Computer Science University of Virginia Computer Science Class 36: Public-Key Cryptography If you want.
CS526: Information Security Prof. Sam Wagstaff September 16, 2003 Cryptography Basics.
An Introduction to Quantum Phenomena and their Effect on Computing Peter Shoemaker MSCS Candidate March 7 th, 2003.
Cs3102: Theory of Computation Class 24: NP-Completeness Spring 2010 University of Virginia David Evans.
Public Key Cryptography. symmetric key crypto requires sender, receiver know shared secret key Q: how to agree on key in first place (particularly if.
RSA Public Key Crypto System. About RSA Announced in 1977 by Ronald Rivest, Adi Shamir, and Leonard Adleman Relies on the relative ease of finding large.
1 Public-Key Cryptography and Message Authentication.
RSA Prepared by: SITI ZAINAH ADNAN
David Evans CS200: Computer Science University of Virginia Computer Science Class 38: Fixed Points and Biological Computing.
Merkle-Hellman Knapsack Cryptosystem
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
David Evans CS150: Computer Science University of Virginia Computer Science Class 33: Computing with Photons From The.
Introduction to Quantum Key Distribution
Class 37: Secret of Life CS200: Computer Science
Lecture 8 Overview. Analysis of Algorithms Algorithms – Time Complexity – Space Complexity An algorithm whose time complexity is bounded by a polynomial.
Public Key Cryptosystems RSA Diffie-Hellman Department of Computer Engineering Sharif University of Technology 3/8/2006.
Nawaf M Albadia
COMP 424 Lecture 04 Advanced Encryption Techniques (DES, AES, RSA)
Computability Heap exercise. The class P. The class NP. Verifiers. Homework: Review RELPRIME proof. Find examples of problems in NP.
1 Security through complexity Ana Nora Sovarel. 2 Projects Please fill one slot on the signup sheet. One meeting for each group. All members must agree.
Week 13 - Monday.  What did we talk about last time?  B-trees  Hamiltonian tour  Traveling Salesman Problem.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 15: Intractable Problems (Smiley.
Complexity of Computations Nicholas Tran Department of Mathematics & Computer Science Santa Clara University Santa Clara, CA USA.
28 April 2005 CS588 Spring 2005 David Evans Phun with Photons.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 7 Time Complexity Some slides are in courtesy.
David Evans Class 15: P vs. NP (Smiley Puzzles and Curing Cancer) CS150: Computer Science University of Virginia Computer.
Computer Security Lecture 5 Ch.9 Public-Key Cryptography And RSA Prepared by Dr. Lamiaa Elshenawy.
CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 8: Crash Course in Computational Complexity.
An Introduction to Quantum Computation Sandy Irani Department of Computer Science University of California, Irvine.
RSA Cryptosystem Great Theoretical Ideas In Computer Science S. Rudich V. Adamchik CS Spring 2006 Lecture 8Feb. 09, 2006Carnegie Mellon University.
David Evans CS588: Security and Privacy University of Virginia Computer Science Lecture 8: Non-secret Key Cryptosystems.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 23: Intractable Problems (Smiley Puzzles.
Quantum Computing: An Introduction
RSA Algorithm Date: 96/10/17 Wun-Long Yang. Outline Introduction to RSA algorithm RSA efficient implementation & profiling.
Cryptography By: Nick Belhumeur. Overview What is Cryptography? What is Cryptography? 2 types of cryptosystems 2 types of cryptosystems Example of Encryption.
Probabilistic Algorithms
Quantum Cryptography Arjun Vinod S3 EC Roll No:17.
Limits and Horizon of Computing
Quantum Cryptography Alok.T.J EC 11.
Cryptography and Quantum Computing
Lecture 24: Metalinguistics CS200: Computer Science
Lecture 27: In Praise of Idleness CS200: Computer Science
Where Complexity Finally Comes In Handy…
Class 34: Models of Computation CS200: Computer Science
Where Complexity Finally Comes In Handy…
Where Complexity Finally Comes In Handy…
Presentation transcript:

cs3102: Theory of Computation Class 27: NP-Complete Desserts (DNA, RSA, BQP, NSA) Spring 2010 University of Virginia David Evans

Reminders Tuesday: PS7 Due Optional Presentation. If you would like to present or perform your artifact in class on May 4, send me an by 5:00pm on Monday, May 3 explaining what you would like to do and how much time you think you need for this. You’ll get a handout that will help you prepare for the final Tuesday. Check your scores are recorded correctly in Collab

Cost of Synthesizing 1990: Human Genome Project starts, estimate $3B to sequence one genome ($0.50/base) 2000: Human Genome Project declared success, cost ~$300M June 2010: Complete Genomics will start offering full-genome sequencing for $5000 ($ /base) Last class Today

Genomes Computing

Solving HAMPATH with DNA Make up a two random k -nucleotide sequences for each node: (for example, k = 4 ) Based on Fred Hapgood’s notes on Adelman’s talk A:A 1 = ACTT A 2 = gcag B:B 1 = TCGG B 2 = actg C:C 1 = GGCT C 2 = atgt D:D 1 = GATC D 2 = tcca A B C D Upper and lowercase letters are the same, just written this way for clarity.

Encoding the Problem A: A 1 = ACTTA 2 = gcag B: B 1 = TCGGB 2 = actg C: C 1 = GGCTC 2 = atgt D: D 1 = GATCD 2 = tcca If there is a link between two nodes ( X  Y ), create a nucleotide sequence: X 2 Y 1 A B C D For each node, create a complement sequence X 1 X 2 (replace A  T, G  C):

Encoding the Problem A: A 1 = ACTTA 2 = gcag B: B 1 = TCGGB 2 = actg C: C 1 = GGCTC 2 = atgt D: D 1 = GATCD 2 = tcca If there is a link between two nodes ( X  Y ), create a nucleotide sequence: X 2 Y 1 A B C D A  B gcagTCGG A  C gcagGGCT B  C actgGGCT B  D actgGATC C  D atgtGATC For each node, create a complement sequence X 1 X 2 (replace A  T, G  C): A’ TGAAcgtc B’ AGCCtgac C’ CCGAtaca D’ CTAGaggt

Solving The Problem Mix up all the link and complement DNA strands A  B gcagTCGG A  C gcagGGCT B  C actgGGCT B  D actgGATC C  D atgtGATC A’ TGAAcgtc B’ AGCCtgac C’ CCGAtaca D’ CTAGaggt TGAAcgtc AGCCtgac gcagGGCT TGAAcgtc actgGGCT CTAGaggtCCGAtaca actgGATC atgtGATC

Shake it Up! TGAAcgtc AGCCtgac gcagGGCT TGAAcgtc actgGGCT CTAGaggt CCGAtaca actgGATC atgtGATC

Path Binding A B C D ACTTgcag TCGGactg GATCtcca GGCTatgt A’ TGAAcgtc gcagGGCT A  B B’ CCGAtaca atgtTCGG B  C C’ AGCCtgac D’ CTAGaggt actgGATC C  D

Getting the Solution Shake up all the DNA to get it to bind Extract strands that start with A and end with D Can do this with chemical binding on start/end tags: remove all strands that do not start with A, and then remove all strands that do not end with D Weigh remaining strands to find ones with the right weight (7 * 8 nucleotides) Select one of these and read its sequence

Is Church-Turing Thesis Wrong?!? Time to solve problem with DNA computer doesn’t scale with input size – Can shake up any amount of DNA in the same amount of time! Can DNA computers solve undecidable problems? Is TM model robust enough for P to be the same for DNA computer? No (at least not like this). Can simulate everything (including mixing) with TM. No: DNA computer can solve NP-Hard problems in constant time! Volume of DNA needed grows exponentially with input size.

DNA-Enhanced PC To solve HAMPATH for 45 vertices, you need ~20M gallons

Conclusions. For thousands of years, humans have tried to enhance their inherent computational abilities using manufactured devices. Mechanical devices such as the abacus, the adding machine, and the tabulating machine were important advances. But it was only with the advent of electronic devices and, in particular, the electronic computer some 60 years ago that a qualitative threshold seems to have been passed and problems of considerable difficulty could be solved. It appears that a molecular device has now been used to pass this qualitative threshold for a second time. Len Adleman

“A Breakthrough of Gaussian Proportions” Worth A+++++ on PS7!

What Sneakers is really about... If P = NP all* cryptography is (in theory) broken! *Not quite all. All cryptography where there are less key bits than total message bits. Information-theoretic crypto (one-time pad) is still perfectly secure. what would happen if P = NP.

Cryptosystem Encryption Decryption For security, it should be hard to invert c without k d. For efficiency, it should be easy to invert c with k d.

Cryptosystem For security, it should be hard to invert c without k d. For efficiency, it should be easy to invert c with k d.

Is BREAK in NP? So, what if P = NP?

Would this really mean all cryptography is broken?

Moore’s/Kurzweil’s/Tyson’s lawTyson Science’s Endless Golden AgeScience’s Endless Golden Age by Neil DeGrasse (Almost) everything improves exponentially

In practice, if P=NP and computing power continues to improve exponentially, all cryptosystems are eventually broken! In practice, if P=NP and computing power continues to improve exponentially, all cryptosystems are eventually broken! Point where Excel blows up

What about actual cryptosystems? “There’s an unwritten rule in astrophysics: your computer simulation must end before you die.” Neil deGrasse Tyson “There’s an unwritten rule in astrophysics: your computer simulation must end before you die.” Neil deGrasse Tyson

RSA Public-Key Cryptosystem 1978 Ron Rivest Len Adelman Adi Shamir

RSA [Rivest, Shamir, Adelman 78]

CS588 Spring RSA in Perl print pack"C*", split/\D+/, `echo [(pop,pop,unpack"H*",<>)]} \EsMsKsN0[lN*1lK[d2%Sa2/d0 <X+d*lMLa^*lN%0]dsXx++lMlN /dsM0<J]dsJxp"|dc` (by Adam Back) Until 1997 – Illegal to show this slide to non- US citizens! Until Jan 2000: can export RSA, but only with 512 bit keys Now: can export RSA except to embargoed destinations

RSA E(M) = M e mod n D(C) = C d mod n n = pqp, q are prime d is relatively prime to (p – 1)(q – 1) ed  1 (mod (p – 1)(q – 1)) Key property: if you know p and q, it is easy to compute d. Public key: (e, n) Private key: (d, n)

Security of RSA Given n, how much work is it to find p and q where n = pq ? Largest challenge factored so far (Jan 2010): b=768 (232 digits) RSA-768RSA computing years General Number Field Sieve (fastest known factoring algorithm) is in

Factoring Might Be Hard P P NP NP-Complete Assuming P  NP Factoring? Known to be in NP Not known to be in P Not known to be NP-C Known to be in BQP

Complexity Class BQP P = Polynomial time: languages that can be decided by a deterministic TM in  (N k ) steps. NP = Nondeterministic Polynomial time: languages that can be decided by a nondeterministic TM in  (N k ) steps. BQP = Bounded Quantum Polynomial time: languages that can be decided by a quantum TM in  (N k ) steps with at most 1/3 probability of error

Quantum Physics for Dummies Light behaves like both a wave and a particle at the same time A single photon is in many states at once but can’t “observe” its state without forcing it into one state Schrödinger’s Cat Put a live cat in a box with cyanide vial that opens depending on quantum state Cat is both dead and alive at the same time until you open the box

Quantum Computing Regular bit: either a 0 or a 1 7 bits can represent any one of 2 7 different states Quantum bit (qubit): in 2 possible states at once 7 qubits represent 2 7 different states (at once!) Computation on qubits: try all possible values at once! Richard Feynman, 1982 If you could do regular TM operations with a Quantum TM, this would make QP = NP. But you can’t! Actual operations are strange.

What is Known Today What is Unknown Today NP BQP NP BQP NP BQP Any of these could be true!

Most “Likely” Universe NP P P BQP NP-Complete

Quantum Computers Today Handful of quantum algorithms Shor’s algorithm: factoring in P using a quantum computer Grover’s algorithm: searching N unsorted entries in O(  N) 15 (= 5 * 3) Actual quantum computers 5-qubit computer built by IBM (2001) Implemented Shor’s algorithm to factor 15 (probably 5 * 3) Los Alamos: 7-qubit computer To exceed practical normal computing need > 30 qubits Adding another qubit is more than twice as hard

Charge Our P and NP complexity classes are robust – But, not to very strange definitions of a “step” – DNA and Quantum Computers can modify an unbounded amount of state in one time step The universe is a very strange place indeed If BQP=NP it is an even stranger strange place!