Notice
Recent Posts
Recent Comments
Link
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Archives
Today
Total
관리 메뉴

차근차근

[2020 정보처리기사 필기] IT 프로젝트 정보시스템 구축 관리 (2) 본문

대학교/자격증

[2020 정보처리기사 필기] IT 프로젝트 정보시스템 구축 관리 (2)

SWKo 2020. 8. 15. 02:19

170. SW 관련 신기술

1. 인공지능(AI; Artificial Intelligence)

- 인공지능(AI)은 인간의 두뇌와 같이 컴퓨터 스스로 추론, 학습, 판단 등 인간지능적인 작업을 수행하는 시스템이다.

- 개발 언어로는 리스프(LISP), 프롤로그(PROLOG) 등이 있다.

 

2. 뉴럴링크(Neuralink)

- 사람의 뇌와 컴퓨터를 결합하는 기술을 개발하기 위해 설립한 회사

 

3. 딥 러닝(Deep Learning)

- 딥 러닝은 인간의 두뇌를 모델로 만들어진 인공 신경망(ANN; Artiifcial Neural Network)을 기반으로 하는 기계 학습 기술이다.

- 컴퓨터가 마치 사람처럼 스스로 학습할 수 있어 특정 업무를 수행할 때 정형화된 데이터를 입력받지 않고 스스로 필요한 데이터를 수집, 분석하여 고속으로 처리할 수 있다.

 

4. 전문가 시스템(Expert System)

- 의료 진단 등과 같은 특정 분야의 전문가가 수행하는 고도의 업무를 지원하기 위한 컴퓨터 응용 프로그램

 

5. 증강 현실(AR; Augmented Reality)

- 실제 촬영한 화면가상의 정보를 부가하여 보여주는 기술로, 혼합현실(MR; Mixed Reality)이라고도 부른다.

- 모바일에서는 증강현실이 위치 기반 서비스(LBS) 분야에 할발히 이용되고 있다.

 

6. 블록체인(Blockchain)

- 블록체인은 P2P(Peer-to-Peer) 네트워크를 이용하여 온라인 금융 거래 정보를 온라인 네트워크 참여자(Peer)의 디지털 장비에 분산 저장하는 기술이다.

- 비트코인이 블록체인의 가장 대표적인 예이며, 주식 거래 등 다양한 금용거래에 사용이 가능하다.

 

7. 분산 원장 기술(DLT; Distrubuted Ledger Technology)

- 분산 원장 기술(DLT)은 중앙 관리자나 중앙 데이터 저장소가 존재하지 않고 P2P 망내의 참여자들에게 모든 거래 목록이 분산 저장되어 거래가 발생할 때마다 지속적으로 갱신되는 디지털 원장을 의미한다.

 

8. 해시(Hash)

- 해시는 임의의 길이의 입력 데이터나 메시지고정된 길이의 값이나 키로 변환하는 것을 말한다.

- 해시는 데이터의 무결성을 검증하기 위한 방법으로 사용된다.

- 대칭, 비대칭 암호화 기법과 함께 사용되어 전자화폐, 전자서명 등의 다양한 방면에서 활용되고 있다.

 

9. 양자 암호키 분배(QKD; Quantum Key Distribution)

- 양자 암호키 분배(QKD)는 양자 통신을 위해 비밀키를 분배하여 관리하는 기술로, 두 시스템이 암호 알고리즘 동작을 위한 비밀키를 안전하게 공유하기 위해 양자 암호키 분배 시스템을 설치하여 운영하는 방식으로 활용된다.

 

10. 프라이버시 강화 기술(PET; Privacy Enhancing Technology)

- 개인정보 위험 관리 기술

 

11. 디지털 저작권 관리(DRM; Digital Rights Management)

- 인터넷이나 기타 디지털 매체를 통해 유통되는 데이터의 저작권을 보호를 위해 데이터의 안전한 배포를 활성화하거나 불법 배포를 방지하기 위한 시스템이다.

 

12. 공통 평가 기준(CC; Common Criteria)

- ISO 15408 표준으로 채택된 정보 보호 제품 평가 기준이다.

 

13. 개인정보 영향평가 제도(PIA; Privacy Impact Assessment)

- 개인 정보를 활용하는 새로운 정보시스템의 도입 및 기존 정보시스템의 중요한 변경 시 시스템의 구축, 운영이 기업의 고객은 물론 국민의 사생활에 미칠 영향에 대해 미리 조사, 분석, 평가하는 제도이다.

- 개인정보보호법에 의해 공공기관은 의무화되어 있다.

 

14. 그레이웨어(Grayware)

- 소프트웨어를 제공하는 입장에서는 악의적이지 않은 유용한 소프트웨어라고 주장할 수 있지만 사용자 입장에서는 유용할 수도 있고 악의적일 수도 있는 애드웨어, 트랙웨어, 기타 악성 코드나 악성 공유웨어를 말한다.

 

15. 매시업(Mashup)

- 매시업은 웹에서 제공하는 정보 및 서비스를 이용하여 새로운 소프트웨어서비스, 데이터베이스 등을 만드는 기술이다. 즉 다수의 정보원이 제공하는 콘텐츠를 조합하여 하나의 서비스로 제공하는 웹 사이트 또는 웹 애플리케이션을 말한다.

- 구글 지도에 부동산 매물 정보를 결합한 구글의 하우징맵스(HousingMaps)가 대표적인 메시업이다.

 

16. 리치 인터넷 애플리케이션(RIA; Rich Internet Application)

- 플래시 애니메이션 기술과 웹 서버 애플리케이션 기술을 통합하여 기존 HTML 보다 역동적이고 인터랙티브한 웹페이지를 제공하는 신개념의 플래시 웹페이지 제작 기술이다.

 

17. 시맨틱 웹(Semantic Web)

- 컴퓨터가 사람을 대신하여 정보를 읽고 이해하고 가공하여 새로운 정보를 만들어 낼 수 있도록 이해하기 쉬운 의미를 가진 차세대 지능형 웹이다.

 

18. 증발품(Vaporware)

- 판매 계획 또는 배포 계획은 발표되었으나 실제로 고객에게 판매되거나 배포되지 않고 있는 소프트웨어

 

19. 오픈 그리드 서비스 아키텍처(OGSA; Open Grid Service Architecture)

- 애플리케이션 공유를 위한 웹 서비스를 그리드 상에서 제공하기 위해 만든 개방형 표준이다.

 

20. 서비스 지향 아키텍처(SOA; Service Oriented Architecture)

- 기업의 소프트웨어 인프라인 정보시스템을 공유와 재사용이 가능한 서비스 단위나 컴포넌트 중심으로 구축하는 정보기술 아키텍처이다.

 

21. 서비스형 소프트웨어(SaaS; Software as a Service)

- 소프트웨어의 여러 기능 중에서 사용자가 필요로 하는 서비스만 이용할 수 있도록 한 소프트웨어이다.

 

22. 소프트웨어 에스크로(임치)(Software Escrow)

- 소프트웨어 개발자의 지식재산권을 보호하고 사용자는 저렴한 비용으로 소프트웨어를 안정적으로 사용 및 유지보수 받을 수 있도록 소스 프로그램과 기술 정보 등을 제3의 기관에 보관하는 것이다.

 

23. 복잡 이벤트 처리(CEP; Complex Event Processing)

- 실시간으로 발생하는 많은 사건들 중 의미가 있는 것만을 추출할 수 있도록 사건 발생 조건을 정의하는 데이터 처리 방법이다.

 

24. 디지털 트윈(Digital Twin)

- 현실속의 사물을 소프트웨어로 가상화한 모델로, 자동차, 항공 등 여라 분야에서 주목 받고 있다.

 

핵심

- 증강현실, 시맨틱 웹, DRM, 그레이웨어


171. 소프트웨어 개발 보안

1. 소프트웨어 개발 보안의 개요

- 소프트웨어 개발 과정에서 발생할 수 있는 보안 취약점을 최소화하여 보안 위협으로부터 안전한 소프트웨어를 개발하기 위한 일련의 보안 활동을 의미

- 데이터의 기밀성(Confidentiality), 무결성(Integrity), 가용성(Availability)을 유지하는 것을 목표로 한다.

- 소프트웨어 보안 취약점이 발생하는 경우

       - 보안 요구사항이 정의되지 않은 경우

       - 소프트웨어 설계 시 논리적 오류가 포함된 경우

       - 기술 취약점을 갖고 있는 코딩 규칙을 적용한 경우

       - 소프트웨어의 배치가 적절하지 않은 경우

       - 보안 취약점 발견 시 적절하게 대응하지 못한 경우

- 안전한 소프트웨어 개발을 위한 수행 작업

       - 참여 관련자들의 역할과 책임을 명확히 정의하고, 충분한 보안 교육 실시

       - 소프트웨어 개발 생명 주기(SDLC)의 각 단계마다 보안 활동 수행

       - 소프트웨어 개발 보안을 위한 표준을 확립

       - 재사용이 가능한 보안 모듈을 만들어 유사한 소프트웨어 개발에 사용될 수 있도록 한다.

       - 새로운 소프트웨어 개발 프로젝트에 사용될 수 있도록 보안 통제의 효과성 검증을 실시한다.

 

2. 소프트웨어 개발 보안 관련 기관

- 행정안전부

       - 소프트웨어 개발 보안 정책을 총괄

       - 관련 법규, 지침, 제도를 정비

       - 소프트웨어 보안 약점을 진단하는 사람의 양성 및 관련 업무를 수행

- 한국인터넷진흥원(KISA)

       - 소프트웨어 개발 보안 정책 및 가이드를 개발한다.

       - 소프트웨어 개발 보안에 대한 기술을 지원하고, 교육과정 및 자격제도를 운영한다.

- 발주기관

       - 소프트웨어 개발 보안 계획 수립

       - 소프트웨어 개발 보안 사업자 및 감리법인 선정

       - 소프트웨어 개발 보안 준수 여부 점검

- 사업자

       - 소프트웨어 개발 보안 관련 기술 수준 및 적용 계획을 명싷나다.

       - 자체적으로 보안 약점을 진단하고 제거한다.

- 감리법인

       - 감리 계획을 수립하고 협의한다.

       - 소프트웨어 보안 약점의 제거 여부 및 조치 결과를 확인한다.

 

핵심

- 소프트웨어 개발 보안 관련 기관 : 감리법인, 사업자, 한국인터넷진흥원(KISA), 발주기관, 행정안전부 -> (암기법 : 감사한발행)


172. 소프트웨어 개발 직무별 보안 활동

1. 소프트웨어 개발 직무별 보안 활동

- 안전한 소프트웨어 개발을 위해서는 프로젝트 관련자들이 보안 활동을 수행할 수 있도록 각 직무별로 수행해야 할 보안 활동을 정의해야 한다.

- 소프트웨어 개발 참여자의 직무는 프로젝트 관리자, 요구사항 분석가, 아키텍트, 설계자, 구현 개발자, 테스트 분석가, 보안 감사자로 구분한다.

 

2. 프로젝트 관리자(Project Manager)

- 응용 프로그램에 대한 보안 전략을 조직 구성원들에게 전달한다.

- 조직 구성원들에게 응용 프로그램 보안 영향을 이해시킨다.

- 조직의 상태를 모니터링 한다.

 

3. 요구사항 분석가(Requirement Specifier)

- 아키텍트가 고려해야 할 보안 관련 비즈니스 요구사항을 설명한다.

- 프로젝트 팀이 고려해야 할 구조 정의 및 해당 구조에 존재하는 자원에 대한 보안 요구사항을 정의한다.

 

4. 아키텍트(Architect)

- 보안 오류가 발생하지 않도록 보안 기술 문제를 충분히 이해한다.

- 시스템에 사용되는 모든 리소스 정의 및 각 리소스별로 적절한 보안 요구사항을 적용한다.

 

5. 설계자(Designer)

- 특정 기술에 대해 보안 요구사항의 만족성 여부를 확인한다.

- 문제 발생 시 최선의 문제 해결 방법을 결정한다.

- 애플리케이션 보안 수준에 대한 품질 측정을 지원한다.

- 많은 비용이 필요한 수정 요구사항을 최소화하기 위한 방법을 제공한다.

- 다른 소프트웨어와 통합할 때 발생할 수 있는 보안 위험에 대해 이해해야 한다.

- 소프트웨어에서 발견된 보안 위협에 대해 적절히 대응한다.

 

6. 구현 개발자(Implementer)

- 구조화된 소프트웨어 개발 환경에서 프로그램을 원활히 구현할 수 있도록 시큐어 코딩 표준을 준수하여 개발한다.

- 다른 사람이 소프트웨어의 안전 여부를 쉽게 확인할 수 있도록 문서화 한다.

 

7. 테스트 분석가(Test Analyst)

- 소프트웨어 개발 요구사항과 구현 결과를 반복적으로 확인한다.

- 테스트 분석가는 반드시 보안 전문가일 필요는 없지만 보안 위험에 대한 학습이나 툴(Tool) 사용법 정도는 숙지하고 있어야 한다.

 

8. 보안 감시자(Security Auditor)

- 소프트웨어 개발 프로젝트의 현재 상태의 보안을 보장한다.

- 요구사항 검토 시 요구사항의 적합성과 완전성을 확인한다.

- 소프트웨어 개발 프로젝트의 전체 단계에서 활동한다.

- 설계 단계에서는 보안 문제로 이어질 수 있는 사항이 있는지 확인한다.

- 구현 단계에서는 보안 문제가 있는지 확인한다.

 

핵심

- Project Manager : 팀 구성원들에게 보안 전략 전달

- 요구사항 분석가 : 요구사항들을 자세히 설명

- 구현 개발자 : 시큐어 코딩 표준 준수하여 개발, 문서화


173. 소프트웨어 개발 보안 활동 관련 법령 및 규정

1. 개인정보 보호 관련 법령

- 개인정보 보호법 : 개인정보의 처리 및 보호에 관한 사항을 정함으로써 개인의 자유와 권리를 보호한다.

- 정보통신망 이용촉진 및 정보보호 등에 관한 법률 : 정보통신망의 이용 촉진 및 정보 통신 서비스를 이용하는 이용자들의 개인정보를 보호한다.

- 신용정보의 이용 및 보호에 관한 법률 : 개인 신용정보의 효율적 이용과 체계적인 관리를 통해 정보의 오남용을 방지한다.

- 위치정보의 보호 및 이용 등에 관한 법률 : 개인 위치정보의 효율적 이용과 체계적인 관리를 통해 정보의 오남용을 방지한다.

- 표준 개인정보 보호 지침 : 개인정보의 처리에 관한 기준, 개인정보 침해의 유형 및 예방조치 등에 관한 세부사항을 규정한다.

- 개인정보의 안전성 확보 조치 기준 : 개인정보 처리자가 개인정보를 처리하는데 있어 개인정보가 분실, 도난, 유출, 위조, 변조, 훼손되지 않도록 안전성 확보에 필요한 기술적, 관리적, 물리적 안전조치에 관한 최소한의 기준을 규정한다.

- 개인정보 영향평가에 관한 고시 : 개인정보 영향평가를 위한 평가기관의 지정, 영향평가의 절차 등에 관한 세부기준을 규정한다.

 

2. IT 기술 관련 규정

- RFID 프라이버시 보호 가이드라인 : RFID 시스템의 이용자들의 프라이버시를 보호

- 위치정보의 보호 및 이용 등에 관한 법률 : 개인 위치정보의 유출 및 오남용을 방지하기 위한 법률

- 위치정보의 관리적, 기술적 보호조치 권고 해설서 : 개인 위치정보의 누출, 변조 훼손 등을 방지하기 위해 위치정보 사업자 및 위치기반 서비스 사업자가 준수해야 하는 관리적, 기술적 보호조치의 구체적인 기준

- 바이오정보 보호 가이드라인 : 개인 바이오정보(지문, 홍채, 음성 등)의 보호와 안전한 활용을 위한 원칙 및 조치사항

- 뉴미디어 서비스 개인정보 보호 가이드라인 : 뉴미디어 서비스(클라우드, SNS 등) 이용 및 제공 시 개인정보의 침해사고를 예방하기 위한 준수사항

 

핵심

- 개인정보보호법 : 개인정보의 처리 및 보호에 관한 사항을 정함으로써 개인의 자유와 권리를 보호

- 표준 개인정보 보호 지침 : 개인정보의 처리에 관한 기준, 개인정보 침해의 유형 및 예방조치 등에 관한 세부사항을 규정

- 바이오정보 보호 가이드라인 : 개인 바이오정보(지문, 홍채, 음성 등)의 보호와 안전한 활용을 위한 원칙 및 조치사항

Comments