정처기 실기 개념
| topics | 900-자격증 |
| types | 이론 학습 |
| contexts | 자격증 |
| tags |
정처기 실기 개념 정리
GoF디자인 패턴
- 생성
- 싱글톤 : 하나의 인터페이스만
- 팩토리 : 객체 생성을 하위(서브)클래스에 위임 상위에서인터페이스 정의
- 추상팩토리 : 관련 객체군을 통체로 생성할 수 있는인터페이스 생성
- 빌더 : 객체를 단계별로조립(html빌더)
- 프로토타입: 기존객체를 복제해서 새객체생성
- 구조 : 조합
- 어댑터 : 서로다른인터페이스 호환(220v-110v같이)
- 브릿지 : 구현부와 추상부를 분리해서 독립적으로 확장
- 컴포짓(composite) : 트리 구조로 묶어서 계층 구조로 표현
- 데코레이터 : 객체에 기능을 동적으로 추가
- 파시드 : 복잡한서브시스템 간단한 인터페이스로 감쌈
- 행위 : 상호작용,역할분담
- 전략 : 알고리즘을 런타임에 교체가능하게
- 템플릿메서드 : 상위서 알고리즘 골격정의 하위서 세부구현 :제어의 역전
- observer : 상태변화 통보
- state:상태에 따른 행동면화
- command : 요청을 캡슐화 원자성
- Iterator : 반복자
- Visitor : 구조안바꾸고 새로운 기능을 쉽게 추가
스케줄링
- 대기시간 :완료시간-도착시간 -실행시간
- 비선점
- FIFO
- SJF
- 실행시간이 짧은 순
- HRN
- SJF+ 대기긴시간애 우선순위부여
- 우선순위 : 실행시간 + 대기시간 /실행시간
- 선점
- SRT
- 남아있는 실행시간이 짧은 순
- 라운드로빈
- FIFO인데 최대실행시간정해져잇음
- SRT
암호화방식
- 대칭키
- 블록
- DES :64bit
- AES : 128bit 표준
- SEED : 한국개발 128비트
- 스트림
- RC4 : 바이트 단위
- 블록
- 비대칭키
- RSA
- 소인수분해
- RSA
- 해싱:고정길이
- MD5
- 128비트 빠르고충돌
- SHA
- 표준
- MD5
해킹기법
- 스푸핑
- 속이는 해킹기법
- ip스푸핑, 이메일스푸핑 등이있음
- 랜드어택
- 출발지와 도착지를 같게
- 디도스
- 패핏여러개보내는거 여러사용자가
- smurf attack
- dos공격유형(간접)
- 출발지ip를 피해자ip로스푸핑
- 내가100개의기기에 요청봬놓고응답받을 ip를 피해자ip로바꾸는거임
- syn flooding
- 3handshake에서 ack를 안해서
- udp flooding
- 대량의 udp패킷보냄 큰걸보냄
- ping flooding
- ICMP,대역폭,cpu소모 여러개를보냄(직접)
- ping of death
- 패킷 크기를 크게해서 조합하기 힘들게함
- teardrop attack
- 플래그넘버를 조작해서 조립못하게함
- 스니핑
- 패킷엿보기
- 워터링홀
- APT(지능형지속공격) 사용자가 자주사용하는걸로다가
- 악성코드 유형
- 웜: 스스로 퍼짐(자기복제)
- 트로이목마 : 위장 침투, 스스로 복제못함
- 백도어: 몰래 통로
- 바이러스: 기생 감염
- 랜섬웨어: 돈 요구
- 스파이웨어: 몰래 감시
- 루트킷: 숨기고 권한 장악
그외 보안관련..
- 보안3요소 기밀성 무결성 가용성
- ISMS : 기업정보자산을 보호하기위한 관리체계
- 보아솔루션
- 방화벽
- 네트워크가의 전송되는 정보를 선별하는 기능을 가진 침입차단시스템
- IDS
- 침입탐지시스템 , 이상탐지 오용탐지
- IPS
- 침입방지시스템 , 방화벽 + IDS
- 방화벽
웹전달
- json : 구조화 언어
- xml : 마크업 데이터주고받을때
- ajax : 비동기통시기술 저체새로고치지않고 백그라운드에서 데이터 교환가능
- html : 마크업언어 웹문서용
응집도 결합도
- 응집도
- 우연적> 논리적> 시간적> 절차적>통신/교환적>순차적> 기능(젤굳)
- 결합도
- 내용(내부변수) > 공통(전역변수) > 외부 > 제어>스템프(구조주소다넘기는데 몇개만사용)> 데이터(인자로) > 메세지
테스트, 방법론
- 구조에 따른 검증
- 화이트박스
- 분기 커버리지 :모든 분기를 한번씩 다실행해야함
- 문장커버리지: 한번씩 다실행해야함
- 화이트박스
- 명세
- 블랙박스
- 경계값 분석
- 원인결과그래프
- 유즈케이스시나리오
- 결정테이블
- 상태전이
- 블랙박스
- 경험
- 오류추정
- 탐색적테스트
- V모델 : 검증 중심 개발 모델 아래 > 위 > 아래
- 개발단계
- 요구사항분석
- 기능명세
- 설계
- 개발
- 테스트단계
- 단위
- 동적(실제실행ㅇㅇ),정적(실행ㄴㄴ)
- 통합
- 상향식,하양식,스텁
- 시스템
- 인수테스트
- 알파 : 지정된사용자만 개발자가들어가서
- 베타 : 실제사용환경에서
- 단위
- 개발단계
- 그외 목적별테스트
- 회복 : 고의로 실패 유도
- 안전 : 보안적 결험정거
- 강도 : 과부화 테스트
- 성능 : 응답시간,처리량테스트
- 구조 : 소스코드의 복잡성확인
- 회귀 : 소스코드변경시 세로운결함
- 병행: 기존 시스템이랑잘 작동하나
- a/b: 기존시스템대비 효과
- 스모크 : 테스트의 테스트
- 살충제페로독스
- 한것만또하면다른거발견몬함
데이터베이스
- 무결성 제약조건
- 개체 : 서로다른튜플은같을수없음 키가유니크 & not null
- 도메인 : 속성값원자값,도메인안에잇어야함
- 참조 : 외래키가 실제존재하는테이블의 기본키거나 null
- 이상(애초에 중복때매)
- 삽입이상
- 삽입하나만할라는데 여러개넣어야함
- 갱신이상
- 불일치발생
- 삭제이상
- 하나만삭제할라는데 다른것도삭제해야함
- 삽입이상
- ACID 원자성 일관성 격리성 영속성
- 관계대수 : 비절차
- 파이 : 세로
- x ÷ : 곱하고나눈다생각하면됨 곱하기는 속성늘어나고 나누기는속성줄어듬
- ⋈ :조인
- 관계해석 : 절차
- ∃: 존재한다(There exist)
- ∈: t가 r에 속함( t ∈ r ) : 하나라도 일치하는 튜플이 존재한다.
- ∀: 모든 것에 대하여(for all) : 가능한 모든 튜플에 대하여
- ∪: 합집합
- 카디널리티 : 튜플개수
- 차수(degree) : 속성계수
- 비정규화 성능을위해
- DML
- select > where >ANDOR > group,having > order
- insert into 테이블명 values ()
- update 테이블명 set A='3',B ='d' where
- delete from 테이블명 where
- DDL(생성삭제)
- CREATE TABLE 테이블명 (컬럼명 데이터형 [제약조건], ...);
- ALTER TABLE 테이블명 ADD 컬럼명 데이터형; sql ALTER TABLE 테이블명 DROP COLUMN 컬럼명;
- DROP TABLE 테이블명;
- DB특징
- 공유,저장,통합,운영
- 설계
- 개념 : ERD
- 논리 : 정규화 , 트랜젝션인터페이스
- 물리 : 성능 용량
- 파티션,클러스터링 인덱스뷰
접근방법
- 순차접근 : 레코드를 처움부터하나씩
- 인덱스접근:키쌍으로구성되어빠르게검색
- 해싱접근: 해시함수를이용해 주소계산서 접근
네트워크
- 응용> 표현 > 세션>전송>네트워크>데이터링크>물리
- 오류검출 코드
- CRC
- 이진 다항식 나눗셈 기반
- 체크섬
- 2의보수
- 해밍코드
- 정정까지가능
- CRC
- 처리량 : 일정시간내에 어플이 처리하는 양
- 응답시간 :어플에요청을 전달한시간부터 응답이 도찰할때 까지 걸릴
- 경과시간:어플에 요청을 전달한 시간부터 처리가 완료될때까 걸리는 시간
- 통신프로토콜3요소
- 구문,타이밍,의미
- ARP : IP > MAC
- VPN : 공용 네트워크를 통해 사설 네트워크를 확장하는 기술이다.
- RIP : 목적지까지의 홉 수(hop count)
기타
- 데이터마이닝
- 대용량데이터에서 통계적규칙이나패턴을이용해서 유용한정보추출
- RAID
- 0 : strip > 데이터를 분산
- 1 : 미러링 듀플랙싱 > n배
- 2 : Hamming code 에러검출추가
- 3 : 패리티 정보(에러검출)를 한디스크에 저장
- 4 : 3인데 블록단위로 분산저장
- 5 : 각디스크에 패리티 정보포함
- 6 두개패리티정보를 디스크에 분산저장
- 상호작용
- GUI,CLI
- 좋은 UI : 직관 ,유효,학습,유연
- NUI : 인간의 자연스러운행동을통해 상호작용
- SSH
- 네트워크 상에서 다른 컴퓨터에 안전하게 접속하기 위한 원격 접속 프로토콜
- 시큐어샐, 응용계층
- SSL
- 웹 통신(HTTP 등)을 암호화하기 위한 보안 프로토콜
- HTTPS
- 전송과응용사이
- IPSEC
- VPN구현에사용
- 네트워크계층
- 다음은 운영체제 페이지 순서를 참고하여 할당된 프레임의 수가 3개일 때 LRU와 LFU 알고리즘의 페이지 부재 횟수를 작성하시오.**
코드
| 언어 | 기본 출력 함수 | 줄바꿈 여부 | 줄바꿈 방법 |
|---|---|---|---|
| C | printf() | ❌ | \n 직접 넣기 |
| Java | System.out.print() | ❌ | \n 또는 println() 사용 |
| Python | print() | ✅ 자동 줄바꿈 | end='' 으로 끌 수 있음 |
| JavaScript | console.log() | ✅ 자동 줄바꿈 | process.stdout.write() 쓰면 줄바꿈 없음 |
java
람다식은 “이 인터페이스가 가진 단 하나의 추상 메서드”를 자동으로 구현해.
여기 주의 ❗
id()는 static 메서드야.
static 메서드는 “클래스에 속한 것”이지, “객체에 속한 것”이 아니야.
즉, 참조 변수의 실제 객체 타입(Child) 이 아니라,
참조 변수의 선언된 타입(Parent) 기준으로 결정돼.
그래서 ref.id()는 **Parent.id()**가 호출됨.
C에서 구조체를 초기화할 때는 정의된 순서대로 멤버를 초기화