120 likes | 136 Views
This lecture discusses perfect and computational secrecy, the properties of the one-time pad, and the minimum requirements for security against various types of attacks in encryption schemes. Learn about the importance of randomized encryption in ensuring security.
E N D
CMSC 414Computer and Network SecurityLecture 3 Jonathan Katz
HW1 • Will be posted shortly • Work in teams • Both students should contribute to all problems • JCE fair game for the exam
Defining secrecy (take 1) • Even an adversary running for an unbounded amount of time learns nothing about the message from the ciphertext • Perfect secrecy • Formally, for all distributions over the message space, all m, and all c: Pr[M=m | C=c] = Pr[M=m]
One-time pad and proof of security
Properties of the one-time pad? • Achieves perfect secrecy • No eavesdropper (no matter how powerful) can determine any information whatsoever about the plaintext • (Essentially) useless in practice… • Long key length • Can only be used once (hence the name!) • Insecure against known-plaintext attacks • These are inherent limitations of perfect secrecy
Computational secrecy • We can overcome the limitations of perfect secrecy by (slightly) relaxing the definition • Instead of requiring total secrecy against unbounded adversaries, require secrecy against time-bounded adversaries except with some small probability • E.g., secrecy for 100 years, except with probability 2-80 • How to define formally?
running for 100 years A simpler characterization • Perfect secrecy is equivalent to the following, simpler definition: • Given a ciphertext C which is known to be an encryption of either M0 or M1, no adversary can guess correctly which message was encrypted with probability better than ½ • Computational security! • Is this definition too strong? Why not? + 2-80
The take-home message • Weakening the definition slightly allows us to construct much more efficient schemes! • Strictly speaking, no longer 100% absolutely guaranteed to be secure • Security of encryption now depends on security of building blocks (which are analyzed extensively, and are assumed to be secure) • Given enough time, the scheme can be broken
Attacks • So far, we have been considering only passive eavesdropping of a single ciphertext • AKA, ciphertext-only attack • In practice, stronger attacks often need to be considered • Known plaintext • Chosen plaintext • Chosen ciphertext (includes chosen plaintext attacks)
Minimum requirements • The minimum level of security nowadays is security against chosen-plaintext attacks • But security against chosen-ciphertext attacks (or even stronger) is often necessary for certain applications • Make sure you are aware of this when deploying encryption! • We will revisit this after discussing message authentication
Randomized encryption • Can a deterministic encryption scheme be secure against chosen-plaintext attacks? • To be secure against chosen-plaintext attack, encryption must be randomized • Moral: always use randomized encryption!