Функция слабо односторонняя
- $f$ полиномиально вычислима;
- существует полином $p$ такой, что для любого полиномиального вероятностного алгоритма $\mathcal A$ неравенство \[ \Pr\left(\mathcal A(f(\widetilde u_n))\in f^{-1}(f(\widetilde u_n))\right) \leqslant1-\frac1{p(n)} \] выполняется для всех достаточно больших $n\in\mathbb N$.
Иногда в определении слабо односторонней функции не требуют честности и предполагают, что на вход алгоритму $\mathcal A$ в условии 2 вместе с $f(\widetilde u_n)$ подается $1^n$ (см. [1]). Тогда очевидно, что если функция $f\colon\{0,1\}^*\to\{0,1\}^*$ удовлетворяет условиям определения 1, то она удовлетворяет также условиям данной модификации этого определения. Наоборот, если эта функция удовлетворяет условиям данной модификации определения 1, то функция $x\mapsto\left(1^{\lvert{x}\rvert},f(x)\right)$ ($x\in\{0,1\}^*$) удовлетворяет условиям определения 1.
Определение 1 очевидным образом переносится на случай, когда $f$ определена лишь на $\bigcup_{i\in I}\{0,1\}^i$, где $I$ — бесконечное подмножество $\mathbb N$. Пусть $I$ — полиномиально перечислимое множество, а $f\colon\bigcup_{i\in I}\{0,1\}^i\to\{0,1\}^*$ — слабо односторонняя функция. Тогда $f$ может быть продолжена на все множество $\{0,1\}^*$ с сохранением слабой односторонности (см. [1]).
Следующее предложение (см. [1]) показывает, что в конструкциях, использующих произвольную слабо одностороннюю функцию, без ограничения общности можно считать, что эта функция сохраняет длину.
Очевидно, что всякая односторонняя функция является слабо односторонней. Обратное в предположении существования односторонних функций неверно (см. [1]), но имеет место следующий результат (см. [1], [2]).
Литература
- [1] Goldreich, O. «Foundations of cryptography. Volume 1 (Basic tools). Volume 2 (Basic applications)» 2001 (v. 1), 2004 (v. 2)
- [2] Luby, M. «Pseudorandomness and cryptographic applications» 1996
- [3] Goldreich, O. and Impagliazzo, R. and Levin, L. and Venkatesan, R. and Zuckerman, D. «Security preserving amplification of hardness» 1990