Lecture 14
Recap
one-way functions PRG expand by any polynomial amount
s.t. is efficiently computable, , and is pseudorandom
Back to the experiment we did long time ago:
Group 1 | Group 2 | |
---|---|---|
or | 3 | 16 |
4 of 1's | 42 | 56 |
balanced | too often | usual |
consecutive repeats | 0 | 4 |
So Group 1 is human, Group 2 is computer.
New material
Computationally secure encryption
Recall with perfect security,
for all and .
is single message secure if and for all , , distinguishes and with at most negligble probability.
By the prediction lemma, ( is a ppt, you can also name it as )
and the above equation is for perfect secrecy.
Construction of single message secure cryptosystem
cryptosystem with shorter keys. Mimic OTP(one time pad) with shorter keys with pseudorandom randomness.
, , is a PRG.
: ; output .
: ; output .
: output .
Proof of security:
Let be two messages, and is a n.u.p.p.t distinguisher.
Suppose is distinguished for by and by .
Strategy: Move to OTP, then flip message.
By hybrid argument, 2 neighboring messages are indistinguishable.
However, and are indistinguishable since and are indistinguishable.
and are indistinguishable by perfect secrecy of OTP.
and are indistinguishable since and are indistinguishable.
Which leads to a contradiction.
Multi-message secure encryption
is multi-message secure if and for all , and .
are list of messages in .
distinguishes and with at most negligble probability.
THIS IS NOT MULTI-MESSAGE SECURE.
We can take and the distinguisher can easily distinguish if some message was sent twice.
What we need is that the distinguisher cannot distinguish if some message was sent twice. To achieve multi-message security, we need our encryption function to use randomness (or change states) for each message, otherwise will return the same on consecutive messages.
Our fix is, if we can agree on a random function satisfied that: for each input , is chosen uniformly at random.
Choose random function .
let ; output .
Given , output .
Idea: Adversary sees but has no idea about . (we choose all outputs at random)
If we could do this, this is MMS (multi-message secure).
Proof:
Suppose , are sent to the encryption oracle.
Suppose the encryption are distinguished by with probability .
Strategy: move to OTP with hybrid argument.
Suppose we choose a random function
and
.
By hybrid argument, and are indistinguishable if are different, these are the same.
are chosen uniformly and independently at random.
only possible problem is for some , and .
And the probability that at least one pair are equal
which is negligible.
Unfortunately, we cannot do this in practice.
How many random functions are there?
The length of description of is .
For each , there are possible values for .
So the total number of random functions is .