Hanbbi's DevLog

정보처리기사

정보처리기사 필기(5) - 정보처리시스템 구축 관리

2023-12-28

필기 시험 공략

개인적으로 필기 시험의 경우 기출문제를 많이 풀어보는 것으로 충분하다고 생각한다.

구글 앱 스토어에서 "정보처리기출문제"라는 키워드로 검색해서 앱에 등록된 문제들을 많이 풀어보면 좋을 것 같다.

나의 경우 아래의 순서로 필기한 후, 기출문제를 많이 풀어본 후에 시험을 쳤다.

표 등 일부 내용은 깃허브에서 보는 것이 더 편하다.

  1. 소프트웨어 설계

  2. 소프트웨어 개발

  3. DB구축

  4. 프로그래밍 언어 활용

  5. 정보시스템 구축 관리

본문은 요약본으로, 노출 빈도가 높다고 느낀 키워드는 ★표로 강조하였다.


소프트웨어 개발 방법론 활용

소프트웨어 개발 생명주기 모형(SDLC - Software Development Life Cycle Model)

  • 소프트웨어 개발 조직이 담당하는 작업 종류와 순서, 그리고 각 단계에서 생성되는 결과물을 정리한 것이다.
  • 소프트웨어 프로세스 모형이라고도 한다.
  • 소프트웨어의 종류, 시스템의 규모, 난이도, 신뢰도, 조직의 규모 등에 따라 적합한 생명주기 모형이 다르다.
  • 소프트웨어 생명주기 모형에 따라 소프트웨어의 품질을 높이고, 개발 기간과 비용을 줄일 수 있다.
  • 소프트웨어 생명주기 모형에는 구축 및 수정 모형, 폭포수 모형, 프로토타입 모형, 나선형 모형, 애자일 모형 등이 있다.

프로토타입 모형(Prototype Model)

  • 실제 개발될 소프트웨어에 대한 시제품(Prototype)을 만들어 최종 결과물을 예측하는 모형이다.
  • 요구 수집, 빠른 설계, 프로토타입 구축, 고객 평가, 프로토타입 조정, 구현의 단계를 통해 소프트웨어를 개발하는 모형이다.
  • 최종 결과물이 만들어지기 전에 의뢰자가 최종 결과물의 일부 또는 모형을 볼 수 있다.
  • 발주자(의뢰자)나 개발자 모두에게 공동의 참조 모델을 제공한다.
  • 구축하고자 하는 시스템의 요구사항이 불명확한 경우 가장 적절하게 적용될 수 있다.
  • 사용자 요구사항을 정확하게 파악하고 충실히 반영할 수 있다.
  • 개발 단계 안에서 유지보수가 이루어지는 것으로 볼 수 있다.

폭포수 모형(Waterfall Model)

  • 보헴(Boehm)이 제안한 고전적 생명주기 모형으로, 선형 순차적 모형이라고도 한다.
  • 타당성 검토, 계획, 요구사항 분석, 구현, 테스트, 유지보수의 단계를 통해 소프트웨어를 개발하는 모형이다.
  • 순차적인 접근 방법을 이용하며, 단계적 정의와 산출물이 명확하다.
  • 각 단계의 결과가 확인되어야지만 다음 단계로 넘어간다.
  • 개발 중 발생한 요구사항은 반영하기 어렵다.
  • 가장 오래된 모형으로 모형의 적용 경험과 성공 사례가 많다.

나선형 모형(Spiral Model)

  • Boehm이 제시하였으며, 반복적인 작업을 수행하는 모형으로 점증적 모형, 집중적 모형이라고도 한다. 완성도 높은 소프트웨어를 만들 수 있다.
  • 여러 번의 개발 과정을 거쳐 완벽한 최종 소프트웨어를 개발하는 점진적 모형이다.
  • 가장 큰 장점인 위험 분석 단계에서 기술과 관리의 위험 요소들을 하나씩 제거해 나감으로써 위험성 평가에 크게 의준하기 때문에 이를 발견하지 않으면 문제가 발생할 수 있다.
  • 대규모 시스템의 소프트웨어 개발에 적합하다.

나선형 모형의 개발 단계

  1. 계획 수립(Planning) : 위험 요소와 타당성을 분석하여 프로젝트의 추진 여부를 결정한다.
  2. 위험 분석(Risk Analysis) : 개발 목적과 기능 선택, 제약 조건 등을 결정하고 분석한다.
  3. 개발 및 검증(Development) : 선택된 기능을 수행하는 프로토타입을 개발한다.
  4. 고객 평가(Evaluation) : 개발된 프로토타입을 사용자가 확인하고 추가 및 수정될 요구사항이 있으면 이를 반영한 개선 프로토타입을 만든다.

소프트웨어 개발 방법론

  • 소프트웨어 개발 생명주기에 소프트웨어 공학 원리를 적용한 것으로 소프트웨어 개발 전 과정에 지속적으로 작용할 수 있는 방법, 절차, 기법 등을 의미하며, 시스템 개발 주기라고도 한다.
  • 소프트웨어 개발 과정을 정리하고 표준화하여 프로그래머 개인이 개발 과정에서의 일관성을 유지하고 프로그래머들 간의 효과적인 협업이 이루어질 수 있게 한다.

구조적 방법론(Structured Development Methodolohy)

  • 정형화된 분석 절차에 따라 사용자 요구사항을 파악하여 문서화하는 체계적인 방법론이다.
  • 요구사항 분석, 구조적 분석, 구조적 설계, 구조적 프로그래밍 단계로 구성된다.
  • 쉽게 이해할 수 있고 검증할 수 있는 프로그램의 부호를 생성하는 것이 목적이다.
  • 1970년대까지 가장 많이 적용된 방법론이다.
  • 시스템 분석을 위해 데이터 흐름 다이어그램(Data Flow Diagram)이 주로 사용된다.
  • 시스템 설계를 위해 구조도(Structured Chart) 기획, 분석, 설계, 구축하는 데이터 중심의 방법론이다.
  • 구조적 방법론의 거시적 관점 부재에서 등장하였다.
  • 자료에 중점을 두어 자료와 프로세스를 별개의 작업으로 병행 진행한 후 서로 간의 오류를 상관 분석하여 검증한다.
  • 정보 전략 계획(ISP), 업무 영역 분석(BAA), 업무 시스템 설계(BSD), 시스템 구축(SC) 단계로 구성된다.

객체지향 방법론(Object-oriented Engineering Methodolohy)

  • 분석, 설계, 개발 단계에 객체지향 기법을 활용하는 방법론이다.
  • 구조적 프로그래밍 기법의 한계와 소프트웨어 개발의 위기에서 등장하였다.
  • 요구분석, 설계, 수현, 테스트 및 검증 단계로 구성된다.
  • 객체지향의 기본 원칙은 캡슐화(Encapsulation), 정보 은닉(Information Hiding), 추상화(Abstraction), 상속(Inheritance), 다형성(Polymorphism)이다.
  • 시스템 분석을 위해 유스케이스 다이어그램(UseCase Diagram)이 주로 사용된다.
  • 시스템 설계를 위해 시퀀스 다이어그램(Sequence Diagram)이 주로 사용된다.

컴포넌트 기반 개발 방법론(CBD : Component Based Development)

  • 재사용이 가능한 컴포넌트의 개발 또는 상용 컴포넌트들을 조합하여 애플리케이션 개발 생산성과 품질을 높이고, 시스템 유지보수 비용을 최소화할 수 있는 개발 방법 프로세스이다.
  • 컴포넌트 단위의 개발 및 조립을 통해 정보 시스템의 신속한 구축, 변경, 확장의 용이성과 타 시스템과의 호환성을 달성하고자 하는 소프트웨어 공학 프로세스, 방법론 및 기술의 총체적 개념이다.

CBD 방법론의 특징

  • 개발 준비, 분석, 설계, 구현, 테스트, 전개, 인도 순으로 반복, 점진적 개발 프로세스를 제공하고, 시스템 설계를 위해 컴포넌트 설계서가 주로 사용된다.
  • 컴포넌트(Component)는 DB와 SW의 모듈 단위로, 재사용이 가능하다.
  • 시스템 분석을 위해 유스케이스 다이어그램(UseCase Diagram)이 주로 사용된다.
  • 개발 기간 단축으로 인한 생산성이 향상되며 새로운 기능 추가가 쉬워 확장성이 높다.

소프트웨어 재사용(Software Reuse)

  • SW 개발의 품질과 생산성을 높이기 위한 방법으로, 이미 개발되어 안정화된 SW의 전체 혹은 일부분을 다른 SW 개발이나 유지에 사용하는 것이다.
  • 기존에 개발된 SW와 경험, 지식 등을 새로운 SW에 적용한다.
  • 클래스, 객체 등의 소프트웨어 요소는 소프트웨어 재사용성을 크게 향상했다.
  • 소프트웨어 부품(모듈)의 크기가 작고 일반적인 설계일수록 재사용률이 높다.
    • 합성 중심(Composition-Based)
      • 전자칩과 같은 소프트웨어 부품, 즉 블록(모듈)을 만들어서 끼워 맞춰 소프트웨어를 완성시키는 방법으로, 블록 구성 방법이라고도 한다.
    • 생성 중심(Generation-Based)
      • 추상화 형태로 쓰여진 명세를 구체화하여 프로그램을 만드는 방법으로, 패턴 구성 방법이라고도 한다.

비용 산정 모델

  • 전문가 감정 기법, 델파이(Delphi) 기법, LOC(Line Of Code) 기법, COCOMO(COnstructive CostMOdel) 모델, Putnam 모델, 기능 점수(FP: Functional Point) 등이 있다.

전문가 감정 기법

  • 개발 조직 내에 경험이 많은 2인 이상의 전문가에게 비용 산정을 의뢰하는 기법이다.
  • 의뢰자의 신뢰도가 높고 편리하게 비용을 산정할 수 있다.
  • 과거 프로젝트와의 유사성이 낮을 수 있다.
  • 전문가에 따라 감정의 편차가 클 수 있다.

델파이(Delph) 기법

  • 산정 요원과 조정자에 의해 산정하는 기법이다.
  • 전문가가 독자적으로 감정할 때 발생할 수 있는 편차를 줄이기 위해 단계별로 전문가들의 견해를 조정자가 조정하여 최종 견적을 결정한다.
  • 유사한 프로젝트 경험을 가진 전문가 집단을 구성하여 규모, 공수, 비용의 산정 의견을 구한다.
  • 의견 일치가 이뤄지지 않을 경우 의견의 근거를 익명으로 집단 내에 배포하고 자신들의 산정을 수정할 수 있도록 한다.

LOC(Line of Code) 기법 ★★★

  • 소프트웨어 각 기능의 원시 코드 라인 수의 비관치, 낙관치, 기대치를 측정하여 예측치를 구하고 이를 이용하여 비용을 산정하는 기법이다.
예측치 = a + (4 X C) + b / 6 (단 a는 낙관치, b는 비관치, c는 기대치임)
  • ex. 규모 추정이 a: 60, b: 200, c:100인 경우 LOC는 다음과 같다.
LOC = 60 + (4 X 100) + 200 / 6 = 660 / 6 =  110
  • 개발 기간 = 예측된 LOC / (개발자 수 X 1인달 월 평균 생산 LOC)

LOC 기법에 의해 예측된 총 라인 수가 36,000라인, 개발에 참여할 프로그래머가 6명, 프로그래머들의 평균 생산성이 월간 300라인일 때 개발에 소요되는 기간은 아래와 같다.

개발 기간 = 36,000 / (6 X 300)
         = 36,000 / 1,800
        = 20[개월]

프레임워크

소프트웨어 프레임워크(Framework)의 개념

  • 비슷한 유형의 응용 프로그램들을 위해 재사용이 가능한 아키텍처와 협력하는 소프트웨어 산출물의 통합된 집합이다.
  • 특정 클래스의 재사용뿐만 아니라 응용 프로그램을 위한 핵심 아키텍처를 제공하여 설계의 재사용을 지원한다.

소프트웨어 개발 프레임워크의 개념

  • 소프트웨어 개발을 도와주는 재사용이 가능한 클래스와 패턴의 집합이다.
  • 소프트웨어 개발의 효율성을 높이고 소프트웨어 품질을 높이기 위한 반제품 성격의 소프트웨어이다.
  • 소프트웨어의 틀과 구조를 결정하고, 이를 바탕으로 개발된 개발자의 코드를 제어한다.

소프트웨어 개발 프레임워크 적용 시 이점

  • 개발 용이성
    • 공통 기능은 프레임워크가 제공한다.
    • 패턴 기반 개발과 비즈니스 로직에만 집중한 개발이 가능하다.
  • 시스템 복잡도 감소
    • 시스템의 복잡한 기술은 프레임워크에 의해 숨겨진다.
    • 미리 잘 정의된 기술 셋을 적용할 수 있다.
  • 이식성
    • 플랫폼 연동을 프레임워크가 제공한다.
    • 플랫폼의 독립적인 개발이 가능하다.
  • 품질 보증
    • 검증된 개발 기술과 패턴에 따른 개발이 가능하다.
    • 개발자의 경험과 능력 차이를 줄여준다.
  • 운영 용이성
    • 소프트웨어 변경이 용이하다.
    • 비즈니스 로직 및 아키텍처 파악이 용이하다.
  • 개발 코드 최소화
    • 공통 컴포넌트와 서비스를 활용한다.
    • 반복적인 코드 개발을 최소화한다.
  • 변경 용이성
    • 잘 구조화된 아키텍처를 적용한다.
    • 플랫폼에 독립적이다.
  • 설계 및 코드의 재사용성
    • 프레임워크의 서비스와 패턴을 재사용한다.
    • 이미 개발된 컴포넌트를 재사용한다.

스프링 프레임워크(Spring Framework)

  • 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크이다.
  • 동적인 웹 사이트 개발을 위해 여러 가지 서비스를 제공하고 있다.
  • 전자정부 표준 프레임워크 기반 기술로 사용된다.
  • 스프링 프레임워크의 주요 모듈
    • 제어 반전 컨테이너
    • 관점 지향 프로그래밍 프레임워크
    • 데이터 액세스 프레임워크
    • 트랜잭션 관리 프레임워크
    • 모델 - 뷰 - 컨트롤러(MVC) 패턴
    • 배치 프레임워크

전자정부 표준 프레임워크

  • 공공부문 정보화 사업 시 플랫폼별 표준화된 개발 프레임워크를 말한다.
  • 공공기관의 웹 서비스 개발 시 사용을 권장하고 있다.
  • 전자정보 표준 프레임워크 적용 시 기대효과
    • 전자정부 서비스 품질 향상
    • 정보화 투자 효율성 향상
    • 국가 정보화 투자 효율성 재고
    • 중소 SI 업체 경쟁력 확보
    • 선진 국가정보화 추진 기반 환경 재고

닷넷 프레임워크(.NET Framework)

  • Microsoft사에서 개발한 윈도우 프로그램 개발 및 실행 환경이다.
  • 네트워크 작업, 인터페이스 등의 많은 작업을 캡슐화하였고, 공통 언어 런타임(CLR : Common Language Runtime) 가상 머신 위에서 작동한다.
  • 오픈소스 버전으로 닷넷 코어가 있다.

네트워크 구성

성형(Star Topology)

  • 중앙에 호스트 컴퓨터(Host Computer)가 있고 이를 중심으로 터미널(Terminal)들이 연결되는 중앙 집중식의 네트워크 구성 형태이다.
  • 중앙 컴퓨터와 직접 연결되어 응답이 빠르고 통신 비용이 적게 소요되지만, 중앙 컴퓨터에 장애가 발생하면 전체 시스템이 마비되는 분산 시스템의 위상 구조이다.
            단말기
    단말기 \   |   / 단말기
            중계기
    단말기 /   |   \ 단말기
            단말기

링형(Ring Topology)

  • 서로 이웃한 컴퓨터와 노드끼리 연결한 네트워크 구성 형태이다.
  • 각 노드가 공평한 서비스를 받으며, 전송 매체와 노드의 고장 발견이 쉽다.
  • 데이터가 한 방향으로 전송되기 떄문에 충돌(Collision) 위험이 없다.
        단말기 ↘
      ↗        단말기
단말기          ↙
      ↖단말기

버스형(Bus Topology)

  • 한 개의 통신 회선에 여러 개의 노드가 연결된 형태이다.
  • 한 사이트의 고장은 나머지 사이트 간의 통신에 아무런 영향을 주지 않는다.
  • 네트워크 트래픽이 많을 경우 네트워크 효율이 떨어진다.
단말기  단말기  단말기  단말기
   |      |      |       |
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

트리형(Tree Topology)

  • 하나의 노드에 여러 개의 노드를 연결한 네트워크 구성 형태로 네트워크 관리가 용이하다.
  • 각 노트가 계층적으로 구성되어 있어 계층형 또는 분산형이라고도 한다.
          단말기
        /       \
   단말기         단말기
  /      \      /       \
단말기  단말기  단말기  단말기

망형(Mesh Topology)

  • 모든 컴퓨터와 노드들이 서로 연결된 네트워크 구성 형태로 그물형이라고도 한다.
  • 응답 시간이 빠르고 노드의 연결성이 우수하다.
  • 일반적으로 많은 단말기로부터 많은 양의 통신을 필요로 하는 경우에 유리하다.
  • n 개의 노드를 망형으로 구성 시 n(n-1)/2 개의 회선이 필요하다.
       단말기
      /  |   \
단말기 ㅡ + ㅡ 단말기
      \  |  /
       단말기

브릿지(Bridge)

  • 데이터 링크 계층(Data Link Layer)에서 동작하며 같은 MAC(Midea Access Control) 프로토콜을 사용하는 근거리 통신망 사이를 연결하는 통신 장치이다.

스위치(Switch)

  • 브릿지와 같이 두 개 이상의 LAN을 연결하여 하나의 네트워크로 만드는 장치이다.
  • 보안 및 트래픽 관리 기능도 제공할 수 있다.
  • 스위치 분류
    • L2 스위치
      • OSI 2계층에 속하는 네트워크 장비
      • 가장 기본적인 스위치로, 단순히 스위치라고도 한다.
      • Adress Learning, Filtering, Forwarding 등의 기능을 수행한다.
    • L3 스위치
      • OSI 3계층에 속하는 네트워크 장비
      • L2 스위치에 라우팅 기능이 추가되었다.
      • 서로 다른 네트워크를 연결할 수 있다.
    • L4 스위치
      • OSI 4계층에 속하는 네트워크 장비
      • L3 스위치에 로드밸런서(Load Balancer)가 추가되었다.
    • L7 스위치
      • OSI 7계층에 속하는 네트워크 장비이다.
      • 세밀한 로드밸런싱이 가능하다.
      • 보안 기능을 대폭 강화하였다.

라우터(Router)

  • 네트워크 계층(Network Layer)에서 동작하며 동일 전송 프로토콜을 사용하는 분리된 2개 이상의 네트워크를 연결해주는 통신 장치이다.
  • 네트워크상에서 가장 최적의 IP 경로를 설정하여 전송하는 장비이다.

게이트웨이(Gateway)

  • 서로 다른 통신 프로토콜을 사용하는 네트워크 사이를 연결하여 데이터를 교환할 수 있도록 하는 역할을 한다.
  • 두 개의 서로 다른 형태의 네트워크를 상호 연결시켜 주는 관문 역할을 하는 장치이다.
  • 필요한 경우 프로토콜 변환을 수행한다.

VLAN(Virtual Local Area Network)

  • 물리적 배치와 상관없이 논리적으로 LAN을 구성하여 Broadcast Domain을 구분할 수 있게 해주는 기술로 접속된 장비들의 성능 향상 및 보안성 증대 효과를 목표로 한다.

네트워크 관련 신기술 ★★★

RIP(Routing Information Protocol)

  • 최단 경로 탐색에 Bellman-Ford 알고리즘을 사용하는 거리 벡터 라우팅 프로토콜이다.
  • 최적의 경로를 산출하기 위한 정보로서 홉(거릿값)만을 고려하므로, RIP를 선택한 경로가 최적의 경로가 아닌 경우가 많이 발생할 수 있다.
  • 최대 홉 카운트를 15홉 이하로 한정한다.
  • 소규모 네트워크 환경에 적합하다.

OSPF(Open Shortest Path First)

  • 대표적인 링크 상태(Link State) 라우팅 프로토콜로, IP 패킷에서 89번 프로토콜을 사용하여 라우팅 정보를 전송하며 안정되고 다양한 기능으로 가장 많이 사용되는 것은 IGP(Interior Gateway Protocol)이다.

MATT(Message Queuing Telemetry Transport)

  • IBM이 주도하여 개발한 기술로 사물 인터넷과 같이 대역폭이 제한된 통신 환경에 최적화하여 개발된 푸시 기술 기반의 경량 메시지 전송 프로토콜이다.
  • TCP/IP 기반 네트워크에서 동작하는 발생-구독 기반의 메시징 프로토콜로 최근 IoT 환경에서 자주 사용되고 있는 프로토콜이다.

사물 인터넷(IoT : Internet of Things)

  • 인터넷에 연결된 기기가 사람의 개입 업이 상호 간에 알아서 정보를 주고받아 처리한다.
  • 사물은 물론이고 현실과 가상세계의 모든 정보와 상호 작용하는 개념이다.

WSN(Wireless Sensor Network)

  • 센서를 네트워크로 구성한 것이다.
  • 사물에 부착된 센서를 통해 탐지된 사물의 인식 정보는 물론 주변의 온도, 습도와 같은 환경 정보를 실시간으로 네트워크와 연결하여 수집하고 관리하는 네트워크 시스템이다.

클라우드 컴퓨팅(Cloud Computing)

  • 사용자가 인터넷 등을 통해 하드웨어, 소프트웨워 등의 컴퓨팅 자원을 원격으로 필요한 만큼 빌려서 사용하는 방식의 서비스 기술로서 서비스 모델은 IaaS, PaaS, SaaS로 구분한다.
  • 가상화 기술, 서비스 프로비저닝(Provisioning) 기술, 과금 체계 등을 필요로 한다.
  • PaaS-TA : 국내 IT 서비스 경쟁력 강화를 목표로 개발, 인프라 제어 및 관리 환경, 실행 환경, 개발 환경, 서비스 환경, 운영환경으로 구성되어 있는 개방형 클라우드 컴퓨팅 플랫폼이다.

그리드 컴퓨팅(Grid Computing)

  • 인터넷상에서 사용하지 않는 시간대의 연결된 수많은 컴퓨터를 하나의 고성능 컴퓨터처럼 활용할 수 있는 기술이다.

RFID(Radio Frequency IDentification)

  • 전자 태그가 부착된 IC 칩과 무선 통신 기술을 이용하여 다양한 개체들의 정보를 관리할 수 있는 센서 기술이다.

NFC(Near Field Communication)

  • RFID 기술 중 하나로, 10cm 정도로 가까운 거리에서 장치 간에 양방향 무선 통신을 가능하게 해주는 기술이다. 13.56MHz의 주파수 대역을 사용하는 비접촉식 통신 기술이다.
  • 데이터 읽기와 쓰기 기능을 모두 사용할 수 있다.

WPAN(Wireless Personal Area Network)

  • 사용자를 줒심으로 작은 지역에서 주로 블루투스 헤드셋, 스마트 워치 등과 같은 개인화 장치들을 연결시키는 무선 통신 규격이다.
  • IEEE 802.15 규격의 범주에 속한다.

PICONET(피코넷)

  • 여러 개의 독립된 통신 장치가 UWB(Ultra Widebacn) 기술 또는 블루투스 기술을 사용하여 통신망을 형성하는 무선 네트워크 기술이다.

스마트 그리드(Smart Grid)

  • 전기 및 정보통신 기술을 활용하여 전력망을 지능화, 고도화함으로써 고품질의 전력 서비스를 제공하고 에너지 이용 효율을 극대화하는 전력망 시스템이다.
  • 기존의 전력망에 정보 기술을 접목하여 전력 공급자와 소비자가 쌍방향으로 실시간 정보를 교환함으로써 에너지 효율을 최적화하고 새로운 부가가치를 창줄한다.

비콘(Beacon)

  • 블루투스 4.0(BLE) 프로토콜 기반의 근거리 무선 통신 장치로 최대 70m 이내의 장치들과 교신할 수 있는 차세대 스마트폰 근거리 통신 기술이다.
  • 저전력으로 모방리 결제 등을 가능하게 해주는 스마트폰 근거리 통신 기술이다.
  • NFC보다 가용거리가 길고 5~10cm 단위 구별이 가능해 정확성이 높다.

포스퀘어(Foursquare)

  • 스마트폰에 탑재된 GPS를 활용해 위치 정보를 수집한다.
  • 쇼핑 관광 등에 활용하는 위치 기반 소셜 네트워크 서비스이다.

ZigBee

  • IEEE 802.15.4 기반 PAN 기술이다.
  • 낮은 전력을 소모하면서 저가의 센서 네트워크 구현에 최적의 방안을 제공한다.
  • 빌딩 자동화나 홈 보안 시스템 등의 자동화에 적절한 통신 기술이다.

Mesh Network

  • 기존 무선 랜의 한계 극복을 위해 등장하였다.
  • 대규모 디바이스의 네트워크 생성에 최적화되어 차세대 이동통신 홈네트워킹, 공공 안전 등의 특수 목적을 위한 새로운 방식의 네트워크 기술이다.

Wavelength Division Multiplexing(WDM, 파장 분할 다중화)

  • 레이저 빛이 다른 파장(다른 색)을 사용하여 여러 반송파 신호를 단일 광섬유에 적용하는 기술이다.
  • 파장이 서로 다른 복수의 광신호를 동시에 이용하는 것으로 광섬유를 다중화하는 방식이다.
  • 빛의 파장 축과 파장이 다른 광선은 서로 간섭을 일으키지 않는 성질을 이용한다.

소프트웨어 관련 신기술

소프트웨어 정의 데이터 센터(SDDC : Software Defined Data Center)

  • 가상 데이터 센터(Virtual Data Center : VDC)라고도 하며, 추상화, 풀링(Pooling), 자동화 등을 통해 인프라를 가상화하는 데이터 센터를 의미한다.
  • 컴퓨팅, 네트워킹, 스토리지, 관리 등을 모두 소프트웨어로 정의한다.
  • 인력 개입 없이 소프트웨어 조작만으로 자동 제어 관리한다.
  • 데이터 센터 내 모든 자원을 가상화하여 서비스한다.

텐서플로우(TensorFlow)

  • 구글에서 개발해서 공개한 인공지능 응용 프로그램 개발용 오픈소스 프레임워크이다.
  • 텐서플로우를 사용할 때 인공지능 소프트웨어가 이미지 및 음성을 인식하기 위해서는 신경망의 합성곱 신경망 모델을 주로 사용한다.

머신 러닝(Machine Learning)

  • 컴퓨터 프로그램이 데이터와 처리 경험을 이용한 학습을 통해 정보 처리 능력을 향상시키는 기술로 컴퓨터에게 많은 데이터를 주고 거기에서 일반적인 패턴을 찾아내게 한다.
  • 자율 주행 자동차, 필기체 문자 인식 등과 같이 알고리즘 개발이 어려운 문제의 해결에 유용하다.

딥 러닝(Deep Learning)

  • 일반적인 머신 러닝 모델보다 더 싶은 신경망 계층 구조를 이용하는 머신 러닝이다.
  • 주로 여러 개의 은닉층(Hidden Layer)으로 구성된 인공 신경망을 활용한다.

디지털 트윈(Digital Twin)

  • 물리적인 사물과 컴퓨터에 동일하게 표현되는 가상 모델이다.
  • 실제 물리적인 자산 대신 소프트웨어로 가상화한 자산의 디지털 트윈을 만들어 시뮬레이션함으로써 실제 자산의 특성에 대한 정확한 정보를 얻을 수 있다.

HMD(Head Mounted Display)

  • 머리에 착용하는 형태의 디스플레이로 HMD 장치를 머리에 쓰면 양쪽 눈에 근접한 위치에 소형 디스플레이가 있어 시차를 이용한 3D 영상이 투영된다.

블록체인(Blockchain)

  • 공공 거래 장부로, 가상 화폐로 거래할 때 발생할 수 있는 해킹을 막는 기술이다.
  • 하나의 블록은 트랜잭션의 집합과 헤더(Header)로 이루어져 있고 한 블록에는 앞의 블록에 대한 정보가 포함되어 있어, 앞 블록의 내용을 변경하면 뒤에 이어지는 블록도 변경해야 한다.

BaaS(Backend as a Service)

  • 블록체인(Blockchain) 개발 환경을 클라우드로 서비스하는 개념으로 블록체인 네트워크에 노드의 추가 및 제거가 용이하다.
  • 블록체인의 기본 인프라를 추상화하여 블록체인 응용 프로그램을 만들 수 있는 클라우드 컴퓨팅 플랫폼이다.

분산 원장 기술(Distributed Ledger Technology)

  • 분산 네트워크 참여자가 암호화 기술을 사용하여 거래 정보를 검증하고 합의한 원장(Ledger)을 공동으로 분산/관리하는 기술이다.
  • 수많은 사적 거래 정보를 개별적 데이터 블록으로 만들고, 이를 체인처럼 연결하는 블록체인 기술이다.

증강현실(AR : Augmented Reality)

  • 현실을 기반으로 가상 정보를 실시간으로 결합하여 보여주는 기술이다.
  • 예를 들어 스마트폰 카메라로 주변을 비추면 인근에 있는 상첨의 위치, 전화번호 등의 정보가 입체 영상으로 표시된다.

매시업(Meshup)

  • 웹에서 제공하는 정보 및 서비스를 이용하여 새로운 소프트웨어나 서비스, 데이터베이스 등을 만드는 기술이다.
  • 다수의 정보원이 제공하는 콘텐츠를 조합하여 하나의 서비스로 제공한다.
  • 구글 지도에 부동산 매물 정보를 결합한 구글의 하우징 맵스(HousingMaps)가 대표적이다.

양자 암호(Quantum Cryptography)

  • 양자 역학의 특성을 이용하여 안전하게 정보를 보호하기 위한 알고리즘 또는 정보 이론적/수학적 방법론이다.
  • 양자 컴퓨터가 등장하면서 기존의 대칭키 암호 기법과 비대칭키 암호 기법은 안전성을 보장할 수 없게 되었다.
  • 대표적인 양자 암호 기법으로 양자 암호키 분배(QKD : Quntum Key Distribution) 기법이다.

하드웨어 관련 신기술

양자 컴퓨터(Quantum Computer)

  • 양자 역학적 현상을 이용하여 연산을 수행하는 컴퓨터이다.
  • 양자 정보의 최소 단위인 큐비트(Qubit)의 상태를 제어하여 연산과 양자 알고리즘을 수행한다.

4D 프린팅

  • 미리 설계된 시간이나 임의환경 조건이 충족되면 스스로 모양을 변경 또는 제조하여 새로운 형태로 바뀌는 제품을 3D 프린팅하는 기술이다.
  • 온도, 습도, 진동 등 에너지에서 자극을 받으면 모양이 변하는 스마트 소재가 사용된다.

N-Screen

  • 동일한 콘텐츠를 PC, 스마트TV, 스마트폰, 태블릿 PC 등 다양한 디지털 정보기기에서 자유롭게 이용할 수 있는 서비스이다.

데이터베이스 관련 기술 용어

RAID(Redundant Array of Indexpensive Disks)

  • 데이터를 복수 또는 분할 저장하여 병렬로 데이터를 읽는 보조 기억 장치 또는 그 방법으로 디스크의 고장에 대비하여 데이터의 안정성을 높이는 기술이다.
  • 한 개의 데이터를 여러 디스크에 저장하여 데이터 안정성을 향상시키기 위해 사용한다.
  • 다수의 디스크에 데이터를 분할하여 전송함으로써 전체적인 데이터 전송 속도 향상을 위해 사용한다.
  • RAID 1 : 디스크 스트라이핑(Disk Striping) 방식으로 중복 저장과 오류 검출 및 교정이 없다.
  • RAID 2 : 비트 단위로 분산 저장하고 여러 개의 해밍코드 검사 디스크를 사용한다. 디스크 미러링(Disk Mirroring) 방식으로 높은 신뢰도를 갖는다.
  • RAID 3 : 데이터를 다수의 디스크에 스트라이핑하여 저장하며, 하나의 드라이브에 패리티를 저장한다. 패리티 드라이브를 사용한다.
  • RAID 4 : 각 디스크에 데이터를 블록 단위로 분산 저장하고 하나의 패리티 검사 디스크를 사용한다.(블록 인터리브된 패리티(Block-Interleaved Striping with Parity)).
  • RAID 5 : 별도의 패리티 디스크 대신 모든 디스크에 패리티 정보를 나누어 기록하는 방식으로 3개 이상의 디스크 어레이를 요구하며 쓰기 작업이 많지 않은 다중 시스템에 적합하다.

웨어러블 컴퓨팅(Wearable Computing)

  • 컴퓨터를 옷이나 안경처럼 착용할 수 있게 해주는 기술이다.
  • 소형화, 경량화를 비롯해 음성과 동작 인식 등 다양한 기술이 적용되어 장소에 구애받지 않고 컴퓨터를 활용할 수 있다.

멤리스터(Memristor)

  • 메모리와 레지스터의 합성어로, 전류의 방향과 크기 등 기준의 상태를 모두 기억하는 소자이다.
  • 레지스터, 커패시터, 인덕터에 이어 네 번째 전자회로 구성 요소로 차세대 기억 소자, 회로 등에 응용될 수 있다. 에너지 소모와 부팅 시간을 획기적으로 줄일 수 있다.

직접 연결 저장 장치(DAS : Direct-Attached Storage)

  • 하드디스크와 같은 데이터 저장 장치를 호스트 버스 어댑터에 직접 연결하는 방식이다.
  • 저장 장치와 호스트 기기 사이에 네트워크 디바이스가 있지 말아야 한다.

SAN(Storage Area Network)

  • 네트워크상에 광 채널 스위치의 이점인 고속 전송과 장거리 연결 및 멀티 프로토콜 기능을 활용하여 각기 다른 운영체제를 가진 여러 기종이 네트워크상에서 동일 저장 장치의 데이터를 공유하게 함으로써, 여러 개의 저장 장치나 백업 작비를 단일화시킨 시스템이다.

NAS(Network Attached Storage)

  • 컴퓨터에 직접 연결하지 않고 네트워크를 통해 데이터를 주고받는 저장 장치이다.
  • 구조적으로는 스토리지 서버를 단순화, 소형화한 것이다.

Software Defined Storage

  • 가상화를 적용하여 필요한 공간만큼 나눠 사용할 수 있도록 하며, 서버 가상화와 유사하다.
  • 컴퓨팅 소프트웨어로 규정하는 데이터 스토리지 체계이며, 일정 조직 내 여러 스토리지를 하나처럼 관리하고 운용하는 컴퓨터 이용 환경으로 스토리지 자원을 효율적으로 나누어 쓰는 방법이다.

데이터웨어하우스(Data Warehouse)

  • 기간 업무 시스템에서 추출되어 새로이 생성된 데이터베이스로서 의사결정지원시스템을 지원하는 주제적, 통합적, 시간적 데이터의 집합체이다.
  • 통합된 데이터에 대한 OLAP(On-Line Analytical Processing) 연산을 효율적으로 지원할 수 있다.

데이터 마트(Data Mart)

  • 데이터웨어하우스와 사용자 사이의 중간층에 위치하며 데이터웨어하우스보다 규모나 비용 측면에서 축소된 개념이다.

빅데이터(Big Data)

  • 많은 양의 정형 또는 비정형 데이터들로부터 가치를 추출하고 결과를 분석하는 기술이다.
  • 빅데이터의 특성은 Volume(규모), Velocity(속도), Variety(다양성)이다.
  • 구글 및 페이스북, 아마존의 경우 이용자의 성향과 검색 패턴, 구매패턴을 분석해 맞춤형 광고를 제공하는 등 빅데이터의 활용을 증대시키고 있다.

데이터마이닝(Data Mining)

  • 대량의 데이터를 분석하여 데이터 속에 있는 변수 사이의 상호관계를 규명하여 일정한 패턴을 찾아내는 기법이다.
  • 데이터웨어하우징에서 수집되고 분석된 자료를 사용자에게 제공하기 위해 분류 및 가공되는 요소 기술이다.

디지털 아카이빙(Digital Archiving)

  • 디지털 정보 자원을 장기적으로 보존하기 위한 작업이다.
  • 아날로그 콘텐츠는 디지털로 변환해 압축해서 저장하고, 디지털 콘텐츠도 체계적으로 분류하고 메타 데이터를 만들어 DB화하는 작업이다.

하둡(Hadoop)

  • 오픈소스를 기반으로 한 분산 컴퓨팅 플랫폼으로 일반 PC급 컴퓨터들로 가상화된 대형 스토리지를 형성하고, 그 안에 보관된 거대한 데이터 세트를 병렬로 처리할 수 있도록 빅데이터 분산 처리를 돕는 자바 소프트웨어 오픈소스 프레임워크이다.
  • 다양한 소스를 통해 생성된 빅데이터를 효율적으로 저장하고 처리한다.
  • 하둡의 필수 핵심 구성 요소는 맵리듀스와 하둡 분산 파일 시스템이다.
  • Sqoop : 하둡과 관계형 데이터베이스 간에 데이터를 전송할 수 있도록 설계된 도구이다.

맵리듀스(MapReduce)

  • Hadoop의 핵심 구성 요소로서 대용량 데이터를 분산 처리하기 위한 목적으로 개발된 프로그래밍 모델이다.
  • Google에 의해 고안된 기술로써 대표적인 대용량 데이터 처리를 위한 병렬 처리 기법을 제공한다.
  • 임의의 순서로 정렬된 데이터를 분산 처리하고 이를 다시 합치는 과정을 거친다.

정보 보안의 3대 요소 ★★★

  • 기밀성(Confidentiality)
    • 인가된 사용자만 정보 자산에 접근할 수 있다.
    • 일반적인 보안의 의미와 가장 가깝다.
    • 방화벽, 암호 패스워드 등이 대표적인 예이다.
    • 신분 위장(Masquerading) 등과 같은 공격에 의해 위협받을 수 있다.
  • 무결성(Integrity)
    • 시스템 내의 정보는 오직 인가된 사용자가 인가된 방법으로만 수정할 수 있다.
    • 변경, 가장, 재전송 등과 같은 공격에 의해 위협받을 수 있다.
  • 가용성(Availability)
    • 사용자가 필요할 때 데이터에 접근할 수 있는 능력을 말한다.
    • 인가된 사용자가 조직의 정보 자산에 적시에 접근하여 업무를 수행할 수 있도록 유지하는 것을 목표로 한다.
    • 가용성을 유지하기 위해 데이터 백업, 위협 요소 제거 등의 기술을 사용할 수 있다.
    • 서비스 거부(Denial of Service) 등과 같은 공격에 의해 위협받을 수 있다.

보안 약점의 종류

  • SQL Injection
    • 검증되지 않은 외부 입력값이 SQL 쿼리문에 삽입되어 공격할 수 있는 보안 약점이다.
    • DB에 컴파일된 SQL 쿼리문을 전달함으로써 방지할 수 있다.
    • SQL Injection 취약점이 발생하는 곳을 주로 웹 애플리케이션과 데이터베이스가 연동되는 부분이다.
    • 로그인과 같이 웹에서 사용자의 입력값을 받아 데이터베이스 SQL문으로 데이터를 요청하는 경우 SQL Injection을 수행할 수 있다.
  • 경로 조작 및 자원 삽입
    • 검증되지 않은 외부 입력값이 시스템 자원 접근 경로를 조작하거나 시스템 자원에 삽입되어 공격할 수 있는 보안 약점이다.
  • 크로스 사이트 스크립트(XSS, Cross Site Scripting)
    • 게시판의 글에 원본과 함께 악성 코드를 삽입하여 글을 읽으면 악성코드가 실행되도록 하여 클라이언트의 정보를 유출하는 공격 방법이다.
    • 웹페이지에 악의적인 스크립트를 포함시켜 사용자 측에서 실행되게 유도함으로써, 정보 유출 등의 공격을 유발할 수 있는 취약점이다.
    • 외부 입력값에 스크립트가 삽입되지 못하도록 문자열 치환 함수를 사용하거나 JSTL이나 크로스사이트 스크립트 방지 라이브러리를 사용함으로써 방지할 수 있다.
  • XQuery 삽입
    • XQuery를 사용하여 XML 데이터에 대한 동적 쿼리 생성 시 검증되지 않은 외부 입력값이 쿼리문 구조 변경에 사용될 수 있는 보안 약점이다.
    • XQuery에 사용되는 외부 입력값에 대하여 특수문자 및 쿼리 예약어 필터링을 통해 방지할 수 있다.
  • XPath 삽입
    • 검증되지 않은 외부 입력값으로 XPath 쿼리문을 생성하여 쿼리문의 의미나 구조가 변경될 수 있는 보안 약점이다.
  • LDAP 삽입
    • 외부 입력값이 올바르게 처리되지 못하여 LDAP(Lightweight Directory Access Protocol) 쿼리문의 구성 변경에 사용될 수 있는 보안 약점이다.
    • DN(Distinguished Name)과 필터에 사용되는 외부 입력값에 특수문자를 제거함으로써 방지할 수 있다.

암호화 알고리즘

  • 평문을 암호문으로 바꾸고, 암호문을 다시 평문으로 바꿀 때 사용되는 알고리즘을 의미한다.
  • 평문을 암호문으로 바꾸는 과정을 암호화(Encryption)라고 하고, 암호문을 다시 평문으로 바꾸는 과정을 복호화(Decryption)라고 한다.
  • 암호화 및 복호화 과정에 암호키(Cryptographic key)가 필요하다.

암호 방식의 분류

  • 암호화 방식
    • 단방향
      • 해시
    • 양방향
      • 비밀키
        • 스트림 방식
        • 블록 방식
      • 공개 키

공개키(Public Key, 비대칭키) 암호화 기법

  • 암호키와 해독키가 서로 다른 기법으로 키 개수는 2N개가 필요하다.
  • 비대칭키 암호화 기법 또는 공중키 암호화 기법이라고도 한다.
  • 키 분배가 비밀키 암호화 기법보다 쉽고, 암호화/복호화 속도가 느리며 알고리즘이 복잡하다.
  • RSA, ElGama 기법 등이 있다.
    • RSA(Rivest Shamir Adieman)
      • 소인수 분해의 어려움에 기초를 둔 알고리즘
      • 1978년 MIT에 의해 제안됨
      • 전자문서에 대한 인증 및 부인 방지에 활용된다.
    • ElGama
      • 이산대수 문제의 어려움에 기초를 둔 알고리즘
      • 동일한 메시지라도 암호화가 이루어질 때마다 암호문이 변경되고 암호문의 길이가 2개로 늘어나는 특징이 있다.

비밀키(Private Key, 대칭키) 암호화 기법

  • 동일한 키로 암호화하고 복호화하는 기법으로 키 개수는 N(N-1)/2 개가 필요하다.
  • 대칭키 암호화 기법 또는 개인키 암호화 기법이라고도 한다.
  • 암호화/복호화 속도가 빠르고 알고리즘이 단순하다.
  • 키 분배가 공개키 암호화 기법보다 어렵다.
  • 스트림 방식과 블록 방식으로 분류된다.
    • 스트림 방식
      • 평문의 길이와 동일한 스트림(Stream)을 생성하여 비트 단위로 암호화하는 대칭키 암호화 방식이다. 암호화할때 XOR 연산을 수행한다.
      • 종류 : RC4, A5/1, LSFR, SEAL, WEP, OFB
    • 블록 방식
      • 평문을 블록 단위로 암호화하는 대칭키 암호화 방식이다.
      • 종류
        • DES(Data Encryption Standard)
          • 1970년대 초 IBM이 개발한 알고리즘이다.
          • 16라운드 Feistel 구조를 가진다.
          • 평문을 64비트로 블록화를 하고, 실제 키의 길이는 56비트를 이용한다.
          • 전사 공격(Brute-Force Attack)에 취약하다.
        • AES(Advanced Encryption standard)
          • DES를 대신하여 새로운 표준이 되었다.
          • 블록 크기는 128비트이고, 키 길이는 128/192/256 비트이다.
          • SPN(Substitution-Permutation Network) 구조이다.
        • ARIA
          • 국내 기술로 개발된 암호 알고리즘이다.
          • 경량 환경 및 하드웨어 구현에서의 효율성 향상을 위해 개발되었다.
          • 우리나라 국가 표준으로 지정되었다.
          • 블록 크기와 키 길이가 AES와 동일하다.
        • SEED
          • 국내 기술로 개발된 128비트 블록 암호 알고리즘이다.
          • Feistel 구조이다.
          • 2005년 국제 표준으로 제정되었다.
        • IDEA
          • DES를 대체하기 위해서 스위스에서 개발한 알고리즘이다.
          • 상이한 대수 그룹으로부터의 세 가지 연산을 혼합하는 방식이다.

해시(HASH) 암호화 방식

  • 임의의 길이의 메시지를 입력으로 하여 고정된 길이의 출력값을 변환하는 시법이다.
  • 주어진 원문에서 고정된 길이의 의사난수를 생성하며, 생성된 값을 해시값이라고 한다.
  • 해시 함수라고도 한다.
  • 디지털 서명에 이용되어 데이터 무결성을 제공한다.
  • 블록체인에서 체인 형태로 사용되어 데이터의 신뢰성을 보장한다.
  • SHA, SHA1, SHA256, MD5, RMD160, HAS-160, HAVAL 기법 등이 있다.

SHA(Secure Hash Algorithm)

  • 1993년에 미국 NIST에 의해 개발되었고 가장 많이 사용되고 있는 방식이다.
  • SHA-1은 DSA에서 사용하게 되어 있으며 많은 인터넷 응용에서 Default 해시 알고리즘으로 사용된다.
  • SHA-256, SHA-384, SHA-512는 AES의 키 길이인 128, 192, 256bit에 대응하도록 출력 길이를 늘린 해시 알고리즘이다.

SALT

  • 시스템에 저장되는 패스워드들은 Hash 또는 암호화 알고리즘의 결과값으로 저장된다. 이때 암호 공격을 막기 위해 똑같은 패스워드들이 다른 암호 값으로 저장되도록 추가되는 값을 의미한다.

서비스 공격 유형

Dos(Denial of Service, 서비스 거부)

  • 시스템의 자원을 부족하게 하여 원래 의도된 용도로 사용하지 못하게 하는 공격 방법이다.
  • 정보보호의 3대 목표 중 가용성(Availability)을 위협하는 행위로서 공격자가 임의로 자신의 IP 주소를 속여서 다량으로 서버에 보낸다.
  • 헤더가 조작된 일련의 IP 패킷 조각들을 전송한다.
  • 라우터, 웹, 전자 우편, DNS 서버 등 모든 네트워크 장비를 대상으로 이루어질 수 있다.

DDOS(Distributed Denial of Service, 분산 서비스 거부)

  • 여러 대의 공격자를 분산 배치하여 동시에 서비스 거부 공격함으로써 공격 대상이 되는 시스템이 정상적인 서비스를 할 수 없도록 방해하는 공격 방법이다.
  • 공격용 도구 : Trinoo, TFN(Tribe Flood Network), TFN2K, Stacheldraht 등이 있다.

ETC ...

보안 솔루션

IDS(Intrusion Detection System, 침입 탐지 시스템)

  • 침입 공격에 대하여 탐지하는 것을 목표로 하는 보안 솔루션이다.
  • 외부 침입에 대한 정보를 수집하고 분석하여 침입 활동을 탐지해 이에 대응하도록 보안 담당자에게 통보하는 기능을 수행하는 네트워크 보안 시스템이다.
  • 예방적이고 사전에 조처를 하는 기술로서 HIDS와 NIDS로 구분한다.

방화벽(Firewall)

  • 내부-외부 네트워크 사이에 위치하여, 보안 정책을 만족하는 트래픽만 통과할 수 있다.
  • 방화벽이 제공하는 기능에는 접근 제어, 인증, 감사 추적, 암호화 등이 있다.
  • 불법 사용자의 침입 차단을 위한 정책과 이를 지원하는 하드웨어 및 소프트웨어를 제공한다.
  • 방화벽 하드웨어 및 소프트웨어 자체의 결함에 의해 보안상 취약점을 가질 수 있다.
  • 내부 네트워크에서 외부 네트워크로 나가는 패킷을 그대로 통과시키므로 내부 사용자에 의한 보안 침해는 방어하지 못한다.

정보보호 대책

IPS(Intrusion Prevention System, 침입 방지 시스템)

  • 사후에 조치를 취하는 기술로서 침입 공격에 대하여 방지하는 것을 목표로 하는 보안 솔루션이다.
  • IDS와 방화벽의 장점을 결합한 네트워크 보안 시스템이다.
  • 호스트의 IP 주소, 포트 번호, 사용자 인증에 기반을 두고 외부 침입을 차단한다.
  • 허용되지 않는 사용자나 서비스에 대해 사용을 거부하여 내부 자원을 보호한다.

DMZ(DeMilitarized Zone, 비무장지대)

  • DMZ는 보안 조치가 취해진 네트워크 영역이다.
  • 메모리, 네트워크 연결, 접근 포인트 등과 같은 자원에 대한 접근을 제한하기 위한 구축된다.
  • 내부 방화벽과 외부 방화벽 사이에 위치할 수 있다.
  • 웹 서버, DNS 서버, 메일 서버 등이 위치할 수 있다.

IPSec(IP security)

  • 통신 세션의 각 IP 패킷을 암호화하고 인증하는 안전한 인터넷 프로토콜(IP)이다.
  • ESP(Encapsulation Security Payload)는 발신지 인증, 데이터 무결성, 기밀성 모두를 보장한다.
  • 운영 보드는 Tunnel 모드와 Transport 모드로 분류된다.
  • AH(Authentication Header)는 발신지 호스트를 인증하고, IP 패킷의 무결성을 보장한다.

DLP(Data Loss Prevention)

  • 기업 데이터 유출을 방지하는 것을 목표로 하는 보안 솔루션이다.
  • 사용자의 PC에서 기업 내 기밀 데이터가 외부로 반출되는 것을 항시 감시하고 기록하며, 정책에 따라 유출을 차단시킨다.

ESM(Enterprise Security Management, 통합 보안 관리)

  • 방화벽, 침입 탐지 시스템, 가상 사설망 등의 보안 솔루션을 하나로 모은 통합 보안 관리 시스템으로 서로 다른 보안 장비에서 발생한 각종 로그를 통합적으로 관리하여 통합 보안 관제 서비스를 제공한다.
  • 전사적 차원의 보안 정책 통합 관리와 적용을 통해 정보 시스템 보안성을 향상시키고 안정성을 높인다.

VPN(Virtual Private Network, 가상 사설망)

  • 이용자가 인터넷과 같은 공중망에 사설망을 구축하여 마치 전용망을 사용하는 효과를 가지는 보안 솔루션이다.
  • 안전하지 않은 공용 네트워크를 이용하여 사설 네트워크를 구성하는 기술이다.
  • 전용선을 이용한 사설 네트워크에 비해 저렴한 비용으로 안전한 망을 구성할 수 있다.
  • 공용 네트워크로 전달되는 트래픽은 암호화 및 메시지 인증 코드 등을 사용하여 기밀성과 무결성을 제공한다.
  • 인터넷과 같은 공공 네트워크를 통해서 기업의 재택근무자나 이동 중인 직원이 안전하게 회사 시스템에 접근할 수 있도록 해준다.

참조 : Github repository

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

    COMMENTS