Trapdoor permutation
A trapdoor permutation (TDP) is a permutation that is easy to compute but hard to invert without a trapdoor: a secret that makes inversion efficient. Trapdoor permutations are one-way functions with an additional invertibility structure, and they are associated with Impagliazzo’s “Cryptomania” world. Their existence implies many public-key cryptographic primitives.
Syntax
A trapdoor permutation family is a tuple of efficient algorithms with respect to a domain and trapdoor space :
- is a randomized key generation algorithm that samples a function index and a trapdoor
- is a deterministic algorithm that evaluates on input , outputting
- is a deterministic algorithm that inverts on input given trapdoor outputting
We require that defines a bijection (permutation) on .
Properties
Correctness
For all and , with :
One-wayness
A TDP is one-way if for all efficient , is negligible.
Easy inversion with trapdoor
Inversion with the trapdoor is efficient: with probability 1 in time.
Variations
Enhanced trapdoor permutations
An enhanced TDP comes with a domain sampler and remains hard to invert on a sampled image even given the sampler’s coins . The EGL85 construction of OT is proved secure under this stronger property, since its receiver samples an image obliviously and holds the sampling coins — Gol04, GR13. No fully black-box construction of an enhanced TDP from a standard TDP exists — Haj18.
Doubly enhanced certified trapdoor permutations
An enhanced TDP is doubly enhanced if, given the index alone, one can efficiently sample a pair with uniform in the domain and uniform among the domain sampler’s coins that output — GR13. It is certified if its indices, and the domains they describe, are efficiently recognizable, so that a verifier can check that an index describes a permutation — BY96, CL18. These are the properties the hidden-bits compilation of NIZK proofs uses — GR13, CL18.
Injective trapdoor functions
An injective trapdoor function has the syntax above with injective rather than a permutation of , and the same one-wayness and inversion requirements. Every trapdoor permutation is one — folklore.
Claw-free permutations
A claw-free pair is a pair of permutations of a common domain , sampled together by , such that no efficient given outputs a claw with , except with negligible probability — GMR88. Each is then one-way, since inverting on for uniform yields a claw — standard. GMR88 use claw-free pairs with trapdoors for and .
Lossy trapdoor functions
An -lossy trapdoor function samples a function index in one of two computationally indistinguishable modes: in the injective mode is injective and inverted by with the trapdoor, one-wayness not being assumed, and in the lossy mode has at most images, so it loses at least bits of its input — PW08. A lossy trapdoor function is an -lossy one with ; without a lower bound on , every injective trapdoor function is an -lossy one, with the same index in both modes. is the residual leakage. Lossy TDFs imply injective trapdoor functions — PW08 — and IND-CCA-secure encryption — MY10.
Highly lossy trapdoor functions
An -lossy trapdoor function is highly lossy if its residual leakage is for a constant , the regime in which it yields collision-resistant hashing — PW08.
Other results
Participates in
Builds on Trapdoor permutation
- Claw-free permutations ⇒ Constant-round ZK proofs for NP (Goldreich–Kahan) (via Claw-free permutations)
- Claw-free permutations ⇒ CRHF (Damgård) (via Claw-free permutations)
- Doubly enhanced certified TDP ⇒ Enhanced TDP (via Doubly enhanced certified trapdoor permutations)
- Enhanced trapdoor permutations ⇒ OT (via Enhanced trapdoor permutations)
- Highly lossy TDF ⇒ Lossy TDF (via Highly lossy trapdoor functions)
- Highly lossy TDF ⇒ CRHF (via Highly lossy trapdoor functions)
- Lossy TDF ⇒ Injective TDF (via Lossy trapdoor functions)
- Lossy TDF ⇒ OT (via Lossy trapdoor functions)
- Lossy trapdoor functions ⇒ IND-CCA PKE (via Lossy trapdoor functions)
- TDP ⇒ cPIR with total communication below n (Kushilevitz–Ostrovsky)
- TDP ⇒ DS (full-domain hash, random oracle model)
- TDP ⇒ OWF
- TDP ⇒ Injective TDF
- Doubly enhanced certified TDP ⇒ NIZK (via Doubly enhanced certified trapdoor permutations)
- TDP ⇒ PKE
Produces Trapdoor permutation
- DCR ⇒ Highly lossy TDF (Freeman–Goldreich–Kiltz–Rosen–Segev) (via Highly lossy trapdoor functions)
- DDH ⇒ Highly lossy TDF (Peikert–Waters) (via Highly lossy trapdoor functions)
- Doubly enhanced certified TDP ⇒ Enhanced TDP (via Enhanced trapdoor permutations)
- Factoring ⇒ Claw-free permutations (GMR) (via Claw-free permutations)
- Factoring ⇒ TDP (Rabin)
- Highly lossy TDF ⇒ Lossy TDF (via Lossy trapdoor functions)
- Lossy TDF ⇒ Injective TDF (via Injective trapdoor functions)
- LWE ⇒ Lossy TDF (Peikert–Waters) (via Lossy trapdoor functions)
- Φ-Hiding ⇒ Lossy TDF (Kiltz–O’Neill–Smith) (via Lossy trapdoor functions)
- QR ⇒ Lossy TDF (Freeman–Goldreich–Kiltz–Rosen–Segev) (via Lossy trapdoor functions)
- RSA ⇒ TDP
- Sub-exponential iO + Sub-exponential OWF ⇒ TDP (Bitansky–Paneth–Wichs)
- TDP ⇒ Injective TDF (via Injective trapdoor functions)
Barriers