암호 기술
암호 기술의 기본 모델
- 송신자가 평문을 키를 이용하여 암호화
- 암호화된 암호문을 수신자에게 전송
- 수신자는 암호문을 키를 이용하여 복호화
암호문이 전송되는 채널은 오픈되어 있으며,
암호화/복호화에 사용되는 기술도 오픈되어 있음.
공격자가 유일하게 모르는 것은 키Key이며,
이것은 암호 시스템에서 최우선적으로 지켜야 할 부분이다.
암호 복호화와 해독
암호문을 누가 평문으로 바꾸는지에 따라 용어가 달라짐.
- 복호화
- 정당한 수신자가 암호문을 평문으로 바꾸는 것
- 암호 해독
- 수신자 이외의 사람이 암호문을 평문으로 복원하려고 시도하는 것
- 암호 해독자
- 암호 해독을 하는 사람
- 암호 연구가
- 나쁜 의도를 가진 사람
- 암호 해독을 하는 사람
대칭 암호와 비대칭 암호
키의 종류에 따라 암호 종류가 달라짐.
- 대칭 암호Symmetric Cryptography
- 암호화, 복호화 키가 동일한 암호 알고리즘
- DES, AES 등
- 비대칭 암호Asymmetric Cryptography
- 암호화, 복호화 키가 동일하지 않은 암호 알고리즘
- RSA 등
DES (대칭 암호)
DES (Data Encryption Standard)
- 1977년 미국의 연방 정보처리 표준 규격으로 채택
- 64비트 평문 -> 64비트 암호문
- 키의 길이는 56비트
Triple DES (대칭 암호)
DES를 대신했던 블록 암호
- 기술 발전으로 인해 DES의 전사 공격 시간이 짧아짐
- 이에 대응하기 위해 Triple DES roqkf
- DES 암호화 -> DES 복호화 -> DES 암호화 순으로 암호화가 이루어짐
AES (대칭 암호)
DES를 대신할 새로운 표준 알고리즘 (Advanced Encryption Standard)
- 오디션을 통해 2000년에 Rijndael 알고리즘이 선정됨
- 블록 길이는 128비트
- 키의 길이는 128비트 / 256비트 / 32비트 등 다양
블록 암호
평문의 길이가 암호 알고리즘 입력 길이보다 긴 경우, 블록 단위로 잘라서 암호화
5가지의 블록 암호 모드
- ECB
- CBC
- CFB
- OFB
- CTR
대칭 키 암호 방식의 문제점과 공개 키 암호
불특정 다수를 대상으로 대칭 키 암호 시스템을 구축하기에는 한계가 존재
- 쌍방이 동일한 키를 갖고 있어야 함 -> 어떻게? (키 분배 문제)
- 서버가 관리해야 할 키의 개수가 증가함
이러한 문제 해결을 위해 공개 키 암호(비대칭 암호) 등장
공개 키 암호 개요
공개 키 암호의 특성
- 암호화 키와 복호화 키가 같지 않다.
- 암호화 키를 가지고 있는 사람은 누구나 암호화를 할 수 있다. 단, 복호화는 할 수 없다.
- 복호화를 할 수 있는 사람은 복호화 키를 가진 사람 뿐이다.
공개 키 암호 알고리즘에서는 두 개의 키 쌍을 가짐
(Private Key - 비밀 키 / 복호화 키, Public Key - 공개 키 / 암호화 키)
이 둘은 수학적인 관계로 만들어지므로 별개로 만들 수 없음
- 공개 키Public Key
- 일반인에게 공개해도 됨
- 도청당해도 됨
- 전광판에 광고해도 됨
- 길 가다 지나가는 사람에게 자랑해도 됨
- 개인 키Private Key
- 본인만 알고 있어야 함
- 다른 사람에게 노출하면 안됨
- 통신 상대에게 자랑하면 안됨
RSA (비대칭 암호)
소인수분해의 어려움에 근거하여 개발된 암호 알고리즘
알고리즘 작성 방식은 대략적으로만 작성할 것이며,
추후 추가할 수도 있고 안 할 수도 있습니다.
- 키 생성
- p, q 선택 (이 둘은 소수Prime number여야 함)
- n = p * q
- 정수 e 선택
- d 계산 (mod 이용)
- 공개 키와 개인 키 도출
- 암호화와 복호화
- 공개 키: e, n
- 개인 키: d
- 평문: M
- 암호화: C = M^e mod n
- 복호화: M = C^d mod n = (M^e) mod n = (M^ed) mod n
대칭 키 암호 속도보다 느림
하이브리드 암호 시스템
대칭 키 암호와 비대칭 키의 장점을 결합
- 대칭 키 암호
- 암호화와 복호화의 속도가 빠름
- 키 배송 문제를 해결해야 함
- 공개 키 암호
- 키가 분리되어 있어 키 배송 문제가 없음
- 암호화와 복호화의 속도가 느림
의사난수 생성기로 세션 키를 생성한 뒤, 세션 키로 대칭 키 알고리즘으로 암호화
세션 키를 공개 키로 암호화
암호화된 세션 키 + 암호문 합쳐 수신자에게 전달
수신자는 암호화된 세션 키와 암호문 분리
개인 키로 세션 키 복호화
세션 키로 암호문 복호화
자세한 내용은 아래 링크 참조
https://blog.spareone.io/128
'네트워크보안' 카테고리의 다른 글
| [네트워크보안] 인증 기법 (0) | 2025.10.23 |
|---|---|
| [네트워크보안] 안전한 프로토콜 (0) | 2025.10.22 |
| [네트워크보안] 전자 서명 (0) | 2025.10.22 |
| [네트워크보안] 해시 함수와 메시지 인증 코드(MAC) (0) | 2025.10.22 |
| [네트워크보안] 정보보호 개요 (0) | 2025.10.22 |
댓글