정보처리기사 필기 2022년 04월 24일 기출(5과목 : 데이터베이스 구축)
# 정보보안 3요소
- 기밀성 : 인가되지 않은 사용자로부터 정보공개 혹은 노출을 차단하는 특성
- 무결성 : 정당한 방법을 따르지 않고 데이터가 변경되지 않음을 보장하는 특성
- 가용성 : 권한을 가진 사용자가 원하는 서비스를 지속해서 사용할수 있도록 보장하는 특성
- wrapper = 실제 데이터의 앞에서 어떤 틀을 잡아주는 데이터 or 다른 프로그램이 성공적으로 실행되도록 설정
- TCP/IP 통신에서 TCP는 3-way handshake를 통해 통신이 원활히 이뤄질 수 있는지를 확인.
- BcN(Broadband Convergence Network) : 다양한 통신기술과 서비스를 하나의 망에서 통합관리(안정적,높은대역폭)
- Zing : 전자기기에서 소리가 울리면서 동시에 진동한다.
- Marine Navi : 해상에서 사용되는 네비게이션 서비스로 선박의 위치,항로,지형 등의 정보를 제공한다.
- C-V2X : 차량,인프라,통신을 위한 셀룰러 통신기술(차량안전, 교통효율성, 자율주행 등)
# 응용 프로그램 취약점 관리
- 패치 관리 : 응용프로그램에 대한 패치 또는 서비스팩 적용
- 응용 프로그램 실행권한의 제한 필요
- 운영체제의 접근 제한
- 정보 수집 제한
- 불필요한 서비스 및 악성 프로그램의 확인 및 제거
- 시스템 무결성 검사 : 주요 파일을 검사하여 변경 내역 확인
# 소프트웨어 개발 프레임 워크 :
- 소프트웨어 개발에 공통적으로 사용되는 구성 요소와 아키텍처를 일반화 하여 제공해주는 반제품 형태
- 프레임워크 : 이미 정해진 코드를 호출해 사용하고 자체적인 흐름을 가짐
> 모듈화 : 프레임 워크는 캡슐화를 통해 모듈화를 강화하고 설계 및 구현의 변경에 따른 영향을 최소화
> 재사용성 : 재사용 가능한 모듈을 제공함으로 예산 절감, 생산성 향상, 품질 보증
> 확장성 : 다형성을 통한 인터페이스 확장이 가능하여 다양한 형태와 기능을 가진 애플리케이션 필요
> 제어의 역흐름 : 개발자가 관리하고 통제해야 하는 객체들의 제어를 프레임워크에 넘김으로써 생산성 향상
- 라이브러리 : 사용자 코드에서 호출해 사용하고 그에 대한 제어를 할 수 있다.
- HSM : 암호화 관련 전체 과정을 내부적으로 안전하면서 빠르게 수행하는 하드웨어 장치(USB형태의 보안토큰)
- VLAN : 네트워크를 논리적으로 분할하여 여러개읭 가상 네트워크 생성
- simple station network : 단순한 구성의 네트워크, 한대의 컴퓨터가 다른컴퓨터와 직결되어 있는 형태
- Mesh Network : 각 노드가 서로 연결되어 있는 분산형 네트워크. 중앙 집중식 구조에 비해 안전성과 확장성이 높다.
- Modem Network : 다양한 디바이스를 모뎀을 통해 연결하여 네트워크 형성.
- Worm : 다른 컴퓨터의 취약점을 이용하여 스스로 전파, 메일로 전파되며 스스로 증식
- Rogure Ware : 가짜백신소프트웨어
- Adware : 특정 소프트웨어를 실행, 자동으로 활성화 되는 광고프로그램.
- Reflection Attack : 반사공격. 송신자가 보낸 메시지를 탈취하여 공격자가 송신자에게 재전송하여 접근권한 탈취.
- Session Hijacking : 세션 가로채기. 컴퓨터의 시스템의 정보나 서비스에 공격자가 피공격자의 로그인 정보를 탈취.
- Piggback Attack : 피그백 공격. 사용자가 비사용(비활성)기간을 이용하여 엑세스 접근. 간선(회선)공격이라고 불림.
- XSS(크로스 사이트 스크립팅) : 웹사이트에 악성 스크립트를 주입하는 행위.
# 소프트웨어 개발 프레임 워크 :
- 소프트웨어 개발에 공통적으로 사용되는 구성 요소와 아키텍처를 일반화 하여 제공해주는 반제품 형태
- 프레임워크 : 이미 정해진 코드를 호출해 사용하고 자체적인 흐름을 가짐
- 라이브러리 : 사용자 코드에서 호출해 사용하고 그에 대한 제어를 할 수 있다.
- 컨테이너 아키텍처 : 소프트웨어를 실행하는데 필요한 모든요소(코드, 라이브러리, 환경설정) 등을 제공
- 어휘 분석기 : 자연어 처리를 위해 문장을 구성하는 단어나 어절을 분석하여 형태소나 품사등의 정보를 추출
- 애자일 방법론 : 고객의 요구사항 변화에 유연하게 대응할수 있도록 일정 주기를 반복하며 개발과정을 진행하는 방법론
소규모 프로젝트, 급변하는 요구사항에 적합
- 폭포수 모형 : 개발 프로세스를 요구사항분석, 설계, 구현, 테스트, 유지보수의 단계로 구분.
각 단계를 순차적으로 진행하는 전통적인 소프트웨어 개발 방법, 각 단계의 결과를 완전히 확인 후 다음 단계 진행.
# 대칭 암호 알고리즘(DES,AES,SEED,RC4,IDEA)
- 암호화와 복호화에 같은 암호키를 쓰는 알고리즘
- 키 교환이 필요하기 때문에 키가 탈취될 수 있는 문제가 있다.
- 실행 속도가 빠름.
# 비대칭 암호 알고리즘(디피-헬만, RSA)
- 사전에 비밀키를 나눠가지지 않은 사용자들이 안전하게 통신하는 암호 알고리즘
- 비대칭 키와 비밀 키가 존재.
- 실행 속도가 느리다
# 비용 산정 기법
- 하향식 비용 산정 기법 : 과거 경험을 바탕으로 회의를 통한 비용을 산정하는 비과학적인 방법(전문가, 델파이 기법)
- 상향식 비용 산정 기법 : 프로젝트의 세부적인 작업 단위별로 비용을 산정 후 전체 비용을 산정하는 방법
> LOC(원시 코드 라인 수) 방법 :
- 프로그램의 라인 수를 평가하여 비용을 산정하는 방법(비관치, 낙관치, 기대치를 측정해 예측치를 구함.)
- 예측치 = {낙관치+(4 * 기대치) + 비관치} / 6
- 생산성 = LOC / 노력(인월)
> COCOMO(Constructive Cost Model) 방법 :
- 보헴(boehm)이 제시한 원시 프로그램 규모에 의한 비용 예측 모형
- 소프트웨어의 종류에 따라 다르게 책정되는 비용 신장 방정식
- 같은 규모의 프로그램이여도 그 성격에 따라 비용이 다르게 산정됨
- 비용 견적의 강도 분석 및 비용 견적의 유연성이 높아 소프트웨어 개발비 견적에 널리 통용
- 비용 산정 결과는 프로젝트를 완성하는데 필요한(Man-Month)로 나타냄
- 개발할 소프트웨어 규모(LOC)를 예측 한 후 이를 소프트웨어 종류에 따라 책정되는 비용산정방정식에 대입
> COCOMO 소프트웨어 프로젝트 모드(개발 유형)
- 복잡도, 원시 프로그램의 규모에 따라 조직형, 반분리형, 내장형으로 분류
- Organic Mode(조직형) : 중,소규모의 소프트웨어(사무,업무용). 50KDSI라인 이하의 소프트웨어를 개발
- Semi-Detached Mode(반분리형) : 조직형과 내장형의 중간(운영체제,데이터베이스 관리). 30KDSI 이하
- Embedded Mod(내장형) : 최대형 규모(트랜잭션 처리시스템, 운영체제). 30KDSI 이상
> COCOMO 모형의 종류(기본형, 중간형, 발전형)
- Basic(기본형) : 생산라인코드, 개발 유형만을 이용하여 산정하는 모형
- Intermediate(중간형) : 기본형을 토대. 여러가지 다른 요인에 의해 비용을 산정하는 모형
- Detailed(발전형) : 중간형을 보완. 개발 공정별로 보다 자세하고 정확하게 노력을 산출하여 비용을 산정하는 모형
- 인적비용(COST) = MM * 1인당 월 평균 급여
> Putnam 모형 : 생명주기 예측 모형. 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선을 기초로함
> SLIM 모형 : Putnam + Rayleigh-Norden 곡선을 기초. 자동화 추정 도구
> FP(Function Point) 기능점수 모형 : Albercht가 제안. 기능증대의 요인을 가중치. 요인별 가중치를 합산하여 총 기능 점수를 산출. 총 기능 점수와 영향도를 이용하여 기능점수(FP)를 구한후 이를 이용하여 비용을 산정하는 기법
# 접근통제 3요소
- 접근통제 정책
> DAC(Discretionary Access Control) : 데이터 소유자가 접근권한을 지정하고 제어
> MAC(Mandatory Access Control) : 시스템이 접근통제 권한을 지정
> RBAC(Role Based Access Control) : 사용자의 역할에 따라 접근권한, 중앙관리자가 권한지정, 다중환경에 최적화
- 접근통제 기술
> 신분기반 정책 : 신분에 근거하여 접근을 제한(IBP: 단일주체-하나객체 최소권한정책, GBP: 복수주체-하나객체)
> 규칙기반 정책 : 권한에 근거하여 접근 제한(MLP: 객채별 기밀분류에 따른 정책, CBP: 집단별 기밀 허가 정책)
> 역할기반 정책 : GBP의 변형된 정책(주체의 역할에 근거하여 객체 접근)
- 접근통제 보안모델
> 기밀성 : 군사적 목적으로 개발된 최초의 수학적 모델.
> 무결성 : 기밀성 모델에서 발생하는 불법적 정보변경을 방지하기 위해 개발된 모델
> 접근통제 : 임의적인 접근통제를 관리하기 위한 보안모델. 주채와 객체의 권한 유형
> COCOMO 소프트웨어 프로젝트 모드(개발 유형)
- 복잡도, 원시 프로그램의 규모에 따라 조직형, 반분리형, 내장형으로 분류
- Organic Mode(조직형) : 중,소규모의 소프트웨어(사무,업무용). 50KDSI라인 이하의 소프트웨어를 개발
- Semi-Detached Mode(반분리형) : 조직형과 내장형의 중간(운영체제,데이터베이스 관리). 30KDSI 이하
- Embedded Mod(내장형) : 최대형 규모(트랜잭션 처리시스템, 운영체제). 30KDSI 이상
* 럼바우 분석 기법
- Ojbect(객체 모델링) : 시스템의 정적 구조 표현(속성과 연산식별, 객체간의 관계를 규정)
- Dynamic(동적 모델링) : 동적 행위(객체들 간의 제어 흐름, 상호 작용, 동작 순서 등)
- Functional(기능 모델링) : 데이터 값의 변화 표현(자료흐름도(DFD)를 이용하여 다수 자료 흐름을 중심으로 처리)
- 지식 : 본인이 알고있는것 (Passwd, PIN)
- 소유 : 본인이 가지고 있는것(Tokken, 스마트카드)
- 존재 : 본인을 나타내는 것(홍채, 지문)
- 행위 : 본인이 하는 것(서명,음성)
- Aging : 사용자의 계정의 유효기간을 설정
- Accounting : 시스템 자원 사용 기록을 수집하고 분석
- Authorization : 권한부여, 사용자나 프로세스에 대한 접근 권한을 결정하고 부여
- Authentication : 사용자나 디바이스의 신원을 확인하고 인증
- SDN(Software Defined Networking) : 네트워크의 데이터 흐름과 제어를 분리하여 네트워크 제어
- NFS(Network File System) : 분산환경에서 파일 공유를 위해 사용되는 Client-Server 모델의 파일시스템
- Network Mapper : 네트워크상의 보안을 위해 분석하는 보안도구(Port Scanning)를 통해 취약점 도출
- AOE Network(Activity On Edge Network) : Ethernet Protocol을 사용하는 디스크 저장장치. 이더넷 케이블을 이용하여 Server-Storge를 연결함으로써 스토리지 공간을 확장함.
@ 프로젝트 일정 계획
- 프로세스를 이루는 소작업을 파악하고 예측된 노력을 각 소작업에 분배하여 소작업의 순서와 일정을 정하는것
- 프로젝트 일정 계획에 사용되는 기능 : WBS, PERT/CPM, GANTT 차트
# PERT :
- 전체 작업의 상호 관계를 표시하는 네트워크(낙관적,가능성,비관적은 경우로 단계를 나누어 종료를 결정)
- 개발 경험이 없어 소요기간 예측이 어려운 프로젝트 일정 계획에 사용
- 노드와 간선으로 구성되며 원 노드에는 작업, 간선에는 낙관치/기대치/비관치를 표시
- 결정 경로, 작업에 대한 경계시간, 작업 간의 상호 관련성등을 알수 있음
> 작업 예측치 계산 공식 : 작업예측치 = (비관치 + 4*기대치 + 낙관치) /6, 방향편차 = {(비관치-낙관치)/6}*2
# CPM :
- 작업을 나열하고 작업에 필요한 소요 기간을 예측하는데 사용하는 기법
- 노드(작업)와 간선(작업사이 전후 의존관계)로 구성된 네트워크
- 원형 노드는 각각의 작업을 의미하며, 작업 이름과 소요 기간을 표시
- 박스 노드는 이정표를 의미하며, 이정표 이름과 예상 완료시간을 표시
- 간선을 나타내는 화살표의 흐름에 따라 각 작업이 진행되며, 전 작업이 완료되어야 다음 작업을 진행할 수 있음
# GANTT 차트 :
- 프로젝트 작업 일정을 막대 도표로 이용하여 표시하는 프로젝트 일정표
- 시간선 차트
- 중간 목표 미달성 시 그 이유와 기간을 예측 할 수 있게 함
- 사용자와 문제점이나 예산 초과 지출 등도 관리할수 있게 함
- 자원배치와 인원 계획에 유용하게 사용
- 이정표, 작업 일정, 작업 기간, 산출물로 구성
- 수평 막대의 길이는 각 작업의 기간을 나타냄