자격증

[정처기 실기] 2021년 3회 필기 기출문제 (실기 대비 정리)

아이리스 Iris 2021. 9. 9. 20:20

1과목 : 소프트웨어 설계

1. 요구사항 검증(Requirements Validation)
- 요구사항이 고객이 정말 원하는 시스템을 제대로 정의하고 있는지 점검하는 과정이다.
- 개발 완료 이후에 문제점이 발견될 경우 막대한 재작업 비용이 들 수 있기 때문에 매우 중요하다.
- 요구사항이 실제 요구를 반영하는지, 문서상의 요구 사항은 서로 상충되지 않는지 등을 점검한다.

2. 의존 관계(Dependency) [수제비 2-33]
: UML 모델에서 한 사물의 명세가 바뀌면 다른 사물에 영향을 주며, 일반적으로 한 클래스가 다른 클래스를 오퍼레이션의 매개변수로 사용하는 경우에 나타나는 관계이다.

3. 익스트림 프로그래밍(XP)
- 사용자의 요구사항은 언제든지 변할 수 있다.
- 고객과 직접 대면하며 요구사항을 이야기하기 위해 사용자 스토리(User Story)를 활용할 수 있다.
- 기존의 방법론에 비해 실용성(Pragmatism)을 강조한 것이라고 볼 수 있다.

4. 추상화(Abstraction)
- 자료 추상화 / 제어 추상화 / 과정 추상화

5. 정보 은닉(Information Hiding)
- 필요하지 않은 정보는 접근할 수 없도록 하여 한 모듈 또는 하부 시스템이 다른 모듈의 구현에 영향을 받지 않게 설계되는 것을 의미한다.
- 모듈들 사이의 독립성을 유지시키는 데 도움이 된다.
- 설계에서 은닉되어야 할 기본 정보로는 IP 주소와 같은 물리적 코드, 상세 데이터 구조 등이 있다.

6. 모델링(Modeling)
- 개발팀이 응용문제를 이해하는 데 도움을 줄 수 있다.
- 개발될 시스템에 대하여 여러 분야의 엔지니어들이 공통된 개념을 공유하는 데 도움을 준다.
- 절차적인 프로그램을 위한 자료 흐름도는 프로세스 위주의 모델링 방법이다.

7. 요구 분석(Requirement Analysis)
- 소프트웨어 개발의 실제적인 첫 단계로 사용자의 요구에 대해 이해하는 단계이다.
- 요구 추출(Requirement Elicitation)은 프로젝트 계획 단계에 정의한 문제의 범위 안에 있는 사용자의 요구를 찾는 단계이다.
- 도메인 분석(Domain Analysis)은 요구에 대한 정보를 수집하고 배경을 분석하여 이를 토대로 모델링을 하게 된다.

8. Operation
- 클래스 다이어그램의 요소로 클래스의 동작을 의미한다.
- 클래스에 속하는 객체에 대하여 적용될 메서드를 정의한 것이다.
- UML에서는 동작에 의한 인터페이스를 지칭한다고 볼 수 있다.

9. 마스터-슬레이브(Master-Slave) 아키텍처
- 일반적으로 실시간 시스템에서 사용된다.
- 마스터 프로세스는 일반적으로 연산, 통신, 조정을 책임진다.
- 마스터 프로세스는 슬레이브 프로세스들을 제어할 수 있다.

10. 개념 모델링
- Data Flow Diagram / UML Diagram / E-R Diagram

11. 객체지향의 주요 개념
- 객체는 실세계에 존재하거나 생각할 수 있는 것을 말한다.
- 클래스는 하나 이상의 유사한 객체들을 묶어 공통된 특성을 표현한 것이다.
- 다형성은 상속받은 여러 개의 하위 객체들이 다른 형태의 특성을 갖는 객체로 이용될 수 있는 성질이다.

12. 사용자 인터페이스(User Interface)
- 사용자와 시스템이 정보를 주고받는 상호작용이 잘 이루어지도록 하는 장치나 소프트웨어를 의미한다.
- 배우기가 용이하고 쉽게 사용할 수 있도록 만들어져야 한다.
- 사용자 요구 사항이 UI에 반영될 수 있도록 구성해야 한다.

13. GoF(Gang of Four) 디자인 패턴
- 디자인 패턴을 목적(Purpose)으로 분류할 때 생성, 구조, 행위로 분류할 수 있다.
- 행위 패턴은 클래스나 객체들이 상호작용하는 방법과 책임을 분산하는 방법을 정의한다.
- Singleton 패턴은 특정 클래스의 인스턴스가 오직 하나임을 보장하고, 이 인스턴스에 대한 접근 방법을 제공한다.

14. 애자일 개발 방법론
- 빠른 릴리즈를 통해 문제점을 빠르게 파악할 수 있다.
- 고객과의 의사소통을 중요하게 생각한다.
- 진화하는 요구 사항을 수용하는데 적합하다.

15. 기능 모델링
: 럼바우(Rumbaugh)의 객체지향 분석 기법 중 하나로 자료 흐름도(DFD)를 주로 이용한다.

16. 순차 다이어그램(Sequence Diagram)
- 객체들의 상호 작용을 나타내기 위해 사용한다.
- 시간의 흐름에 따라 객체들이 주고받는 메시지의 전달 과정을 강조한다.
- 동적 다이어그램에 가까우며 교류 다이어그램(Interaction Diagram)의 한 종류로 볼 수 있다.

17. 객체지향 분석 기법
- 동적 모델링 기법이 사용될 수 있다.
- 데이터와 행위를 하나로 묶어 객체를 정의 내리고 추상화시키는 작업이라 할 수 있다.
- 코드 재사용에 의한 프로그램 생산성 향상 및 요구에 따른 시스템의 쉬운 변경이 가능하다.

18. CLI(Command Line Interface)
: 대표적으로 DOS 및 Unix 등의 운영체제에서 조작을 위해 사용하던 것으로, 정해진 명령문자열을 입력하여 시스템을 조작하는 사용자 인터페이스(User Interface)이다.

19. 미들웨어(Middleware)
- 분산 시스템에서 다양한 부분을 관리하고 통신하며 데이터를 교환하게 해주는 소프트웨어로 볼 수 있다.
- 위치 투명성(Location Transparency)을 제공한다.
- 분산 시스템의 여러 컴포넌트가 요구하는 재사용 가능한 서비스의 구현을 제공한다.

20. 소프트웨어 아키텍처
- 외부에서 인식할 수 있는 특성이 담긴 소프트웨어의 골격이 되는 기본 구조로 볼 수 있다.
- 데이터 중심 아키텍처는 공유 데이터 저장소를 통해 접근자 간의 통신이 이루어지므로 각 접근자의 수정과 확장이 용이하다.
- 이해관계자들의 품질 요구 사항을 반영하여 품질 속성을 결정한다.


2과목 : 소프트웨어 개발

21. 강도(Stress) 테스트
: 시스템에 과다 정보량을 부과하여 과부하 시에도 시스템이 정상적으로 작동되는지를 테스트한다.

22. 버블 정렬

23. 깊이우선탐색(DFS)

24. 모듈
- 소프트웨어 구조를 이루며, 다른 것들과 구별될 수 있는 독립적인 기능을 갖는 단위이다.
- 하나 또는 몇 개의 논리적인 기능을 수행하기 위한 명령어들의 집합이라고도 할 수 있다.
- 서로 모여 하나의 완전한 프로그램으로 만들어질 수 있다.

25. 테스트 드라이버(Test Driver)
- 시험 대상 모듈을 호출하는 간이 소프트웨어이다.
- 필요에 따라 매개 변수를 전달하고 모듈을 수행한 후의 결과를 보여줄 수 있다.
- 상향식 통합 테스트에서 사용된다.

26. 선형 구조
- 스택(LIFO) / 큐 / 데크

27. 스택 자료 삭제 알고리즘 (Underflow)

28. 사용자 매뉴얼 작성 절차
: 작성 지침 정의 → 사용 설명서 구성 요소 정의 → 구성 요소별 내용 작성 → 사용 설명서 검토

29. 스택 출력 결과

30. 검증(Verification)과 확인(Validation)
- 소프트웨어 테스트에서 검증과 확인을 구별하면 찾고자 하는 결함 유형을 명확하게 하는 데 도움이 된다.
- 검증은 소프트웨어 개발 과정을 테스트하는 것이고, 확인은 소프트웨어 결과를 테스트하는 것이다.
- 검증은 작업 제품이 요구 명세의 기능, 비기능 요구사항을 얼마나 잘 준수하는지 측정하는 작업이다.

31. 단위 테스트(Unit Test)
: 개별 모듈을 시험하는 것으로 모듈이 정확하게 구현되었는지, 예정한 기능이 제대로 수행되는지를 점검하는 것이 주요 목적인 테스트이다.

32. 형상 관리의 개념과 절차
- 형상 식별은 형상 관리 계획을 근거로 형상 관리의 대상이 무엇인지 식별하는 과정이다.
- 형상 관리를 통해 가시성과 추적성을 보장함으로써 소프트웨어의 생산성과 품질을 높일 수 있다.
- 형상 감사는 형상 관리 계획대로 형상 관리가 진행되고 있는지, 형상 항목의 변경이 요구 사항에 맞도록 제대로 이뤄졌는지 등을 살펴보는 활동이다.

33. 정적 분석(Static Analysis)
- 소스 코드를 실행시키지 않고 분석한다.
- 코드에 있는 오류나 잠재적인 오류를 찾아내기 위한 활동이다.
- 자료 흐름이나 논리 흐름을 분석하여 비정상적인 패턴을 찾을 수 있다.

34. Fault
: 소프트웨어 개발 활동을 수행함에 있어서 시스템이 고장(Failure)을 일으키게 하며, 오류(Error)가 있는 경우 발생한다.

35. 코드의 간결성 유지 지침
- 공백을 이용하여 실행문 그룹과 주석을 명확히 구분한다.
- 복잡한 논리식과 산술식은 괄호와 들여쓰기(Indentation)를 통해 명확히 표현한다.
- 빈 줄을 사용하여 선언부와 구현부를 구별한다.

36. 이식성(Portability)
: 소프트웨어 품질 목표 중 하나 이상의 하드웨어 환경에서 운용되기 위해 쉽게 수정될 수 있는 시스템 능력이다.

37. 이진 탐색트리
: 최악의 경우 검색 효율이 가장 나쁜 트리 구조이다.

38. 트리 중위 순회

39. 테스트 케이스 자동 생성 도구
- 입력 도메인 분석 / 랜덤(Random) 테스트 / 자료 흐름도

40. 패키저(Packager)
: 저작권 관리(DRM) 구성 요소 중 하나로, 콘텐츠를 메타 데이터와 함께 배포 가능한 단위로 묶는다.


3과목 : 데이터베이스 구축

41. 데이터베이스의 무결성 규정
- 무결성 규정에는 데이터가 만족해야 될 제약 조건, 규정을 참조할 때 사용하는 식별자 등의 요소가 포함될 수 있다.
- 무결성 규정의 대상으로는 도메인, 키, 종속성 등이 있다.
- 릴레이션 무결성 규정(Relation Integrity Rules)은 릴레이션을 조작하는 과정에서의 의미적 관계(Semantic Relationship)를 명세한 것이다.

42. 트랜잭션
: 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들이다.

43. 카티션 프로덕트(cartesian product)

44. 물리적 데이터베이스 설계
- 물리적 설계의 목적은 효율적인 방법으로 데이터를 저장하는 것이다.
- 트랜잭션 처리량과 응답시간, 디스크 용량 등을 고려해야 한다.
- 저장 레코드의 형식, 순서, 접근 경로와 같은 정보를 사용하여 설계한다.

45. 개체 무결성 제약조건
: 기본키NULL 값을 가져서는 안되며, 릴레이션 내에 오직 하나의 값만 존재해야 한다는 조건이다.

46. GROUP BY 절
: SQL문에서 HAVING을 사용할 수 있는 절이다.

47. 관계 대수 연산
- 셀렉트(Select) / 프로젝트(Project) / 조인(Join) / 디비전(Division)

48. SQL 구문

49. 슈퍼키
: 관계형 데이터베이스에서 한 릴레이션 내의 속성들의 집합으로 구성된 키로서, 릴레이션을 구성하는 모든 튜플에 대한 유일성은 만족시키지만 최소성은 만족시키지 못한다.

50. 인덱스(Index)
- 인덱스의 기본 목적은 검색 성능을 최적화하는 것으로 볼 수 있다.
- B-트리 인덱스는 분기를 목적으로 하는 Branch Block을 가지고 있다.
- BETWEEN 등 범위(Range) 검색에 활용될 수 있다.

51. 로킹 단위(Locking Granularity)
- 로킹 단위가 크면 병행성 수준이 낮아진다.

52. 관계 대수
- 릴레이션 조작을 위한 연산의 집합으로 피연산자와 결과가 모두 릴레이션이다.
- 일반 집합 연산과 순수 관계 연산으로 구분된다.
- 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시한다.

53. 이상 현상(Anomaly)
: 데이터의 중복으로 인하여 관계연산을 처리할 때 예기치 못한 곤란한 현상이 발생하는 것이다.

54. 데이터 정의어(DDL)
- CREATE / ALTER / DROP / TRUNCATE

55. 정규화(Normalization)
- 데이터 구조의 안정성을 최대화한다.
- 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 방지한다.
- 데이터 삽입 시 릴레이션을 재구성할 필요성을 줄인다.

56. 격리성(Isolation)
: 트랜잭션의 주요 특성 중 하나로 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행 중에 다른 트랜잭션의 연산이 끼어들 수 없음을 의미한다.

57. SQL의 논리 연산자
- AND / OR / NOT

58. 타임스탬프 기법
: 동시성 제어를 위한 직렬화 기법으로 트랜잭션 간의 처리 순서를 미리 정하는 방법이다.

59. 제5정규형
: 이전 단계의 정규형을 만족하면서 후보키를 통하지 않는 조인 종속(JD : Join Dependency)을 제거해야 만족한다.

60. X → Y(함수 종속)
: 어떤 릴레이션 R에서 X와 Y를 각각 R의 애트리뷰트 집합의 부분 집합이라고 할 경우 애트리뷰트 X의 값 각각에 대해 시간에 관계없이 항상 애트리뷰트 Y의 값이 오직 하나만 연관되어 있을 때 Y는 X에 함수 종속이라고 한다.


4과목 : 프로그래밍 언어 활용

61. 시간적 응집도(Temporal Cohesion)
: 모듈 내 구성 요소들이 서로 다른 기능을 같은 시간대에 함께 실행하는 경우의 응집도(Cohesion)이다.

62. 자동반복 요청방식(ARQ)
- Stop-and-Wait ARQ / Go-back-N ARQ / Selective Repeat ARQ
- 데이터 링크 계층에서 오류가 발생하면 수신 측은 오류의 발생을 송신 측에 알리고, 송신 측은 오류가 발생한 프레임을 재전송하는 방식으로 오류 검출 후 재전송하는 방식이다.

63. 파이썬(Python) 실행 결과

64. C언어 실행 결과

65. Garbage Collector
: JAVA에서 힙(Heap)에 남아있으나 변수가 가지고 있던 참조값을 잃거나 변수 자체가 없어짐으로써 더 이상 사용되지 않는 객체를 제거해주는 역할을 하는 모듈이다.

66. C언어 실행 결과

67. JAVA 연산자 우선순위

68. SSTF 스케쥴링 처리 순서

69. Subnetting

70. IP address
- A Class : 0.0.0.0 ~ 127.255.255.255
- B Class : 128.0.0.0 ~ 191.255.255.255
- C Class : 192.0.0.0 ~ 223.255.255.255
- D Class : 224.0.0.0 ~ 239.255.255.255
- E Class : 240.0.0.0 ~ 255.255.255.255

71. C언어 실행 결과

72. 파이썬(Python)
: 귀도 반 로섬(Guido van Rossum)이 발표한 언어로 인터프리터 방식이자 객체지향적이며, 배우기 쉽고 이식성이 좋은 것이 특징인 스크립트 언어이다.

73. JAVA 실행 결과

74. 프로세스
- 프로세스가 준비 상태에서 프로세서가 배당되어 실행 상태로 변화하는 것을 디스패치(Dispatch)라고 한다.
- 프로세스 제어 블록(PCB, Process Control Block)은 프로세스 식별자, 프로세스 상태 등의 정보로 구성된다.
- 이전 프로세스의 상태 레지스터 내용을 보관하고 다른 프로세스의 레지스터를 적재하는 과정을 문맥 교환(Context Switching)이라고 한다.

75. 결합도(Coupling)
- 오류가 발생했을 때 전파되어 다른 오류의 원인이 되는 파문 효과(Ripple Effect)를 최소화해야 한다.
- 인터페이스가 정확히 설정되어 있지 않을 경우 불필요한 인터페이스가 나타나 모듈 사이의 의존도는 높아지고 결합도가 증가한다.
- 다른 모듈과 데이터 교류가 필요한 경우 전역변수(Global Variable)보다는 매개변수(Parameter)를 사용하는 것이 결합도를 낮추는 데 도움이 된다.

76. TCP 헤더
- 순서 번호(Sequence Number)는 전달하는 바이트마다 번호가 부여된다.
- 수신번호 확인(Acknowledgement Number)은 상대편 호스트에서 받으려는 바이트의 번호를 정의한다.
- 체크섬(Checksum)은 데이터를 포함한 세그먼트의 오류를 검사한다.

77. 모듈화(Modularity)
- 소프트웨어의 모듈은 프로그래밍 언어에서 Subroutine, Function 등으로 표현될 수 있다.
- 시스템을 지능적으로 관리할 수 있도록 해주며, 복잡도 문제를 해결하는 데 도움을 준다.
- 시스템의 유지 보수 수정을 용이하게 한다.

78. 페이지 교체(Page Replacement) 알고리즘
- FIFO(First-In-First-Out) / Optimal / LRU(Least Recently Used)

79. C언어 변수 선언 규칙

80. 파일 디스크립터(File Descriptor)
- 파일 관리를 위해 시스템이 필요로 하는 정보를 가지고 있다.
- 보조기억장치에 저장되어 있다가 파일이 개방(open) 되면 주기억장치 이동된다.
- 파일 제어 블록(File Control Block)이라고도 한다.


5과목 : 정보시스템 구축관리

81. 침입탐지 시스템(IDS : Intrusion Detection System)
- HIDS(Host-Based Intrusion Detection)는 운영체제에 설정된 사용자 계정에 따라 어떤 사용자가 어떤 접근을 시도하고 어떤 작업을 했는지에 대한 기록을 남기고 추적한다.
- NIDS(Network-Based Intrusion Detection System)로는 대표적으로 Snort가 있다.
- 외부 인터넷에 서비스를 제공하는 서버가 위치하는 네트워크인 DMZ(Demilitarized Zone)에는 IDS가 설치될 수 있다.

82. 강제적 접근 통제(MAC : Mandatory Access Control)
: 정보 시스템 내에서 어떤 주체가 특정 개체에 접근하려 할 때 양쪽의 보안 레이블(Security Label)에 기초하여 높은 보안 수준을 요구하는 정보(객체)가 낮은 보안 수준의 주체에게 노출되지 않도록 하는 접근 제어 방법이다.

83. 텐서플로(TensorFlow)
: 구글의 구글 브레인 팀이 제작하여 공개한 기계 학습(Machine Learning)을 위한 오픈소스 소프트웨어 라이브러리이다.

84. 파스타(PaaS-TA)
: 국내 IT 서비스 경쟁력 강화를 목표로 개발되었으며 인프라 제어 및 관리 환경, 실행 환경, 개발 환경, 서비스 환경, 운영 환경으로 구성되어 있는 NIA 주도로 개발된 개방형 클라우드 컴퓨팅 플랫폼이다.

85. 접근 제어(Access Control)
- 적절한 권한을 가진 인가자만 특정 시스템이나 정보에 접근할 수 있도록 통제하는 것이다.
- 시스템 및 네트워크에 대한 접근 제어의 가장 기본적인 수단은 IP와 서비스 포트로 볼 수 있다.
- 네트워크 장비에서 수행하는 IP에 대한 접근 제어로는 관리 인터페이스의 접근제어와 ACL(Access Control List) 등 있다.

86. 소프트웨어 개발 프레임워크
- 반제품 상태의 제품을 토대로 도메인별로 필요한 서비스 컴포넌트를 사용하여 재사용성 확대성능을 보장받을있게 하는 개발 소프트웨어이다.
- 개발해야 할 애플리케이션의 일부분이 이미 구현되어 있어 동일한 로직 반복을 줄일 수 있다.
- 생산성 향상유지 보수성 향상 등의 장점이 있다.

87. VLAN
: 물리적 배치와 상관없이 논리적으로 LAN을 구성하여 Broadcast Domain을 구분할 수 있게 해주는 기술로 접속된 장비들의 성능 향상보안성 증대 효과가 있다.

88. SQL 삽입(SQL Injection)
- SQL Injection은 임의로 작성한 SQL 구문을 애플리케이션에 삽입하는 공격 방식이다.
- SQL Injection 취약점이 발생하는 곳은 주로 웹 애플리케이션과 데이터베이스가 연동되는 부분이다.
- 로그인과 같이 웹에서 사용자의 입력 값을 받아 데이터베이스 SQL 문으로 데이터를 요청하는 경우 SQL Injection을 수행할 수 있다.

89. RSA
: 비대칭 암호화 방식으로 소수를 활용한 공개키 암호화 알고리즘이다.

90. SDS(Software Defined Storage)
- IT 스토리지 기술 중 하나로 가상화를 적용하여 필요한 공간만큼 나눠 사용할 수 있도록 하며 서버 가상화와 유사하다.
- 컴퓨팅 소프트웨어로 규정하는 데이터 스토리지 체계이며, 일정 조직 내 여러 스토리지를 하나처럼 관리하고 운용하는 컴퓨터 이용 환경이다.
- 스토리지 자원을 효율적으로 나누어 쓰는 방법으로 이해할 수 있다.

91. Organic
: Cocomo model 중 기관 내부에서 개발된 중소규모의 소프트웨어로 일괄 자료 처리나 과학 기술 계산용, 비즈니스 자료 처리용으로 5만 라인 이하의 소프트웨어를 개발하는 유형이다.

92. 랜섬웨어(Ransomware)
: 개인과 기업, 국가적으로 큰 위협이 되고 있는 주요 사이버 범죄 중 하나로 Snake, Darkside 등 시스템을 잠그거나 데이터를 암호화해 사용할 수 없도록 하고 이를 인질로 금전을 요구하는 데 사용되는 악성 프로그램이다.

93. 폭포수 모형(Waterfall Model)
: 생명주기 모형 중 가장 오래된 모형으로 많은 적용 사례가 있지만 요구사항의 변경이 어렵고 각 단계의 결과가 확인 되어야 다음 단계로 넘어갈 수 있으며 선형 순차적, 고전적 생명 주기 모형이라고도 한다.

94. 나선형 모형(Spiral Model)
- 비교적 대규모 시스템에 적합하다.
- 개발 순서는 획 및 정의, 험 분석, 공학적 발, 객 평가 순으로 진행된다.
- 소프트웨어를 개발하면서 발생할 수 있는 위험을 관리하고 최소화하는 것을 목적으로 한다.

95. Ping Flood
: 특정 사이트에 매우 많은 ICMP Echo를 보내면, 이에 대한 응답(Respond)을 하기 위해 시스템 자원을 모두 사용해버려 시스템이 정상적으로 동작하지 못하도록 하는 공격 방법이다.

96. MQTT
: TCP/IP 기반 네트워크에서 동작하는 발행-구독 기반의 메시징 프로토콜로 최근 IoT 환경에서 자주 사용되고 있는 프로토콜이다.

97. SSO(Single Sign On)
: 시스템이 몇 대가 되어도 하나의 시스템에서 인증에 성공하면 다른 시스템에 대한 접근권한도 얻는 시스템을 의미한다.

98. Salt
: 시스템에 저장되는 패스워드들은 Hash 또는 암호화 알고리즘의 결과 값으로 저장된다. 이때 암호 공격을 막기 위해 똑같은 패스워드들이 다른 암호 값으로 저장되도록 추가되는 값을 의미한다.

99. LoC 기법
: S/W 각 기능의 원시 코드 라인수의 비관치, 낙관치, 기대치를 측정하여 예측치를 구하고 이를 이용하여 비용을 산정하는 기법이다.

100. OWASP
: 오픈소스 웹 애플리케이션 보안 프로젝트로서 주로 웹을 통한 정보 유출, 악성 파일 및 스크립트, 보안 취약점 등을 연구하는 곳이다.