🔒 블록암호의 5가지 운영모드
실제로 긴 텍스트를 암호화하기 위해 5가지 운영모드를 설계하고 있다.
∎ ECB (Electronic codebook)
- 5가지 운영모드 중 가장 간단한 모드
- 가능한 모든 키로 만들어지는 총 2^k개의 암호문을 코드북으로 작성한다.
- 평문 길이와 k의 길이가 커지면 코드북이 매우 커진다.
- 같은 평문에 대해서 같은 암호문이 생성되는 단점이 있다.
- ex) 특정 블록의 역할을 알게 된다면 그 내용을 바꿔버릴 수도 있다.
- 같은 블록 안에서는 비트끼리 영향을 끼치지만, 블록끼리는 영향을 받지 않는다.
- 많은 데이터베이스를 병렬 처리로 암호화가 가능하다.
∎ CBC (Cipher block chaining)
- 현재 평문은 이전 블록 암호문과 XOR된다. ➜ 같은 평문이더라도 암호문은 달라진다.
- 암호화, 복호화는 역의 과정이 가능하다.
- ex) 암호문 전송도중 한 비트 C1이 깨진다면? 복호화 과정의 P1과 P2가 영향을 받는다.
∎ CFB (Cipher feedback)
- 평문이나 암호문 블록의 크기보다 키의 크기가 클 때, 전통적인 암호화는 안전하지 않으므로 이 방법을 사용한다.
- 작은 단위의 데이터를 암호화할 때 적절하다.
- 이전 암호문을 쉬프트 레지스터하여 암호화에 이용한다.
- 암호화와 복호화는 블록 암호의 암호화 함수를 이용한다.
- 블록 사이즈가 원래 작기 때문에 덧붙이기가 필요하지 않다.
- 사이즈가 작기 때문에 효율성이 낮다.
- ex) c1이 깨진다면 쉬프트 레지스터에서 c1이 소멸될 때까지 영향을 미친다.
- 결과가 스트림 암호와 같다
∎ OFB (Output feedback)
- 이전 암호문은 다음 평문에 영향을 끼치지 않는다. 해당하는 평문의 한 비트만 영향을 끼칠 뿐이다.
- 작은 단위의 데이터를 암호화할 때 적절하다.
- 마찬가지로 스트림 암호에 사용할 수 있고, 평문이나 암호문에 독립적이기 때문에 동기식 스트림 암호라고 할 수 있다.
∎ CTR (Counter)
- 피드백을 받는 모드는 아니다.
- 스트림 암호로 사용할 수 있고, 카운터를 사용해서 의사난수성을 만들 수 있다.
🔒 스트림암호
작은 단위의 데이터를 암호화할 때 필요하다.
∎ RC4
- 평문 바이트와 키 바이트가 XOR되어 암호문을 생성한다.
- SSL / TLS, 무선 LAN에서 사용
- 256개의 상태 배열 중 랜덤하게 선택하여 키 스트림으로 사용
- 안정성 : 비밀키의 크기가 128bit가 넘으면 안전하다고 알려져 있다.
- 오늘날 RC4를 사용하는 대부분의 프로토콜은 안전하다고 여겨진다.
∎ A5/1
- 휴대전화 통신을 위한 네트워크인 Global System for Mobile Communication에 사용된다.
'보안' 카테고리의 다른 글
비대칭 키 암호 (0) | 2024.08.11 |
---|---|
메시지 무결성과 인증 (0) | 2024.08.11 |
현대 대칭키 암호 (0) | 2024.08.11 |
전통적인 대칭키 암호 (0) | 2024.08.11 |
DES 암호화 (0) | 2024.08.11 |