gus
Uploaded by
13 SLIDES
366 VUES
160LIKES

Understanding NP-Complete Problems: Characteristics and Implications in Cryptography

DESCRIPTION

NP-complete problems, including satisfiability, knapsack, and clique, are significant in both theoretical and practical contexts, particularly in cryptography. These problems share common traits, such as being solvable by enumeration with exponential time complexity. The satisfiability problem is a core NP-complete problem, and its implications for encryption indicate that if a polynomial-time algorithm exists for it, then all problems in NP can be solved efficiently. Nonetheless, currently, no polynomial-time algorithms have been discovered, making encryption based on NP-complete problems problematic for attackers, especially as computational speed improves.

1 / 13

Télécharger la présentation

Understanding NP-Complete Problems: Characteristics and Implications in Cryptography

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NP-Complete Problems Reference: Pfleeger, Charles P., Security in Computing, 2nd Edition, Prentice Hall, 1996. Ref: Pfleeger96, Ch.3

  2. Why Consider Complexity? • Encryption algorithms that are complex, should be hard for analysts to attack. • In particular, problems for which the number of possible solutions is large, should be essentially infeasible to solve using brute force attacks with computer assistance. Ref: Pfleeger96, Ch.3

  3. Problem 1: Satisfiability • Determine whether any given logical formula is satisfiable, that is, whether there is a way of assigning the values TRUE and FALSE to the variables so that the result of the formula is TRUE. Ref: Pfleeger96, Ch.3

  4. Example of Problem 1 • Consider Boolean variables A,B, and C and their complements A’, B’, and C’. • The following formula is satisfiable: • A AND (B OR C) AND (C’ OR A’) • The following formula is not satisfiable: • A AND (B OR C) AND (C’ OR A’) AND (B’) Ref: Pfleeger96, Ch.3

  5. Problem 2: Knapsack • Given a set of nonnegative integers and a target, is there a subset of the integers whose sum equals the target? Ref: Pfleeger96, Ch.3

  6. Example of Problem 2 • Let S = {4,7,1,12,10} and let the target sum be T. • For T = 17, we have a solution: 4 + 1 + 12 =17. • For T = 25, there is no solution. Ref: Pfleeger96, Ch.3

  7. Problem 3: Clique • Given a graph G and integer n, is there a subset of n vertices such that every vertex in the subset shares an edge with every other vertex in the subset (this is called a clique.) Ref: Pfleeger96, Ch.3

  8. Characteristics of NP-Complete Problems • The three problems have similar characteristics: • Each is solvable, using enumeration. • Suppose there are 2n cases to consider--then the total time to check all possibilities is proportional to 2n. • Problems are from different disciplines, hence apparently unrelated. • If we could guess perfectly, we could solve the problem in relatively little time--ie, the time to verify a solution is bounded. Ref: Pfleeger96, Ch.3

  9. The Classes of P and NP • Let P be the collection of all problems for which there is a solution that runs in time bounded by a polynomial function of the size of the problem. • Let NP be the set of all problems that can be solved in time bounded by a polynomial function of the size of the problem, assuming the ability to guess perfectly. Ref: Pfleeger96, Ch.3

  10. Relationship of the Classes • There is a class EXP, which consists of problems for which a deterministic solution exists in exponential time, cn for some constant n. • P NP EXP Ref: Pfleeger96, Ch.3

  11. The Meaning of NP-Completeness • The satisfiability problem is NP-Complete, meaning that it can represent the entire class NP. • If there is a deterministic, polynomial time algorithm for the satisfiability problem, then there is a determinisitc, polynomial time algorithm for every problem in NP. • But no polynomial time solutions have been found (yet.) Ref: Pfleeger96, Ch.3

  12. NP-Completeness and Cryptography • Encryption based on an NP-complete problem would be difficult for an attacker to solve. • However, if n is small, then 2n tries may not take long, especially with improvement in hardware speed and parallelism. Ref: Pfleeger96, Ch.3

  13. Other Hard Problems • Number theory problems , although not NP-complete, can computationally very-time consuming. • In particular, computation in Galois fields and factoring large numbers, have been used in encryption algorithms. Ref: Pfleeger96, Ch.3

More Related