2016년 1월 25일 월요일

section.02 암호학 개요

1.암호학의 기본 개념
1)암호학(cryptology)의 정의
①암호:약속된 당사자, 집단에서만 암호문에 내포된 내용을 알 수 있게 하는 문서.
②암호학(cryptology):평문을 암호문으로 만들고 특정 비밀키를 가지고 있는 사람만이 다시 평문으로 복원시킬 수 있는 암호기술(cryptography)과 이를 제 3자가 해독하는 방법을 분석하는 함호해독(cryptanalysis)에 관해 연구하는 학문.

2)암호학에서 사용하는 이름
  • 앨리스(Alice)와 (Bob). 보통 앨리스가 밥에게 메시지를 보내려 한다고 가정한다. 이 이름은 로널드 라이베스트가 RSA 암호에 대한 1978년의 논문에서 처음으로 사용했다. (1977년에 만든 RSA에 대한 기술문서에는 이런 이름이 나오지 않는다.)
  • 캐롤(Carol)은 통신 과정의 세 번째 당사자를 뜻한다. 알파벳 순서대로 A, B, C로 사용자 이름을 지은 것이다. 보통 네 번째 당사자는 보통 데이브(Dave)라고 한다.
  • 이브(Eve)는 '엿듣는 사람'이라는 뜻의 'eavesdropper'에서 온 것이며, 소극적 공격자를 뜻한다. 앨리스와 밥 사이의 통신을 엿듣기는 하지만, 통신 내용을 바꿔치기 하는 등의 적극적 공격은 하지 않는다. 반드시 사람을 의미하지는 않는다. 통신기기에 부착된 도청용 기계일수도 있고 메일 소프느웨어나 메일서버에 설치된 프로그램일 수도 있다.
  • 아이작(Isaac)은 보통 ISP를 뜻한다.
  • 이반(Ivan)은 발행자(issuer)를 뜻한다.
  • 저스틴(Justin)은 법원(justice system)을 뜻한다.
  • 말로리(Mallory)는 '악의적인'이라는 뜻의 'malicious'에서 온 것으로 적극적 공격자를 뜻한다. Mallet이라고 하기도 한다. 이브와 달리 말로리는 앨리스와 밥 사이의 통신 내용을 고치거나, 원하는 메시지로 바꿔치기 하거나, 이전 메시지를 재전송하는 등 적극적으로 통신을 방해한다. 말로리가 방해하지 못하도록 하는 것은 이브가 방해하지 못하도록 하는 것보다 훨씬 어렵다.
  • 마틸다(Matilda)는 전자상거래등에서 상인(merchant)을 뜻한다.
  • 오스카(Oscar)는 적(opponent)을 뜻하며, 보통 말로리와 같은 구실을 한다.
  • (Pat)은 '페기'를 참고.
  • 페기(Peggy)는 증명자(prover)이고 빅터(Victor)는 검증자(verifier)이다. 서로 메시지를 주고받아 원하는 동작이 제대로 일어났음을 보인다. 영지식 증명에서 흔히 사용한다. 가끔 텔레비전 쇼 《Wheel of Fortune》의 진행자 이름을 따서 팻(Pat)과 바나(Vanna)라고 하기도 한다.
  • 플로드(Plod)는 경찰(police)의 머리글자 P를 딴 것이며 법집행 기관을 뜻한다.
  • 스티브(Steve)는 흔히 심층 암호(steganography)를 뜻한다.
  • 트루디(Trudy)는 침입자(intruder)를 뜻하며 말로리와 비슷하다.
  • 트렌트(Trent)는 신뢰할 수 있는 중재자(trusted arbitrator)를 뜻하며, 흔히 중립적인 제3자를 뜻한다.
  • 바나(Vanna)는 페기 참조.
  • 빅터(Victor)는 페기 참조.
  • 월터(Walter)는 앨리스와 밥 사이의 통신을 감시하는 간수(warden)를 뜻한다
  • (Zoe)는 보통 암호 프로토콜의 맨 마지막 당사자를 가리킨다. (알파벳 순서로 맨 끝이므로)
대화형 증명 체계에서 사용하는 이름도 있다.
  • 아서(Arthur)와 멀린(Merlin): IPSs에서 증명자는 무한한 계산능력을 가지고 있으므로 아서왕 전설에 나오는 마법사 멀린의 이름을 따서 멀린이라고 부른다. 이 경우 검증자는 아서라고 부른다. 이 이름에서 딴 복잡도 종류 MA와 AM도 있다.
3)송신자, 수신자, 도청자
4)암호화와 복호화 
①암호화(encrypt) 하기 전의 메시지를 평문(plaintext),암호화 한 후의 메시지를 암호문(ciphertext)이라 하고 암호(cryptography)라는 기술을 사용해 기밀성(confidentiality,또를 비밀성)을 유지.
5)암호화와 복호화의 기호적표현
①평문은 M이나P, 암호문은 C, 알고리즘은 E, 복호알고리즘은 D, 키는 K로 나타냄
②C=Ek(P), C=E(K,P):평문P에 키K를 이용해 암호화(E)하여 암호문(C)를 얻음.
③P=Dk(C), P=D(K,C):암호문(C)에 키(K)를 이용해 복호화(D)하여 평문(P)응 얻음.
6)암호 알고리즘과 키의 분리
①암호알고리즘와 키를 조합을 잘 보면 암호알고리즘 안에는 변경 가능한 부분이 반드시 포함되어있다는것을 알 수 있음. 이 변경 가능한 부분이 키에 해당된다.
②한번 개발은 암호 알고리즘을 반복해서 쓰길 원함
③암호 알고리즘과 키를 구분지어 생각함으로써 암호알고리즘을 반복해서 사용하고싶지만 반복하면 위험하다는 곤란한 상황을 없애고자함.

2.암호기법의 분류
1)치환암호와 전치암호
①치환암호(대치암호, substitution cipher)
  • 비트,문자,문자의블록을 다른비트, 문자블록으로 대체함.
  • 평문에서 사용하는 문자의 집합과 암호문에서 사용하는 집합이 다를 수 있다는 것임.
  • 평문의 문자를 다른 문자로 교환하는 규칙이다. 이떄 교환규칙이 1:1대응이 아니어도 상관없다.
②전치암호(Transposition cipher)
  • 원문을 다른문서로 대체하지않지만 원문을 여기저기 움직이게한다. 비트, 문자, 문자블록이 원래 의미를 감추도록 재배열함.
  • 평문에서 사용하는 문자의집합과 암호문에서 사용하는 문자의집합이 동일하다.
  • 문자집합 내부에서 자리를 바꾸는 규칙이고 평문에서 사용된 문자와 암호문에 사용된 문자가 1:1대응규칙을 갖는다.
2)블록암호와 스트림암호
①블록암호(block cipher)
  • 어느 특정 비트수의 집합을 한번에 처리하는 암호알고리즘의 총칭.
  • 평문을 일정길이 블록으로 잘라내고 암호화한다. 일반적으로 8비트(ASCII), 16비트(UNICODE)에 비례한다.
  • round를 사용하고 반복적으로 암호화 과정을 수행해 암호화 강도를 높일 수 있다.
②스트림암호(stream cipher)
  • 데이터 흐름을 순차적으로 처리해가는 암호 알고리즘. 평문과 키 스트림을 XOR한다.
  • 블록암호화보다 빠르지만 암호화강도가 약함. 주로 실시간성이 중요한 음성, 영상, 스트리밍전송, 무선암호화방식에 사용.
  • 데이터 흐름을 순차적으로 처리하기때문에 내부상태르 가지고있다.(불록암호화는 불록단위로 처리하므로 내부상태가 필요없다.)
구분
스트림암호
블록암호
장점
빠른 암호화속도, 에러 전파현성없음.
높은확산, 기밀성, 해시함수등 다양
단점
낮은확산, 부당한 삽입과 변형에대한 민감성
느린암호화, 에러전달
사례
LFSR, MUX generator
DES, IDEA, SEED, RC5, AES
암호화단위
비트
블록
주요대상
음성,오디오/비디오 스트리밍
일반데이터전송,스토리지저장
3)위치에따른 암호화의 구분
①링크암호화(Link encryption)
  • 각각의 취약한 통신링크는 양쪽 끝단에서 암호화 장치가 구비되어 있다. 따라서 모든 통신링크상의 모든 트래픽은 안전하다. 대형네트워크에서 많은 암호화장치를 요구하지만 높은수준의 보안을 제공한다.
  • 단점은 메시지가 매번 프레임 스위치에 들어갈 때마다 복호화 되어야 한다는 것이다. 프레임 경로를 지정하기위해 프레임헤더안에있는주소를 읽어야하기 때문.
  • 물리, 링크계층에서 암호화가 이루어짐.
②종단간 암호화(end-to-end encryption)
  • 출발지호스트 또는 터미널에서 데이터를 암호화함. 암호화된 형태로 네트워크를 지나 목적지 터미널 또는 호스트로 변경되지 않은채 전송된다.
  • 목적지는 출발지와 키를 공유하기때문에 데이터를 복호화할수있음. 이방법은 네트워크 링크 또는 스위치상에서의 공격에 대응하여 전송을 안전하게 하려는 것으로보이나 여전히 약한 부분이 있음.
  • 어플리케이션 내에서 암호화가 이루어짐.
구분
링크암호화
종단간 암호화
특징
-ISP나 통신업자가 암호화
-헤더포함 모든데이터암호화
-해당노드가공격당하면 전체가위험
유저가 사용된 알고리즘 통제불가
-사용자가 암호화
-헤더(러우팅정보)는 암호화 안함
-중간노드공격 영향없음
-알고리즘에 대한 통제는 유저가함
장점
-운영이 간단
-각 링크당 한 세트의 키만 필요
-트래픽 분석을 어렵게함.
온라인으로 암호화
-사용자인증 등 높은수순의 보안서비스 제공 가능
-중간노드에서도 데이터가 암호문으로 존재함.
단점
-중간노드에서데이터 평문
-다양한 보안서비스를 제공하는데 한계
-모든 노드가 암호화 장비를 갖추어야 하므로 네트워크가커지면 비용이 크다.
-트래픽분석이 취약
-오프라인으로 암호화
4)하드웨어와 소프트웨어 암호시스템 
①하드웨어 암호 시스템 
  • 하드웨어로 실현하기위해 컴퓨터와 통신기기 내부버스와 외부인터페이스에 전용 암호처리용 하드웨어를 접속해 데이터암호화.
  • 키를 암호장치에서 추출하지않고 암호화를 실행하는것이 가능해 키누출의 위험성 최소화.
  • 전용하드웨어로 암호화함으로써 컴퓨터 cpu에 부담을 주지 않고 빠른암호화가 가능, 보안성확보 용이.
②소프트웨어 암호 시스템
  • 암호처리용 SW를 사용한 데이터 암호화.
  • 저렴한 비용으로 실현가능. 허용범위 내에서 적당한 안정성과 처리속도를 얻는것이 가능하다면 상당히 효과적임.
  • 개인용 컴퓨터의 CPU퍼리가 무척 빨라져 처리속도에 문제되지 않기때문에 주류를 이루고 있음 
3.주요 암호기술들에 대한 개괄
1)대칭키 암호와 비 대칭키 암호
①대칭키방식은 암호화할때의 키와 복호화할때의 키가 같은방식. <->비대칭키
②비대칭키 암호사용을 위해서는 수신자,송신자도 한 쌍의 키를 가지고있어야함 
2)하이브리드 암호 시스팀
①대칭키암호와 공개키암호의 장점을 조합한 암호방식.
3)일방향 해시함수
①정보나 소프트웨어를 공개적으로 제공할 때에 변경되지 않았음을 확신할 수 있도록 프로그램 제공자가 프로그램을 공개함과 동시에 그 프로그램의 해시값을 공개하는 경우가있음
②해시값은 일방향 해시함수를 사용해 계산한 값임.
4)메시지 인증코드
①메시지가 생각했던 통신상대로부터 온 것임을 확인하기위해 사용.
②메시지가 전송도중 변경되었는지, 생각했던 상대로부터 왔는지 확인가능.
③무결성과 인증을 제공.
5)전자서명
①오프라인에서 하는 도장,서명,날인의 개념을 온라인에 적용함.
②거짓행세(spoofing),변경, 부인이라는 위협을 방지하는 기술이 전자서명.
③무결성을 확인하고, 인증과 부인방지를 하기위함.
6)의사난수 생성기
①난수열을 생성하는 알고리즘.
②난수는 키 생성이라는 매우 중요한 역할 담당.
7)암호학자의 도구상자
①대칭키암호, 공개키암호, 일방향 해시함수, 메시지인증코드, 전자서명, 의사난수생성기를 합해서 암호학자의 도구상자라고함.
보안위협
위협받는 특성
방지를 위한 암호기술
도청
기밀성
암호화,
메시지변경
무결성
암호화,일방향 해시함수,메시지인증코드,디지털서명
위장
인증
암호화, 메시지인증코드,디지털서명
부인
부인방지
디지털서명
8)기타 암호 기술들
①스테가노그래피
  • 최초의 암호 유형은 고대 그리스에서 사용한 방식으로 암호보다는 스테가노드래피에 가까움
  • 암호화가 '비밀을 기록'을 의미한다면, 스테가노그래피는 '감추어진기록'을 의미함.암호화는 메시지 내용을 은폐한다면 스테가노그래피는 다른 무언가로 감추어 메시지 자체를 은폐함
  • 일반적으로 사진파일에 인간이 인지하지 못할 정도의 미세한 부분에 변화를 주어 정보를 입력하는 방식이 많이 사용된다.
  • ......전에 그 동영상 유포할때 사진파일-속성-설명에 마그넷주소 넣어서 유포하던애 있었는데 그런방식인듯?
②워터마크
  • 지폐제조과정에서 물에 젖은상태로 그림을 인쇄하고 말린후 빛에 비추어봤을 때 그림이 보이도록하는 기술에서 유래
  • 원본의 내용을 왜곡하지 않는 범위 내에서 혹은 사용자가 인식하지 못하도록 정보를 디지털 콘텐츠에  삽입하는 기술을 말함.
  • 변조유무확인, 소유권주장, 사용제한/불법복제 방지등에 쓰여짐
  • 투명워터마킹:미디어내에있어 밖으로 드러나지 않는 워터마킹
  • 가시워터마킹:알아볼수있는 상태. 
  • 강한 워터마킹:공격을 받아도 쉽게 파괴되거나 손상을 압지않음<->약한워터마킹
③핑거프린팅
  • 디지털콘텐츠를 구매할 때 구매자의 정보를 삽입해 불법 배포 발견시 최초 배포자를 추적할 수 있게 하는 기술.
  • 판매되는 콘텐츠마다 구매자의 정보가 들어있으므로 불법적으로 재배포된콘텐츠 내엣 핑거프린팅된 정보를 추출해 구매자를 식별하고 법적조치를 취할 수 있음.
항목
스테가노그래피
워터마크
핑거프링팅
은닉정보
메시지
판매자정보
구매자정보
관심
은닉메시지검출
저작권표시
구매자추적
트래킹
불가
가능
가능
불법예방효과
저작권증명효과
공격강인성
상대적약함
상대적강함
공모공격에강함

4.암호분석의 분류
1)Kerckhoff의 원리
①암호/복호알고리즘과 비밀키를 공개하지 않는다면, 암호는 더욱 안전해지지만 권장하지 않음.Kerckhoff의 원리에 따라 Eve는 암호/복호알고리즘을 알고 있다고 가정함.참고.
②공격에 대한 암호의 안정성은 키의 비밀성에만 기반을 두어야함. -> 키를 추측하는게 어려워서 암호/복호 알고리즘을 비공개로 할 핀요가 없어야한다.
2)암호해독(Cyptanalysis)의 개념 
①암호해독은 시스템이 얼마나 취약한지 측정하는데 필요. 더 안전한 커드를 생성하는데 도움. 
3)암호분석의 분류(참고)
①암호문 단독공격(ciphertext only attack; COA)
  • 암호문 단독공격은 Eve가 단지 어떤 암호문을 얻어 대응되는 평문과 키를 찾는 것.이떄 Eve는 알고리즘을 알고있고, 암호문을 가로챌 수 있다고 가정.
  • Eve는 이 공격을 위해 암호문만을 팔요로하기 때문에 암호문 단독 공격은 가장 쉽게 적용될 수 있음. 공격자가 메시지를 복호화하는것을 막기위해 암호는 이런종류 공격에 안전해야한다.
②기지 평문 공격(known plaintext attack; KPA, 알려진 평문 공격)
  • Eve는 해독하려는 암호문 외에 추가로 여러개의 평문/암호문쌍을 얻는다.(공격자에게 미리 주어진다)
  • Alice가 Bob에게 보낸 메시지를 나중에 공개한다면 Eve는 공개된 평문/암호문쌍을 이용해 Alice가 Bob에게 보낸느 다음 메시지를 알아낼 수 있음.
③선택 평문 공격(Chosen Plaintext Attack; CPA)
  • 알려진 평문공격과 유사하지만 공격자에게 주어지는 평문, 암호문쌍은 공격자가 선택한값.
  • Eve가 Alice의 컴퓨터에 접속할 수 있다면 이 공격을 적용할 수 있음. 
4)선택 암호문 공격(Chosen Ciphertext Attack; CCA)
  • Eve가 어떤 암호문을 선택하고 그에 대응되는 평문을 선택한다는 점을 제외하면, 선택 평문공격과 유사하다. 이 공격은 Eve가 Bob의 컴퓨터에 접속할 수 있다면 가능함.
공격유형
암호 해독자가 알고있는 정보
암호문만 알고있는 공격
-암호 알고리즘
-해독해야 할 암호문
알려진 평문 공격
-암호 알고리즘
-해독해야 할 암호문
-비밀키로 만들어진 한 쌍 혹은 여러쌍의 평문/암호문
선택 평문 공격
-암호 알고리즘
-해독해야할 암호문
-해독자가 선택한 평문 메시지와 그 평문을 암호화한 암호문
선택 암호문 공격
-암호 알고리즘
-해독해야할 암호문
-해독자가 선택한 암호문과 그 암호문을 복호화한 평문
선택문 공격
-암호 알고리즘
-해독해야할 암호문
-해독자가 선택한 평문 메시지와 그 평문을 암호화한 암호문
-해독자가 선택한 암호문과 그 암호문을 복호화한 평문

5.암호 알고리즘의 안정성 평가
1)안전성개념 
①암호 해독비용이 암호화된 정보의 가치 초과
②암호 해독시간이 정보의 유효 기간 초과
2)암호제품 평가체계
①대표적으로 CommonCriteria(CC)기반의 정보보호제품평가.
②암호 모듈에 대한 평가로 미국의 NIST가 수행하는 Criptographic Module Validation Program(CMVP)
3)암호기술의 평가
①평가종류
  • 암호 알고리즘 평가:일반적으로 알고맂므자체의 이론적안정성만 평가.
  • 암호 모듈평가:암호알고리즘을 이용해 제공되는 암호서비스(기밀성 기능모듈,무결성기능모듈)에 대한 안정셩평가. 
  • 정보보호제품평가:침입차단시스템,침입탐지시스템등에 대한 평가
  • 응용시스템 평가
②평가과정
  • 암호알고리즘에대한 이론적 안전성평가 -> 검증된 암호모듈에 탑제한 정보보호제품의 안정성평가 -> 각각의 제품으로 구성된 응용시스템의 안전성평가 순으로 응용시스템의 안전셩평가 수행하는것이 좋음
③암호 모듈의 안전성 평가(CMVP)
  • 암호 기술의 구현적합성평가
  • 암호키 운용 및 관리
  • 물리적 보안

댓글 없음:

댓글 쓰기