본문 바로가기

분류 전체보기

(102)
[정보처리기사] 정보처리 기사 정리 후기 참고서를 읽고 여러 자료를 종합하면서 정리했다. 몇 주의 시간이 걸렸지만, 자격증을 위한 공부가 아니라 프로그래머의 현업에서 쓸 수 있는 정보이길 바랬다. 자신의 분야가 아닌 지식은 때로는 쓸모없게 느껴지기도 하겠지만 기술은 지속적으로 발전하고 있다. 만약 새로운 사업이 나온다면, 이러한 배경 지식이 도움이 될 것이다. 정리한 것은 사실 내가 이해하기 쉽게 정리한 거라 유용할지는 알 수 없다. 이러니 저러니해도 요약본이기 때문이 '참고서'를 통해 공부하는 것만 못할 것이다. 하지만 누군가에게는 도움이 될 것이고, 또한 나에게도 도움이 될 것이기에 시간을 들여 공부했다. 나도 이 시험을 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. 요구사항 분석 단계에서의 보안 활동 요구사항 분석 단계에서는 보안 항목에 해당하는 요구사항을 식별하는 작업을 수행한다. 전산화되는 정보가 가지고 있는 보안 수준..
[JAVA] Chapter 16. 클래스의 구성과 선언 1. 클래스의 구성 요소 자바에서 클래스는 멤버(member)로 속성을 표현하는 필드(field)와 기능을 표현하는 메소드(method)를 가진다. 또한, 경우에 따라 클래스는 생성된 객체의 필드를 초기화해주는 메소드인 생성자(constructor)를 가진다. class Bungerbbag { // 클래스 이름 private String hiddenmenu; // 필드 public String flavor; // 필드 Bungerbbang(int amount, String flavor) { // 생성자 this.amount = 6; this.flavor = 슈크림; } public String buyBungerbbang() { // 메소드 return this.amount + "개, " + this.fl..
[정보처리기사] 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) 중심의 방법론이다. 쉬운 이해 및 검증이 가능한 프로그램을 생성하는..
[JAVA] Chapter 15. 클래스의 구조 클래스란 java 에서 변수가 선언되고 함수가 작동하는 영역을 말하는데, 객체 자체를 class라고 한다. 자동차를 예로 들어 클래스를 설명하자면 다음과 같다. class Car { String modelName; int modelYear; String modelColor; int maxSpeed; int momentAccel; acceleration(){ System.out.print("가속한다") } brake(){ System.out.print("멈춘다") } turnon(){ System.out.print("시동을 켠다") } turnoff(){ System.out.print("시동을 끈다") } } 위와 같이 class가 지정된 상태라면, 해당 클래스는 pakage 내에서 호출하여 별도의 객체를..
[정보처리기사] Chapter 03. 프로그래밍 언어 활용: 응용 소프트웨어 기초 기술 활용 1. 운영체제의 개념 1.1. 운영체제(OS)의 정의 운영체제(OS, Operating System)는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임이다. 스스로는 어떤 유용한 기능도 수행하지 않는다. 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로, 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해준다. 유틸리티와 하드웨어 사이에 존재한다. 구조: HW > OS > Utility > APP > User 1.2. 운영체제의 목적 처리 능력 향상, 사용 가능도 향상, 신뢰도 향상, 반환 시간 단축을 목적으로 한다. 처리능력 (Throughput) 일정 시간 내..