Classification of Symmetric Encryption
현대 대칭 암호는 Stream ciphers와 Block ciphers 두 종류로 분류된다.
Stream cipher
- Vernam cipher처럼 짧은 key를 사용하지만, one-time pad처럼 마치 랜덤해 보이는 key sequence를 사용. 이렇게 만들어진 sequence와 XOR해서 암호화한다.
- key bit 생성하는 알고리즘을 key-stream generator 또는 bit-stream generator라고 부른다.
Block cipher
- 64 bits를 다른 64 bits로 대응시키는 것처럼 대응시키는 단위를 크게 해서, 그것에 대한 통계를 찾기 어렵게 됨. 이렇게 하는 multiple letter encryption을 하는 방식을 일반화하는 게 Block cipher이라고 한다.
Block cipher
Feistel cipher
- Feistel cipher 기법으로 설계된 대표적인 암호 -> The Data Encryption Standard(DES)
- key에 의해서 Block cipher의 동작이 결전된다.
- 동작이라는 것은 본질적으로 Block단위를 다른 Cipher text Block으로 덮어쓰는 역할을 하는것이다.
출처: Cryptography and Network Security: Principles and Practices