본문 바로가기

정보보안기사

암호학

1. 암호학 기본 개념

  : 정보보호의 목표 중 "기밀성" 유지에 꼭 필요.

1) 암호화, 복호화의 기호적 표현

  평문 :  M or P

  암호문 : C

  암호 알고리즘 : E

  복호 알고리즘 : D

  키 : K

  • C = Ek(P)   or C= E(K, P)
  • P = Dk(C)    or P = D(K, C)

 

  Key :  데이터를 암호화 및 복호화 하는 알고리즘에 사용되는 핵심 값

  Key space : 암호화 알고리즘에서 사용하는 키값의 크기

 

2) 암호 알고리즘과 키의 분리

  ① 암호 알고리즘 안에는 변경가능한 부분이 반드시 포함되어 있음. 

      --> 이 부분이 키에 해당함.

  ② 만약 암호화 할때마다 새로운 암호 알고리즘 필요하다면?? 안씀

    암호 알고리즘과 키를 분리함.

 

3) 암호화 보안 상식

  ① 비밀 암호 알고리즘을 사용하지 말 것.

  ② 약한 암호는 암호화 하지 않는것보다 위험

  ③ 어떤 암호라도 언젠가는 해독된다.

  ④ 암호는 보안의 아주 작은 부분이다.

     : 최근, 사회공학 공격이 자주 행해짐. 피싱, 트로이목마, 키로거 도 사회공학 공격방법 중 하나임.

       한 시스템의 강도는, 가장 약한링크의 강도와 같기 때문에, 모든 링크 부위가 골고루 강해야함.

       가장 약한 링크는 암호가 아닌 사람이라는것을 명심.

 

2. 암호기법 분류

1) 치환 암호와 전치 암호

  ① 치환 암호

      - 비트, 문자 또는 문자의 블록을 다른 비트, 문자 또는 블록으로 대체

 

  ② 전치 암호

      - 원문을 다른 문서로 대체하지는 않지만, 원문을 여기저기 움직이게 한다. 

      - 자리를 바꾸는 규칙.

2) 블록암호와 스트림 암호

  ③ 블록 암호

      - 블록 암호는 어느 특정 비트 수의 "집합" 을 한 번에 처리하는 암호 알고리즘을 총칭한다.

      - 이 "집합" 을 블록 이라고 하며, 블록의 비트 수를 블록 길이라고 한다.

      - 평문을 일정 크기의 블록으로 잘라낸 후, 암호화 알고리즘을 적용하여 암호화

        일반적으로 블록의 크기는 8비트(ASCII) 또는 16비트(Unicode)에 비례한다.

        스트림 암호화 와는 다르게, ROUND를 사용하고, 반복적으로 암호화 과정을 수행해 암호화 강도를 높인다.

   ④ 스트림 암호

      - 한번이 1비트, 혹은 1바이트의 데이터 흐름(스트림)을 순차적으로 처리해가는 암호 알고리즘의 총칭.

        암호화 방식은 평문과 키 스트림을 XOR하여 생성

      - 블록암호는 블록단위로 처리가 완료되므로, 어디까지 암호화가 진행되었는가 하는 내부 상태를 가질 필요가 없는 

        반면, 스트림 암호는 데이터의 흐름을 순차적으로 처리하기 때문에 내부 상태를 가지고 있다.

      - 스트림 암호는 군사 및 외교용으로 널리 사용되고 있으며, 일부 상용으로도 활발히 사용되고 있다. 또한 스트림

        암호는 이동 통신 환경에서의 구현이 용이하고, 안정성을 수학적으로 엄밀하게 분석할수 있어,

       이동통신등의 무선 데이터 보호에 적합하다.

 

구분 스트림 암호 블록 암호
장점 암호화 속도 빠름, 에러 전파 현상 없음 높은 확산, 기밀성, 해시함수 등 다양
단점 낮은 확산 느린 암호화, 에러 전달
사례 LFSR(Linear feedback shift register)
Mux generator
DES, IDEA, SEED, RC5, AES
암호화 단위 bit block
주요 대상 음성, 오디오/비디오 스트리밍 일반 데이터 전송, storage 저장

3) 위치에 따른 암호화의 구분

  ① 링크 암호화

      - 모든 정보는 암호화 되며,

        패킷은 라우터나 다른 중간에 있는 장비가 이 패킷을 다음에 어디로 보내야 하는지 알아야 하기 때문에

        각 홉(Hop)에서 해독 되어야 한다.

      - 라우터는 패킷의 헤더부분을 해독하고, 헤더 내의 라우팅, 주소 정보를 일고나서

        다시 헤더부분을 암호화 하고 받을 주소방향으로 보내야 한다.

      - 링크 암호화는, Data link, Physical link 계층에서 일어난다. 

        하드웨어 암호화 장치들은, 물리적 계층과의 인터페이스를 가지고 그것을 통과하는 모든 데이터를 암호화한다.

  ② 종단 간 암호화

      - 종단간 암호화 방식에서는 Header와 trailer 가 암호화 되지 않기 때문에, 

        패킷을 각 홉에서 해독, 암호화 할 필요 없음.  

        source 와 destination 사이에 있는 장비들은 단지 필요한 라우팅 정보만 읽고

        packet 을 그 진행 방향으로 통과시키게 된다.

     - 종단 간 암호화는, 보통 소스 컴퓨터의 사용자에 의해 시작

       이는 사용자가 어떤 메시지를 암호화할것인지 아닌지를 결정할수 있는 보다 나은 유연성을 제공.

     - 종단간 암호화는 앱 계층에서 암호화가 이루어진다.

        

구분 링크 암호화 종단 간 암호화
특징 ISP 나 통신업자가 암호화
헤더 포함 모든 데이터 암호화
유저가 알고리즘 통제 불가
사용자가 암호화
헤터(라우팅정보) 암호화 X
알고리즘에 대한 통제 유저가 함
장점 User-transparent 하게 암호화, 운영간단
트래픽분석 어렵게함
온라인으로 암호화
사용자 인증 등, 높은 수준의 보안 서비스 제공 가능
중간 노드에서도 데이터가 암호문으로 존재
단점 중간 노드에서 데이터 평문으로 노출
다양한 보안서비스 제공 한계
모든 노드가 암호화 장비를 갖춰야함
네트워크가 커지면, 비용증가
트래픽 분석 취약
오프라인으로 암호화

 

 

 

'정보보안기사' 카테고리의 다른 글

OSI 보안 구조, 기본 보안 용어  (0) 2020.10.11
Window NTFS MFT  (0) 2019.06.25
IDS 보안 탐지기술 - 오용탐지, 이상탐지  (0) 2019.06.25
07. 비대칭키 암호  (0) 2019.01.13
06. Block cipher 사용 방식  (0) 2019.01.12