더북(TheBook)

고전 암호에서는 Substitution만 수행하거나 Permutation만 수행하고는 했습니다. 그런데 섀넌이 혼돈과 확산을 달성하는 것이 비밀 시스템이라고 잘 정리해 주었고, 사람들이 이 둘을 달성하려고 Substitution과 Permutation을 함께 수행하게 되었습니다. 이것이 바로 현대 암호화의 첫걸음입니다.

‘더 안전하게’ 암호화를 하고 싶다면 최대한 혼돈과 확산 상태를 달성해야 합니다. 이것은 Substitution과 Permutation을 여러 번 반복하면 간단합니다. Substitution과 Permutation을 한 번 수행하는 기본 단위를 SP Network(Substitution-Permutation Network, SPN)라고 합니다. 쉽게 말해 한 번 문자를 바꾸고 순서를 섞으면 SPN 1 round입니다.

 

| SPN |

 

| 대표 SPN인 파이스텔 암호화, 16번 반복하면 DES |

암호문은 SPN을 여러 번 반복할수록 안전합니다. 그리고 흔히 말하는 암호 알고리즘은 ‘키 하나를 넣어 SPN을 여러 번 반복’하는 형태입니다.

암호화 관련 교재에는 파이스텔(Feistel) 암호화와 DES가 반드시 나옵니다. 파이스텔 암호화는 대표적인 SPN 방식으로 1970년대 초반 IBM 연구소의 호르스트 파이스텔(Horst Feistel)이 만들었습니다. DES는 파이스텔 암호화 방식의 SPN을 16번 반복해서 수행하는 암호화 알고리즘입니다. 현대 암호화 알고리즘으로 역사적인 의미가 있으니 교재에도 나오는 것이겠지요.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.