Afirmația (pe care nu o găsesc nicăieri în răspunsurile la întrebarea legată) este incorectă. O funcție constantă nu poate fi unidirecțională. Pentru a vedea de ce, să ne amintim definiția unei funcții unidirecționale.
O functie $f : \{0,1\}^* \la \{0,1\}^*$ este unidirecțională, dacă
- Există un algoritm de timp polinomial $M_f$ astfel încât $M_f(x) = f(x)$ pentru toți $x\în\{0,1\}^*$.
- Pentru fiecare algoritm PPT $\mathcal{A}$ există o funcție neglijabilă $\mathsf{negl}$ astfel încât pentru toți $\kappa\in\mathbb{N}$ tine asta
$$\Pr[x\gets\{0,1\}^\kappa, y:=f(x)\;:\;f(\mathcal{A}(1^\kappa,y))=y ] \leq \mathsf{negl}(\kappa)$$
Cu toate acestea, pentru orice funcție constantă este ușor să specificați un algoritm PPT $\mathcal{A}$ pentru care
$$\Pr_{x\gets\{0,1\}^\kappa}\bigl[f\bigl(\mathcal{A}(1^\kappa,f(x))\bigr)=f(x) \bigr] = 1$$
pentru toți $\kappa\in\mathbb{N}$.
De exemplu, putem defini $\mathcal{A}$ ca algoritm care iese întotdeauna $1^\kappa$. Adică pentru toți $x\în\{0,1\}^\kappa$ avem $f\bigl(\mathcal{A}(1^\kappa,f(x))\bigr) = f(1^\kappa)$ iar din moment ce funcţia $f$ este constantă, este valabilă pentru toți $x\în\{0,1\}^\kappa$ acea $f(1^\kappa) = f(x)$. Prin urmare $\mathcal{A}$ rupe sensul unic al $f$ cu probabilitate $1$ și $f$ nu este unidirecțională.