CSE442T Introduction to Cryptography (Lecture 3)
All algorithms ,
P.P.T= Probabilistic Polynomial-time Turing Machine.
Chapter 2: Computational Hardness
Turing Machine: Mathematical model for a computer program
A machine that can:
- Read in put
- Read/Write working tape move left/right
- Can change state
Assumptions
Anything can be accomplished by a real computer program can be accomplished by a “sufficiently complicated” Turing Machine (TM).
Polynomial time
We say runs in polynomial time if it uses at most operations bounded by some polynomials. such that
If we can argue that algorithm runs in polynomially-many constant-time operations, then this is true for the T.M.
are polynomials in ,
are polynomial of .
Polynomial-time “efficient” for this course.
Probabilistic
Our algorithm’s have access to random “coin-flips” we can produce poly(n) random bits.
Our adversary will be a P.P.T which is non-uniform (n.u.) (programs description size can grow polynomially in n)
Efficient private key encryption scheme
Definition 3.2 (Efficient private key encryption scheme)
The triple is an efficient private key encryption scheme over the message space and key space if:
- is a randomized p.p.t that outputs
- is a potentially randomized p.p.t that outputs given
- is a deterministic p.p.t that outputs or “null”
Negligible function
is a negligible function if , such that (looks like definition of limits huh) (Definition 27.2)
Idea: for any polynomial, even , in the long run
Example: ,
Non-example:
One-way function
Idea: We are always okay with our chance of failure being negligible.
Foundational concept of cryptography
Goal: making easy and hard.
Definition 27.3 (Strong one-way function)
There is a negligible function such that for any adversary (n.u.p.p.t)
Probability of guessing a message with the same output as the correct message is negligible
and
there is a p.p.t which computes for any .
- Hard to go back from output
- Easy to find output
sees output y, they wan to find some such that .
Example: Suppose is one-to-one, then must find our , , which is negligible.
Why do we allow to get a different ?
Suppose the definition is , then a trivial function would also satisfy the definition.
To be technically fair, , size of input , let them use operations. (we also tells the input size is to )
Do one-way function exists?
Unknown, actually…
But we think so!
We will need to use various assumptions. one that we believe very strongly based on evidence/experience
Example:
are large random primes
Factoring is hard. (without knowing )