Semantic Security
A small history tour
- How do we formulate the notion that nothing is learned about the plaintext from the ciphertext, as we said 'nothing is learned'?
- If we try to say that an adversary who receives a ciphertext cannot output any information about the plaintext, then what happens if the adversary already has information about the plaintext? Adv may know it is the English text.
- The simulation-based formulation of security enables us to exactly formalize this.
- We say that an encryption scheme is secure if the only information derived (or output by the adversary) is that which is based on a priori knowledge.
- If the adversary receiving no ciphertext is able to output the same information as the adversary receiving the ciphertext, then this is indeed the case.
Definition
- allows the length of the plaintext to depend on the security parameter
- allows for arbitrary distributions over plaintexts (as long as the plaintexts sampled are of polynomial length).
- takes into account an arbitrary auxiliary information function
of the plaintext that may be leaked to the adversary through other means (e.g., because the same message is used for some other purpose as well) - The adversary aims to learn some function
of the plaintext, from the ciphertext, and the provided auxiliary information. - According to the definition, it should be possible to learn the same information from the auxiliary information alone (and from the length of the plaintext), and without the ciphertext
Definition: A private-key encryption scheme
- if for every non-uniform probabilistic-polynomial time algorithm
- there exists a non-uniform probabilistic-polynomial time algorithm
such that for - every probability ensemble
with , - every pair of polynomially-bounded functions
, - every positive polynomial
and all sufficiently large :
- every probability ensemble
(The probability in the above terms is taken over
Observe that the adversary
Algorithm
A simulation view of the above definition
stay in an ideal world where anything it learns is from auxiliary information and plaintext length only.
Simulator :
Upon input
runs the key generation algorithm in order to receive (note that indeed needs to be given in order to do this). computes as an encryption of “garbage” (note that indeed needs to be given in order to do this). runs and outputs whatever outputs.
from BS23
Attack Game 2.1 (semantic security)
For a given cipher
Experiment :
- The adversary computes
, of the same length, and sends them to the challenger. - The challenger computes
, , and sends to the adversary. - The adversary outputs a bit
.
For, let be the event that outputs 1 in Experiment . We define 's semantic security advantage with respect to as
Attack Game 2.4 (semantic security: bit-guessing version)\
For a given cipher
- The adversary computes
, of the same length, and sends them to the challenger. - The challenger computes
, , , and sends to the adversary. - The adversary outputs a bit
.
We say thatwins the game if .
Definition
A cipher
What we are interested in is how much better than random guessing an adversary can do.
If
Theorem 2.10. For every cipher
Proof.
be the probability that the adversary outputs 1 in Experiment i of Attack Game 2.1
Consider Attack Game 2.4. All events and probabilities are with respect to this game.
If we condition on the event that
Therefore, if
By a similar argument, we see that
So we have
Therefore,
That proves the theorem.
Reference
- BS23 Chap2.2
- Lindell 2016 How To Simulate it