본문 바로가기

정보처리기사

(22)
[정보처리기사] 정보처리 기사 정리 후기 참고서를 읽고 여러 자료를 종합하면서 정리했다. 몇 주의 시간이 걸렸지만, 자격증을 위한 공부가 아니라 프로그래머의 현업에서 쓸 수 있는 정보이길 바랬다. 자신의 분야가 아닌 지식은 때로는 쓸모없게 느껴지기도 하겠지만 기술은 지속적으로 발전하고 있다. 만약 새로운 사업이 나온다면, 이러한 배경 지식이 도움이 될 것이다. 정리한 것은 사실 내가 이해하기 쉽게 정리한 거라 유용할지는 알 수 없다. 이러니 저러니해도 요약본이기 때문이 '참고서'를 통해 공부하는 것만 못할 것이다. 하지만 누군가에게는 도움이 될 것이고, 또한 나에게도 도움이 될 것이기에 시간을 들여 공부했다. 나도 이 시험을 1달 가량 준비하고 치르게 되지만 시험에 도전하는 모두가 좋은 결과가 있으면 좋겠다. 더욱이 프로그래머로 길을 정한 사람..
[정보처리기사] Chapter 04. 정보시스템 구축 관리: 시스템 보안 구축 1. 서비스 공격 유형 1.1. 서비스 거부(DoS; Denial of Service) 공격의 개념 서비스 거부 공격이란 표적이 되는 서버의 자원을 고갈시킬 목적으로 다수의 공겨자 또는 시스템에서 대량의 데이터를 한 곳의 서버에 집중적으로 전송함으로써, 표적이 되는 정상적인 기능을 방해하는 것이다. 서비스 거부 공격의 유형에는 Ping of Death, SMURFING, SYN Flooding, TearDrop, Land, DDos 등이 있다. 1.2. DoS 공격의 유형 1) Ping of Death(죽음의 핑) Ping of Death는 Ping 명령을 전송할 때 패킷의 크기를 인터넷 프로토콜 허용 범위(65,536 바이트) 이상으로 전송하여 공격 대상의 네트워크를 마비시키는 서비스 거부 공격 방법이..
[정보처리기사] Chapter 03. 정보시스템 구축 관리: 소프트웨어 개발 보안 구축 1. Secure SDLC 1.1. Secure SDLC의 개요 Secure SDLC는 보안상 안전한 소프트웨어를 개발하기 위해 SDLC에 보안 강화를 위한 프로세스를 포함한 것을 의미한다. 소프트웨어의 유지 보수 단계에서 보안 이슈를 해결하기 위해 소모되는 많은 비용을 최소화하기 위해 등장했다. Secure SDLC의 대표적인 방법론에는 Secure Software 사의 CLASP, Microsoft사의 SDL이 있다. 요구사항 분석, 설계, 구현, 테스트, 유지 보수 등 SDLC 전체 단계에 걸쳐 수행되어야 할 보안 활동을 제시한다. 1.2. 요구사항 분석 단계에서의 보안 활동 요구사항 분석 단계에서는 보안 항목에 해당하는 요구사항을 식별하는 작업을 수행한다. 전산화되는 정보가 가지고 있는 보안 수준..
[정보처리기사] Chapter 02. 정보시스템 구축 관리: IT프로젝트 정보시스템 구축 관리 1. 네트워크 관련 신기술 1.1. IoT (Internet of Things, 사물 인터넷) IoT는 다양한 사물들을 인터넷으로 서로 연결하여 진보된 서비스를 제공하기 위한 서비스 기반 기술이다. 유비쿼터스 공간을 구현하기 위한 컴퓨팅 기기들이 환경과 사물에 심겨 환경이나 사물 그 자체가 지능화되는 것부터 사람과 사물, 사물과 사물 간에 지능 통신을 할 수 있는 엠투엠(M2M; Machine to Machine)의 개념을 인터넷으로 확장하여 사물은 물론, 현실과 가상 세계의 모든 정보와 상호작용하는 IoT 개념으로 진화했다. 주요 기술로는 스마트 센싱 기술, 유무선 통신 및 네트워크 인프라 기술 등이 있다. 정보 공유에 대한 부작용을 최소화하기 위한 정보 보안 기술의 적용이 중요하다. 1.2. M2M ..
[정보처리기사] Chapter 01. 정보시스템 구축 관리: 소프트웨어 개발 방법론 활용 1. 소프트웨어 개발 방법론 1.1. 소프트웨어 개발 방법론의 개요 소프트웨어 개발 방법론은 소프트웨어 개발, 유지보수 등에 필요한 여러 가지 일들의 수행 방법과 이러한 일들을 효율적으로 수행하려는 과정에서 필요한 각종 기법 및 도구를 체계적으로 정리하여 표준화한 것이다. 소프트웨어 개발 방법론의 목적은 소프트웨어의 생산성과 품질 향상이다. 소프트웨어 개발 방법론의 종류에는 구조적 방법론, 정보공학 방법론, 객체지향 방법론, 컴포넌트 기반(CBD) 방법론, 애자일(Agile) 방법론, 제품 계열 방법론 등이 있다. 1.2. 구조적 방법론 구조적 방법론은 정형화된 분석 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리(Process) 중심의 방법론이다. 쉬운 이해 및 검증이 가능한 프로그램을 생성하는..
[정보처리기사] Chapter 03. 프로그래밍 언어 활용: 응용 소프트웨어 기초 기술 활용 1. 운영체제의 개념 1.1. 운영체제(OS)의 정의 운영체제(OS, Operating System)는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임이다. 스스로는 어떤 유용한 기능도 수행하지 않는다. 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로, 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해준다. 유틸리티와 하드웨어 사이에 존재한다. 구조: HW > OS > Utility > APP > User 1.2. 운영체제의 목적 처리 능력 향상, 사용 가능도 향상, 신뢰도 향상, 반환 시간 단축을 목적으로 한다. 처리능력 (Throughput) 일정 시간 내..
[정보처리기사] Chapter 02. 프로그래밍 언어 활용: 프로그래밍 언어 활용 1. 데이터 타입 데이터 타입은 변수에 저장될 데이터의 형식을 나타내는 것으로, 변수에 값을 저장하기 전에 문자형/정수형/실수형 등 어떤 형식의 값을 저장할지 데이터 타입을 지정하여 변수를 선언해야 한다. 유형 기능 예 정수(Integer) 정수 숫자를 저장할 때 사용 1, -1, 10, -100 부동 소수점(Floating Point) 소수점 이하가 있는 실수 저장할 때 사용 0.123, -1.6 문자(Character) 한 문자를 저장할 때 사용, ' ' 안에 표시 'A', 'b', '1', '*' 문자열(Character String) 문자열을 저장할 때 사용, " " 안에 표시 "Hello!", "1+2=3" 불리언(Boolean) 조건의 참 / 거짓(기본) 여부를 판단하여 저장 True, Fal..
[정보처리기사] Chapter 01. 프로그래밍 언어 활용: 서버 프로그램 구현 1. 개발 환경 구축 개발 환경 구축은 응용 소프트웨어 개발을 위해 개발 프로젝트를 이해하고, 소프트웨어 및 하드웨어 장비를 구축하는 것을 말한다. 개발 환경은 응용 소프트웨어가 운영될 실제 환경과 유사한 구조로 구축하는 것이 유리한데, 이는 소프트웨어가 개발 이후에도 지속적인 유지보수가 필요하기 때문이다. 개발 프로젝트 분석 단계의 산출물을 바탕으로 개발에 필요한 하드웨어와 소프트웨어를 선정하는데, 하드웨어와 소프트웨어의 성능, 편의성, 라이선스 등의 비즈니스 환경에 적합한 제품을 결정하여 선정한다. 1.1. 하드웨어 환경 하드웨어는 사용자와의 인터페이스 역할을 하는 클라이언트, 클라이언트와 통신하여 서비스를 제공하는 서버로 구성된다. 서버는 사용 목적에 따라 웹 서버, 웹 애플리케이션 서버, 데이터베..