STUDY/[정보처리기사] 필기&실기

[용어 정리] 실전 모의고사 4회

하루디 2022. 4. 19. 23:20

 

01. 온라인 분석처리 (OLAP)

Online Analytical Processing

데이터 웨어하우스의 데이터를 전략적인 정보로 변환시켜서 의사결정을 지원하는 역할을 하는 시스템이다.

 

02. 

기술 설명
시멘틱 웹(Sementic Web) 인터넷과 같은 분산 환경에서 리소스에 대한 정보와 자원 사이의 관계-의미 정보를 기계(컴퓨터)가 처리할 수 있는 온톨로지 형태로 표현하고, 이를 컴퓨터가 처리하도록 하는 지능형 웹
온톨로지(Ontology) 실세계에 존재하는 모든 개념과 개념들의 속성, 그리고 개념 간의 관계 정보를 컴퓨터가 이해할 수 있도록 서술해놓은 개념화 명세서

 

03. 다단계 피드백 큐 (MLFQ)

: Multi Level Feedback Queue

FSFC(FIFO)와 라운드 로빈 스케줄링 기법을 혼합한 것으로, 새로운 프로세스는 높은 우선순위, 프로세스의 실행시간이 길어질수록 점점 낮은 우선순위 큐로 이동하고 마지막 단계는 라운드 로빈 방식을 적용한 알고리즘이다.

 

04. 라운드 로빈 스케줄링 (RR)

: 프로세스가 도착한 순서대로 프로세스를 디스패치 하지만 정해진 시간 할당량에 의해 실행을 제한한다. 시간 할당량을 매 프로세스에 주고 할당된 시간 안에 완료되지 못한 프로세스는 준비 큐의 맨 뒤에 배치되도록 하여 CPU를 독점하지 않고 공평하게 이용될 수 있게 한다. 

 

05. 병행제어기법

기법 설명
로킹(Locking) 같은 자원을 액세스하는 도중 다중 트랜잭션 환경에서 DB의 일관성과 무결성을 유지하기 위하여 트랜잭션의 순차적 진행을 보장하는 직렬화 기법
**로킹의 특징 
: 데이터베이스, 파일, 레코드 등은 로킹 단위이다.
로킹 단위가 작아지면 데이터베이스 공유도와 로킹 오버헤드가 증가한다.
한번에 로킹할 수 있는 객체의 크기를 로킹 단위라고 함 
낙관적 검증(Valication) 트랜잭션이 어떠한 검증도 수행하지 않고 일단 트랜잭션을 수행하고, 트랜잭션 종료 시 검증을 수행하여 데이터베이스에 반영하는 기법
타임 스탬프 순서
(Time Stamp Ordering)
트랜잭션과 트랜잭션이 읽거나 갱신한 데이터에 대해 트랜잭션이 실행을 시작하기 전에 타임 스탬프를 부여하여 시간에 따라 트랜잭션 작업을 수행하는 기법
다중버전 동시성 제어
(MVCC: Multi Version Concurrency Control)
트랜잭션의 타임스탬프와 접근하려는 데이터의 타임스탬프를 비교하여 직렬가능성이 보장되는 적절한 버전을 선택하여 접근하도록 하는 기법

 

06. 대칭키 암호화 알고리즘의 종류

종류 설명
DES 1975년 미국의 연방표준국(NIST)에서 발표한 대칭 키 기반의 블록 암호화 알고리즘 
블록 크기는 64bit, 키 길이는 56bit인 페이스텔 구조
DES를 3번 적용하여 보안을 더욱 강화한 3DES도 활용됨
SEED 1999년 국내 한국 인터넷 진흥원이 개발한 블록 암호화 알고리즘
128bit 비밀키로부터 생성된 16개의 64bit 라운드 키를 사용하여 총 16회의 라운드를 거쳐 128bit의 평문 블록을 128bit 암호문 블록으로 암호화하여 출력하는 방식 
블록 크기는 128bit이며, 키 길이에 따라 128bit, 256bit로 분류
AES 2001년 미국 표준 기술 연구소에서 발표한 블록 암호화 알고리즘 
DES의 개인 키에 대한 전사적 공격이 가능해지고, 3 DES의 성능 문제를 극복하기 위해 개발
블록 크기는 128bit이며, 키 길이에 따라 128bit, 192bit, 256bit로 분류
AES의 라운드 수는 10, 12, 14라운드로 분류되며, 한 라운드는 SubBytes, ShiftRows, MixColumns, AddRoundKey의 4가지 계층으로 구성
ARIA 2004년 국가정보원과 산학연구협회가 개발한 블록 암호화 알고리즘
ARIA는 학계, 연구기관, 정부의 영문 앞글자로 구성되어있다.
블록크기는 128bit이며 키 길이에 따라 128bit, 192bit, 256bit로 분류
경량 환경 및 하드웨어의 효율성 향상을 위해 개발되었으며, 사용하는 대부분의 연산은 XOR과 같은 단순한 바이트 단위 연산으로 구성되어 있다. 
IDEA DES를 대체하기위해 스위스 연방기술 기관에서 개발한 블록 암호화 알고리즘 
128bit의 키를 사용하여 64bit의 평문을 8라운드에 거쳐 64bit의 암호문을 만듦 
LFSR 선형 되먹임 시프트 레지스터 라는 뜻으로 시프트레지스터의 일종으로, 레지스터에 입력되는 값이 이전 상태 값들의 선형 함수로 계산되는 구조로 되어있는 스트림 암호화 알고리즘
이때 사용되는 선형 함수는 주로 배타적논리합(XOR)이고, LFSR의 초기 비트 값은 시드 라고 한다. 

 

07. 일정관리 모델의 종류

모델 설명
CPM(주 공정법) 여러 작업의 수행순서가 얽혀있는 프로젝트의 일정을 계산하는 방법
모든 자원을 제약사항을 배제한 상태로 프로젝트의 시작과 끝을 나타내는 노드와 노드 간의 연결을 통해 공정을 계산하기 위한 액티비티 표기법 
(소요기간이 확실한 경우 사용! )
PERT 일의 순서를 계획적으로 정리하기 위한 수렴 기법으로 비관치, 중간치, 낙관치의 3점 추정방식을 통해 일정을 관리하는 방법
(소요기간 예측이 어려운 경우 사용!)
CCPM( 중요 연쇄 프로젝트 관리 ) 주 공정 연쇄법으로 자원제약사항을 고려하여 일정을 작성하는 기법

 

08. 입력데이터 검증 및 표현 취약점

취약점 설명 대책
XSS
(Cross Site Script)
검증되지 않은 외부 입력 데이터가 포함된 웹 페이지가 전송되는 경우, 사용자가 해당 웹 페이지를 열람함으로써 웹 페이지에 포함된 부적절한 스크립트가 실행되는 공격 - 특수문자 필터링
- HTML태그 사용 금지
- 자바스크립트로 시작되는 문자열은 모두 문자열 변환처리 
CSRF
(사이트 간 요청 위조)
사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹사이트에 요청하게 하는 공격 - 입력화면 폼을 작성 시 GET방식보다 POST 방식 사용
- 입력 폼과 입력처리 프로그램에서 세션별  CSRF토큰을 사용하여 점검
- 중요기능의 경우 재인증을 통해 안전하게 실제 요청 여부를 확인하도록 구현
SQL 삽입
(injection)
응용 프로그램의 보안 취약점을 이용해서 악의적인 SQL구문을 삽입, 실행시켜서 데이터베이스의 접근을 통해 정보를 탈취하거나 조작 등의 행위를 하는 공격 기법 - 바인딩 매개변수 방식을 적용하여 사전에 변수 타입을 명시적으로 지정
- 사용자로부터 입력될 수 있는 모든 값을 체크하여 필터링
- Servlet Filter 기능 적용(Java Only)