1
AAA (Authentication, Authorization, Accounting)
유무선 이동 및 인터넷 환경에서 가입자에 대한 안전하고, 신뢰성 있는 인증, 권한 검증, 과금 기능을 체계적으로 제공하는 정보 보호 기술
신분을 확인하는 인증(authentication), 접근·허가를 결정하는 인가(authorization), 리소스 사용정보를 수집·관리하는 계정(accounting)을 통합한 보안소프트웨어로, 3A라고도 함
AAA의 동작 과정
1
사용자가 NAS를 통해 네트워크 액세스 요청
2
NAS의 AAA 클라이언트는 사용자의 인증정보로 AAA 서버로 전달
3
AAA 서버는 수신데이터를 처리 후, 클라이언트에 접속 여부 통지
4
NAS에서 연결 설정 및 전달 기간동안 수집되고 기록된 정보를 ACCOUNTING 메시지 전달
2
데이터베이스 데이터 제어어
(DCL : Data Control Language)
데이터베이스에 접근하고 객체들을 사용하도록 권한을 주고 회수하는 명령어들을 말함
GRANT (권한 부여)
사용자에게 접속 권한, 오브젝트 생성 권한, DBA 권한등을 부여할 수 있는 명령어
REVOKE (권한 회수)
GRANT로 부여한 권한을 다시 회수하는 명령어
3
스니핑 / 스푸핑 공격
스니핑 공격
스니퍼를 이용하여 네트워크상의 데이터를 도청하는 행위
스니핑 공격은 일반적으로 작동하는 IP 필터링과 MAC 주소 필터링을 수행하지 않고,
랜 카드로 들어오는 전기 신호를 모두 읽어 들여 다른 이의 패킷을 관찰하여 정보를 유출시키는 것
스푸핑 공격
외부 악의적 네트워크 침입자가 임의로 웹사이트를 구성하여 일반 사용자들의 방문을 유도해
인터넷 프로토콜인 TCP/IP의 구조적 결함을 이용하여 사용자의 시스템 권한을 획득한 뒤 정보를 빼가는 해킹 방법
스푸핑 공격의 종류
ARP 스푸핑
근거리 통신망 하에서 주소 결정 프로토콜 메시지를 이용하여 상대방의
데이터 패킷을 중간에서 가로채는 중간자 공격 기법
IP 스푸핑
MAC의 위의 단계인 IP 주소를 속이는 방법이다.
다른 이가 사용하는 IP를 강탈해 권한을 획득하는 것
DNS 스푸핑
실제 DNS 서버보다 빨리 공격 대상에게 DNS 응답 패킷을 보내 공격 대상이 잘못된 IP주소로
웹 접속을 하도록 유도하는 공격
4
데이터베이스 결합도 (Coupling)
데이터베이스 응집도 (Cohesion)
결합도의 종류
자료 결합도 (Data Coupling)
모듈간의 인터페이스 전달되는 파라미터를 통해서만 모듈간의 상호 작용이 일어나는 경우
스탬프 결합도 (Stamp Coupling)
모듈간의 인터페이스로 배열이나 오브젝트, 스트럭쳐등이 전달되는 경우
제어 결합도 (Control Coupling)
단순히 처리를 해야할 대상인 값만 전달되는게 아니라
어떻게 처리를 해야 한다는 제어 요소(DCD, Flag등)이 전달되는 경우
외부 결합도 (External Coupling)
어떤 모듈에서 반환한 값을 다른 모듈에서 참조해서 사용하는 경우
공통 결합도 (Common Coupling)
파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고
전역변수를 갱신하는 식으로 상호작용하는 경우
내용 결합도 (Content Coupling)
다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용 하는 경우
응집도의 종류
우연적 응집도 (Coincidental Cohesion)
모듈 내부의 각 구성요소들이 연관이 없을 경우
논리적 응집도 (Logical Cohesion)
유사한 성격을 갖거나 특정 형태로 분류되는 처리 요소들이 한 모듈에서 처리되는 경우
시간적 응집도 (Temporal Cohesion)
연관된 기능이라기보다 특정 시간에 처리되어야 하는 활동들을 한 모듈에서 처리할 경우
절차적 응집도 (Procedural Cohesion)
모듈이 다수의 관련 기능을 가질 때, 모듈 안의 구성요소들이 그 기능을 순차적으로 수행할 경우
교환적 응집도 (Communication Cohesion)
동일한 입력과 출력을 사용하여 다른 기능을 수행하는 활동들이 모여있을 경우
순차적 응집도 (Sequential Cohesion)
모듈 내에서 한 활동으로부터 나온 출력값을 다른 활동이 사용할 경우
기능적 응집도 (Functional Cohesion)
모듈 내부의 모든 기능이 단일한 목적을 위해 수행되는 경우
5
OSI 7 Layer
(Open Systems Interconnection 7 Layer)
통신이 일어나는 과정을 7단계로 정의한 국제 통신 표준 규악
물리 계층 (Physical Layer)
데이터를 전기적인 신호로 변환해서 주고받는 기능을 진행하는 공간
eq. 통신 케이블, 허브
데이터링크 계층 (Data Link Layer)
물리계층으로 송/수신 되는 정보를 확인하고 오류 없는 통신을 위해 여러 역할을 수행한다.
MAC 주소를 통해 통신
eq. 브릿지, 스위치
네트워크 계층 ( Network Layer)
데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능
라우터를 통해 경로를 선택하고, IP 주소를 지정 경로를 따라 패킷을 지정해줌
eq. 라우터
전송 계층 (Transport Layer)
두 호스트 시스템으로부터 발생하는 데이터의 흐름을 제공
세션 계층 ( Session Layer)
통신 시스템 사용자 간의 연결을 유지 및 설정
표현 계층 ( Presentation Layer)
세션 계층 간의 주고받는 인터페이스를 일관성 있게 제공
압축 기능
응용 계층 (Application Layer)
사용자가 네트워크에 접근할 수 있도록 서비스를 제공
6
객체 지향 추상화 방법
일반화 (Generalization)
객체들에 있어 공통적인 성질들을 상위 객체로 정의하고, 특수화된 객체들을 하위의 부분형 객체로 정의
한 클래스가 다른 클래스를 포함하는 상위 개념일 때 IS-A관계라하며, 일반화 관계로 모델링
집단화 (Aggregation)
서로 관련있는 여러 개의 객체를 묶어 한 개의 상위 객체 생성
여러 개의 속성을 묶어 사용자 정의형의 엔티티를 만드는 수단으로 사용
한 객체에서 하나 이상의 객체는 사용자 표정의 형이 될 때 복합 객체
연관화 (Association)
공통된 의미(semantic)를 서로 연관된 집단으로 표현하는 방법으로 링크(link)와 그 의미가 유사
객체들의 물리적, 또는 개념적 연결을 두 개 이상의 객체와 클래스로 표현
즉, 연관화는 관련되지 않은 클래스들 간의 의미적 연결
7
암호 알고리즘 ( 개인 키 / 공개 키 / HASH)
개인 키 암호화 기법 (Private Key Encryption) 기법
개인키 암호화 기법은 동일한 키로 데이터를 암호화하고 복화화함
개인키 암호화 기법은 대칭 암호 기법 또는 단일키 암호화 기법이라고도 함
개인키 암호화 기법은 한 번에 하나의 데이터 블록을 암호화 하는 블록 암호화 방식과
평문과 동일한 길이의 스트림을 생성하여 비트 단위로 암호화 하는 스트림 암호화 방식으로 구분
블록 암호화 방식
DES
미국 NBS에서 발표한 개인키 암호화 알고리즘, 블록크기는 64바이트 키 길이는 56비트
SEED
한국 인터넷 진흥원(KISA)에서 개발한 블록 암호화 알고리즘
블록크기는 128비트, 키 길이에 따라 128,256으로 분류
AES
미국 표준 기술 연구소(NIST)에서 발표한 개인키 암호화 알고리즘
블록크기는 128비트, 키 길이에 따라 128,192,256 으로 분류
ARIA
국가 정보원과 산학연협회가 개발한 블록 암호화 알고리즘
스트림 암호화 방식
LFSR ( Linear Feedback Shift Register)
현재 상태의 선형 연산을 통해 다음 상태를 생성하는 레지스터, XOR함수 사용
RC4 (Rivest Cipher 4)
평문 1바이트와 암호키 1바이트가 XOR 처리되어 암호문 1바이트를 생성
옥텟 단위 기반
로널드 라이베스트가 제작
전송보안계층(TLS/SSL)이나 WEB 등의 여러 프로토콜에 사용
공개 키 암호화 기법(Public Key Encryption) 기법 (=비대칭 암호화 기법)
공개키 암호화 기법은 데이터를 암호화할 때 사용하는 공개키는 데이터베이스 사용자에게 공개하고,
복호화할 때의 비밀키는 관리자가 비밀리에 관리
RSA
MIT의 라이베스트, 샤미르, 애들먼에 의해 제안된 공개키 암호화 알고리즘
큰 숫자를 소인수 분해하기 어렵다는 것에 기반해 만들어 짐
해시 (HASH) 암호화 기법
해시는 임의의 길이의 입력 데이터나 메시지를 고정된 길이의 값이나 키로 변환하는 것
해시 함수의 종류에는 SHA 시리즈, MD5, N-NASH, SNEFRU 등이 있음
8
UML 다이어그램
통합 모델링 언어를 사용하여 시스템 상호작용, 업무흐름, 시스템 구조, 컴포넌트 관계등을 그린 도면
구성 요소
사물 (Things)
관계 (Relationship)
다이어그램 (Diagram)
구조적 다이어그램의 종류
클래스 다이어그램 ( Class )
시스템에서 사용되는 객체 타입을 정의
그들간의 존재하는 정적인 관계를 다양한 방식으로 표현한 다이어그램
객체 지향 시스템에서 가장 많이 사용
객체 다이어그램 (Object)
클래스에 속한 사물들, 인스턴스를 특정 시점의 객체와 객체사이의 관계로 표현
럼바우 객체지향 분석 기법에서 객체 모델링에 활용
컴포넌트 다이어그램 (Component)
실제 구현 모듈인 컴포넌트 간의 관계나 인터페이스를 표현함
배치 다이어그램(Deployment)
결과물,프로세스,컴포넌트등 물리적 요소들의 위치를 표현함
복합체 구조 다이어그램 (Composite Structure)
클래스나 컴포넌트가 복합 구조를 갖는 경우 그 내부 구조를 표현함
패키지 다이어그램 (Package Diagram)
유즈케이스나 클래스 등의 모델 요소들을 그룹화한 패키지들의 관계를 표현함
9
디자인 패턴의 종류
생성 패턴
객체의 인스턴스 생성에 관여하고 클래스 정의와 객체 생성 방식을 구조화, 캡슐화하는 패턴
생성 패턴의 종류
Builder(빌더)
생성 단계를 캡슐화 해서 구축 공정을 동일하게 이용하도록 하는 패턴
Prototype(프로토타입)
기존 객체를 복제해서 새 객체를 생성할 수 있도록 하는 패턴
Factory Method(팩토리 메소드)
상위 클래스에서 객체를 생성하는 인터페이스를 정의하고 하위 클래스에서 인스턴스를 생성하는 패턴
Abstract Factory(추상 팩토리)
생성군들을 하나에 모아놓고 팩토리 중에서 선택하게 하는 패턴
Singgleton (싱글톤)
유일한 하나의 인스턴스를 보장하도록 하는 패턴
구조 패턴의 종류
Bridge (브릿지)
추상과 구현을 분리해서 결합도를 낮춘 패턴
Decorator (데코레이터)
소스를 변경하지 않고 기능을 확장하는 패턴
Facade (퍼싸드)
하나의 인터페이스를 통해 느슨한 결합을 제공하는 패턴
Flyweight (플라이 웨이트)
대량의 작은 객체들을 공유하는 패턴
Proxy (프록시)
대리 객체가 대신 그 일을 처리하는 패턴
Composite (컴포지트)
개별 객체와 복합 객체를 클라이언트에서 동일하게 사용하도록 하는 패턴
Adapter (어댑터)
인터페이스로 인해 함께 사용하지 못하는 클래스를 함께 사용하도록 하는 패턴
행위 패턴의 종류
Interpreter
언어 규칙 클래스를 이용하는 패턴
Templete Method
알고리즘 골격의 구조를 정의한 패턴
Chain of Responsibility
객체끼리 연결 고리를 만들어 내부적으로 전달하는 패턴
Command
요청 자체를 캡슐화해 파라미터로 넘기는 패턴
Iterator
내부 표현은 보여주지 않고 순회하는 패턴
Mediator
객체 간 상호작용을 캡슐화한 패턴
Memento
상태 값을 미리 저장해두었다가 복구하는 패턴
Observer
상태가 변할 때 의존자들에게 알리고 자동으로 업데이트하는 패턴
State
객체 내부 상태에 따라서 행위를 변경하는 패턴
Strategy
다양한 알고리즘을 캡슐화해 알고리즘 대체가 가능하도록 하는 패턴
Visitor
오퍼레이션을 별도의 클래스에 새롭게 정의한 패턴
10
하향식 통합 검사 / 상향식 통합 검사
하향식 통합 검사 (Top Down Intergration Test)
상위 모듈에서 하위 모듈 방향으로 통합하며 검사
우선 통합법, 깊이 우선 통합법, 넓이 우선 통합법 등이 있음
하향식 통합 검사의 절차
1
주요 제어 모듈을 드라이버로 사용, 주요 제어 모듈의 종속 모듈들은 스텁(STUB)로 대체한다.
2
깊이 우선, 넓이 우선 방식에 따라 종속 스텁들이 실제 모듈로 교체
3
모듈이 통합될 때마다 검사 실시
4
새로운 오류가 생기지 않음을 보증하기 위해 회귀 검사 실시
상향식 통합 검사 (Bottom Up Intergration Test)
하위 모듈에서 상위 모듈 방향으로 통합하며 검사
가장 하위 단계의 모듈부터 수행되므로 스텁이 필요없음
대신 하나의 주요 제어 모듈과 관련된 종 모듈의 그룹인 클러스터가 필요
상향식 통합 검사의 절차
1
하위 모듈들을 클러스터(Cluster)로 결합
2
검사 사례 입출력 조정을 위해 드라이버 작성 (제어 모듈이 없음)
3
클러스터 검사
4
드라이버 제거후, 클러스터는 프로그램 구조의 상위로 이동하여 결합
'시스템 & 정보보안 > 정처기 실기' 카테고리의 다른 글
정처기 실기 기출/요점 문제 정리 _2 (0) | 2023.04.13 |
---|---|
2023 정보처리기사 실기 요점 주요 기출 문제 (2) | 2023.04.09 |
정보처리기사 실기 요점 정리 _ 202201 (0) | 2023.04.02 |