SECTION 02 암호학 개요
1. 암호학의 기본 개념
■ 암호학(Cryptology)의 정의
○약속된 당사자 또는 집단에서만 내용을 알 수 있도록 하는 것.
-예) A와 B간에 “안녕하세요?”라는 메시지를 전송할 때, “안녕하세요?”를 평문이라 하고, 이 평문을 A와 B외에 다른 사람들은 알 수 없도록 “2df823nlfsdfue” 이라고 암호문으로 변환하는 것
○송신자(Sender) : 메시지를 보내는 사람
○수신자(Receiver) : 메시지를 수신하는 사람
○도청자(Eavesdropper) : 메시지를 변경없이 중간에서 보기만 하는 사람(전화 도청을 생각함)
○맬로리(Mallory) : 메시지를 중간에 변경하는 사람. “안녕하세요” 라고 보냈는데 받은 사람은 “꺼져” 라고 받게 되는 경우
■ 암호화와 복호화
○ 암호화 : 평문(암호화 하기 전) “안녕하세요”를 암호문(암호화 후) “2df823nlfsdfue”으로 변경하는 것
○ 복호화 : 암호문(복호화 하기 전) “2df823nlfsdfue”을 다시 평문(복호화 후) “안녕하세요”로 변경하는 것
○ 키 : 암복호화를 할 때 사용되는 비밀의 값
■ 암호와 기본 상식
○ 비밀 암호 알고리즘을 사용하지 말 것
○ 암호 알고리즘은 공개되어 이미 안전성을 검증 받은 것을 상용해야 함
○ 약한 암호는 암호화 하지 않는 것 보다 위험
○ 어떤 암호라도 언젠가는 해독 된다. (4자리 비밀번호는 0000~9999까지 넣으면 풀림- 시간문제)
○ 암호는 보안의 아주 작은 부분
2. 암호기법의 분류
데이터 변경 방식에 따른 분류 | 암호화 단위에 따른 분류 | 위치에 따른 구분 |
치환암호와 전치 암호 | 블록암호와 스트림 암호 | 링크 암호화와 종단간(E2E) 암호화 |
■치환암호(대치암호, Substitution Cipher)
○ 교환하는 규칙 (예: A → H, B → C 로 변경), 일대일 대응이 아니여도 상관 없음.
■전치 암호(Transposition Cipher)
○ 자리를 바꾸는 규칙 (예: HELLO à LEHOL로 자리변경), 일대일 대응 규칙을 갖음
■블록 암호(Block Cipher)
○평문을 일정한 크기의 블록(집합)으로 잘라낸 후 암호 알고리즘을 적용한 것
-예) 평문 “hello my name is hanna”를 [hello my ][ name is][ hanna] 라는 블록으로 잘라내고 각 블록마다 암호화 [acqqc kd ][ imke vz][ amiim] 로 변경
■스트림 암호(Stream Cipher)
○한번에 1비트 혹은 1바이트씩 순차적으로 처리해가는 암호 알고리즘.
○스트림 암호는 데이터의 흐름을 순차적으로 처기 하기 때문에 내부적으로 어다끼자 암호화 해는지 내부상태를 가지고 있어야 함.
○동기식(synchronous) 스트림 암호 : 스트림 암호의 난수열을 암호화할 입력값과 독립적으로 생성하는 경우
○비동기식(asynchronous), 자기 동기(self-synchronizing) 스트림 암호 : 입력값이 난수열 생성에 영향을 끼치는 경우
스트림 암호 | 블록 암호 | |
장점 | 암호화 속도가 빠름,에러 전파 현상 적음 | 높은 확산, 기밀성, 해시함수 등 다양 |
단점 | 낮은 확산 | 느린 속도, 에러 전달 |
사례 | LFSR, MUX Generator | DES, IDEA, SEED, RC5, AES |
주요대상 | 음성, 오디오 비디오 스트리밍 | 일반 데이터 전송, 스토리지 저장 |
■ 링크 암호화(Link Encryption)
○ Hop 간에 암복호화 하는 것으로 링크 또는 물리적 계층에서 이뤄짐
○ 데이터 전송 중간에 라우터가 패킷의 헤더부분을 해독한 후, 진행방향을 파악한 후 재 암호화 하여 전송
■ 종단간 암호화(End-to End Encryption)
○ 애플리케이션 계층에서 송신자가 암호화 하여 데이터를 전송하면 중간 노트에서는 이를 해독할 필요 없이 수신자에게 전달
3. 주요 암호기술에 대한 개괄
○ 대칭키 암호화와 비대칭키 암호화 : Section 03과 Section 04에서 다룸
○ 하이브리드 암호화 : Section 06(전자서명) 파트에서 다룰 듯
○ 일방향 해시 함수 : Section 05에서…
○ 메시지 인증 코드 : Section 05.03에서…
○ 전자서명 : Section 06에서
○ 의사난수(Random Number Generator) 생성기
-난수(정의된 범위 내에서 무작위로 추출된 수)를 생성하기 위한 역할
-의사난수, 유사난수(pseudo random number)는 난수를 흉내내기 위해 알고리즘으로 생성되는 값.
-유사난수는 알고리즘 상태에 의해 값이 정해지기 때문에 완벽한 난수성을 가질 수 없고 일정 주기에 패턴이 발생함.
-양자난수(Quantum Random Number Generator) 는 양자의 특성을 이용해 예측이 불가능하고 패턴이 없는 '순수 난수'
■ 암호학자의 도구 상자
보안위협 | 위협 특성 | 방지하기 위한 암호 기술 | ||||
대칭키 암호화 | 공개키 암호화 | 일방향 해시 | 메시지 인증코드 | 디지털 서명 | ||
도청 | 기밀성 | O | O | |||
메시지 변경 | 무결성 | O | O | O | O | O |
위장 | 인증 | O | O | O | ||
부인 | 부인방지 | O |
4. 디지털 저작권 관리
■스테가노그래피, 워터마크, 핑거프린팅
스테가노그래피 | 워터마크 | 핑거프린팅 | |
개념 | 사진, 음악, 문서 등에 실제 메시지를 감추는 것 | 디지털 콘텐츠에 저작권 정보를 삽입 | 디지털 콘텐츠를 구매할 때 구매자 정보를 삽입 |
은닉정보 | 메시지 | 판매자(저작권) 정보 | 구매자 추적정보 |
관심 | 은닉메시지를 검출 | 저작권 표시 (내 콘텐츠 임을 증명) |
구매자 추척 (불법 배포시 최초 유포자를 추적) |
트래킹 | 불가 | 가능 | 가능 |
불법예방 효과 | 하 | 중 | 상 |
저작권증명 효과 | 하 | 중 | 상 |
공격 강인성 | 상대적 약함 | 상대적 강함 | 상대적 강함 |
■디지털 저작권 관리(DRM, Digital Rights, Management)
○목적 : 디지털 미디어의 불법 또는 비인가된 사용을 제한하기 위함
○개념 : 디지털 미디어의 생명주기(창작, 추가적인 다른사람의 기여, 접근, 배포, 사용) 동안 발생하는 권한 관리, 과금, 유통 단계를 관리하는 기술
○적용기술 : 불법 유통과 복제 방지, 허가된 사용자만 사용할 수 있도록 기술적 통제, 데이터 암호화과 키 관리 기술, 워터마킹, 인쇄물 제어 등이 활용
○DRM 구성요소
-콘텐츠(Content) : 보호되어야할 정보의 단위
-메타데이터(Metadata) : 콘텐츠 생명주이 범위 내에서 관리되어야할 각종 데이터 구조 및 정보
ㆍ작권자 정보, 미디어 정보, 유통 정보 등을 포함
-패키저(Packager) : DRM 콘텐츠를 메타데이터와 함께 배포 가능한 단위(Secure Container)로 패키징 하는 모듈로 메타데이터와 콘텐츠를 암호화하고 전자서명하는 모듈로 포함
-보안 컨테이너(Secure Container) : DRM의 보호 범위 안에서 유통되는 컨텐츠의 배포 단위
ㆍ식별자, 암호화된 콘텐츠, 메타데이터, 전자서명 등의 정보로 구성
ㆍ허가되지 않은 사용자로부터 콘텐츠를 보호하고, 위/변조 유협을 차단하는 역할
-DRM 제어기(DRM Controllor) : 배포된 콘텐츠를 사용하고자 하는 사용자의 PC나 Mobile 단말 등 플랫폼에서 라이선스에 명시된 범위 내에서 이용할 수 있도록 권한을 통제한다.
ㆍ라이선스 관리
ㆍ외부시스템과 메시지 통신관리
ㆍ메타데이터 추출 및 해석
ㆍ콘텐츠 복호화 및 랜더링 애플리케이션으로 복호화 데이터 바인딩
ㆍ사용권한 및 조건에 따른 애플리케이션 기능 통제
-클리어링하우스(Clearing House) : 콘텐츠에 대한 권한을 배포하고 관리하며, 모든 사용자의 콘텐츠 사용 기록을 책임진다. 또한 콘텐츠 제공자와 배급자에게 수수료를 지불하는 거래를 취급하기도 함.
[출처 : http://slidesplayer.org/slide/11329681/]5. 암호 분석(암호 해독)
■암호 해독(Cryptanalysis) 개요
○인가된 사용자가 아닌 제3자가 암호문으로부터 평문을 찾으려는 시도
○암호 해독은 현재 사용되고 있는 암호 방식(알고리즘)이 무엇인지 알고 있다는 전제하에 암호해독을 시도 한 것으로 간주하며 이를 케르히호프의 원리(Kerckhoff’s principle)이라 한다.
○케르히호프의 원리 : 암호의 안전성은 암호 알고리즘의 비밀을 지키는데 의존되어서는 안되고, 키의 비밀을 지키는데 의존되어야 한다.
■암호문 단독 공격(COA, Ciphertext Only Attack)
○공격자가 어떤 암호문을 얻어서 평문과 키를 찾는 것
○통계적 성질, 문장의 특성 등을 추정하여 햬독하는 방법
○예) 영어에서 가장많이 쓰는 스펠링을 “e”라고 할 때, 암호문에서 가장많이 나온 스펠링을을 평문 “e”로 변경하고, 이후 스펠링도 통계적으로 변경해서 대입해 보는 방법
■기지(알려진) 평문 공격(KPA, Known Plaintext Attack)
○공격자가 암호문가 추가로 일정량의 평문에 대한 암호문을 얻은 상태에서 공격하는 방법
○예) 메시지의 처음은 항상 hello로 시작하고, 끝은 항상 Good bye로 끝난다는 사실과 이에 대한 암호문을 알았을 때, 이를 이용하여 빈도 분석, 역공학, 무차별 대입 등을 수행하여 전체를 분석하는 방법
○2차 세계대전에서 독일의 암호를 이런식으로 풀었다고 함
■선택 평문 공격(CPA, Chosen Plaintext Attack)
○공격자가 암호기에 접근할 수 있어서 공격자가 원하는 평문을 선택하여 이에 대한 암호문을 얻는 공격
○공격자가 선택해서 평문/암호문을 얻을 수 있다는 차이일 뿐 알려진 평문 공격과 유사함.
○공격자가 암호화를 한 송신자의 PC에 접근 할 수 있다면 이 공격을 적용할 수 있다.
■선택 암호문 공격(CCA, Chosen Ciphertext Attack)
○공격자가 복호기에 접근할 수 있어서 공격자가 원하는 암호문을 선택하여 이제 대한 평문을 얻는 공격
○접근하는 곳이 암호기에서 복호기로 변해서 생긴 차이일 뿐 선택 평문 공격과 유사
○선택 평문 공격과 반대로 공격자는 암호문을 받은 수신자의 PC에 접근 할 수 있다면 이 공격 적용 가능
6. 암호 알고리즘의 안전성 평가
■암호 알로리즘의 안전성 개념
○암호시스템을 공격하기 위해 필요한 계산량이 매우 크거나 너무 오래 걸려서 현실적으로 공격할 수 없는 경우
○암호의 강도는 알고리즘 구조의 복잡성과 비밀 값에 의해 증명됨
○무한한 계산 능력이 있어도 공격할 수 없는 경우
■암호기술 평가
○암호 알고리즘(FIPS 197) < 암호모듈(FIPS 140-2) < 정보보호제품(Comment Criteria) < 웅용프로그램
■암호 모듈 안전성 평가(CMVP)
○1995년 7월 NIST와 캐나다 주정부(CSE)가 공동으로 개발한 암호 모듈 안전성 검증을 위한 프로그램
○요구사항
-암호기술 구현의 적합성 평가
-암호키 운영 및 관리 평가
-물리적 보안
'기타 > 공부하기' 카테고리의 다른 글
[정보보안기사] SECTION 07 키, 난수 (0) | 2018.03.06 |
---|---|
[정보보안기사] SECTION 05 해시함수와 응용 (0) | 2018.03.06 |
[정보보안기사] SECTION 04 비대칭키 암호 (0) | 2018.03.06 |
[정보보안기사] SECTION 03 대칭키 암호 (0) | 2018.03.06 |
[정보보안기사] Section01. 정보보호 관리의 개념 (0) | 2018.03.02 |