Stream Cipher
- one-time pad의 한계를 극복하고 실용적인 부분을 개선하였다.
- Vernam cipher처럼 짧은 key를 사용하지만, one-time pad처럼 마치 랜덤해 보이는 key sequence를 사용.
- 이렇게 만들어진 sequence와 XOR해서 암호화한다.
- key bit 생성하는 알고리즘을 key-stream generator 또는 bit-stream generator라고 부른다
- ex) One-time pad, Vernam,
Block Cipher
- 64 bits(또는 128 bits(를 다른 64 bits로 대응시키는 것처럼 대응시키는 단위를 크게 해서,
- 그것에 대한 통계를 찾기 어렵게 됨.
- 이렇게 하는 multiple letter encryption을 하는 방식을 일반화하는 게 Block cipher이라고 한다.
- ex) polyalphabetic cipher, playfair


64bit 일 경우 (2^64)! 만큼의 조합이 나온다.
Feistel cipher: Data Encryption Startdard (DES)
IBM의 루시퍼 알고리즘을 업그레이드한 알고리즘이다.