Files
NoteNextra-origin/content/CSE4303/CSE4303_L7.md
Zheyuan Wu 8f2e613b36
Some checks failed
Sync from Gitea (main→main, keep workflow) / mirror (push) Has been cancelled
fix errors and update news
2026-02-03 14:59:32 -06:00

66 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# CSE4303 Introduction to Computer Security (Lecture 7)
## Cyptography in Symmetric Systems
### Symmetric systems
Symmetric (shared-key) encryption
- Classical techniques
- Computer-aided techniques
- Formal reasoning
- Realizations:
- Stream ciphers
- Block ciphers
#### Stream ciphers
1. Operate on PT one bit at a time (usually), as a bit "stream"
2. Generate arbitrarily long keystream on demand
Security abstraction:
1. XOR transfers randomness of keystream to randomness of CT regardless of PTs content
2. Security depends on G being “practically” indistinguishable from random string and “practically” unpredictable
3. Idea: shouldnt be able to predict next bit of generator given all bits seen so far
Keystream $G(k)$
- Idea: shouldnt be able to predict next bit of generator given all bits seen so far
- Strategies and challenges: many!
- Idea that doesnt quite work: Linear Feedback Shift Register (LFSR)
- Choice of feedback: by algebra
- Pro: fast, statistically close to random
- Problem: susceptible to cryptanalysis (b/c linear)
- LFSR-based
- Modifications to basic LFSR:
- Use non-linear combo of multiple LFSRs
- Use controlled clocking (e.g. only cycle the LFSR when another LFSR outputs a 1)
- Etc.
- Others: mod arithmetic-based, other algebraic constructions
#### Block ciphers
1. Operate on PT one block at a time
2. Use same key for multiple blocks (with caveats)
3. Chaining modes intertwine successive blocks of CT (or not)
View cipher as a Pseudo-Random Permutation (PRP)
- PRP defined over $(K, X)$:
$$
E: K \times X \to X
$$
such that:
1. There exists an “efficient” deterministic algorithm to evaluate $E(k,x)$.
2. The function $E( k, \cdot )$ is one-to-one.
3. There exists an “efficient” inversion algorithm $D(k,y)$.
- i.e. a PRF that is an invertible 1-to-1 mapping from message space to
message space