728x90
728x170
65. 대칭키(비밀키) 암호화
1. 대칭키 암호화 개요
- 대칭키 암호화 기법
- 암호화할 때 사용하는 암호화 키와 복호화할 때 사용하는 암호화 키가 동일한 암호화 기법
- 암호화 키와 복호화 키가 동일한 암호화 방식
- 양방향 암호화 기법
- 대칭키(Symmetric Key)는 다음과 같이 불리기도 함.
- 세션키(Session Key)
- IPSEC, SSL 등과 관련이 있음.
- 송신자와 수신자가 연결하고 있는 동안에만 사용하는 암호화 키
- 송신자와 수신자가 같은 암호화 키를 가지고 있음.
- 다른 말로 임시 키 라고도 함.
- 연결이 종료되면, 세션 키는 사라짐.
- 공유키(Shared Key)
- 관용키(Conventional Key)
- 세션키(Session Key)
- 암호문을 송신하거나 수신하는 사용자는 사전에 암호화 키가 교환되어야 함.
- 키 교환을 어떻게 할 것인지에 대한 문제가 발생함.
- 장점
- 작은 비트의 암호화 키를 사용하여 빠르게 암호화하거나 복호화 할 수 있음.
- 암호화할 때 사용하는 암호화 키와 복호화할 때 사용하는 암호화 키가 동일한 암호화 기법
- 대칭키 암호화 기법의 특징
- 기밀성 을 제공하나, 무결성, 인증, 부인 방지는 보장할 수 없음.
- 암호화 복호화 속도가 빠름.
- 같은 키를 사용하므로 안전한 키 전달 및 공유 방법이 필요함.
- 대용량 데이터(Data) 암호화에 적합함.
- 대칭키 암호화의 종류
구분 | 스트림 암호(Stream Cipher) | 블록 암호(Block Cipher) |
개념 | 하나의 비트, 또는 바이트 단위로 암호화 | 여러 개의 비트를 묶은 블록을 단위로 암호화 |
방법 | 평문을 XOR로 1비트 단위로 암호화 | 블록 단위로 치환/전치를 반복하여 암호화 |
장점 | 실시간 암호, 복호화, 블록 암호화 보다 빠름. | 대용량의 평문 암호화 |
종류 | RC4, SEAL, OTP | DES, 3DES, AES, IDEA, Blowfish, SEED |
2. 대칭키 암호화 종류
(1) DES(Data Encryption Standard)
- IBM에서 개발한 대칭키 암호화 알고리즘
- 1977년 미군 표준국(NIST)에서 표준으로 채택된 알고리즘
- 20년간 미국 표준 및 국제 표준으로 활용되었음.
DES의 특징
- 64비트 블록 단위 암호화를 수행하며, 56비트 키를 사용함.
- 키 길이가 56비트로 작다는 문제점이 있음.
- 64비트의 평문과 키를 입력 받아 64비트 암호문을 생성함.
- 56비트에 8비트가 늘어난 이유
- 7비트마다 Check Bit를 넣었기 때문
- 결론적으로 (7+1)*8 = 64 비트가 됨.
- 치환 암호(Substitution Cipher)와 전치 암호(Transposition Cipher)를 혼합한 혼합 암호(Product Cipher) 를 사용함.
- 내부에서 XOR, 자리 바꿈, 순환 이동, 치환 등을 사용함.
- S-BOX를 제외하고 나머지 연산은 모두 선형임.
- S-BOX를 제외하고 나머지는 역으로 취할 수 있으므로 DES의 안정성에서 S-BOX가 가장 중요한 부분임.
- Feistel 구조
DES 암호화 및 복호화의 혼합 암호화(Product Cipher)
암호화 과정 | 복호화 과정 |
- DES는 64비트의 블록을 입력 받아서 56비트의 키(실제로는 패리티 비트를 넣어 64비트)로 암호화해서 64비트의 블록을 출력함.
- 입력 받은 64비트를 초기 순열을 이용해 64비트 전체를 재배열 함.
- 초기 순열에는 전치할 순서가 들어있음.
- 예) 1번 -> 45번, 34번 -> 4번 등의 순서가 지정됨.
- 치환되어 나온 값을 키를 이용해 XOR 연산과 Feistel 연산이라고 하는 과정을 거쳐서 변환함.
- 역 순열을 이용해 다시 재배열 함.
- 이것이 1라운드이며, 16번 반복함. (총 16라운드 수행)
- 현재의 암호화는 대칭키 암호화를 위해서 128비트 이상 의 길이를 갖는 키를 사용함.
(2) AES(Advanced Encryption Standard)
- 미국 연방 표준 알고리즘
- DES를 대신하는 차세대 표준 암호화 알고리즘
- 미국 상무성 산하 NIST(National Institute of Standards and Technology) 표준 알고리즘
- 블록 길이
- 128 비트
- 192 비트
- 256 비트
AES의 특징
- 암호화 및 복호화가 빠름.
- 공격에 대해 안전함.
- 간단한 하드웨어 및 소프트웨어 구성의 편의성이 좋음.
- 이론적으로 키의 크기는 제한이 없음.
(3) SEED
- KISA와 ETRI에서 개발하고 있는 TTA와 ISO/IEC에서 국제 표준으로 제정한 128비트 키 블록 단위로 메시지를 처리하는 대칭키 블록 암/복호화 알고리즘
SEED의 특징
- 키 길이
- 128비트 고정 키 사용
- 블록 암호화
- 128비트 길이 블록 단위 암호화
- 16라운드
- 암호화 방식
- DES 같은 Feistel
- 전치 치환
- XOR 사용
- DES 같은 Feistel
- 운영 모드
- 일반적 블록 암호화 운영 모드
- ECB
- CBC
- CRB
- OFB
- 일반적 블록 암호화 운영 모드
SEED의 세부 내용
- 평문 블록화
- 128 비트 평문을 64비트씩 Lo, Ro 블록으로 나눔.
- F 함수
- 64비트 Feistel 형태로 구성 (16라운드)
- 입력 : 64비트 블록 + 64비트 라운드 키
- 출력 : 64비트 블록 출력
- 암호문
- 암호화된 64비트 블록을 조합하여 128비트 암호문 출력
(3) 대칭키 암호화 기법
구분 | 블록 크기 | 키 크기 | Round | 주요 내용 |
DES | 64비트 | 56비트 | 16 | 키 길이가 작아 해독에 용이 |
3DES | 64비트 | 168비트 | 48 | DES의 Round 수를 늘려 보안성 강화 |
AES | 128비트 | 128/192/256비트 | 10/12/14 | 미국 표준 암호화 알고리즘 |
IDEA | 64비트 | 128비트 | 8 | 암호화 강도가 DES보다 강하고 2배 빠름. |
SEED | 128비트 | 128비트 | 16 | 국내에서 개발, ISO/IEC, IEFT 표준 |
(4) 대표적인 대칭키 암호화 기법
구분 | SEED | 3DES | AES |
특징 | 안정성, 빠른 암호화 속도 | DES 호환성, 느린 암호화 속도 | 안정성, 효율성, 구현 용이성 |
키 길이 | 128비트 | 168비트 | 128비트, 192비트, 256비트 |
Block | 128비트(16 라운드) | 64비트(16x3 라운드) | 3 Layer 기반 라운드 구조 |
개발기관 | KISA, ETRI(국제 표준) | IBM(레거시 시스템 표준) | Rijndea(미국 NIST 표준) |
내용 출처 : 이기적 네트워크관리사 1·2급 필기 (임호진, 황성하 공저, 영진닷컴)
728x90
그리드형(광고전용)
'Certificate > Network Manager' 카테고리의 다른 글
69. 전자 우편 보안 (0) | 2021.05.03 |
---|---|
68. 전자상거래 보안 (0) | 2021.05.03 |
67. 웹 서버 보안 (0) | 2021.05.03 |
66. 비대칭키(공개키) 암호화 (0) | 2021.05.02 |
64. 암호화 개요 (0) | 2021.05.01 |
63. 정보 보호 공격 유형과 보호 대책 (0) | 2021.05.01 |
62. 정보 보호 목표 (0) | 2021.05.01 |
61. 게이트웨이(Gateway) (0) | 2021.05.01 |