네트워크 보안을 강화시키는 방법으로 암호 기법, 디지털 서명, 웹 보안 프로토콜, 방화벽, 프록시 서버 등을 알아봄

주요 용어

  • 암호화 :
    누구나 읽을 수 있는 평문을 제 3자가 읽을 수 없는 형태인 암호문으로 변환하는 과정
  • 복호화 :
    암호문을 평문으로 변화하는 과정
  • 대치암호 :
    평문의 각 글자를 다른 글자로 대치하여 암호문을 만드는 방식
  • 전치암호 :
    평문의 글자를 재배열하는 방식으로 문자의 위치를 바꿔서 암호문을 만드는 방식
  • 스트림 암호화 :
    평문과 같은 길이의 키 스트림을 생성하여 평문과 키를 비트 단위로 합하여 암호문을 만드는 방식
  • 블록 암호화 :
    평문을 일정한 길이의 단위(block)로 나눈 뒤, 각 블록 단위로 암호화 과정을 수행하여 암호문을 얻는 방법
  • 대칭 키 암호화 :
    암호화에서 사용하는 암호화와 키와 복호화에 사용하는 복호화 키가 서로 같음 암호화 방식
  • 공개 키 암호화 :
    암호화에 사용하는 암호화 키와 복호화에 사용하는 복호화 키가 서로 다른 암호화 방식.
    암호화 키는 일반인에게 공개하는 공개키이고 복호화 키는 개인이 공개하지 않는 비밀 키임
  • 공개 키 기반 구조 (Public Key Infrastructure; PKI) :
    일반 사람들이 공개 키 암호화 기법을 믿고 사용할 수 있도록 공개 키 인증서를 발행하고
    그에 대한 접근을 제공하는 인증서 관리 기반 구조
  • 방화벽 (firewall) :
    네트워크와 네트워크 사이에서 패킷을 검사하여 조건에 맞는 패킷만을 통과시키는 소프트웨어나 하드웨어를 총칭
  • 프록시 서버(proxy server) :
    내부 네트워크에 접속되어 있는 클라이언트를 대신하여 외부 네트워크에 접속하여 클라이언트가 요청한 통신 서비스를 제공하는 서버

암호 기법

암호 기법의 개요

  • 암호화 (Encryption) :
    누구나 읽을 수 있는 평문(plaintext)을 제 3자가 읽을 수 없는 형태인 암호문(chipertext)으로 변환하는 과정
  • 복호화 (decryption) :
    암호문을 평문으로 변환하는 과정
  • 키 (key) :
    암호화 키, 복호화 키
    과정 : 평문 -> 암호화(암호화 키) -> 암호문 -> 복호화(복호화 키) -> 평문

암호화의 주요 기능

  • 전달 과정의 기밀성 보장
  • 정보의 무결성 보장
  • 송신자와 수신자의 정당성 보장
  • 네트워크 보안의 5가지 요구사항
    • 데이터의 기밀성 보장
    • 데이터의 무결성 보장
    • 정당성 보장 : 실체 인증, 데이터 인증, 부인 방지

암호화 기술

암호화 기술 - 분류

  • 동작 형태 :
    대치 암호, 전치 암호, 혼합 암호, 대수화 암호
  • 평문의 처리 방법 :
    스트림 암호화, 블록 암호화
  • 암호화 키 :
    대칭 키 암호화, 공개 키 암호화

동작 형태

  • 대치 암호 (치환 암호; substitution cipher)
    • 메세지의 각 글자를 다른 글자로 대치하는 방식
    • 예 : Caesar 암호
  • 전치 암호 (전위 암호; transposition cipher)
    • 평문의 글자를 재배열하는 방식 (문자의 위치를 바꿔 암호문을 작성)
  • 혼합 암호 (product cipher)
    • 대치와 전치 두 방법 모두 사용하는 방식
    • 예 : LUCIFER, ENIGMA, ABFGVX, DES 등
  • 대수적 암호 (algebraic cipher)
    • 각 글자를 숫자로 바꾸어 수학적으로 처리하는 방식
    • 예 : 순환잉여검사 (CRC), Vernam 암호 방식

평문 처리 방법

  • 스트림 암호화 (stream cipher [state cipher] encryption)
    • 평문과 같은 길이의 키 스트림을 생성, 평문과 키를 비트 단위로 합하여 암호문을 얻는 방법
    • 평문을 한 번에 한 비트씩, radom하게 생성되는 키 스트림과 XOR 연산으로 합하여 전송함
  • 블록 암호화 (block cipher [state cipher] encryption)
    • 평문을 일정한 길이의 단위(block)으로 나눈 뒤, 각 블록 단위로 암호화 과정을 수행하여 암호문을 얻는 방법
    • 예 : LUCIFER, DES
    • 비교

암호화 키

  • 대칭 키 암호화 (symmetric key encryption)
    • 암호화 키 = 복호화 키
    • 유사어 :
      • 공통 키 (common key) 암호화
      • 비밀 키 (secret key) 암호화
      • 관용 암호화 (conventional encryption)
    • 장점 :
      • 구현이 용이
      • 실행 속도가 빠름
    • 단점 :
      • 키 분배 및 관리가 어려움
      • 인증과 송수신 부인 방지가 보장되지 않음
    • 에 : RC2, RC4, RC5, IDEA, DES, Triple DES, AES
    • DES (Data Encryption Standard)
      • 대칭 키를 사용하는 블록 암호화 방식
      • IBM에서 개발한 LUCIFER의 확장된 형태,
      • 평문의 한 블록(64 비트)을 공통 키(54 비트)를 이용, 전치, 대치, XOR 연산 등을 16회 반복하여 암호문 한 블록(64 비트)을 완성함
    • AES (Advanced Encryption Standard)
  • 공개 키 암호화 방식 (public key encryption)
    • RSA 암호화 알고리즘
      • 가장 대중화된 공개 키 암호화 방식
      • 2 개의 큰 소수 p, q를 구하고, 두 소수의 곱 n을 구해 사용하는데, 이 암호화 방식의 안전도는 n의 소인수 분해 난이도에 종속됨
    • 장점
      • 공통 키 암호화 방식의 키 분배 문제 해결
      • 디지털 서명 기능 (부인 봉쇄 가능)
    • 단점
      • 구현의 어려움
      • 처리 속도가 느림

키 관리

공개 키 관리

  • 공개 키는 공개되므로 위/변조가 가능
  • 공개 키 인증서 (certificate)
    • 공개 키를 인증하는 전자적 증명문서
    • 인증 만기일, 인증서 발급기관 이름, 일련번호, 인증서 발급 기관의 디지털 서명
    • 인증서의 형식은 ITU-T X.509 표준에 따름

공개 키 기반 구조

  • Public Key Infrastructure (PKI) :
    공개 키 인증서를 발급하고 사용할 수 있는 인증서 관리 구조
  • 인증기관 (Certificate Authority; CA) :
    일반인에게 개인 키와 공개 키를 부여하고,
    인증서를 통해 상대방의 공개 키를 제공하는 서비스 기관
  • 인증서 :
    • 기재된 통신 객체 (개인, 기관, 컴퓨터)의 신분 보증
    • 인증기관의 디지털 서명이 포함되어 인증기관의 개인 키 없이는 위/변조 불가능

디지털 서명 (digital signature)

디지털 서명의 개요

  • 공개 키 암호화 방식에서의 메세지 암호화는
    개인 키를 이용한 메세지 작성자만이 할 수 있으므로
    이를 이용하여 메세지릐 작성자 본인을 알리는 서명을 작성함
  • 서명 알고리즘 및 증명 알고리즘

디지털 서명의 유효성

  • 디지털 서명의 유효성을 위한 5가지 조건
    1. 서명자 인증 (user authentication) :
      디지털 서명의 서명자를 불특정 다수의 사람들이 검증할 수 있어야 함
    2. 부인 불가 (non-repudiation) :
      서명자는 서명 이후 서명 사실을 부인할 수 없어야 함
    3. 변경 불가 (unalterable) :
      서명한 문서의 내용은 변경할 수 없어야 함
    4. 재사용 불가 (not reusable) :
      어느 한 전자문서의 디지털 서명을 다른 전자문서의 디지털 서명으로 사용할 수 없어야 함
    5. 위조 불가 (unforgeable) :
      적법적인 서명자만이 디지털 서명을 할 수 있어야 함

웹 보안 프로토콜

웹 보안 프로토콜 분류

  • 응용계층 프로토콜
    • 이메일 보안 : PGP, PEM, S/MIME
    • HTTP 보안 : S-HTTP; Secure HTTP
    • 원격 로그인 보안 : SSH; Secure Shell
  • 전송계층 프로토콜
    • SSL; Secure Socket Layer
    • TLS; Transport Layer Security
  • 네트워크계층 프로토콜
    • IPSec; Internet Protocol Security

응용계층 웹 보안 프로토콜 - 이메일 보안

  1. PGP; Pretty Good Privacy
    • 공개 키 암호화 방식 사용
    • 기능
      • 기밀성 : 제 3자는 이메일 내용을 볼 수 없음
      • 메세지 인증 : 메세지가 위/변조 되지 않았음을 인증
      • 사용자 인증 : 이메일의 발신자가 누구인지 확인
      • 송신자 부인 방지 : 이메일 발송 부인의 방지
  2. PEM; Privacy Enhanced Mail
    • IETF (Internet Engineering Task Force)에서 표준으로 제정한 공개 키 암호화 방식의 이메일 보안 방식
    • 표준으로 제정되었으나 실제로 활용되지 못함
  3. S/MIME (Secure/Multipurpose Internet Mail Extension)
    • MIME으로 캡슐화 된 이메일에 대해 공개 키 암호와 디지털 서명을 제공해주는 이메일 보안 표준 프로토콜
    • 공개 키 암호화 방식, RSA 암호 방식을 이용

전송계층 웹 보안 프로토콜 - SSL

  • Secure Socket Layer
  • 웹 페이지 보안 프로그램으로 대부분의 웹 브라우져가 지원해 줌
  • Netscape Communication사에서 개발한 de facto standard
  • http 외에도 ftp, SMTP, Telnet 등의 응용에도 적용 가능
  • SSL이 적용된 웹 페이지의 URL은 https로 시작되며 보안 포느 443을 사용

전송계층 웹 보안 프로토콜 - TLS

  • Transport Layer Security
  • SSL을 계승한 전송 계층의 보안 프로토콜
  • TLS의 상위 계층의 응용 프로토콜과는 독립적이기 때문에 어떤 응용 프로그램도 TLS를 이용하여 안전한 통신 가능

네트워크계층 웹 보안 프로토콜 - IPSec

  • IPSec (Internet Protocol Security)
  • IP 게층 (네트워크 계층)에서 동작하는 보안 프로토콜
    • Authentication Header; AH : 송신자의 인증
    • Encapsulation Security Payload; ESP : 송신자의 인증과 데이터 암호화
  • IP 계층에서의 데이터 기밀성, 데이터 무결성, 데이터 인증 등의 보안 서비스 제공

방화벽과 프록시 서버

방화벽의 개요

네트워크와 네트워크 사이에서 패킷을 검사하여 조건에 맞는 패킷만을 통과시키는 (packet filtering) S/W, H/W를 총칭

방화벽의 종류

  • 배스천 호스트; bastion host
  • 스크리닝 라우터; screening router
  • 이중 홈 게이트웨이; dual-homed gateway
    • 2개 이상의 네트워크에 동시에 접속된 Bation host
  • 스크린 호스트 게이트웨이; screened host gateway
    • 스크리닝 라우터와 스크린 호스트(bation host, dual-homed gateway)를 혼합한 형태의 방화벽
  • 스크린 서브넷; screened subnet
    • 외부 네트워크와 내부 네트워크 사이에 DMZ 역할을 하는 완충 지역 개념의 서브넷

프록시 서버의 개요

  • 내부 네트워크게 있는 Client를 대신하여 인터넷에 접속하고
    Client가 요청한 통신 서비스를 Client가 요청한 통신 서비스를 다시 Client에게 제공해 주는 서버
  • 동작 절차
    1. Proxy server는 client의 요청에 따라 외부 서버에게 서비스 요청
    2. 외부 서버는 proxy server에게 요청한 서비스 전달
    3. Proxy server는 전달 받은 서비스를 client에게 전달

프록시 서버의 기능

  • 안정성 :
    사용자 인증 기능, 서비스 이용 제한 등의 기능을 proxy server에 두면
    client는 일괄적 보호를 받음
  • 익명성 :
    외부 서버에 접근하는 것은 proxy server이므로,
    client의 고유정보가 노출될 가능성이 감소함
  • 신속성 :
    사용자가 열람한 웹 사이트의 정보를 캐시에 임시적으로 보관해 놓는데, 이를 이용하면 client가 동일한 웹 사이트에 접속하는 경우 신속하게 할 수 있음

요약

  1. 암호화란 누구나 읽을 수 있는 평문을 권한이 없는 제 3자가 알아볼 수 없는 형태로 재구성하는 과정을 의미,
    암호화의 역과정으로 암호화 평문으로 복원하는 것을 복호화라고 함
  2. 키의 종류에 따른 암호화 방식으로는 DES로 대표되는 대칭 키 암호화 방식과 RSA로 대표되는 공개 키 암호화 방식이 있음
  3. 디지털 서병은 네트워크상에서 문서나 메세지를 송수신할 때 디지털 문서에 서명자 인증, 문서의 위/변조 방지, 송신 부인 방지 등의 기능을 제공하는 암호화 기술을 사용하여 서병하는 방법
  4. 인터넷 보안을 위해 사용되는 주요 기술로는 웹 보안 프로토콜을 사용하는 방법, 방화벽을 사용하는 방법, 프록시 서버를 사용하는 방법이 있음
  5. 방화벽은 네트워크와 네트워크 사이에 송/수신 되는 패킷을 검사하여 조건에 맞는 패킷들만 통과시키는 소프트웨어나 하드웨어를 총칭함
  6. 프록시 서버는 내부 네트워크에 있는 클라이언트를 대신하여 인터넷에 접속, 클라이언트가 요청한 통신 서비스의 결과를 클라이언트에게 제공하는 서버임
출처 : 방송통신대 강의 자료실 정보통신망 강의록
728x90
반응형

'Computer Science > Network' 카테고리의 다른 글

네트워크 보안 - I  (0) 2022.06.12
LAN; 근거리 통신망 - II  (0) 2022.06.12
LAN; 근거리 통신망 - I  (0) 2022.06.12
TCP/IP - III  (0) 2022.06.12
TCP/IP - II  (0) 2022.06.12

+ Recent posts