https://chobopark.tistory.com/191
( * 프로토콜, ARP, RARP * )
1. 물리 네트워크(MAC) 주소에 해당하는 IP 주소를 알려주는 프로토콜로 역순 주소 결정 프로토콜을 무엇이라고 하는지 쓰시오. (물리주소 (MAC Address)를 IP주소로 변화하는 프로토콜)
RARP (Reverse Address Resolution Protocol)
IP주소 == ARP ==> MAC Address
MAC Address == RARP ==> IP주소
* 네트워크 계층
IP, ICMP, ARP, RARP,
라우팅 프로토콜
> 내부 라우팅 프로토콜 (RIP, OSPF)
> 외부 라우팅 프로토콜 (BGP)
( * 데이터베이스 설계, 개논물 * )
2. 다음은 DB 설계 절차에 관한 설명이다. 다음 빈칸에 들어갈 알맞은 용어를 쓰시오.
- ( 1. )은/는 특정 DBMS의 특성 및 성능을 고려하여 데이터베이스 저장 구조로 변환하는 과정으로 결과로 나오는 명세서는 테이블 정의서 등이 있다.
(실제 저장장치에 어떻게 저장할지 설계하는 단계)
- ( 2. )은/는 현실 세계에 대한 인식을 추상적, 개념적으로 표현하여 개념적 구조를 도출하는 과정으로 주요 산출물에는 E-R 다이어그램이 있다.
(현실 세계에 있는 그대로 사람이 이해할 수 있는 형태의 정보구조로 만들어가는 과정을 의미하기 때문에 정보 모델이라고 한다.)
- ( 3. )은/는 목표 DBMS에 맞는 스키마 설계, 트랜잭션 인터페이스를 설계하는 정규화 과정을 수행한다.
(추출된 엔티티와 속성들의 관계를 구조적으로 정의하는 단계로 2에서 만들어진 구조를 컴퓨터가 이해하고 처리할 수 있도록 변환하는 과정)
1. 물리적 설계
2. 개념적 설계
3. 논리적 설계
( * 기능적 / 비기능적 요구사항 * )
3. 다음은 요구사항의 분류에 대한 설명이다. 괄호 ( ) 안에 들어갈 요구사항의 유형에 대해서 쓰시오.
- ( 1. ) 요구사항은 시스템이 제공하는 기능, 서비스에 대한 요구사항이다.
- ( 2. ) 요구사항은 시스템이 수행하는 기능 이외의 사항, 시스템 구축에 대한 제약사항에 관한 요구사항이다.
1. 기능적
2. 비기능적
* 기능적 요구사항 (Functional requirements)
제품을 구현하기 위해 소프트웨어가 가져야할 기능적 속성.
* 비기능적 요구사항 (Non-functional requirements)
제품 품질 기준 등의 만족을 위해 소프트웨어가 가져야 할 특성.
(2020_2회) ( * SOAP, WSDL * )
4. 웹 서비스명, 제공 위치, 메세지 포맷, 프로토콜 정보 등 웹 서비스에 대한 상세 정보가 기술된 XML 형식으로 구성된 언어를 무엇이라고 하는지 쓰시오.
WSDL (Web Services Description Language)
SOAP 프로토콜을 이용할 때
여러가지 정보들이 기술된 XML 형식의 언어가 WSDL,
이게 저장된 곳이 UDDI (Universal Description, Discovery, and Integration)
( * 파이썬 * )
5. 다음은 파이썬 코드이다. 출력 결과를 쓰시오.
class good :
li = ["seoul", "kyeonggi","inchon","daejeon","daegu","pusan"]
g = good()
str01 = ''
for i in g.li:
str01 = str01 + i[0]
print(str01)
skiddp
6. 다음 SQL 실행 결과를 숫자만 쓰시오.
EMPNO | SAL |
100 | 1000 |
200 | 3000 |
300 | 1500 |
SELECT COUNT(*) FROM 급여
WHERE EMPNO > 100 AND SAL >= 3000 OR EMPNO = 200;
1
7. 다음 Java 프로그램 결과를 쓰시오.
public class good{
public static void main(String[] args){
int[][]arr = new int[][]{{45,50,75},{89}};
System.out.println(arr[0].length);
System.out.println(arr[1].length);
System.out.println(arr[0][0]);
System.out.println(arr[0][1]);
System.out.println(arr[1][0]);
3
1
45
50
89
( * 정규화, 반정규화 * )
8. 정규화된 엔티티, 속성, 관계에 대해 성능 향상과 개발 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링의 기법을 무엇이라고 하는지 쓰시오.
( 시스템의 성능 향상, 개발 과정의 편의성 등을 위해 정규화된 데이터 모델을 분할, 통합, 추가하는 과정으로, 의도적으로 정규화에 위배되는 행위 )
비정규화 / 반정규화 / 역정규화
(2020_3회, 4회) ( * 애플리케이션 테스트, 블랙박스 * )
9. 다음은 블랙박스 기법에 대한 예제이다. 블랙박스 기법 두 가지를 쓰시오.
예)
1. 0 <= x <= 10이면 -1 0 10 11 검사
2. 입력 데이터의 영역을 유사한 도메인별로 유횻값 / 무횻값을 그룹핑하여 나누어서 검사
1. 경계값 분석
2. 동등분할 테스트
* 블랙박스 테스트 (Black Box Test) _ 동작상태 (입출력값)
- 동등 분할 기법 (Equivalence Partitioning Testing)
- 경계값 분석 (Boundary Value Analysis)
- 원인-효과 그래프 검사 (Cause-Effect Graphing Testing)
- 오류 예측 검사 (Error Guessing)
- 비교 검사 (Comparison Testing)
* 화이트박스 테스트 (White Box Test) _ 소스코드
- 기초 경로 검사
- 제어 구조 검사 (조건검사, 루프검사, 데이터흐름 검사)
( * 애플리케이션 테스트 * )
10. 다음은 테스트 종류에 대한 설명이다. 빈칸에 들어갈 알맞은 용어를 보기에서 찾아 기호로 쓰시오.
- ( 1. ) 은/는 개별 모듈, 서브루틴이 정상적으로 실행되는지 확인
(개발자가 원시 코드를 대상으로 다른 부분과 연계되는 부분은 고려하지 않고, 각각의 단위 자체에만 집중하여 테스트)
- ( 2. ) 은/는 인터페이스 간 시스템이 정상적으로 실행되는지 확인
[보기] : 시스템 테스트 / 인수 테스트 / 알파 테스트 / 단위 테스트 / 통합 테스트 / 회귀 테스트
1. 단위테스트
2. 통합 테스트
* V-모델 * (개발 단계에 따른 애플리케이션 테스트)
요구사항 (Requirements) 인수 테스트 (Acceptance Test) _알파/베타 테스트
분석 (Specification) 시스템 테스트 (System Test) _ 기능/비기능 요구사항
설계 (Design) 통합테스트 (Integration Test) _ 상향식/하향식/빅뱅/백본 테스트
구현 (Code) 단위테스트 (Unti Test) _ 정적/동적 테스트
(2020_4회)
11. 다음은 빈칸에 들어갈 알맞은 용어를 쓰시오.
- IPv6는 ( 1. ) 비트 길이를 가진다.
- IPv4는 길이 32bit이며, ( 2. ) 비트씩 네 부분으로 나눈다.
1. 128
2. 8
IPv6 => 유니캐스트, 멀티캐스트, 애니캐스트
IPv4 => 유니캐스트, 멀티캐스트, 브로드캐스트
12. 공유메모리, 소켓, 세마포어, 메세지 큐, 파이 등 프로세스 간 통신하는 기술을 무엇이라고 하는지 쓰시오.
IPC (Inter Process Communication)
(2020_4회) ( * EAI * )
13. 시스템 통합에 사용되는 솔루션으로 구축 유형에는 Point to Point, Hub & Spoke, Message Bus가 있다. 기업에서 운영되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계 , 통합이 가능하도록 해주는 솔루션을 무엇이라고 하는지 쓰시오.
EAI (Enterprise Application integration)
* EAI 구축유형
- Point-to-Point
- Hub & Spoke
- Message Bus (ESB 방식)
- Hybrid _ Hub & Spoke + Message Bus
14. 주어진 테이블의 Cardinality / Degree를 구하시오.
학번 | 이름 | 학년 | 학과 |
20202020 | 김제원 | 3 | 무역과 |
20202021 | 김한국 | 1 | 통신과 |
20202022 | 허달력 | 4 | 영어과 |
20202023 | 이소파 | 2 | 영어과 |
20202024 | 장가위 | 3 | 중국어과 |
Cardinality : 5
Degree : 4
15. 다음은 C언어 프로그램이다. 실행 결과를 쓰시오.
#include <stdio.h>
struct good {
char name[10];
int age;
};
void main(){
struct good s[] = {"Kim",28,"Lee",38,"Seo",50,"Park",35};
struct good *p;
p = s;
p++;
printf("%s\n", p-> name);
printf("%d\n", p-> age);
Lee
38
s[] = {"Kim",28,"Lee",38,"Seo",50,"Park",35};
a 100 200 300 400
100 Kim 28 P
200 Lee 38
300 Seo 50
400 Park 35
16. 데이터 모델 구성요소 3가지를 쓰시오.
- 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세로서 데이터베이스를 조작하는 기본 도구이다.
- 개체 데이터 모델에서는 ( 1. ) 을/를 이용하여 실제 데이터를 처리하는 작업에 대한 명세를 나타내는데 논리 데이터 모델에서는 ( 2. ) 을/를 어떻게 나타낼 것인지 표현한다.
- ( 3. ) 은/는 데이터 무결성 유지를 위한 db의 보편적 방법으로 릴레이션의 특정 칼럼에 설정하는 제약을 의미하며, 개체무결성과 참조 무결성 등이 있다.
1. 연산
2. 구조
3. 제약조건
* 연산 : 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세로 데이터베이스를 조작하는 도구.
* 구조 : 논리적으로 표현된 개체 타입들 간의 관계로서 데이터 구조 및 정적 성질을 표현.
* 제약조건 : 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건.
17. 다음은 Java 프로그램이다. 실행 결과를 쓰시오.
public class good {
public static void main(String[] args){
int i, j;
for(j=0, i=0; i<=5; i++){
j+=i;
System.out.print(i);
if(i==5){
System.out.print("=");
System.out.print(j);
}else{
System.out.print("+");
}
}
}
}
0 + 1 + 2 + 3 + 4 + 5 = 15
( * 접근제어 * )
18. 시스템 객체의 접근을 개인 또는 그룹의 식별자에 기반을 둔 방법, 어떤 종류의 접근 권한을 가진 사용자가 다른 사용자에 자신의 판단에 따라 권한을 허용하는 접근제어 방식은 ?
DAC (Discretionary Access Control)
임의적 접근 통제
* 접근제어
- 강제 접근통제 (MAC, Mandatory Access Control) : 사용자의 등급에 따라 접근 권한 부여
- 임의 접근통제 (DAC, Discretionary Access Control) : 데이터 소유자가 접근통제 권한을 지정
- 역할기반 접근통제 (RBAC, Role Based Access Control) : 사용자의 역할에 따라 접근 권한 부여
( * 결합도 * )
19. 다음은 결합도에 대한 설명이다. 빈칸에 들어갈 알맞은 용어를 보기에서 찾아 기호로 쓰시오.
- ( 1. ) 은/는 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우의 결합도
- ( 2. ) 은/는 모듈 간의 인터페이스로 배열이나 객체, 구조 등이 전달되는 경우의 결합도
- ( 3. ) 은/는 파라미터가 아닌 모듈 밖에 선언된 전역 변수를 참조하고 전역 변수를 갱신하는 식으로 상호작용하는 경우의 결합도
[보기] : 자료 결합도 / 스탬프 결합도 / 제어 결합도 / 공통 결합도 / 내용 결합도 / 외부 결합도
1. 내용 결합도
2. 스탬프 결합도
3. 공통 결합도
모듈의 독립성을 위해 응집도는 높고 결합도는 낮아야 한다.
모듈과 모듈 사이의 (연관)관계
* 결합도 (Coupling) (약 -> 강) *
데이터(자료) 결합도 (Data Coupling)
스탬프 결합도 (Stamp Coupling)
제어 결합도 (Control Coupling)
외부 결합도 (External Coupling)
공통(공유) 결합도 (Common Coupling) : 여러 모듈이 공통 자료 영역을 사용하는 경우 (전역변수)
내용 결합도 (Content Coupling) : 한 모듈이 다른 모듈의 내부 기능 및 그 내부 자료를 조회하도록 설계되었을 경우
* 응집도 (Cohesion) (약 -> 강) *
우연적 응집도 (Coincidental Cohesion)
논리적 응집도 (Logical Cohesion)
시간적 응집도 (Temporal Cohesion)
절차적 응집도 (Procedural Cohesion) : 모듈의 기능들이 순차적으로 실행.
통신(교환)적 응집도 (Communication Cohesion) : 동일한 입력, 출력 사용.
순차적 응집도 (Sequential) : 모듈 내 하나의 활동으로부터 나온 출력 데이터를 다음 활동의 입력 데이터로 사용.
기능적 응집도 (Functional Cohesion)
( * 공격 * )
20. 괄호 안에 공통으로 들어갈 공격 기법을 적으시오.
- ( ) 은/는 '세션을 가로채다' 라는 의미로 정상적 연결을 RST 패킷을 통해 종료시킨 후 재연결 시 희생자가 아닌 공격자에게 연결한다.
- ( ) 은/는 세션 관리 취약점을 이용한 공격 기법이다.
세션 하이재킹
*세션 하이재킹
- 시스템 간 연결이 활성화된 상태, 즉 로그인(Login) 된 상태를 가로채는 것을 뜻한다.
- TCP의 고유한 취약점을 이용해 정상적인 접속을 빼앗는 방법이다. 서버와 클라이언트 통신 시 TCP의 시퀀스 넘버를 제어하는 데 발생하는 문제를 공격한다. TCP는 클라이언트와 서버 간 통신을 할 때 패킷의 연속성을 보장하기 위해 각각 시퀀스 넘버를 사용한다. 이 시퀀스 넘버가 잘못되면 이를 바로잡기 위한 작업을 하는데, 세션 하이재킹은 서버와 클라이언트에 각각 잘못된 시퀀스 넘버를 위조해서 연결된 세션에 잠시 혼란을 준 뒤 자신이 끼어들어 가는 방식이다.
* 서비스 공격 유형의 종류
- DDoS (Distributed Denial of Service, 분산 서비스 거부) _ Dos는 내가 공격, DDoS는 쫄병시켜서 공격
- 피싱 (Phishing) _ 이메일, 메시지, 웹사이트로 속여 정보 수집.
- 파밍 (Pharming) _ DNS를 조작하여 악성사이트로 유도(리디렉션)
- 스니핑 (Sniffing)
- 스미싱 (Smishing) _ 문자메시지(SNS)로 속여 정보 수집.
- 큐싱 (Qshing) _ 가짜 웹사이트로 유도하여 개인정보 수집.
- 랜섬웨어 (Ransomware) _ 사용자 컴퓨터에 잠입해 내부문서/파일을 암호화
- 키 로거 (Key Logger) _ 키보드 움직임을 탐지
- SQL 삽입 (SQL Injection)
- XSS (Cross Site Scripting) _ 악의적인 스크립트를 웹페이지에 삽입
'자격증 > 정보처리기사' 카테고리의 다른 글
[정처기실기] 2021년 3회 (0) | 2024.03.11 |
---|---|
[정처기실기] 2021년 2회 (0) | 2024.02.22 |
[정처기실기] 2020년 2회 (0) | 2024.02.08 |
[C언어(강의)] 1~8강 (변수, 데이터 타입, 연산자) (0) | 2024.02.04 |
[정처기실기] 2020년 4회 (0) | 2024.02.03 |