정보 시스템 보안의 3가지 기본 목표 (Security Goals)
- 기밀성 (Confidentiality)
- 무결성(Intergrity)
- 가용성 (Availablity)
안전하게 데이터 주고 받는 보안 통신을 하려면?
(security Services)
- 데이터 기밀성(Data Confidentiality) - 인가받은 사용자만 메세지를 읽을 수 있다
- 데이터 무결성(Data Integrity) - 메세지가 수정되지 않았음을 확인할 수 있다
- 데이터 출처 인증(Origin Authentication) - 메세지의 출처와 내용이 수정되지 않았음을 확인할 수 있다
- 데이터 부인방지(Data Non-Repudiation) - 송신자가 메세지를 보낸 사실, 그 내용을 부정할 수 없다
- 접근 통제(Access Control) - 승인된 사용자만 데이터/단말기에 접근해야 한다
암호기술(Cryptography)
- 통신 당사자 간 메세지 전달 과정을 보호하고 컴퓨터에 저장된 메세지를 보호하기 위한 수학적 기술
암호기술의 용어
- Cryptology(암호학) - 비밀코드를 만들거나 해독하는 학문
- Cryptography(암호기술) - 비밀코드를 만드는 것
- Cryptanalysis(암호분석) - 비밀코드를 해독하는 것
- Crypto(암호) - 가장 포괄적인 암호
암호기술의 분류
1. 일방향 암호기술
- 해시함수
- Modification Detection Code(MDC) -> 무결성
- Message Authentication Code -> 무결성 & 인증
2. 양방향 암호기술
- 대칭키 암호기술
- 스트림 암호 기술 -> 기밀성 ex)RC4
- 블록 암호기술 -> 기밀성, 인증 ex) AES,SEED,HEIGHT - 비대칭키 암호기술
- 공개키 암호기술 -> 기밀성, 인증, 부인방지 ex) DH,RSA,EIGamal,ECC
더보기
케르크호프스의 원리(Kerckhoffs' Principle)
-실용적인 암호 설계의 6 원칙
- 시스템은 수학적으로는 아니더라도 실질적으로 해독할 수 없어야 함
- 비밀을 요구하지 않아야하며, 적의 손에 넘어가도 문제 없어야 함
- 키를 전달하고 기억할 수 있어야 하며, 통신원이 마음대로 키를 변경하거나 수정할 수 있어야 함
- 전신통신에 적용가능해야 함 (디지털화)
- 휴대 ㄱㄴ해야함, 여러 사람이 취급하거나 조작할 필요가 없어야 한다
- 시스템은 사용하기 쉬워야 하며, 사용자가 긴 규칙 목록을 알고 준수하도록 요구해서는 안 된다.
암호 알고리즘과 키 길이
<용어 정리>
- 안전성 수준
- 암호시스템이 어느정도의 보안강도를 만족해야 하는지를 의미 - 완전한 탐색
- 모든 가능한 키를 찾아내는 것 - N비트 키 : 2^N개
- 이 중에서 키를 찾기 위해서는 평균적으로 2^(N-1) 번의 시도 필요 - 보안 강도
- 암호 알고리즘이나 시스템의 암호키/해시함수의 취약성을 찾아내는데 소요되는 작업량을 수치화한 것
예) 112비트 : 2^112번의 계산을 해야 암호키 / 암호 알고리즘의 취약성을 알아낼 수 있음을 의미
'개발 과 보안 > 암호학의 모든것' 카테고리의 다른 글
차분분석(Differential Cryptanalysis) (1) | 2023.10.24 |
---|---|
Shannon의 합성암호 개념 (1) | 2023.10.19 |
현대 대칭키 암호_구성요소[ 순환 이동 & Swap ] (0) | 2023.10.19 |
현대 대칭키 암호_구성요소1.[ P-box & S-box ] (1) | 2023.10.19 |
현대 대칭키 암호_ 구성요소2. [ xor 연산 ] (0) | 2023.10.18 |