Lecture 4 - Computational Secrecy
Lecture 4 - Computational Secrecy
CSE-411 Cryptography
Instructor : Dr. Ahmed Gomaa
Fall, 2024
Cryptography
Lecture 4
Computational Secrecy
Recommended reading: Chapter 2
Defining secure encryption
Crypto definitions (generally)
• Security guarantee/goal
– What we want to achieve (or what we want to prevent the attacker
from achieving)
• Threat model
– What (real-world) capabilities the attacker is assumed to have
Perfect secrecy
• Several limitations
– The key is as long as the message
– Only secure if each key is used to encrypt a
single message
• (Trivially broken by a known-plaintext attack)
Parties must share keys of (total) length equal
to the (total) length of all the messages they
might ever send
Using the same key twice?
• Say c1 = k m1
c2 = k m2
• Is this significant?
• No longer perfectly secret!
• m1 m2 reveals where m1, m2 differ
• Frequency analysis
• Exploiting characteristics of ASCII…
• Letters all begin with 01…
• The space character begins
with 00…
• XOR of two letters gives 00…
• XOR of letter and space
gives 01…
• Drawbacks
– Key as long the message
– Only secure if each key is used to encrypt once
– Trivially broken by a known-plaintext attack
• Proof, continued
– Take the uniform distribution on M
– Take any ciphertext c
– Consider the set M(c) = { Deck(c) }kK
• These are the only possible messages that could yield the ciphertext c
– |M(c)| ≤ |K| < |M|, so there is some m that is not in M(c)
• Pr[M=m | C=c] = 0 Pr[M=m]
Where do we stand?
• Two approaches
– Concrete security
– Asymptotic security
Computational indistinguishability
(concrete)
• (t, )-indistinguishability:
– Security may fail with probability ≤
– Restrict attention to attackers running in time ≤ t
• Or, t CPU cycles
Computational indistinguishability
(concrete version)
• Computational indistinguishability:
– Security may fail with probability negligible in n
– Restrict attention to attackers running in time (at most) polynomial in
n
Definitions
• Somewhat arbitrary
• “Efficient” = “probabilistic polynomial-time (PPT)” borrowed
from complexity theory
• Convenient closure properties
– Poly * poly = poly
• A PPT algorithm making calls to PPT subroutines is PPT
– Poly * negligible = negligible
• Poly-many calls to subroutines that fail with negligible probability fail with
negligible probability overall
(Re)defining encryption
Pr[PrivKA,(n) = 1] ≤ ½ + (n)
Example 1
• Experiment PrivKeav
A, Ɛ
1 . A chooses two messages m 0 , m 1 ∈ M
• Definition: An encryption scheme (Gen, Enc, Dec) over message space n is perfectly secret if
for every adversary A it holds that
1
Pr[PrivKeav
A, Ɛ = 1] =
2
– notice that is must work for every A
• This definition is equivalent to our original definition of perfect secrecy
Thank You