4. Cryptography: stream ciphers Flashcards
What is a symmetric cipher comprised of?
- encryption algorithm
- decryption algorithm
What is Kerckhoffs’s principle?
A cryptosystem should be secure if everything but the key is public knowledge
What is realistic computational power?
2^80
What is a ciphertext only attack?
Attacker has access to some ciphertexts
What is a known plaintext attack?
Attacker has some plaintext/ciphertext pairs
What is a chosen plaintext attack?
Attacker can trick user to encrypt messages of his choice
What is a chosen ciphertext attack?
Attacker can trick user to decrypt messages of his choice
How do you make brute-force attack on keys unfeasible?
- Set of keys should be sufficiently large
- Keys should be sampled uniformly at random
What is the key for one-time pad?
Random string of bits as long as the message
How do you encrypt with one-time pad?
XOR the key and plaintext
How do you decrypt with one-time pad?
XOR the key and ciphertext
What is the limitations of OTP?
- Key length
- Requires true randomness
- Perfect secrecy doesn’t capture all attacks
What is perfect secrecy?
Ciphertext conveys no information about the content of the plaintext
What is the idea of stream ciphers?
Make OTP practical using a pseudo-random key (from seed key)
What does PRNG stand for?
pseudo-random number generator