I am reading the book An Introduction to Mathematical Cryptography. In its chapter 7, there is the following statement:
In real world scenarios, cryptosystems based on NP-hard or NP-complete problems tend to rely on particular subclass of problems either to achieve efficiency or to allow the creation of a trapdoor.
Questions:
Is is possible to explain what does it mean the phrase "to allow the creation of a trapdoor"?
Thanks for any help
The knapsack problem is a case where you can see it: a genral knapsack problem is NP-hard and worst-case NP-complete, but in developing the cryptosystem we must be able to mask an easily solvable instance to look like a hard one, so the problems that were used were easy ones (super-increasing) then modified by a modular multiplication and modular reduction to make them look like "random" instances (this is the Merkle-Hellman variant). But if you knew the original problem plus the modifications (this is the trapdoor) solving them would be easy. So choosing special problems allowed for a trapdoor (extra info that allows the decryption algorithm) to exist. This kind of example is what the writer of that chapter had in mind, probably.