1. 비즈니스 연속성 계획(BCP)의 주요 용어
BIA(Business Impact Analysis) | 장애나 재해로 인해 운영상의 주요 손실을 볼 것을 가정하여 시간 흐름에 따른 영향도 및 손실평가를 조사하는 BCP를 구축하기 위한 비즈니스 영향 분석 |
RTO(Recovery Time Objective) | 업무중단 시점부터 업무가 복구되어 다시 가동될 때까지의 시간 |
RPO(Recovery Point Objective) | 업무중단 시점부터 데이터가 복구되어 다시 정상가동될 때 데이터의 손실 허용 시점 |
DRP(Disaster Recovery Plan) | 재난으로 장기간에 걸쳐 시설의 운영이 불가능한 경우를 대비한 재난 복구 계획 |
DRS(Disaster Recovery System) | 재해복구계획의 원활한 수행을 지원하기 위하여 평상시에 확보하여 두는 인적,물적 자원 및 이들에 대한 지속적인 관리체계가 통합된 재해복구센터 |
(비즈니스 연속성 계획(BCP)이란 각종 재해나 재난발생에 대비하여 핵심 업무 기능수행의 연속성을 유지하여 고객 서비스의 지속성 보장과 고객에 대한 신뢰도를 높이는 신속한 절차와 체계를 구축해 기업의 가치를 최대화 해주는 방법론)
2. 서버 접근통제 유형
임의적 접근통제(DAC:Discretionary Access Control) | 시스템에 대한 접근을 사용자/그룹의 신분 기반으로 제한하는 방법 |
강제적 접근통제(MAC:Mandatory Access Control) | 시스템 정보의 허용등급을 기준 사용자가 갖는 접근 허가 권한에 근거하여 시스템에 대한 접근을 제한하는 방법 |
역할 기반 접근통제 (RBAC:Role Based Access Control) | 중앙 관리자가 사용자와 시스템의 상호관계를 통제하며 조직 내 맡은 역할에 기초하여 자원에 대한 접근을 제한하는 방법 |
3. 트랜잭션 특성 ★★★ ACID
원자성(Atomicity) | 분해가 불가능한 작업의 최소단위 (all or nothing) |
일관성(Consistency) | 트랜잭션이 실행 성공 후 항상 일관된 데이터베이스 상태를 보존해야하는 특성 |
격리성(Isolation) | 트랜잭션 실행 중 생성하는 연산의 중간 결과를 다른 트랜잭션이 접근 불가한 특성 |
영속성(Durability) | 성공이 완료된 트랜잭션의 결과는 영속적으로 데이터베이스에 저장하는 특성 |
(트랜잭션이란 데이터베이스의 상태를 변화시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산을 의미)
4.UI 설계 원칙 ★★★ 직유학유
직관성(Intuitiveness) | 누구나 쉽게 이해하고, 쉽게 사용할 수 있어야 함 |
유효성(Effciency) | 정확하고 완벽하게 사용자의 목표가 달성될 수 있도록 제작 |
학습성(Learnability) | 초보와 숙련자 모두가 쉽게 배우고 사용할 수 있게 제작 |
유연성(Flexibility) | 사용자의 요구사항을 최대한 수용하고, 실수를 최소화할 수 있도록 제작 |
5. 식별자 표기법
카멜 표기법 | 식별자 표기 시에 여러 단어가 이어지면 첫 단어 시작만 소문자로 표시하고, 각 단어의 첫 글자는 대문자로 지정하는 표기법 (ex : goodMan) |
파스칼 표기법 | 식별자 표기 시에 여러 단어가 이어지면 각 단어의 첫 글자는 대문자로 지정하는 표기법 (ex : GoodMan) |
스네이크 표기법 | 식별자 표기 시에 여러 단어가 이어지면 단어 사이에 언더 바를 넣는 표기법 (ex : good_man) |
헝가리안 표기법 | 식별자 표기 시, 두어에 자료형을 붙이는 표기법 (ex : szBuffer, sz = string zero = 문자열이 없음) |
6. 네트워크 공격 기법 & 보안 솔루션
네트워크 공격 기법
서비스 거부 (DoS) 공격: PoD, 스머핑, SYN flooding, Tear Drop, Land, DDos 네트워크 침해 공격: 스미싱, 스피어피싱, APT, 무작위 대입 공격, 큐싱, XSS 정보보안 침해 공격: SQL 인젭션, 좀비 PC, 웜, 제로데이 공격, 키로거 공격, 트로이 목마 |
|
Ping of Death(PoD) | 인터넷 프로토콜 범위 이상의 패킷을 전송하여 네트워크를 마비시키는 공격 |
스머핑(SMURFING) 브로드캐스트 이용 |
IP나 ICMP 특성을 이용해 한 사이트에 대량의 데이터를 집중 전송하여 네트워크 또는 시스템의 상태를 불능하게 만드는 공격 기법 출발지 주소를 공격 대상의 IP로 설정하여 네트워크 전체에게 ICMP echo 패킷을 직접 브로드캐스팅하여 마비시키는 공격 |
SNY Flooding | 공격자가 가상의 클라이언트로 위장하여 의도적으로 3-way handshake를 중단하여 서버가 대기 상태에 놓여 정상적인 서비스를 하지 못하게 하는 서비스 공격 유형 |
TearDrop Attack | IP 패킷의 재조합 과정에서 잘못된 Fragment Offset 정보로 인해 수신 시스템이 문제를 발생하도록 만드는 DDoS공격 |
스미싱 | 문자 메시지를 이용해 개인 신용 정보를 빼돌리는 공격 |
스피어 피싱 | 메일의 링크나 파일 클릭을 유도한 뒤 개인정보를 탈취하는 공격 기법 |
APT(지능형 지속 위협) | 특정 기업이나 조직에 거점을 마련 후 때를 기다리다가 보안을 무력화시키는 공격 |
무작위 대입 공격 |
암호화된 문서의 암호키를 찾아내기 위해 적용 가능한 모든 값을 대입하여 공격 |
사이트간 요청 위조(CSRF) | 악성 스크립트 구문을 삽입하여 자신의 의도와 무관하게 공격자가 의도한 행위를 하게 되는 공격 |
크로스 사이트 스크립팅(XSS) | 특정 게시물 또는 이메일 링크 클릭 시 악성 스크립트가 실행되는 공격 기법 |
CSRF는 공격자가 사용자를 이용해서 시스템을 공격하지만, XSS는 공격자가 사용자를 공격한다는 차이점 있음 | |
SQL 인젝션(SQL 삽입) | 사용자의 입력값 등 외부 입력값이 SQL 쿼리에 삽입되어 공격 |
키로거 공격 | 컴퓨터 사용자의 키보드 움직임을 탐지하여, ID와 PWD 등의 개인적보를 빼내는 공격 |
제로데이 공격 | 보안 취약점이 발견된 후 널리 공표되기도 전에 취약점을 공략해 공격하는 기술 |
트로이 목마 | 정상 프로그램으로 위장하고 있다가 해당 프로그램이 실행되었을 때 활성화되는 기법 |
스니핑 도청, 수동적 공격 기법 |
네트워크상 떠돌아다니는 패킷을 몰래 들여다보는(도청) 수동적 공격 기법 |
스누핑 염탐 |
네트워크상의 정보를 염탐하여 불법적으로 얻는 공격기법 |
스푸핑 속임 |
공격 대상 컴퓨터와 서버(스위치) 사이의 MAC 테이블을 속여 권한을 획득하고 정보를 가로챔 |
IP 스푸핑 | 공격자가 자신의 IP 주소를 변조하여 공격에 대한 추적을 어렵게 만드는 공격 기술 |
ARP 스푸핑 | 공격자가 특정 호스트의 MAC 주소를 자신의 MAC 주소로 위조한 ARP Reply를 만들어 희생자에게 지속적으로 전송하여 희생자의 ARP Cache Table에 특정 호스트의 MAC 정보를 공격자의 MAC 정보로 변경, 희생자로부터 특정 호스트로 나가는 패킷을 공격자가 스니핑하는 공격 기법 |
Slowloris | HTTP 프로토콜의 취약점을 이용한 공격 헤더와 바디 구분을 위해 헤더 끝에 /r/n/r/n을 전송해야 하는데 /r/n만 보내 나머지가 올 때까지 기다리게 함 |
RUDY | 요청 헤더의 Content-Length를 비정상적으로 크게 설정하여 메시지 바디 부분을 매우 소량으로 보내 연결 상태를 유지하여 자원을 소진시키는 기법 |
세션 하이재킹 | TCP 신뢰성 기반의 연결을 이용한 공격 방법 통신 내용을 엿보거나 세션을 가로채어 정상적인 인증 과정을 무시하고 불법으로 시스템에 접근해 공격 |
타이포스쿼팅(URL 하이재킹) 비슷한 URL 선점 - 사용자의 오타 |
네티즌이 유명 사이트들의 주소를 잘못 입력했을 때 광고 사이트로 몰래 이동시키기 위해 유사 도메인을 미리 선점해 등록하는 것 |
파밍 URL 자체를 탈취, 도메인 이름 속임 |
합법적으로 소유하고 있던 사용자의 도메인을 탈취하거나 DNS 이름을 속여 사용자들이 진짜 사이트로 오인하도록 유도하여 개인 정보를 훔치는 신종 인터넷 사기 수법 |
허니팟 | 가상의 정보 시스템을 만들어 놓고 실제로 공격을 당하는 것처럼 보이게 해 해커, 스팸, 바이러스 유인하고 침입자들의 정보를 수집하고 추적하는 기법 |
버퍼 오버플로우 | 정해진 메모리의 범위를 넘치게 해서 원래의 리턴 주소를 임의로 변경하고 임의의 프로그램이나 함수를 실행시키는 해킹 기법 |
스턱스넷(Stuxnet) | 처음 이 공격을 실행했을 때 코드상에 스턱스넷이라는 단어가 많아 이름 붙여짐 2010년 6월에 발견된 웜 바이러스, 원자력 발전소와 같은 산업 기반 시설에 사용되는 제어 시스템에 침투하여 오작동을 유도하는 명령 코드를 입력해 시스템을 마비시키는 악성코드 |
크라임웨어 | 온라인에서 범죄와 같은 불법적인 행위를 수행하기 위해 만든 컴퓨터 프로그램, 공격용 툴킷 |
루트킷 | 불법적인 해킹에 사용되는 악의적인 기능들을 제공하는 도구, 시스템의 취약점을 통해 설치됨 |
살라미 | 많은 대상으로부터 눈치 채지 못할 만큼의 적은 금액이나 양을 빼내는 컴퓨터 사기 기법 장기간 보관하여 두고 조금씩 썰어 먹는 이탈리아 소시지에서 따옴 |
네트워크 스캐너, 스피너 - 네트워크 하드웨어 및 소프트웨어 구성의 취약점 파악을 위해 공격자가 취약점을 탐색하는 공격 도구
패스워드 크래킹 - 사전 크래킹 공격, 무차별 크래킹 공격, 패스워드 하이브리드 공격, 레인보우 테이블 공격 활용
ICMP Redirect 공격 - 3계층에서 스니핑 시스템을 네트워크에 존재하는 또 다른 라우터라고 알림으로써 패킷의 흐름을 바꾸는 공격 기법
보안 솔루션
VPN(Virtual Private Network) | 공중망에서 터널링, 암호화 기법등을 사용해 사설 통신망과 같은 서비스를 제공하는 가상의 네트워크로 기업에서 내용을 바깥 사람들에게 드러내지 않고 통신할 목적으로 쓰임 |
방화벽(Firewall) | 외부로부터 내부망을 보호하기 위한 네트워크 구성 요소 외부 불법 침입으로부터 내부의 정보 자산을 보호하기 위한 보안 솔루션 보안규칙에 기반해 들어오고 나가는 네트워크 트래픽을 모니터링하고 제어하는 보안 시스템 |
IDS(침입 탐지 시스템) | 컴퓨터 시스템의 비정상적 사용, 오용, 남용 실시간 탐지 |
IPS(침입 방지 시스템) | 방화벽 + IDS 비정상적 트래픽을 능동적으로 차단하고 격리하는 시스템 |
NAC | 내부 PC의 MAC 주소를 IP 관리 시스템에 등록하고 일관된 보안 관리 기능을 제공 |
DLP(데이터 유출 방지) | 내부 정보 유출 방지를 의미하며 기업 내에서 이용하는 다양한 주요 정보들을 보호하고 외부 유출 방지를 위해 사용하는 보안 기술 |
코드 난독화 | 역공학을 통한 공격을 막기 위해 프로그램 소스 코드를 알아보기 힘든 형태로 바꾸는 기술 |
MAC | 객체에 포함된 정보의 비밀성과 이러한 접근 정보에 대해 주체가 갖는 권한에 근거하여 객체에 대한 접근을 제한하는 접근제어(AC) 정책 |
비트락커(BitLocker) | Microsoft Windows OS에 포함되어 블록 전체의 암호화를 제공해 중요 자료를 보호하도록 설계되어진 완전한 디스크 암호화 기능 |
백도어 | 시스템 설계자가 기술자의 액세스 편의를 위해 시스템 보안을 제거하여 만들어 놓은 비밀통로 |
트러스트존 | 하나의 프로세서 내에 일반 구역과 보안 구역으로 분할해 관리하는 보안 기술 |
7. 객체지향 설계 원칙 ★★★ SOLID 원칙
단일 책임 원칙 (SRP, Single Responsibility Principle) |
1 객체 1 책임 객체는 단 하나의 책임만 가짐, 응집도 높고 결합도 낮게 설계해야 함 |
개방-폐쇄 원칙 (OCP, Open-Closed Principle) |
수정 불가능, 확장 가능 기존 코드 변경하지 않고 기능 추가할 수 있게 함 공통 인터페이스를 하나의 인터페이스로 캡슐화 |
리스코프 치환 원칙 (LSP, Liskov Substitution Principle) |
상속 가능 자식 클래스는 자신의 부모 클래스에서 가능한 행위는 수행할 수 있어야 함 자식 클래스는 부모 클래스의 책임을 무시하거나 재정의하지 않고 확장하여 수행함 |
인터페이스 분리 원칙 (ISP, Interface Segregation Principle) |
관련성 따져서 관계 맺기 자신이 사용하지 않는 인터페이스와 의존 관계를 맺거나 영향을 받지 않아야 함 |
의존 역전 원칙 (DIP, Dependency Inversion Principle) |
높은 추상성 따르기 각 객체들간 의존 관계가 성립될 때 추상성 높은 클래스와 의존 관계를 맺어야 함 일반적으로 인터페이스를 활용하면 이 원칙은 준수됨 |
8. 서브넷마스크,,,, 몰루겠따
9. 프로토콜
프로토콜 | 시스템끼리 원할하게 정보를 주고받기 위해 표준화된 통신규약 |
프로토콜의 기본 요소 | 공통 시스템간 정보 전송을 위한 구문: 데이터 형식, 코딩, 신호레벨 등의 규정 의미: 제어 정보로써 조정과 에러 처리를 위한 규정 타이밍: 속도 조절과 순서 관리 규정 |
BGP(Boarder Gateway Protocol) | 서로 다른 자율 시스템(AS)의 라우터 간에 라우팅 정보를 교환하는 데 사용 표준화 된 외부 게이트웨이 프로토콜 대형 사업자에게 적합 EGP 단점 보완 |
RIP | 현재 가장 널리 사용되는 라우팅 프로토콜 소규모 동종의 네트워크 내에서 효율적인 방법 최대 홉수를 15로 제한 거리벡터 방식인 Bellman-Ford 알고리즘 사용 자율 시스템(AS) 사용 |
IGRP | RIP의 단점을 보완하기 위해 만들어 개발 네트워크 상태를 고려하여 라우팅하며, 중규모 네트워크에 적합함 |
OSPF(Open Shortest Path First) | 대규모 네트워크에서 많이 사용되는 라우팅 프로토콜 라우팅 정보에 변화가 생길 경우 변화된 정보만 네트워크 내의 모든 라우터에 알림 RIP에 비해 홉수에 제한이 없음 자신을 기준으로 한 다익스트라 알고리즘 기반으로 최단 경로를 찾는 라우팅 (Link-State) 프로토콜 내부 게이트웨이 프로토콜 |
IGP(Internal Gateway routing Protocol) | 네트워크의 집합을 몇 개의 그룹으로 나누었을 때 동일 그룹 내에서 라우팅 정보를 교환할 때 사용 하는 프로토콜 (즉, 내부 경로 설정을 하는 프로토콜) |
EGP(Exterior Gateway routing Protocol) | 다른 그룹과 라우팅 정보를 교환하는 프로토콜 (즉, 외부 경로 설정을 위한 프로토콜) |
SSL | TCP/IP 계층과 애플리케이션 계층에 위치 인증, 암호화, 무결성을 보장하는 업계 표준 프로토콜 |
DHCP | RFC1541에서 규정 TCP/IP 통신을 실행하기 위해 필요한 설정 정보를 자동적으로 할당, 관리 |
X.25 | 통신을 원하는 두 단말장치가 패킷 교환망을 통해 원활하게 전달하기 위한 통신 프로토콜 고정된 대역 폭을 가짐 패킷을 사용해 대용량의 데이터를 분리하여 송신하고 결합하여 복원함 |
LADP(Lightweight Directory Access Protocol) | 사용자 정보를 유지하기 위한 질의 및 디렉토리 서비스의 등록, 수정, 삭제, 검색을 위한 목적으로 개발한 인터넷 프로토콜 |
VoIP(Voice Over Internet Protocol) | 전통적인 PSIN 회선 전송망이 아닌 IP를 사용해 음성 데이터를 패킷 형태로 송신하는 것을 통해 사용자가 인터넷을 전화 통신용 송신 매체로 사용할 수 있도록 하는 HW, SW 분류 |
RedSec Protocol(레드섹) | RADIUS ove TLS의 준말 RADIUS 데이터를 전송 제어 프로토콜(TFP)이나 전송 계층 보안(TLS)을 이용해 전송하기 위한 프로토콜 |
SET(안전한 전자 거래) | 온라인 상의 안전한 거래를 위해 Visa와 Master Card에서 개발한 프로토콜 |
10. 정규화
제 1 정규화
=> 한 컬럼의 값이 여러 개일 경우 테이블 쪼개기 (도메인이 원자값을 갖도록)
컬럼에 여러 개의 값들이 들어가는 것을 해소
제 2 정규화
=> 복합키일 경우 행해짐 (부분 함수적 종속 제거)
== 모든 일반 컬럼은 반드시 주식별자 전부에 종속되어야 함
복합키가 있는 상황에서 나머지 일반 컬럼 중 복합키 중 하나에 해당하는 애들만 따로 빼자
주식별자가 아닌 속성 중에서 주식별자 전체가 아닌 일부 속성에 종속된 속성을 찾아 제거하는 것
주문번호, 품목코드가 모두 기본키인 복합키인데 품목단가는 품목코드랑만 관련 있으므로
품목코드는 따로 빼 버리고 기본키/외래키랑 묶자!
제 3 정규화
모든 속성이 기본키에 직접 종속되도록 => (이행적 함수 종속[X->Y, Y->Z라면 X->Z] 제거)
주식별자가 아닌 속성들 중에서 종속 관계에 있는 속성을 찾아 제거하는 것
고객번호로 이미 고객 식별 가능한데 주문 테이블에 굳이 고객명, 고객 주소가 들어갈 필요가 있을까?
그냥 고객 테이블 만들어서 빼 버리자~!
BCNF - 모든 결정자가 후보키
제 4 정규화 - 다치 종속 제거
제 5 정규화 - 조인 종속성 이용
11. 신기술
SSO(Single Sign-On) | 한 번의 로그인으로 개인이 가입한 모드 사이트를 이용할 수 있게 해 주는 시스템 |
RAID | Redundant Array of Independent Disks, 독립디스크의 중복배열 여러 개의 디스크를 병렬로(독립적으로) 구성하여 병렬적 I/O처리를 통해 처리속도를 높히고, 디스크 중복 및 패리티 정보 등을 활용하여 데이터의 안전성을 높히는 기술 RAID를 구성하게 되면 논리적으로는 하나의 디스크로 보여지지만, 실제로는 여러 개의 물리적 디스크 |
M-DISC | 한 번의 기록만으로 자료를 영구히 저장이 가능한 광디스크 기술 |
MEMS | 초정밀 반도체 제조 기술을 바탕으로 한 초 미세장치 |
지그비 | 저속 전송 속도를 갖는 홈 오토메이션 및 데이터 네트워크를 위한 표준 기술 |
커넥티드 카 | 자동차와 정보 통신 기술을 연결하여 양방향 인터넷 및 모바일 서비스 이용이 가능한 차량 |
킬 스위치 | 스마트폰 이용자가 도난당한 스마트폰의 작동을 웹사이트를 통해 정지시킬 수 있는 자폭 기능 |
아이핀 | 인터넷에서 주민등록번호 대신 사용할 수 있도록 만든 사이버 주민등록번호 |
BLE | 저전력 블루투스 기술로써 연결되지 않은 대기 상태에서는 절전 모드로 유지됨 |
그레이웨어 | 제공하는 입장과 달리 사용자의 입장에서는 유용할 수도 있고 악의적일 수도 있는 악성 소프트웨어 정상 SW의 이미지인 백색과 악성 SW의 이미지인 흑색의 중간 |
컴패니언 스크린 | N screen의 한 종류로써 TV 방송 시청 시 추가 기능을 수행할 수 있는 스마트폰, 태블릿 PC, 세컨드 스크린 |
블록체인 | P2P 네트워크를 이용하여 온라인 금융 거래 정보를 온라인 네트워크 참여자의 디지털 장비에 분산 저장하는 기술 ex: 비트코인 |
노모포비아 | 스마트폰이 곁에 없을 때 불안감이나 두려움을 느끼는 증상 |
인포러스트 | 정보 열광자 필요한 정보를 기다리지 않고 적극적으로 찾아내며 그것을 자신의 홈페이지나 SNS를 통해 대중화시킴 |
크리슈머 | 단순히 제품 사용에 그치지 않고 제품의 기능이나 가치에 스토리를 담아 기존의 콘텐츠를 발전시켜 새로운 문화와 소비 유행을 만들어 가는 사람들이며 프로슈머보다 발전한 개념 |
클라우드 소싱 | 군중 + 아웃소싱 클라우드 컴퓨팅이 실용화되면서 가능하게 된 정보기굴 아웃소싱 전략 |
12. 시스템
DSS(Deccision Support System) | 컴퓨터를 사용하여 정형화 되지 않은 문제에 관해 의사결정자가 효과적인 의사결정을 할 수 있도록 지원하는 시스템 |
SIS(Strategic Information System) | 기업이 경쟁 우위 확보를 위해 전략적으로 구축하는 정보 시스템 |
CMS(Contents Management System) | 다양한 미디어 포맷에 따라 각종 콘텐츠를 작성, 수집, 관리, 배급하는 등 전 공급 과정을 관리하는 기술 |
GLONASS(글로나스) | 러시아의 전파 위성 항법 시스템 |
DOI(Digital Object Identifier) | 디지털 저작물의 저작권 보호 및 정확한 위치 추적이 가능한 시스템 |
TPS(Transacton Processing System) | 기업에서 업무 처리 중 발생하는 거래 자료를 전산화해서 신속하고 정확하게 처리하는 정보화 시스템 |
CALS(광속 상거래) | 1985년 미국 국방부에서 군수품 납품 체계를 개선할 목적으로 도입 모든 기술 정보 등을 통합 DB로 관리하며 오늘날 전자 상거래 개념으로 확대됨 |
GIS(Geographic Information System) | 지리적인 자료를 수집, 저장, 분석, 출력할 수 있는 컴퓨터 응용 시스템 |
LBS(Location Based Service) | 기능을 제어하기 위해 위치 데이터를 사용하는 프로그램 단계 서비스 |
VoS(Voice of Customer) | 시스템 수준 향상 목적으로 고객의 의견이나 불만사항을 실시간으로 관리, 평가하는 고객 관리 시스템 |
13. OLAP(온라인 분석 처리, Online Analytical Processing)
최종 사용자가 다차원 정보에 직접 접근하여 대화식으로 정보를 분석하고 의사결정을 지원하는 시스템
종류 | 설명 |
롤업 (Roll-up) |
작은 단위(예:day)에서 큰 단위(예:month, year)로 집계 수행 구체적 내용의 상세 데이터에서 요약된 형태의 데이터로 접근 |
드릴다운 (Drill-down) |
큰단위(예:year)에서 작은 단위(예:month, day)로 집계 수행 요약된 형태의 상세 데이터에서 구체적인 상세 데이터로 접근 |
드릴스루 (Drill-through) |
OLAP에서 DW나 OLTP에 존재하는(다른 차원에 존재하는) 상세 데이터에 접근(원천 조회) |
드릴 어크로스 (Drill-across) |
다른 큐브의 데이터에 접근(큐브간 전환) (예 : 매출 -> 재고) |
피봇 (Pivoting, Rotate) |
하나의 차원 구조로부터 다른 차원 구조로 바꾸어서 표현 보고서의 행, 열, 페이지 차원을 바꾸어 볼 수 있는 기능 |
슬라이싱 (Slicing) |
하나 혹은 그 이상의 축(속성 값을 고정)을 중심으로 셀들을 선택 다차원 데이터 항목들을 다양한 각도에서 조회하고 바꾸어 볼 수 있는 기능 |
다이싱 (Dicing) |
속성 값의 범위를 명시하여 셀들의 부분집합(부분큐브)을 선택 Slicing과 동일 기능을 수행하나 더 쪼개서 세분화한 형태 |
14. 능력 성숙도 모델 초반정관최/초관정,정관,최
CMM( Capability maturity model, 능력 성숙도 모델) | |
초기(Initial) - 반복(Repeatable) - 정의(Defined) - 관리(Mananged) - 최적화(Optimizing) | |
CMMi(Capability Maturity Model Integration,능력 성숙도 통합 모델) | |
초기(Initial) - 관리(Mananged) - 정의(Defined) - 정량적 관리(Quantitatively Managed) - 최적화(Optimizing) |
15. 데이터 모델 개관속 사마타 / 구연제
데이터 모델 구성 요소: 개체(사각형), 관계(마름모), 속성(타원)
데이터 모델 종류: 개념적 모델, 논리적 모델, 물리적 모델
데이터 모델 표시할 요소: 구조, 연산, 제약조건
15-1 UML(Unified Modeling Language) 사관다
구성 요소 3가지: 사물, 관계, 다이어그램
16. 아키텍처 패턴
아키텍처(컴퓨터 시스템의 하드웨어 구조)를 설계할 때 참조할 수 있는 전형적인 해결 방식
레이어 패턴 | 시스템을 계층(Layer)로 구분하여 구성 상위 계층은 하위 계층에 대한 서비스 제공자이며 하위 계층은 상위 계층자에 대한 클라이언트 서로 마주보는 두 개의 계층에서만 상호작용 (= 변경 작업 용이) ex) OSI 참조 모델 |
클라이언트-서버 패턴 | 하나의 서버 컴포넌트와 다수의 클라이언트 컴포넌트로 구성됨 사용자는 클라이언트와 의사소통하며 서버는 클라이언트 요청에 대비해 항상 대기 상태 유지 클라이언트, 서버는 동기화되는 경우를 제외하고 항상 독립적임 컴포넌트가 다른 컴포넌트에 서비스를 요청하고, 데이터가 여러 컴포넌트를 거치며 처리 |
파이프-필터 패턴 | 각 단계를 필터 컴포넌트로 캡슐화하여 파이프를 통해 데이터 전송 재사용성이 좋고 추가가 쉬워서 확장이 용이함 필터 재배치로 다양한 파이프라인 구축이 가능함 ex) UNIX의 쉘(shall) 서브 시스템이 입력 데이터를 받아 처리하고, 결과를 다른 시스템에 보내는 작업의 반복 |
모델-뷰-컨트롤러 패턴 | 모델: 서브 시스템의 핵심 기능과 데이터 보관 뷰: 사용자에게 정보 표시 컨트롤러: 사용자로부터 받은 입력 처리 |
17. IP 유멀브 / 유애멀
IPv4 | 32bit | 유니캐스트, 멀티캐스트, 브로드캐스트 |
IPv6 | 128bit | 유니캐스트, 애니캐스트, 멀티캐스트 |
18. GoF(Gangs of Four) 디자인 패턴
생성패턴: 객체의 생성과 참조 과정을 캡슐화, 객체 생성/변경이 구조에 큰 영향받지 않게 함으로써 프로그램 유연성 ↑ 추빌팩프싱 |
|
추상 팩토리(Abstract Factory) | 구체적인 클래스에 의존하지 않고 인터페이스를 통해 서로 연관/의존하는 객체들의 그룹으로 생성하여 추상적으로 표현 연관된 서브 클래스를 묶어 한 번에 교체 가능 |
빌더(Builder) | 작게 분리된 인스턴스를 건축하듯이 조합하여 객체 생성 객체의 생성 과정과 표현 방법을 분리하고 있어 동일 객체 생성 시에도 서로 다른 결과를 만들어 낼 수 있음 |
팩토리 메소드(Factory Method) = 가상 생성자 패턴 템플릿 메소드와 혼동하지 말기 |
객체 생성을 서브 클래스에서 처리하도록 분리하여 캡슐화한 패턴 상위 클래스에서 인터페이스만 정의하고, 실제 생성은 서브 클래스가 담당 |
프로토타입(Prototype) | 원본 객체를 복제하는 방법으로 객체를 생성 일반적인 방법으로 객체를 생성하며, 비용이 큰 경우 주로 이용 |
싱글톤(Singleton) | 하나의 객체를 생성하면 생성된 객체를 어디서든 참조할 수 있지만 여러 프로세스가 동시에 참조할 수는 없음 클래스 내에서 인스턴스가 하나뿐임을 보장하며, 불필요한 메모리 낭비 최소화 |
구조패턴: 클래스나 객체를 조합하여 더 큰 구조로 만들 수 있게 해 주며, 구조가 복잡한 시스템의 개발을 편리하게 함 어브컴데퍼플프 |
|
어댑터(Adaptor) | 호환성이 없는 클래스들의 인터페이스를 다른 클래스가 이용할 수 있도록 변환 기존의 클래스를 이용하고 싶지만 인터페이스가 일치하지 않을 때 이용 |
브리지(Bridge) | 추상층, 구현층 분리 -> 독립 확장 가능하게 함 기능과 구현을 두 개의 별도 클래스로 구현 |
컴포지트(Composite) | 여러 객체를 가진 복합 객체와 단일 객체를 구분 없이 다루고자 할 때 사용 객체를 트리 구조로 구성하여 디렉토리 안의 디렉토리처럼 복합 객체 안 복합 객체 구조 구현 |
데코레이터(Decorator) | 객체 간의 결합을 통해 능동적으로 기능 확장이 가능한 패턴 임의의 객체에 부가적인 기능을 추가하기 위해 다른 객체들을 덧붙임 |
퍼싸드(Facade) | 서브 클래스의 통합 인터페이스를 제공하는 상위 클래스 구성(Wrapper) 복잡한 서브 클래스들을 피해 더 상위에 인터페이스를 구성함으로써 서브 클래스의 기능을 간편하게 사용할 수 있도록 함 |
플라이웨이트(Flyweight) | 인스턴스가 필요할 때마다 매번 생성하지 않고 가능한 공유해서 사용함으로써 메모리 절약 다수의 유사 객체를 생성하거나 조작할 대 유용하게 사용 |
프록시(Proxy) | 접근 어려운 객체와 여기에 연결하려는 객체 사이에서 인터페이스 역할을 수행하는 패턴 네트워크 연결, 메모리의 대용량 객체로의 접근 등에 주로 이용 |
행위패턴: 클래스나 객체들이 서로 상호작용 하는 방법이나 책임 분배 방법을 정의하며, 하나의 객체로 수행할 수 없는 작업을 여러 객체로 분배하여 결합도를 최소화할 수 있도록 도와줌 |
|
책임연쇄(Chain of Responsibility) | 요청을 처리할 수 있는 객체가 둘 이상 존재하여 한 객체가 처리하지 못하면 다음 객체로 넘어감 요청을 처리할 수 있는 객체들이 고리로 묶여 있어 요청이 해결될 때까지 고리를 따라 책임 넘어감 |
커맨드(Command) | 요청을 객체의 형태로 캡슐화 하여 재이용하거나 취소할 수 있도록 요청에 필요한 정보를 저장하거나 로그로 남기는 패턴 요청에 사용되는 각종 명령어들을 추상 클래스와 구체 클래스로 분리하여 단순화함 |
인터프리터(Interpreter) | 언어에 문법 표현을 정의하는 패턴 SQL이나 통신 프로토콜과 같은 것을 개발할 때 사용 |
이터레이터(Iterator) | = 반복자 / 순차 접근 자료 구조와 같이 접근이 잦은 객체에 대해 동일한 인터페이스를 사용하도록 하는 패턴 내부 표현 방법의 노출 없이 순차적인 접근 가능 |
중재자(Mediator) 객체 상호작용 캡슐화 |
수많은 객체들 간의 복잡한 상호작용을 캡슐화 하여 객체로 정의하는 패턴 객체 사이의 의존성을 줄여 결합도 감소 |
메멘토(Memento) 체크포인트와 비슷! |
특정 시점의 객체 내부 상태를 객체화 함으로써 이후 요청에 따라 객체를 해당 시점의 상태로 돌릴 수 있는 기능을 제공하는 패턴 |
옵저버(Observer) | 한 객체의 상태가 변화하면 객체에 상속되어 있는 다른 객체들에게 변화된 상태를 전달하는 패턴 주로 분산된 시스템 간의 이벤트를 생성, 발행하고 이를 수신해야 할 때 이용 |
상태(State) | 객체의 상태에 따라 동일한 동작을 다르게 처리해야 할 때 사용하는 패턴 객체 상태를 캡슐화하고 이를 참조하는 방식으로 처리 |
전략(Strategy) 동일 계열 알고리즘 개별 캡슐화 |
동일한 계열의 알고리즘들을 개별적으로 캡슐화하여 상호 교환할 수 있게 정의하는 패턴 클라이언트는 독립적으로 원하는 알고리즘을 선택하여 사용할 수 있으며, 클라이언트에 영향 없이 알고리즘의 변경 가능 |
템플릿 메소드(Template Method) | 상위 클래스에서 골격을 정의하고, 하위 클래스에서 세부 처리를 구체화하는 구조의 패턴 유사한 서브 클래스를 묶어 공통된 내용을 상위 클래스에서 정의함으로써 코드의 양을 줄이고 유지보수를 용이하게 해줌 |
방문자(Visitor) | 각 클래스들의 데이터 구조에서 처리 기능을 분리하여 별도의 클래스로 구성하는 패턴 분리된 처리 기능은 각 클래스를 방문하여 수행 |
*팩토리 메소드: 상위-인터페이스 정의, 하위-실제 생성
*템플릿 메소드: 상위-골격 정의, 하위-세부 처리 구체화
19. 분산 데이터베이스
분산 데이터베이스: 논리적으로 분산돼 있는 데이터베이스
장점: 신뢰성, 가용성, 융통성, 빠른 응답속도
단점: 불규칙한 응답 속도, 처리 비용 증가, 통제의 어려움
투명성 분위중지장병 | |
분할 투명성 | 하나의 릴레이션이 여러 단편으로 분할(단편화) |
위치 투명성 | 데이터의 저장장소 명시 불필요 (= 논리적인 명칭만으로 액세스 가능) |
중복 투명성 | DB 객체가 여러 SITE에 중복되어 있는지 알 필요가 없음 (= 중복 데이터가 있더라도 하나만 존재하는 것처럼 사용 가능) |
지역사상 투명성 | 각 지역 시스템 이름과 무관한 이름 사용 가능 |
장애 투명성 | 장애에 무관한 트랜잭션 원자성 유지 (= 장애에 관계 없이 트랜잭션을 정확히 처리) |
병행 투명성 | 다수 트랜잭션 동시 수행 시 결과의 일관성 유지 |
20. 국내외 인증제도
구분 | 주관 | 설명 | |
국제 | ISO27001 | 국제표준화기구(ISO) | 조직 전반의 관리시스템의 일부로 위험에 기반한 정보 보안 운영을 위해 조직체계, 정책 등 총 114개로 통제항목으로 구성된 정보보호관리체계에 대한 국제 인증 |
국내 | ISMS | 과기정통부 | 정보통신망법에 근거 2001년 7월 국내 정보보호에 대한 인증제도로 도입, 2002년 5월 관려고시 발표로 제도화, 2013년 법적 의무대상 기관 지정, 2018년 11월 PIMS와 통합 |
ISMS-P | 과기정통부,행정안전부,방송통신위원회 | 정보통신망법에 근거 2018년 11월 기존 ISMS와 PIMS가 통합된 제도 |
|
PIMS | 방송통신위원회 | 정보통신망법에 근거 2011년 개인정보에 특화된 인증제도로, 2018년 ISMS와 통합 |
※ ISO27001의 정식 명칭은 정보보호경영시스템(Information Security Management System, 이하 ISMS이다.)
국내의 ISMS제도와 이름이 같으므로 혼동 주의!
비슷해서 헷갈리는 것들
카튜기 - 카디널리티 = 튜플 = 기수(튜플의 수)
속디차 = 속성(Attribute) = 디그리(속성의 수) = 차수(속성의 수)
OSPF = 링크 상태 프로토콜의 방식을 사용하여 라우팅 정보에 변화 생길 때 모든 라우터에게 변화된 정보 알림
CSRF = 공격자가 사용자의 쿠키 값이나 세션 정보를 의도한 사이트로 보내는 공격 기법/ 특정한 동작을 유발하는 스크립트를 삽입하여 공격자가 원하는 동작 실행
운영체제 = 사용자와 하드웨어 사이에서 인터페이스 역할을 함
미들웨어 = 운영체제가 추가적으로 제공하는 소프트웨어
UML 다이어그램은 구조(클객컴배복패) / 행위(유시커상활상타)로 나뉨
GoF(Gangs of Four)는 생성(추빌팩프싱) / 구조(어브컴데퍼플프) / 행위로 나뉨
스키마 - 외물/내논
RUDY: 네트워크 공격 기법 / 요청 헤더의 Content-Length를 비정상적으로 크게 설정하여 메시지 바디 부분을 매우 소량으로 보내 연결 상태를 유지하여 자원을 소진시키는 기법
RedSec: RADIUS over TLS의 준말로써, RADIUS 데이터를 전송 제어 프로토콜이나 전송 계층 보안(TLS)을 이용해 전송하기 위한 프로토콜
UDDI - 웹 서비스인 SOAP의 구성 요소 중 하나(나머지 하나는 WSDL) / 웹 서비스를 표현하고 기술하는 XML 문법 / 웹 서비스 등록하고 이를 실시간으로 검색할 수 있는 디렉토리 또는 프로토콜의 집합체, XML 기반 정보 레지스트리용으로 개발
LDAP - 프로토콜 / 사용자 정보를 유지하기 위한 질의 및 디렉토리 서비스의 등록, 수정, 삭제 및 검색을 위한 목적으로 개발한 인터넷 프로토콜
SPICE: 소프트웨어 품질 및 생산성 향상을 위해 소프트웨어 프로세스를 평가 및 개선하는 국제 표준
불수관확예최
*네트워크*
백본망 - 다양한 네트워크를 상호 연결하는 컴퓨터 네트워크의 일부로서 각기 다른 lan이나 부분망 간의 정보를 교환하기 위한 경로를 제공하는 망
백본 - 여러 네트워크를 연결할 때 중추적 역할
백본 스위치(=L3 스위치) - 모든 패킷이 지나가는 네트워크 중심에 배치
*통합테스트*
백본 통합 - 가장 중요하고 리스크가 높은 모듈로 초기 통합 형성
📘 IPSec
IP 계층(3계층)에서 무결성과 인증을 보장하는 인증 헤더(AH)와 기밀성을 보장하는 암호화(ESP)를 이용한 IP 보안 프로토콜
📘 SSL/TLS
전송계층(4계층)과 응용계층(7계층) 사이에서 클라이언트와 서버 간의 웹 데이터 암호화(기밀성), 상호 인증 및 전송 시 데이터 무결성을 보장하는 프로토콜