본문 바로가기
Study/정보처리기사 실기

[정보처리기사 실기 2020년 1회] 실기 기출 해설

by 지니어스팍 2023. 10. 5.

♥ 목차 ♥

    728x90
    728x90

    데이터베이스 설계과정 - 개논물

    개념   ERD

    논리   정규화, T/I (Transaction Interpace)

    물리   성능

     

    비정규화의 개념을 간략히 서술하시오 :

    데이터베이스 정규화 이후 성능 향상과 개발 편의성 등 정규화 기법에 위배되는 수행기법

     

     

    마크업 언어

    HTML

    SGML

    XML 내가 원하는 태그들을 확장해서 만듦

     

    인터페이스 전송 데이터

    JSON (javascript object notation)

    javascript 객체 문법으로 구조화된 데이터를 표현하기 위한 문자 기반의 표준 포맷

    json 데이터는 이름과 값의 쌍으로 이루어진다.

     

    XML

    웹에서 구조화한 문서를 표현하고 전송하도록 설계한 마크업 언어

     

    CSV

    몇가지 필드를 쉼표로 구분한 텍스트 데이터 및 텍스트 파일

     

    YAML

    사람이 쉽게 읽을 수 있는 데이터 직렬화 양식

     

    소프트웨어 테스트 방법의 원리

    테스팅은 결함이 존재함을 밝히는 활동이다.

    완벽한 테스팅은 불가능하다

    테스팅은 개발 초기에 시작해야한다.

    결함 집중(파레토 법칙) 오류는 20%에서 난다.

    살충제 패러독스 동일한 테스트 케이스로 동일한 절차를 반복 수행하면 새로운 결함을 찾을 수 없다.

    테스팅은 정황에 의존한다.

    오류 - 부재의 궤변 오류가 없는 소프트웨어라 하더라도 사용자 요구사항에 부합하지 않으면 가치가 없다.

     

     

    프로그램 모듈화와 모듈의 독립성에 대한 설명 - 결합도와 응집도(Coupling and Cohesion)

    모듈의 독립성을 판단하는 두가지 지표이다.

    1 는 모듈과 모듈간의 상호 의존 정도, 2는 모듈 내부의 기능적인 집중 정도이다.

     

    모듈의 독립성을 높이기 위해서는 모듈간의 상호 의존 정도를 나타내는 1결합도를 낮추고 모듈이 독립적으로

    자체 기능만을 수행하도록 2응집도를 높여야한다.

     

    결합도의 유형 (데스형 제 외저래 공유랑 내가 닮았대)

    자료 결합도 - 모듈간의 인터페이스로 값이 전달되는 경우

    스탬프 결합도 - 모듈간의 인터페이스로 배열이나 오브젝트, 스트럭처 등이 전달되는 경우

    제어 결합도 - 단순 처리할 대상인 값만 전달되는게 아니라 어떻게 처리를 해야한다는 제어 요소가 전달되는 경우

    외부 결합도 - 어떤 모듈에서 선언한 데이터를 외부의 다른 모듈에서 참조하는 경우

    공통결합도 - 전역변수를 참조하고 전역변수를 갱신하는식으로 상호작용

    내용 결합(결합도 가장 높음) - 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우 ( 스파게티 코드 , 외계인 코드  레거시 시스템 -> 클린코드)

     

    응집도의 유형

    우연적 응집도 Coincidental - 아무상관 없는 애들 모아둠

    논리적 응집도 Logical - 유사한 성격 모아둠

    시간적 응집도 Temporal - 같은 시간에 활동을 한 모듈

    절차적 응집도 Procedural - 모듈이 다수의 관련 기능을 가질 때 모듈 안의 구성 요소들이 그 기능을 순차적으로 수행하는 경우 

    통신적 응집도 Communication - 동일한 입출력을 사용하여 다른 기능을 수행하는 활동이 모여있는 경우

    순차적 응집도 Sequential - 모듈 내 한 활동으로 부터 나온 출력값을 다른 활동이 사용할 경우

    기능적 응집도 Functional  ( 응집도 가장 높음 ) - 모듈 내부의 모든 기능이 단일한 목적을 위해 수행되는 경우

     

    JSON

    javascript 객체 문법으로 구조화된 데이터를 표현하기 위한 문자 기반의 표준 포맷

    표현식은 사람과 기계 모두 이해하기 쉬우며 용량이 작어서 최근에는 이게 xml을 대체해서 데이터 전송 등에

    많이 사용한다.

    프로그래밍 문법이 아닌 단순히 데이터를 표시하는 표현 방법일 뿐이다.

    이거 데이터는 이름과 값이 쌍으로 이루어진다.

     

    애플리케이션 성능 측정 (🐸)

    처리량 : 일정 시간 내에 애플리케이션이 처리하는 일의 양

    응답 시간 : 애플리케이션에 요청을 전달한 시간부터 응답이 도착할때까지 걸린 시간

    반환(경과) 시간 : 애플리케이션에 요청을 전달한 시간부터 처리가 완료될때까지 걸린 시간

    자원 사용률 : 애플리케이션이 작업을 처리하는 동안의 cpu 사용량, 메모리 사용량 등등 자원 사용 

     

    데이터 베이스

    학생 테이블에 전자과 50명, 전기과 100명, 건축과 학생 50명의 정보가 저장되어 있을때

    다음 1~3 SQL문의 실행 결과 튜플 수를 쓰시오

     

    1.  SELECT DEPT FROM STUDENT; 200

    2. SELECT DISTINCT DEPT FROM STUDENT; 3

    3. SELECT COUNT(DISTINCT DEPT) FROM STUDENT WHERE DEPT='건축과'; 1

     

    SELECT *,A,B,C

    FROM TABLE이름

    WHERE DEPT:'전기'

    AND/OR

    GROUP BY DEPT

    HAVING

    ORDER BY DESC ASC

     

    네트워크 공격 유형

     

    LAND ATTACK

    출발지 IP와 목적지 IP가 같은 패킷을 만들어 보내는 공격 방법

    수신자가 응답을 보낼 때 목적지 주소가 자기 자신이므로 SYN 신호가 계속 자신의 서버를 돌게 되어 서버의 자원을

    고갈 시켜 가용성을 파괴한다.

    방화벽에서 출발지와 목적지가 같은 패킷은 모두 제거하여 대응한다.

     

    정보보안의 3요소

    기밀성 - 다른사람이 보면 안된다.

    무결성 - 다른사람이 바꾸면 안된다.

    가용성 - 원하는 시간에 언제든 사용해야한다.

     

    DOS공격 / D DOS 공격  -  가용성을 떨어뜨린다.

    DOS공격

    Smurf Attack : ip/icmp 속인다.

    SYN flooding

    UDP 플러딩

    Ping 플러딩

    Ping of Death

    Teardrop Attack 조합할 수 있는 번호를 조작

    LAND Attack

     D DOS 공격  

    피싱

    파밍

    스니핑

    스미싱

    큐싱

    랜섬웨어 - 모든 자료들을 암호화 시켜서 돈을 요

    키 로거

    SQL삽입 - sql 삽입해서 자원 탈

    XSS - js 삽입 공격

     

    서비스 공격 유형의 종류

    무작위 대입 공격

    스피어 피싱

    APT 

    제로데이 공격

    백도어

    Rainbow Table Attack 해시암호 (단방향) 못깬다. 깰수있는 방법으로 해커들끼리 공유.. 예방법 salt

    암호가 들어오면 뒤에 다른걸 붙이는

    CSRF

    TOCTOU

     

    통신 프로토콜의 기본 요소 3가지

    의미(semantic) - 데이터의 각 부분이 무엇을 뜻하는지 알수있게 미리 정해둔 규칙

    구문 (syntax) - 데이터의 구조나 형태와 포맷을 정의

    타이밍(timing) - 어떤 데이터를 얼마나 빨리 보낼것

    프로세스 스케줄링

    비선점 스케줄링 (🐸)

    FCFS (계산식) first come first service 프로세스가 대기 큐에 도착한 순서에 따라 cpu 할당

    SJF (계산식) shortest job first 가장 작은 서비스 시간을 갖는 프로세스가 종료시 까지 자원 점유 - 기아현상 발생

    HRN (계산식) highest response ratio next 응답률이 가장 높은것을 선택

    (대기시간 + 실행(서비스)시간) / 실행(서비스)시간 

    기한부

    우선순위

    선점 스케줄링 (🐸)

    SRT (계산식)

    RR

    MLQ

    MFQ

     

    트랜젝션 4가지 특징  (🐸)

    ACID

    원자성( Atomicity ) 모두 수행되거나 모두 수행되지 않아야한다.

    일관성( Consistency ) 실행 성공후 일관성있는 상태

    독립성(격리성)( isolation ) 하나의 수행중 다른 트랜젝션이 영향 안됨 

    영속성 ( Durability ) 영구히 저장되어야한다.

     

    OSI 7 참조 모델 ( 응표세전네데물 )

    응용계층

    표현계층

    세션계층

    전송계층 - 양종단간의 신뢰성 있는 정보 전달

    네트워크 계층 라우터 - 전달만

    데이터 링크 계층 브릿지 - 인접한 노드들 간에 신뢰성

    물리계층 허브 ,리피터

     

    TCP/IP 4계층

    응용 계층

    전송 계층

    인터넷 계층 ip,icmp,arp,rarp

    ip -> mac arp

    maf   c -> ip rarp

    링크 계층

     

    데이터 마이닝 개념

     

    수많은 정보중에서 가치있는 유용한 정보를 찾아내는 

     

     

    암호화

    대칭키 암호화 (암호키 복호키가 똑같음)

    블록 알고리즘 DES,AES

    스트림 알고리즘  LFSR

    ARIA

    SEED

    IDEA

     

    비대칭키 암호화 

    RAS

    EIGAMA

     

    해시 알고리즘

    SHA

    SHA-1 nsa에서 미 정부 표준으로 지정되었고 dsa에서 사요으160bit 해시값을 생성하는 해시 알고리즘

    SHA-256/384/512 : 

    MD5  :  MD4 개선

    HAS-16

     

      

    728x90
    728x90