정보처리기사
암호화
- 단방향(Hash): MD ▶ SHA, HAVAL
- 양방향
- 대칭키
- 빠른 속도
- 많은 양
- 키 개수: n*(n-1)/2
- 종류
- Stream: RC4
- Block: DES ▶ AES, IDEA, SEED, ARIA
- 비대칭키(공개키)
- 느린 속도
- 적은 양 ◀ 내용보다는 키를 암호화하는 방식으로 사용
- 키 개수: 2*n
- 종류
- 소인수분해: RSA, Robin
- 이산대수: DH, DSA, EIGmal
- 타원곡선: ECC, ECDSA
- 대칭키
- 페이스텔: 블록 암호의 일종으로, 암호화 방식이 특정 계산 함수의 반복으로 이루어지는 것
소프트웨어 생명 주기
- 폭포수 모형 (Waterfall Model)
- 이전 단계로 돌아갈 수 없다는 전제
- 각 단계가 끝난 후에는 다음 단계를 수행하기 위한 결과물이 명확하게 산출되어야 함
- 나선형 모델
- 계획 및 정의 → 위험 분석 → 공학적 개발 → 고객 평가
- 프로토타입 모형(Prototype Model, 원형 모델)
- 실제 개발될 소프트웨어에 대한 견본품을 만들어 최종 결과물을 예측하는 모형
- RAD 기법 모델
- 짧은 개발 기간동안 개발하기위한 순차적 프로세스 모델
- V 모델
- 단위 테스트 → 통합 테스트 → 시스템 테스트 → 인수 테스트
- 작업 결과의 검증(테스트)에 초점
- 4세대 기법
- 자동화 도구들을 이용하여 요구사항 명세서로부터 실행코드를 자동으로 생성할 수 있게 해주는 방법
정보보안 3요소
- 기밀성: 인가된 사용자만 접근
- 무결성: 인가된 사용자만 인가된 방법으로 자원 수정
- 가용성: 인가된 사용자는 언제든지 접근 가능
접근 제어
- 강제적 접근제어(MAC, Mandatory Access Control)
: 높은 보안 수준을 요구하는 정보가 낮은 보안 수준의 주체에게 노출되지 않도록 하는 접근 제어 방법 - 임의적 접근제어(DAC, Discretionary Access Control)
: 객체의 소유주가 접근 여부를 결정 - 역할기반 접근제어(RBAC, Role Based Access Control)
: 조직내에서 맡은 역할에 기초하여 자원에 대한 접근허용 여부를 결정하는 방법
MAC 보안 모델
- Bell-LaPadula Confidentiality Model; BLP
- 기밀성 강조
- No Read Up: 낮은 등급의 주체는 높은 등급의 객체를 읽을 수 없음
- No Write Down: 높은 등급의 주체는 낮음 등급의 객체를 수정할 수 없음
- Biba Integrity Model
- 무결성 강조
- No Read Down: 높은 등급의 주체는 낮은 등급의 객체를 읽을 수 없음
- No Write Up: 낮은 등급의 주체는 상위 등급의 객체를 수정할 수 없음
- Clark-Wilson Integrity Model
- 무결성 강조
- 상업용
- Brewer Nash, Chinese Wall Model
- 이익 충돌 방지를 위한 모델
- Lattice
- 정보의 흐름을 안전하게 제어
SW 비용 산정 기법
- 하향식
- 프로젝트의 전체 비용을 산정한 후 각 작업별로 비용을 세분화
- 종류: 전문가 감정 기법, 델파이 기법
- 상향식
- 세부적인 작업 단위별로 비용을 산정한 후 집계하여 전체 비용을 산정
- 종류
- LOC(원시 코드 라인 수, source Line of Code)
-각 기능의 원시 코드 라인 수의 비관치(1), 낙관치(1), 기대치(4)를 측정하여 예측치를 구하고 이를 이용하여 비용을 산정
- 수학적 산정
- 종류
- COCOMO: LOC(원시 코드 라인 수)에 의한 비용 산정 기법
- 종류: 조직형-Organic(5만 라인 이하), 반 분리형-Semi-Detached(30만 라인 이하), 내장형-Embedded(30만 라인 이상)
- Putnam: 소프트웨어 생명 주기의 전 과정 동안에 사용될 노력의 분포를 예상
- 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력 분포도를 기초로 함
- SLIM: Rayleigh-Nordan 곡선과 Putnam 예측 모델을 기초로 하여 개발된 자동화 추정 도구
- 기능점수(FP): 소프트웨어의 기능을 증대시키는 요인별로 기능 점수(FP)를 구한 후, 비용을 산정
요구사항 분석 기법
구조적 분석
: 하향식 접근 방식(폭포수 모형)
- DFD: 프로세스와 프로세스 간에 존재하는 상호작용 표현
- DD: 데이터 흐름도(Data Flow Diagram)에 기술된 자료들에 대해 정의
- Mini spec.: 자료 흐름도를 보완 설명
- ERD: 시스템에서 처리되는 개체와 속성 그리고 관계를 표현하여 개체를 모델화하는 도구
- STD(State Transition Diagram): 시스템의 상태와 변화를 모델링
객체지향적 분석
: 상향식 접근 방식
- Rumbaugh: 가장 일반적으로 사용되는 방법으로 분석 활동을 객체, 동적, 기능 모델로 나누어 순서대로 수행
- 객체 모델링(Object Modeling): 클래스 다이어그램을 이용하여 시스템에서 요구되는 객체을 표현한 것
- 동적 모델링(Dynamic Modeling): 상태 다이어그램을 이용하여 시간의 흐름에 따른 객체들 사이의 동적인 행위를 표현한 것
- 기능 모델링(Functional Modeling): 자료 흐름도(DFD)를 이용하여 다수의 프로세스들 간의 자료 흐름을 중심으로 처리 과정을 표현한 것
- Booch: 미시적(Micro) 개발 프로세스와 거시적(Macro) 개발 프로세스를 모두 사용
- Jacobson: UseCase를 강조하여 사용
- Coad와 Yourdon: E-R다이어그램을 사용
- Wirfs-Brock: 분석과 설계간의 구분이 없음
CBD 방식 분석
: 컴포넌트 제작 기법을 통해 재사용성을 향상
Salt: 해커들의 레인보우 테이블이 값에 대한 Hash값을 갖고 있으므로, 해당 값에 다른 값을 덧붙여서 다른 암호값으로 저장되도록 추가하는 값
MQTT: IoT 환경에서 자주 사용되는 경량 메세지 전송 프로토콜
Evil Twin Attack: 실제 존재하는 동일한 이름의 무선 Wifi 신호를 송출해 로그온한 사람들의 계정 정보나 신용정보 등을 빼내는 기법
참고 자료
'Certificate > 정보처리기사' 카테고리의 다른 글
[정보처리기사] 2020년 4회차 (2)소프트웨어 개발 (0) | 2023.07.16 |
---|---|
[정보처리기사] 2020년 4회차 (1)소프트웨어 설계 (0) | 2023.07.15 |
[정보처리기사] 2021년 1회차 (4)프로그래밍 언어 활용 (0) | 2023.07.14 |
[정보처리기사] 2021년 1회차 (3)데이터베이스 설계 (0) | 2023.07.14 |
[정보처리기사] 2021년 1회차 (2)소프트웨어 개발 (0) | 2023.07.14 |