lecture 1: one-way functions - purdue university 2015/lectures/… · algorithm and running-time...
TRANSCRIPT
![Page 1: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/1.jpg)
Lecture 1: One-way Functions
Lecture 1: One-way Functions
![Page 2: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/2.jpg)
Introduction
Learn a new Mathematical languageEncouraged to speak this languageEncouraged to conjecture
Lecture 1: One-way Functions
![Page 3: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/3.jpg)
Introduction
Learn a new Mathematical language
Encouraged to speak this languageEncouraged to conjecture
Lecture 1: One-way Functions
![Page 4: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/4.jpg)
Introduction
Learn a new Mathematical languageEncouraged to speak this language
Encouraged to conjecture
Lecture 1: One-way Functions
![Page 5: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/5.jpg)
Introduction
Learn a new Mathematical languageEncouraged to speak this languageEncouraged to conjecture
Lecture 1: One-way Functions
![Page 6: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/6.jpg)
Algorithm and Running-time
Definition (Algorithm)
An algorithm A is a deterministic Turing machine whose input andoutput are strings over alphabet Σ = {0, 1}.
Definition (Running-time)
An algorithm A is said to run in time T (n) if for all x ∈ {0, 1}n,A(x) halts within T (|x |) steps. A runs in polynomial time if thereexists a constant c such that A runs in time T (n) = nc .
An algorithm is efficient if it runs in polynomial time.
Think: Why?
Lecture 1: One-way Functions
![Page 7: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/7.jpg)
Algorithm and Running-time
Definition (Algorithm)
An algorithm A is a deterministic Turing machine whose input andoutput are strings over alphabet Σ = {0, 1}.
Definition (Running-time)
An algorithm A is said to run in time T (n) if for all x ∈ {0, 1}n,A(x) halts within T (|x |) steps. A runs in polynomial time if thereexists a constant c such that A runs in time T (n) = nc .
An algorithm is efficient if it runs in polynomial time.
Think: Why?
Lecture 1: One-way Functions
![Page 8: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/8.jpg)
Algorithm and Running-time
Definition (Algorithm)
An algorithm A is a deterministic Turing machine whose input andoutput are strings over alphabet Σ = {0, 1}.
Definition (Running-time)
An algorithm A is said to run in time T (n) if for all x ∈ {0, 1}n,A(x) halts within T (|x |) steps. A runs in polynomial time if thereexists a constant c such that A runs in time T (n) = nc .
An algorithm is efficient if it runs in polynomial time.
Think: Why?
Lecture 1: One-way Functions
![Page 9: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/9.jpg)
Algorithm and Running-time
Definition (Algorithm)
An algorithm A is a deterministic Turing machine whose input andoutput are strings over alphabet Σ = {0, 1}.
Definition (Running-time)
An algorithm A is said to run in time T (n) if for all x ∈ {0, 1}n,A(x) halts within T (|x |) steps. A runs in polynomial time if thereexists a constant c such that A runs in time T (n) = nc .
An algorithm is efficient if it runs in polynomial time.
Think: Why?
Lecture 1: One-way Functions
![Page 10: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/10.jpg)
Randomized Algorithms
Definition (Randomized (PPT) Algorithm)
A randomized algorithm, also called a probabilitic polynomial-timeTuring machine and abbreviated as PPT, is a Turing machineequipped with an extra randomness tape. Each bit of therandomness tape is uniformly and independently chosen.
Output is a distributionThink: Define using a coin-tossing oracle
Lecture 1: One-way Functions
![Page 11: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/11.jpg)
Randomized Algorithms
Definition (Randomized (PPT) Algorithm)
A randomized algorithm, also called a probabilitic polynomial-timeTuring machine and abbreviated as PPT, is a Turing machineequipped with an extra randomness tape. Each bit of therandomness tape is uniformly and independently chosen.
Output is a distribution
Think: Define using a coin-tossing oracle
Lecture 1: One-way Functions
![Page 12: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/12.jpg)
Randomized Algorithms
Definition (Randomized (PPT) Algorithm)
A randomized algorithm, also called a probabilitic polynomial-timeTuring machine and abbreviated as PPT, is a Turing machineequipped with an extra randomness tape. Each bit of therandomness tape is uniformly and independently chosen.
Output is a distributionThink: Define using a coin-tossing oracle
Lecture 1: One-way Functions
![Page 13: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/13.jpg)
Function Computation
Definition (Function Computation)
A randomized algorithm A computes a functionf : {0, 1}∗ → {0, 1}∗, if for all x ∈ {0, 1}∗, A on input x , outputsf (x) with probability 1. The probability is taken over the randomtape of A.
Without loss of generality, we can restrict to functions with binaryoutput
Think: Relax the definition to work with probability 1− 2−|x |
Think: Amplify an algorithm which is correct only withprobability 1
2 + 1poly(|x |) into one which is correct with
probability 1− 2−|x |.
Lecture 1: One-way Functions
![Page 14: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/14.jpg)
Function Computation
Definition (Function Computation)
A randomized algorithm A computes a functionf : {0, 1}∗ → {0, 1}∗, if for all x ∈ {0, 1}∗, A on input x , outputsf (x) with probability 1. The probability is taken over the randomtape of A.
Without loss of generality, we can restrict to functions with binaryoutput
Think: Relax the definition to work with probability 1− 2−|x |
Think: Amplify an algorithm which is correct only withprobability 1
2 + 1poly(|x |) into one which is correct with
probability 1− 2−|x |.
Lecture 1: One-way Functions
![Page 15: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/15.jpg)
Function Computation
Definition (Function Computation)
A randomized algorithm A computes a functionf : {0, 1}∗ → {0, 1}∗, if for all x ∈ {0, 1}∗, A on input x , outputsf (x) with probability 1. The probability is taken over the randomtape of A.
Without loss of generality, we can restrict to functions with binaryoutput
Think: Relax the definition to work with probability 1− 2−|x |
Think: Amplify an algorithm which is correct only withprobability 1
2 + 1poly(|x |) into one which is correct with
probability 1− 2−|x |.
Lecture 1: One-way Functions
![Page 16: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/16.jpg)
Function Computation
Definition (Function Computation)
A randomized algorithm A computes a functionf : {0, 1}∗ → {0, 1}∗, if for all x ∈ {0, 1}∗, A on input x , outputsf (x) with probability 1. The probability is taken over the randomtape of A.
Without loss of generality, we can restrict to functions with binaryoutput
Think: Relax the definition to work with probability 1− 2−|x |
Think: Amplify an algorithm which is correct only withprobability 1
2 + 1poly(|x |) into one which is correct with
probability 1− 2−|x |.
Lecture 1: One-way Functions
![Page 17: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/17.jpg)
Function Computation
Definition (Function Computation)
A randomized algorithm A computes a functionf : {0, 1}∗ → {0, 1}∗, if for all x ∈ {0, 1}∗, A on input x , outputsf (x) with probability 1. The probability is taken over the randomtape of A.
Without loss of generality, we can restrict to functions with binaryoutput
Think: Relax the definition to work with probability 1− 2−|x |
Think: Amplify an algorithm which is correct only withprobability 1
2 + 1poly(|x |) into one which is correct with
probability 1− 2−|x |.
Lecture 1: One-way Functions
![Page 18: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/18.jpg)
Adversaries
Definition (Non-Uniform PPT)
A non-uniform probabilistic polynomial-time Turing machine(abbreviated as n.u. p.p.t.) A is a sequence of probabilisticmachines A = {A1,A2, . . . } for which there exists a polynomiald(·) such that the description size of |Ai | < d(i) and the runningtime of Ai is also less than d(i). We write A(x) to denote thedistribution obtained by running A|x |(x).
Lecture 1: One-way Functions
![Page 19: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/19.jpg)
One-way Functions
Intuition:
A function f is an one-way function ifEasy to compute f (x) given x
: Use language of “FunctionComputation”
Difficult to compute x from f (x)
: Use language of “n.u. PPT”and “Function Computation”
May be possible to partially recover x
Lecture 1: One-way Functions
![Page 20: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/20.jpg)
One-way Functions
Intuition: A function f is an one-way function if
Easy to compute f (x) given x
: Use language of “FunctionComputation”
Difficult to compute x from f (x)
: Use language of “n.u. PPT”and “Function Computation”
May be possible to partially recover x
Lecture 1: One-way Functions
![Page 21: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/21.jpg)
One-way Functions
Intuition: A function f is an one-way function ifEasy to compute f (x) given x
: Use language of “FunctionComputation”Difficult to compute x from f (x)
: Use language of “n.u. PPT”and “Function Computation”
May be possible to partially recover x
Lecture 1: One-way Functions
![Page 22: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/22.jpg)
One-way Functions
Intuition: A function f is an one-way function ifEasy to compute f (x) given x
: Use language of “FunctionComputation”
Difficult to compute x from f (x)
: Use language of “n.u. PPT”and “Function Computation”
May be possible to partially recover x
Lecture 1: One-way Functions
![Page 23: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/23.jpg)
One-way Functions
Intuition: A function f is an one-way function ifEasy to compute f (x) given x : Use language of “FunctionComputation”Difficult to compute x from f (x)
: Use language of “n.u. PPT”and “Function Computation”
May be possible to partially recover x
Lecture 1: One-way Functions
![Page 24: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/24.jpg)
One-way Functions
Intuition: A function f is an one-way function ifEasy to compute f (x) given x : Use language of “FunctionComputation”Difficult to compute x from f (x): Use language of “n.u. PPT”and “Function Computation”
May be possible to partially recover x
Lecture 1: One-way Functions
![Page 25: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/25.jpg)
One-way Functions
Intuition: A function f is an one-way function ifEasy to compute f (x) given x : Use language of “FunctionComputation”Difficult to compute x from f (x): Use language of “n.u. PPT”and “Function Computation”
May be possible to partially recover x
Lecture 1: One-way Functions
![Page 26: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/26.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A, there exists afast decaying function ν(·) such that for any input lengthn ∈ N,
Pr[x
$←{0, 1}n; y ← f (x) : f ( A(
1n,
y) ) = y]6
Lecture 1: One-way Functions
![Page 27: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/27.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute.
There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A, there exists afast decaying function ν(·) such that for any input lengthn ∈ N,
Pr[x
$←{0, 1}n; y ← f (x) : f ( A(
1n,
y) ) = y]6
Lecture 1: One-way Functions
![Page 28: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/28.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute.
There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗
, and2 Hard to invert.
For any n.u. PPT adversary A, there exists afast decaying function ν(·) such that for any input lengthn ∈ N,
Pr[x
$←{0, 1}n; y ← f (x) : f ( A(
1n,
y) ) = y]6
Lecture 1: One-way Functions
![Page 29: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/29.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert.
For any n.u. PPT adversary A, there exists afast decaying function ν(·) such that for any input lengthn ∈ N,
Pr[x
$←{0, 1}n; y ← f (x) : f ( A(
1n,
y) ) = y]6
Lecture 1: One-way Functions
![Page 30: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/30.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A,
there exists afast decaying function ν(·) such that
for any input lengthn ∈ N,
Pr[x
$←{0, 1}n; y ← f (x) : f ( A(
1n,
y) ) = y]6
Lecture 1: One-way Functions
![Page 31: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/31.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A,
there exists afast decaying function ν(·) such that
for any input lengthn ∈ N,
Probability of Inversion is small
Pr[x
$←{0, 1}n; y ← f (x) : f ( A(
1n,
y) ) = y]6
Lecture 1: One-way Functions
![Page 32: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/32.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A,
there exists afast decaying function ν(·) such that
for any input lengthn ∈ N,
Pr[
x$←{0, 1}n; y ← f (x) : f ( A(
1n,
y) ) = y
]6 small
Lecture 1: One-way Functions
![Page 33: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/33.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A,
there exists afast decaying function ν(·) such that
for any input lengthn ∈ N,
Pr[x
$←{0, 1}n
; y ← f (x) : f ( A(
1n,
y) ) = y
]6 small
Lecture 1: One-way Functions
![Page 34: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/34.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A,
there exists afast decaying function ν(·) such that
for any input lengthn ∈ N,
Pr[x
$←{0, 1}n; y ← f (x)
: f ( A(
1n,
y) ) = y
]6 small
Lecture 1: One-way Functions
![Page 35: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/35.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A,
there exists afast decaying function ν(·) such that
for any input lengthn ∈ N,
Pr[x
$←{0, 1}n; y ← f (x) : f ( A(
1n,
y) ) = y]6 small
Lecture 1: One-way Functions
![Page 36: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/36.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A, there exists afast decaying function ν(·) such that for any input lengthn ∈ N,
Pr[x
$←{0, 1}n; y ← f (x) : f ( A(
1n,
y) ) = y]6 ν(n)
Lecture 1: One-way Functions
![Page 37: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/37.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A, there exists afast decaying function ν(·) such that for any input lengthn ∈ N,
Pr[x
$←{0, 1}n; y ← f (x) : f ( A(1n, y) ) = y]6 ν(n)
Lecture 1: One-way Functions
![Page 38: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/38.jpg)
Negligible Function
Definition (Negligible Function)
A function ν(n) is negligible if for every c , there exists some n0such that for all n > n0, ν(n) 6 1
nc .
1 Negligible function decays faster than all “inverse-polynomial”functions
2 That is, n−ω(1)
Lecture 1: One-way Functions
![Page 39: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/39.jpg)
Negligible Function
Definition (Negligible Function)
A function ν(n) is negligible if for every c , there exists some n0such that for all n > n0, ν(n) 6 1
nc .
1 Negligible function decays faster than all “inverse-polynomial”functions
2 That is, n−ω(1)
Lecture 1: One-way Functions
![Page 40: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/40.jpg)
Negligible Function
Definition (Negligible Function)
A function ν(n) is negligible if for every c , there exists some n0such that for all n > n0, ν(n) 6 1
nc .
1 Negligible function decays faster than all “inverse-polynomial”functions
2 That is, n−ω(1)
Lecture 1: One-way Functions
![Page 41: Lecture 1: One-way Functions - Purdue University 2015/lectures/… · Algorithm and Running-time Definition(Algorithm) AnalgorithmAisadeterministicTuringmachinewhoseinputand outputarestringsoveralphabet](https://reader034.vdocuments.mx/reader034/viewer/2022050211/5f5d602ead33d8578814f763/html5/thumbnails/41.jpg)
One-way Functions
Definition (Strong One-Way Function)
A function f : {0, 1}∗ → {0, 1}∗ is a strong one-way function if itsatisfies the following two conditions:
1 Easy to compute. There is a PPT C that computes f (x) onall inputs x ∈ {0, 1}∗, and
2 Hard to invert. For any n.u. PPT adversary A, there exists anegligible function ν(·) such that for any input length n ∈ N,
Pr[x
$←{0, 1}n; y ← f (x) : f (A(1n, y), y) = y]6 ν(n)
Lecture 1: One-way Functions