Trapdoor functions are very similar to hash functions, with one major difference. Hash functions are strictly one-way, and there is no way output can be used to generate the input. Trapdoor functions, on the other hand, are different. While it is easy to generate the one-way output, it is difficult to generate the input from that output (but not impossible). This opposite function can work if you possess a special type of information.  The idea of a public key, private key, and address is rooted in the trapdoor functions.