<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>cherub_jeongmin.log</title>
        <link>https://velog.io/</link>
        <description></description>
        <lastBuildDate>Tue, 03 Sep 2024 02:08:11 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>cherub_jeongmin.log</title>
            <url>https://velog.velcdn.com/images/cherub_jeongmin/profile/45574686-61c9-41b8-b2b6-a6e8cc2eb5ba/image.jpg</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. cherub_jeongmin.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/cherub_jeongmin" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[쿠버네티스]]></title>
            <link>https://velog.io/@cherub_jeongmin/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4</link>
            <guid>https://velog.io/@cherub_jeongmin/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4</guid>
            <pubDate>Tue, 03 Sep 2024 02:08:11 GMT</pubDate>
            <description><![CDATA[<h1 id="쿠버네티스란">쿠버네티스란?</h1>
<p>컨테이너화된 워크롣와 서비스를 관리하기 위한 이식성이 있고, 확장가능한 오픈소스 플랫폼</p>
<h1 id="쿠버네티스-기능">쿠버네티스 기능</h1>
<p>분산 시스템을 탄력적으로 실행하기 위한 프레임 워크를 제공,
애플리케이션의 확장과 장애 조치를 처리하고, 배포 패턴 등을 제공</p>
<ul>
<li>Automatic Binpacking
Worker node의 가용성을 유지하면서 보유한 리소스를 충분히 활용할 수 있도록 스스로 스케쥴링하며 컨테이너를 배치함</li>
<li>Storage Orchestraton
로컬 저장소를 선택하거나 NFS, iSCSI 등과 같은 공유 네트워크 스토리지를 컨테이너에 할당/마운트 하여 사용 가능함</li>
<li>Secret&amp;Configuration Management
Application 연동 및 접근 제어를 위한 보안 키, 설정 내역을 컨테이너 이미지의 변경 없이 업데이트 할 수 있고 외부로 노출하지 않고 사용 가능함</li>
<li>Horizontal Scaling
CPU 사용률과 같은 metric을 기반으로 pod의 Deployments, replicaset을 스케줄링하여 수평적 확장 가능함</li>
<li>Service Discovery&amp;Load Balncing
컨테이너에 IP 주소를 자동으로 할당하고 클러스터 내 트래픽을 로드 밸런싱 할 수 있는 컨테이너 세트에 단일 DNS 이름을 할당함</li>
<li>Self Healing
실패한 컨테이너를 자동으로 다시 시작하고, 사용자가 정의한 헬스 체크에 응답이 없는 컨테이너를 종료함. 워커 노드 장애시 사용 가능한 다른 워커 노드에 컨테이너를 다시 기동함</li>
<li>Batch Execution
컨테이너 기반의 서비스 관리 뿐 아니라 배치 및 CI 작업 부하를 관리할 수 있으므로 원하는 경우 실패한 컨테이너 대체 가능함</li>
<li>Automatic Rollbacks&amp;Rollouts
컨테이너의 응용 프로그램이나 구성에 대한 변경 사항을 점진적으로 업데이트 하고 문제 발생 시 자동으로 롤백 할 수 있음</li>
</ul>
<h1 id="쿠버네티스-구성요소">쿠버네티스 구성요소</h1>
<h2 id="master-node">Master Node</h2>
<ul>
<li>Kubernetes Master
Kubernetes Cluster에서 컨테이너의 관리 및 배포를 관리하는 액세스 제어 플레인
클러스터 복제 패턴에 따라 마스터 수는 1개 이상임</li>
<li>API Server
Kubernetes API를 노출하는 컴포넌트로, Kubernetes 오브젝트 관리/제어를 위한 프론트엔드</li>
<li>Scheduler
Node가 배정되지 않은 새로 생성된 Pods를 감지하고 그것이 구동될 Node를 선택함</li>
<li>Controller-Manager
4개의 컨트롤러는 논리적으로는 개별 프로세스이지만 복잡성을 낮추기 위해 단일 바이너리로 컴파일</li>
<li>Node Controller: 노드가 다운되었을 때 통지와 대응</li>
<li>Replication Controller: 모든 replication controller object에 대해 알맞는 수의 pods를 유지</li>
<li>Endpoint Controller: 서비스와 Pods를 연결</li>
<li>Service Controller: 새로운 네임스페이스에 대한 기본 계정과 API 접근 토큰 생성</li>
<li>Etcd: 모든 클러스터 데이터를 담는 key-value 저장소
Replicaset, controller, scheduler, kubelet 등은 etcd에 바로 접근하지 않고 API Server를 통해 etcd 데이터에 접근할 수 있음<h2 id="worker-node">Worker Node</h2>
</li>
<li>Kubernetes Worker Node
동작중인 Pods를 유지시키고 Kubernetes 런타임 환경을 제공함</li>
<li>Kubelet
각 Node에 구동되는 Agent로 Kubernetes Master와 통신하며 Pod Spec에 기술된 컨테이너들이 정상적으로 작동하도록 함</li>
<li>Kube-proxy
호스트 상에서 네트워크 규칙을 유지하고 연결에 대한 포워딩을 수행함으로서 쿠버네티스 서비스 추상화가 가능하도록 함</li>
<li>Container Runtime
컨테이너가 실행될 수 있는 환경(Docker, containerd, cri-o, rktle 등)</li>
<li>Plugin Network
Kubernetes 기본 네트워크인 kubenetes은 기능 제약이 있어 사용자 요구사항에 따라 별도의 CNI를 사용함</li>
<li>DNS
Kubernetes 서비스를 위해 DNS 레코드를 제공해주는 DNS 서버, 기본 kube-dns를 제공하나 성능 개선을 위해 별도의 플러그인 DNS를 사용하기도 함</li>
<li>WEB UI
Kubernetes 클러스터를 위한 범용의 웹 기반 UI로 클러스터와 클러스터 내 동작하는 어플리케이션에 대한 관리와 실패 처리가 가능함</li>
<li>Resource Monitoring
중앙 데이터베이스 내에 컨테이너들에 대한 포괄적인 시계열 메트릭스를 기록하고 데이터 조회를 위한 UI를 제공함</li>
</ul>
]]></description>
        </item>
        <item>
            <title><![CDATA[소프트웨어 생명주기 모델]]></title>
            <link>https://velog.io/@cherub_jeongmin/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4-%EC%83%9D%EB%AA%85%EC%A3%BC%EA%B8%B0-%EB%AA%A8%EB%8D%B8</link>
            <guid>https://velog.io/@cherub_jeongmin/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4-%EC%83%9D%EB%AA%85%EC%A3%BC%EA%B8%B0-%EB%AA%A8%EB%8D%B8</guid>
            <pubDate>Mon, 25 Mar 2024 12:22:37 GMT</pubDate>
            <description><![CDATA[<h1 id="소프트웨어-생명주기sdlc-모델-개념">소프트웨어 생명주기(SDLC) 모델 개념</h1>
<ul>
<li>시스템의 요구분석부터 유지보수까지 전 공정을 체계화한 절차</li>
<li>시스템이 개발될 때부터 운용과 유지보수를 거쳐 생애를 마칠 때까지 어떠한 순서를 밟는지에 대한 작업 프로세스를 모델화한 것</li>
</ul>
<h1 id="소프트웨어-생명주기-모델-프로세스">소프트웨어 생명주기 모델 프로세스</h1>
<ol>
<li>요구사항 분석 :다양한 이해과</li>
</ol>
]]></description>
        </item>
        <item>
            <title><![CDATA[블록체인의 타임스탬프 서버_2]]></title>
            <link>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%EC%9D%98-%ED%83%80%EC%9E%84%EC%8A%A4%ED%83%AC%ED%94%84-%EC%84%9C%EB%B2%842</link>
            <guid>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%EC%9D%98-%ED%83%80%EC%9E%84%EC%8A%A4%ED%83%AC%ED%94%84-%EC%84%9C%EB%B2%842</guid>
            <pubDate>Mon, 25 Mar 2024 11:53:02 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/cherub_jeongmin/post/818276df-f8e2-405f-bb1e-ea7320a1b104/image.png" alt=""></p>
<blockquote>
<p>[처음 배우는 블록체인] 이라는 책을 참고하여 개인공부와 복습의 용도로 게시글을 작성했습니다.</p>
</blockquote>
<h1 id="타임스탬프-서버_2">타임스탬프 서버_2</h1>
<h2 id="해시-체인과-해시-트리-타임스탬프">해시 체인과 해시 트리 타임스탬프</h2>
<p>P2P 시스템에서 해시 체인을 활용하려면 해결해야 할 문제가 두 가지 있다.</p>
<ol>
<li>P2P 네트워크의 모든 노드가 항상 최신 타임스탬프를 확인할 수 있어야 한다.</li>
<li>어떤 노드에서 과거 데이터를 조작했음을 확인하거나 데이터 조작 자체를 막을 수 있어야 한다.</li>
</ol>
<p>앞 문제는 해시 체인 타임스탬프로 해결할 수 없다. 블록체인은 모든 데이터를 연결한 &#39;블록&#39;으로 노드 전체와 데이터를 공유해 이 문제를 해결한다. 블록은 &#39;해시 트리&#39;를 해시 체인으로 구성해 만든다.</p>
<h3 id="해시-트리">해시 트리</h3>
<p>해시 트리는 1979년 랠프 머클이 제안한 트리 구조의 해시 체인이다. 제안한 사람의 이름에 따라 머클 트리라고도 한다. 보통 이진 트리 구조이다.</p>
<p>해시 트리는 어떤 데이터를 여러 조각으로 나눈 후 조각 2개를 묶어 해시값을 계산한다. 이 때 조각이 홀수면 같은 조각을 복사해 2개로 묶은 후 해시값을 계산한다. 그리고 계산한 해시값끼리 다시 2개로 묶는 방식으로 해시값이 하나만 남을 때까지 반복 계산한다. 마지막에 남은 하나의 해시값을 해시 루트 혹은 최상위 해시라고 한다.</p>
<p>처음 해시 트리를 사용한 사례는 암호화에 사용하는 키 하나로 일회용 패스워드 여러 개를 생성하는 자료구조 구현이었다. 이후 P2P 네트워크에서 대용량 파일을 받을 때 파일이 손상 및 조작되었는지 확인하는 데 사용했다. 대용량 파일을 원 파일과 같은 방식으로 나눠 해시 루트 값을 계산하고 원 파일이 있는 곳의 해시 루트 값과 비교하는 것이다. 해시 루트 값이 다르면 해시 루트를 계산하는 데 사용한 두 해시값을 원 파일의 해시값과 비교해 파일 손상 및 조작을 계속 확인한다.</p>
<p>이 작업을 반복하면 해시값이 다른 파일 조각을 효율적으로 파악할 수 있다. 받은 파일이 손상 및 조작되었을 때 해당 파일 조각만 다시 받아 다운로드 시간을 줄일 수 있다.</p>
<h3 id="해시-트리와-해시-체인으로-블록-만들기">해시 트리와 해시 체인으로 블록 만들기</h3>
<p>해시 트리 구조를 활용하면 해시 체인 타임스탬프를 블록 단위로 만들 수 있다. 이때는 모든 데이터를 대상으로 해시 트리를 만든 후 해시 체인으로 묶는다. </p>
<p>해시 체인은 새 데이터를 넣을 때마다 해시 체인의 데이터 개수가 늘지만, 해시 트리를 해시체인으로 구성하기 위해 여러 데이터를 블록으로 묶었으므로 블록 단위로 해시 체인의 데이터 개수가 는다.</p>
<p>단순한 해시 체인에 새 데이터를 넣을 때는 데이터가 늘어날 때마다 타임스탬프가 증가했다. 하지만 해시 트리 기반의 해시 체인은 같은 타임스탬프 숫자에 데이터가 여러 개 속해있다. 이는 &#39;동시&#39;에 생성한 데이터로 다룬다는 뜻이다. 유닉스 같은 운영체제에서 생성 시간이 같은 타임스탬프가 있는 것과 마찬가지이다.</p>
<p>해시 체인 타임스탬프는 블록 단위로 해시 체인을 생성할 때 새 데이터가 없어도 타임스탬프 숫자가 증가할 수 있다. 이는 시각을 저장하는 타임스탬프의 원래 사용 의도에도 부합하다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[블록체인의 타임스탬프 서버_1]]></title>
            <link>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%EC%9D%98-%ED%83%80%EC%9E%84%EC%8A%A4%ED%83%AC%ED%94%84-%EC%84%9C%EB%B2%84</link>
            <guid>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%EC%9D%98-%ED%83%80%EC%9E%84%EC%8A%A4%ED%83%AC%ED%94%84-%EC%84%9C%EB%B2%84</guid>
            <pubDate>Thu, 21 Mar 2024 20:00:06 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/cherub_jeongmin/post/818276df-f8e2-405f-bb1e-ea7320a1b104/image.png" alt=""></p>
<blockquote>
<p>[처음 배우는 블록체인] 이라는 책을 참고하여 개인공부와 복습의 용도로 게시글을 작성했습니다.</p>
</blockquote>
<h1 id="타임스탬프-서버_1">타임스탬프 서버_1</h1>
<h2 id="타임스탬프를-사용하는-이유">타임스탬프를 사용하는 이유</h2>
<p>타임스탬프는 &#39;2017-10-17 12:00:00&#39; 같은 형식으로 날짜와 시간을 표시하는 문자열이다. 어떤 일이 일어난 날짜와 시간을 저장해 해당 사실을 증명하거나 앞뒤 관계를 알린다. 화폐거래에서는 계좌의 거래 내역이나 영수증에 적힌 시각이 타임스탬프이다. 거래 사실을 증명하는 데 중요한 역할을 한다.</p>
<p>타임스탬프에는 두 가지 특성이 있다.</p>
<ul>
<li>모두가 같은 시간 흐름을 공유할 수 있다. </li>
<li>시간은 되돌릴 수 없다. 시간 기록은 변하지 않는 부분이므로 사실을 증명할 수 있다.</li>
</ul>
<h2 id="타임스탬프의-문제점">타임스탬프의 문제점</h2>
<ul>
<li>사용 환경에 따라 실제 시간과 컴퓨터에 설정된 시간이 같다고 보장할 수 없다.</li>
<li>별도의 설정이나 애플리케이션으로 사용자가 쉽게 변경할 수 있다.</li>
</ul>
<p>최근의 애플리케이션이나 시스템 대부분은 서비스를 동작시키는 서버 시간을 확인해 정상적으로 이벤트가 발생했는지 판단한다. 이는 타임스탬프 서버로 발전한다.</p>
<h2 id="중앙-집중형-시스템과-타임스탬프">중앙 집중형 시스템과 타임스탬프</h2>
<p>불특정 다수가 이용하는 인터넷 서비스 구축 방법은 여러 가지가 있다. 그중 &#39;중심이 되는 시스템&#39;으로 모든 작업을 처리하는 방식을 &#39;중앙 집중형 시스템&#39;이라고 한다. 중앙 집중형 시스템은 서비스의 데이터 무결성을 유지하기 쉽다. 또한 &#39;중심이 되는 시스템&#39;만 잘 관리하면 신경 쓸 일이 별로 없다. 반면 &#39;중심이 되는 시스템&#39;의 작업 처리량이 많으면 시스템이 느려지거나, 정지하거나 에러가 발생하는 등 서비스 전체 상태에 영향을 준다. 시스템 관리자가 나쁜 의도로 데이터를 조작하거나 서비스를 중단시키는 것을 막을 수 없기도 한다.</p>
<p>중앙 집중형 시스템의 특징은 타임스탬프에도 그대로 적용된다. 중앙 서버에 큰 문제가 없으면 타임스탬프 기록을 신뢰할 수 있다.</p>
<p>하지만 중앙 서버에 문제가 발생하거나 부정행위 등이 있으면 타임스탬프의 기록을 신뢰할 수 없다. 비트코인을 만든 이유는 &quot;관리자 없이 신뢰할 수 있는 화폐 거래 구조를 만들고 싶다&quot;이다.</p>
<h2 id="탈중앙화-시스템과-타임스탬프">탈중앙화 시스템과 타임스탬프</h2>
<p>중앙 집중형과 반대 방식으로 시스템을 구축한다면 P2P 시스템을 고려해볼 만하다. P2P 시스템의 장.단점은 다음과 같다.</p>
<ul>
<li>노드의 자원을 모아 사용하므로 &#39;관리자가 없는 시스템&#39;을 만들기 쉽다.</li>
<li>데이터 무결성을 유지하기 어려우므로 타임스탬프 기록의 신뢰성을 보장할 수 없다.</li>
</ul>
<p>P2P 파일 공유 서비스라면 꼭 타임스탬프 기록의 신뢰성을 보장할 필요는 없다. 하지만 계좌 내역이나 장부 등을 관리하는 P2P 서비스는 타임스탬프의 신뢰성을 보장하는 데이터 처리 방법이 필요하다. 모든 노드가 특정 시간 흐름을 공유한 후, 앞뒤 순서를 암호확에 기초한 자료구조로 판단하는 타임스탬프 구조를 고안했다.</p>
<p>블록체인은 기존 P2P 시스템과 다른 타임스탬프 구조를 포함한 &#39;탈중앙화 시스템&#39;을 구축한 것이다. 어떤 중앙에 집중된 구조가 아니라는 분산 시스템의 특징과, 특정 기업이나 관리 조직이 시스템을 통제하지 않는다는 개념을 조합해 다양한 사람이 시스템을 운영하는 기반을 마련한 것이다.</p>
<h2 id="해시-체인-타임스탬프">해시 체인 타임스탬프</h2>
<p>분산 시스템이나 P2P 시스템에 연결된 노드는 &#39;절대 시각&#39; 대신 시각 2개의 앞뒤 순서를 구분할 수 있는 &#39;상대 시각&#39;으로 시간 흐름을 정의한다.</p>
<p>블록체인은 암호화 해시 함수로 논리 데이터 저장 순서를 정의한다. 대표적인 예는 비트코인에서 사용하는 SHA-256 등이 있다.</p>
<p>데이터 a를 암호화 해시 함수로 계산한 값은 h(a)이다. 해시 함수는 계산하기는 쉽지만 반대로 입력값을 구하는 것은 어려운 일방향 함수이므로 h(a)의 값으로 a를 계산(데이터 조작)하기는 어렵다. 따라서 해시값 h(a)는 데이터 a가 안전한 데이터라는 것을 논리적으로 보장한다. 또한 입력값인 a가 조금만 변해도 h(a)는 전혀 다른 값이 된다. 이는 데이터 검증을 쉽게 만들고, 작업 증명 알고리즘을 &#39;확률 게임&#39;으로 생각할 수 있게 하므로 매우 중요하다.</p>
<p>한편 h(a)를 b라고 정의해 h(b)를 계산하면 h(b)는 h(a)가 안전한 데이터임을 보장하면서 데이터의 앞뒤 순서도 알 수 있다. 데이터 하나에 재귀적으로 암호화 해시 함수를 적용한 기술을 &#39;해시 체인&#39;이라고 한다. 일회성 비밀번호 인증 시스템 구현 등에 사용한다.</p>
<p>유닉스의 타임스탬프와 해시 체인의 타임스탬프 모두 정수로 표시한다. 유닉스의 타임스탬프는 1970년 1월 1일 0시 0분 0초에서 1초씩 흐르는 시각을 정수로 표시하며, 해시 체인 타임스탬프는 새로운 데이터를 추가할 때마다 1씩 증가시킨다는 차이가 있다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[암호화폐의 가치]]></title>
            <link>https://velog.io/@cherub_jeongmin/%EC%95%94%ED%98%B8%ED%99%94%ED%8F%90%EC%9D%98-%EA%B0%80%EC%B9%98</link>
            <guid>https://velog.io/@cherub_jeongmin/%EC%95%94%ED%98%B8%ED%99%94%ED%8F%90%EC%9D%98-%EA%B0%80%EC%B9%98</guid>
            <pubDate>Thu, 21 Mar 2024 19:38:10 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/cherub_jeongmin/post/818276df-f8e2-405f-bb1e-ea7320a1b104/image.png" alt=""></p>
<blockquote>
<p>[처음 배우는 블록체인] 이라는 책을 참고하여 개인공부와 복습의 용도로 게시글을 작성했습니다.</p>
</blockquote>
<h1 id="암호화폐의-가치">암호화폐의 가치</h1>
<h2 id="화폐의-분류">화폐의 분류</h2>
<p>화폐와 통화를 분류해보자.</p>
<h3 id="통화와-화폐의-차이">통화와 화폐의 차이</h3>
<p>돈의 공식적인 표현으로 통화나 화폐라는 용어를 사용한다. 유통 수단이나 가치의 척도로 사용할 수 있어야 통화 또는 화폐라고 할 수 있다.</p>
<p>통화는 유통하는 화폐라는 뜻이다. 금은 일반적으로 유통하지는 않으므로 &#39;통화&#39;가 아니다.</p>
<h3 id="법정-통화와-비법정-통화">법정 통화와 비법정 통화</h3>
<p>통화를 &#39;법정 통화&#39;의 줄임말로 사용할 때도 있다. 법정 통화는 한 국가의 법에서 결제나 지급 수단으로 이용할 권리를 보장하는 화폐이다.</p>
<p>금과 은, 은행 계좌의 예금인 &#39;예금 통화&#39;, 기업이 발행하는 포인트인 &#39;기업 통화&#39;, 신용카드 거래는 법정 통화가 아니다. 법정 통화를 암호화폐와 구별하려고 &#39;명목 화폐&#39;라고 할 때도 있다.</p>
<h3 id="전자화폐">전자화폐</h3>
<p>물리적 실체 없이 디지털 데이터로 표현하는 통화를 전자화폐라 한다. </p>
<p>암호화폐는 암호화 기술로 관리 주체가 없는 화폐 실현을 목표로 개발한 것이다. 아직 발전하는 기술이며 통화 안정성이 확릭되지 않았다.</p>
<p>가상화폐는 디지털로 거래 내역을 기록.이전할 수 있는 화폐를 말한다. 불특정 다수가 구매 및 판매할 수 있는 &#39;재산&#39;이기도 하다. 암호화 기술을 적용하지 않았다거나, 국가에서 앞 특징과 같은 화폐 거래를 법제화했다면 가상화폐이다. 단, 법정 통화를 이체하는 인터넷 뱅킹은 &#39;가상화폐&#39;에 포함하지 않는다. 또한 은행에서 블록체인 기반의 암호화폐를 만들어 법정 통화 같은 가치를 부여하더라도 법적으로 인정하는 &#39;가상화폐&#39;에는 포함하지 않는다.</p>
<h2 id="화폐의-가치">화폐의 가치</h2>
<h3 id="통화">통화</h3>
<p>태환 지폐를 포함환 귀금속은 가치 저장에는 적합하지만 가치를 만드는 데는 적합하지 않기 때문에 통화가 태환 지폐를 대신해 주류가 되었다.</p>
<p>태환 지폐는 국가가 발행해 관리하므로 다른 나라에서 살 수 있다. 그러나 전 세계 금 총량이 정해져 있으므로 많은 국가의 경제가 동시에 발전하면 금 쟁탈전이 벌어질 것이다. 따라서 국가의 경제 규모에 맞게 화폐를 유통할 수 있도록 통화를 사용한다. 즉, 법정 통화는 국가가 경제 규모에 맞는 삶을 보장하려고 만든 것이다.</p>
<h2 id="암호화폐의-가치-1">암호화폐의 가치</h2>
<p>암호화폐 종류마다 가치의 근거는 다르다. </p>
<h3 id="btc의-가치">BTC의 가치</h3>
<p>BTC의 가치를 부여하는 근거는 &#39;희소성&#39;이다. 물론 BTC를 법정 화폐와 교환하거나, 실제 상점에서 거래하는 등의 사례가 생기면서 통화 가치를 부여하려는 움직임도 계속되고 있다. 키프로스 쇼크 때문에 법정 통화에 위기감을 느낀 사람들이 자산을 옮기는 수단으로 BTC를 이용했다. 중국에서는 외화 반출 금지라는 규제 때문에 BTC로 자산을 이동시키기도 했다. 이런 현상은 금과 비슷한 특징이다.</p>
<h3 id="xrp의-가치">XRP의 가치</h3>
<p>XRP는 전 세계의 여러 은행이 실시간으로 화폐를 송금하려고 만든 리플 프로토콜 암호화폐 기술로 재구축한 것이다. XRP는 다양한 통화를 송금하는 도중에 환전하는 통화이다.</p>
<p>발행할 수 있는 금액이 정해져 있다는 점은 BTC와 같다. 하지만 채굴 보상으로 화폐를 받지 않고 총량을 한꺼번에 생성한 후 운영한다. XRP의 총량은 1,000억 XRP이다. 그중 유통하는 양은 약 398억개이고 나머지는 리플 댑스 및 자회사에서 관리한다. 국가가 관리하는 법정 통화의 성격에 가깝다.</p>
<p>특정 조직이 통화 유통량을 관리하는 점은 암호화폐 이념인 &#39;탈중앙화&#39;와 어긋난다는 의견도 있다. 리플 댑스는 에스크로라는 통화 예탁 기능으로 회사의 의도에 따라 XRP을 내보낼 수 없도록 제한한다고 설명한다.</p>
<h3 id="eth의-가치">ETH의 가치</h3>
<p>이더리움은 전 세계 컴퓨터를 P2P 네트워크 기반의 블록체인에 연결해 거대한 컴퓨팅 기반을 구축하는 프로젝트이다. 분산 컴퓨팅과 비슷하지만 디지털로 표현한 자산 상태를 전 세계로 공유해 프로그램으로 다룰 수 있다는 차이가 있다. 이러한 이더리움 플랫폼의 특성도 ETH의 가치 중 하나이다.</p>
<p>암호화폐 관점의 ETH는 발행량에 제한이 없으므로 생필품과 비슷한 특징이 있는 통화이다. 따라서 통화 가치가 낮아지는 일을 막으려고 ETH의 발행 속도를 프로토콜로 제어한다. 또한 송금이나 결제 이외의 이더리움 플랫폼 기반 애플리케이션을 실행하는 연료라는 측면에서도 가치가 있다.</p>
<h2 id="암호화폐의-의미">암호화폐의 의미</h2>
<p>암호화폐는 화폐를 누구나 자유롭게 설계.발행할 수 있는 기술이다. 미래에 다양한 화폐가 등장할 가능성을 만든 것이다.</p>
<p>암호화폐는 사람이 자유롭게 총량을 설정할 수 있다. 채굴 난이도와 분배 규칙도 자유롭게 설계할 수 있다. 이는 기존의 통화 대신 새로운 통화를 &#39;발명&#39;할 수 있음을 뜻한다. </p>
<h2 id="새로운-경제-체제-구축">새로운 경제 체제 구축</h2>
<p>현대의 자본주의는 개인이나 기업의 이익을 극대화하는 방향으로 행동한다. 민주주의는 사회 전체의 이익을 해치는 행동이나 이윤추구를 막는다. 국가는 국민에게 걷은 세금을 사용해 이러한 활동을 한다. 하지만 문제를 해결하는 데는 아직도 부족하다.</p>
<p>이렇게 자본주의에서 해결할 수 없는 문제를 암호화폐의 &#39;탈중앙화&#39; 구조로 해결하려는 노력이 있다. 문제를 해결하는 새로운 경제권을 만드는 것이다.</p>
<h3 id="부의-편증-상태-해소">부의 편증 상태 해소</h3>
<p>NEM은 부의 편중 상태를 해소하는 방향으로 경제 활동을 유도하는 블록체인 플랫폼이다. 부정행위에 자동으로 불이익을 주는 프로토콜을 구현하는 등의 화폐 유통 아이디어가 있다.</p>
<h3 id="자연-자원의-지속-활용">자연 자원의 지속 활용</h3>
<p>자본주의는 지속적인 경제 성장을 요구한다. 암호화폐로 지구가 재생산할 수 있는 자원량을 미리 계산하고, 한정된 자원으로 생산할 수 있는 새로운 경제 체제를 구상하는 사람들이 있다.</p>
<p>&#39;베리디움&#39;은 지구상 자원에 해당하는 암호화폐를 발행하고 자원의 매장량에 따라 자원의 이용 비용을 적절하게 계산한다. 이를 이용해 자원을 적절하게 사용하는 시장 구현을 목표로 한다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[블록체인의 역사]]></title>
            <link>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%EC%9D%98-%EC%97%AD%EC%82%AC</link>
            <guid>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%EC%9D%98-%EC%97%AD%EC%82%AC</guid>
            <pubDate>Wed, 20 Mar 2024 17:54:47 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/cherub_jeongmin/post/818276df-f8e2-405f-bb1e-ea7320a1b104/image.png" alt=""></p>
<blockquote>
<p>[처음 배우는 블록체인] 이라는 책을 참고하여 개인공부와 복습의 용도로 게시글을 작성했습니다.</p>
</blockquote>
<h1 id="블록체인의-역사">블록체인의 역사</h1>
<p>블록체인의 역사는 2008년 10월 31일 &#39;암호학&#39;이라는 메일 리스트에 사토시 나카모토가 공개한 9쪽 분량의 &#39;Bitcoin P2P e-cash paper&#39;에서 시작되었다. 물론 사토시 나카모토가 블록체인의 모든 기반 기술을 만든 것은 아니다. 이전부터 계속됐던 암호학 및 전자화폐의 연구 성과를 종합한 것이다. 실제 &#39;Bitcoin: A Peer-to-Peer Electronic Cash System&#39;이라는 9쪽 분령의 문서는 해시캐시와 b-money 등 과거 전자화폐 연구를 기반으로 이중 지급 과제를 해결하는 관리자 없는 화폐 시스템을 제안했다.</p>
<h2 id="비트코인-등장-이전">비트코인 등장 이전</h2>
<h3 id="암호화-기술의-발전">암호화 기술의 발전</h3>
<p>1970년대 이전에는 암호를 걸고 푸는 쪽 모두 같은 키(대칭 키)를 사용해 원본 데이터를 암호화하고 복호화하는 &#39;대칭 키 암호&#39; 방식을 사용했다. &#39;대칭 키 암호&#39;는 암호화와 복호화 속도가 빠르다는 장점이 있지만 사용자가 늘어날 때마다 대칭 키를 계속 생성해 관리해야 한다는 어려움이 있다. 이를 해결하려고 1976년에 &#39;공개 키 암호&#39; 방식을 제안했다. 암호화에 사용하는 키(공개 키)와 복호화에 사용하는 키(비밀 키)를 분리한 후 암호화에 사용하는 키를 &#39;공개 키&#39;로 공유한다. 비밀 키가 있는 사람만 원본 데이터를 얻을 수 있다.</p>
<p>하지만 단순히 암호화와 복호화만 할 뿐 상대방에 관한 인증 방법이 포함된 것은 아니었다. 이는 1977년 &#39;공개 키 암호&#39;를 발전시킨 &#39;RSA 암호&#39;가 등장한 이후 해결되었다. RSA 암호는 현재 전자상거래의 기반 기술인 &#39;디지털 서명&#39;에 이용하기도 한다.</p>
<p>1979년에는 키 하나를 사용해 여러 데이터에 디지털 서명을 부여하는 &#39;해시 트리&#39;, 1981년에는 키 하나로 여러 개의 일회용 비밀번호를 만드는 &#39;해시 체인&#39;을 발표했다. 두 기술은 블록체인의 기본 데이터 구조를 만들 때 사용한다.</p>
<h3 id="인터넷의-등장">인터넷의 등장</h3>
<p>암호화 기술이 발전하면서 통신 내용을 안전하게 보내거나 받을 수 있게 되었다. 따라서 1980년대부터 2000년대까지 전 세계가 인터넷으로 연결되었다.</p>
<p>초기 인터넷은 대학이나 기관의 정보 공유 목적으로만 이용했다. 하지만 1980년대 말부터 상업적인 인터넷 사용을 지원하는 인터넷 서비스 제공자 기업이 많이 등장함에 따라 인터넷 사용 비용이 점점 낮아지기 시작했다.</p>
<h3 id="전자화폐의-등장">전자화폐의 등장</h3>
<p>닷컴 버블이 발생한 이유 중 하나는 인터넷을 사용하는 소비자와 생산자를 직접 연결하는 전자상거래가 활발해질거라는 전망 때문이었다. 이때부터 인터넷에서 화폐를 주고 받거나 상품을 결제하는 전자화폐의 상용화 연구를 시작했다.</p>
<p>전자화폐 초기 아이디어는 암호화 기술 발전과 함께한다. 데이터의 내용을 몰라도 유효성을 증명하는 &#39;은닉 서명&#39;은 1990년 디지캐시라는 회사가 전자화폐에 적용해 상용화시켰다.</p>
<p>1990년대에는 암호화 해시 함수로 대량의 연산을 실행해 전자화폐를 발행하는 &#39;해시캐시&#39;를 아담 백이 제안했다. 그리고 해시캐시의 단점을 수정한 &#39;비트 골드&#39;와 &#39;b-money&#39;도 등장했다.</p>
<p>하지만 1990년대의 전자화폐는 관리자가 없을 때 화폐를 이중 지급하는 문제가 있었다. 또한 P2P 네트워크를 나쁜 목적으로 이용하려는 사람을 막는 관리 문제 등도 있어 널리 퍼지지 않았다. 전자화폐를 본격적으로 지원하는 시점은 페이팔이나 신용카드사, 은행 등이 제공하는 인터넷 송금.결제 서비스가 등장했을 때이다.</p>
<h2 id="비트코인-등장과-보급">비트코인 등장과 보급</h2>
<h3 id="프로토타입-비트코인-시스템-운영">프로토타입 비트코인 시스템 운영</h3>
<p>사토시 나카모토는 시스템을 구축해 운영하는 것을 목표로 했다. 그리고 2009년 1월 프로토타입 비트코인 시스템을 운영하기 시작했다.</p>
<p>이 시스템은 해시캐시처럼 컴퓨터로 대량의 연산을 실행해 &#39;BTC&#39;라는 전자화폐를 조금씩 발행했다. 또한 시스템 안에서 BTC를 문제없이 전송하는 것을 확인했다.</p>
<h3 id="거래소-등장과-비트코인-결제">거래소 등장과 비트코인 결제</h3>
<p>프로토타입 비트코인 시스템에서 발행한 BTC는 단순한 데이터일 뿐 어떠한 가치가 있는 화폐가 아니었다. BTC를 사거나 팔 수 있는 서비스가 있어야 했다. 시스템 운영 후 약9개월 만인 2009년 10월, BTC 거래 사이트가 등장했다. 1달러당 1,309.03BTC라는 가격을 매겨 거래를 시작했다.</p>
<p>BTC를 이용한 첫 결제는 2019년 5월 22일에 이루어졌다. 당시 BTC를 채굴하던 프로그래머가 2010년 5월 19일, 한 커뮤니티에서 피자 2판을 배달해주면 10,000BTC를 지급하겠다는 게시글을 등록한다. 사흘이 지난 2010년 5월 22일 제르코스라는 닉네임을 사용하는 사람이 피자 2판을 배달하고 10,000BTC를 받았다.</p>
<p>한편 초기 BTC 채굴은 소규모 커뮤니티 중심으로 이뤄졌다. 2010년 7월 11일 슬래시닷에 비트코인 버전 0.3에 관한 기사가 실린 후 채굴자가 늘기 시작했다.</p>
<p>비트코인 시스템은 채굴하는 컴퓨터의 연산 능력에 따라 채굴 난이도를 자동으로 조정한다. 채굴자가 늘면 새로운 BTC를 채굴하기 어렵다. 이에 따라 간편한 구매 수단이 필요했다. 슬래시닷 기사 공개 1주일 뒤에 마운트 곡스라는 거래소가 등장했다. 거래소 계정이 있는 사람끼리 달러를 입금해 BTC를 자유롭게 교환할 수 있었다. 거래 방식이 간단하고 연중무휴로 이용할 수 있어 BTC 거래를 더욱 가속화시켰다.</p>
<h3 id="대중에게-알려진-비트코인">대중에게 알려진 비트코인</h3>
<p>2010년 11월 위키리스트에서 공개한 미국 외교 기밀문서에는 주요 신용카드사나 페이팔 등에 위키리크스에 기부하지 말라는 압력을 가했다는 내용이 있었다. 이에 PC 월드와 타임지 등은 금융 기관이 정치권의 압력으로 특정 집단을 억합할 때의 대안으로 비트코인 유용성을 다루기 시작했다. 이는 비트코인의 긍정적인 사용 사례를 알리는 계기가 되었다.</p>
<p>물론 부정적인 사용 사례가 알려지기도 했다.</p>
<p>긍정적/부정적 사례가 함께 존재했지만 비트코인에 관한 대중적 관심은 계속 높아져 갔다. 2011년 6월 12일에는 1BTC에 20달러 이상의 가격이 매겨졌다. 2011년 초와 비교했을 때 가격이 50배 상승하여 첫 번째 비트코인 버블이라는 사람도 있다. 그런데 불과 일주일이 지난 6월 19일 마운트 곡스를 비롯한 여러 거래소에서 BTC를 해킹해 도둑질하는 일이 벌어져 BTC 가격이 폭락했다.</p>
<h3 id="채굴-경쟁">채굴 경쟁</h3>
<p>2012년 하반기에는 채굴 전용 칩 개발 경쟁이 시작되었다. 2012년의 해시 레이트는 10TH/s에서 20TH/s였다. 그런데 2013년 2월, 채굴 전용 칩인 비트코인 ASIC을 개발해 채굴을 시작하면서 3월에는 40TH/s를 돌파하는 등 채굴 속도가 급격히 높아졌다.</p>
<p>비트코인 ASIC을 이용한 채굴을 새로운 채굴자에게 기술적.금전적 장벽이기도 했다. 또한 다수의 연산 자원을 투입한 부정행위, 해시 레이트 편차 때문에 생기는 코인 독점, 채굴에 발생하는 엄청난 전력 소비 등의 문제도 나타났다.</p>
<h3 id="블록체인에-주목">블록체인에 주목</h3>
<p>BTC 가격이 급등하거나 급락하는 변동성은 결제 수단으로 사용하기 어렵게 하는 요소이다. 하지만 비트코인의 가능성은 무궁무진하다. 그래서 비트코인의 문제점을 극복할 수 있는 다양한 해결책을 연구하거나 블록체인을 다른 분야에 적용하려는 시도가 진행 중이다.</p>
<h2 id="블록체인의-발전">블록체인의 발전</h2>
<h3 id="비트코인-기반의-블록체인-플랫폼-개발">비트코인 기반의 블록체인 플랫폼 개발</h3>
<p>2011년에는 라이크코인이나 네임코인 등 비트코인 시스템을 발전시킨 암호화폐 시스템이 등장했다. 2013년에는 비트코인 네트워크를 활용해 만든 플랫폼인 마스터코인과 카운터파티 등이 등장했다.</p>
<h3 id="이더리움의-등장">이더리움의 등장</h3>
<p>2015년 이더리움이 등장하면서 큰 전환점을 맞이했다. 이더리움은 누구나 자유롭게 새 블록체인 애플리케이션을 만들어 배포할 수 있는 플랫폼이다. 덕분에 블록체인 애플리케이션 개발 장벽이 크게 낮아졌다.</p>
<p>이더리움은 발행 전에 암호화폐를 미리 판매해 투자금을 확보하는 ICO를 정착시키기도 했다. 2014년 7월 정식 공개에 앞서 &#39;ETH&#39;라는 암호화폐를 미리 판매해 투자금으로 약1,500만 달러를 확보했다.</p>
<p>2017년 중반에는 ICO로 확보하는 투자금이 벤처캐피털의 투자금보다 많아졌다. 블록체인 기반 신규 사업을 하려는 기업가와 투자자에게 ICO는 아주 매력적이다.</p>
<h3 id="비즈니스-활용">비즈니스 활용</h3>
<p>2015년 이후 블록체인을 비즈니스에 활용하려는 움직임이 활발해졌다. </p>
<p>2015년 9월에는 금융 업계 주도로 블록체인의 기반 기술인 분산 원장 플랫폼을 제공하는 &#39;R3 컨소시엄&#39;이 출범했다. 그리고 2015년 12월에는 리눅스 재단에서 블록체인 기반 오픈 소스 소프트웨어를 개발하는 &#39;하이퍼레저 프로젝트&#39;를 시작했다.</p>
<h3 id="블록체인의-문제-해결-노력과-암호화폐-시장-성장">블록체인의 문제 해결 노력과 암호화폐 시장 성장</h3>
<p>블록체인은 관리자 없이 운영하는 플랫폼이므로 동작시킨 후에는 플랫폼 사양을 변경하기 어렵다. 새 플랫폼 사양을 제안하더라도 사용자가 합의하지 않으면, 서로 호환하지 않는 여러 개의 블록체인 플랫폼으로 나뉠 수도 있다.</p>
<p>실제로 2017년 8월 BTC와는 다른 암호화폐인 비트코인 캐시로 나뉘어 2개의 비트코인 기반 암호화폐가 등장했다.</p>
<p>BCH를 시작으로 BTC를 하드 포크해 새로운 암호화폐를 만들려는 계획이 계속 발표되었다. BTC를 하드 포크하면 기존 BTC의 소유액만큼 새로운 암호화폐를 자동으로 소유한다. 각각의 가치를 판단해 원하는 암호화폐를 선택할 수 있다. 이 때문에 결국 비트코인 기반 암호화폐의 수요가 더욱 높아져 가격일 상승했다. </p>
<p>2017년 후반에는 다른 블록체인 플랫폼 사이에 암호화폐를 교환하는 &#39;원자 교환&#39;, 빠른 속도로 암호화폐를 거래하면서도 거래 수수료는 상대적으로 낮은 &#39;라이트닝 네트워크&#39; 등과 같은 기술이 등장했다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[블록체인이 가져올 변화]]></title>
            <link>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%EC%9D%B4-%EA%B0%80%EC%A0%B8%EC%98%AC-%EB%B3%80%ED%99%94</link>
            <guid>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%EC%9D%B4-%EA%B0%80%EC%A0%B8%EC%98%AC-%EB%B3%80%ED%99%94</guid>
            <pubDate>Wed, 20 Mar 2024 17:21:01 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/cherub_jeongmin/post/818276df-f8e2-405f-bb1e-ea7320a1b104/image.png" alt=""></p>
<blockquote>
<p>[처음 배우는 블록체인] 이라는 책을 참고하여 개인공부와 복습의 용도로 게시글을 작성했습니다.</p>
</blockquote>
<h1 id="블록체인이-가져올-변화">블록체인이 가져올 변화</h1>
<p>블록체인은 인터넷 기반으로 탄생했지만 인터넷과 같은 수준의 영향력을 발휘할 것으로 기대하는 기술이다. 성급하다는 반응도 있지만 많은 사람이 블록체인의 가능성에 주목하고 있다. 단, 블록체인은 인터넷처럼 삶을 근본적으로 바꾸는 것이 아니다. 인터넷이 만든 삶과 가치관 변화를 가속시킬 것으로 본다.</p>
<h2 id="인터넷-기술의-보안">인터넷 기술의 보안</h2>
<p>인터넷에서 해결하지 못한 기술 문제 중 하나는 인터넷 서비스의 보안 책임이 있다. 개인 정보의 유출이 걱정된다라는 이유로 인터넷 서비스를 사용하지 않는 사람이 있다. 인터넷 서비스 보안은 기술적으로 완벽하다고 보장할 수 없으므로 사용하지 않는 것이다.</p>
<p>서비스 가용성 확보라는 문제도 있다. 서버가 감당하는 사용자 수보다 더 많은 사람이 접속해서 발생하는 문제이다. 더 많은 사람이 접속하도록 서버 자원을 늘리면 해결할 수 있다. 하지만 접속하는 사람이 잠깐 늘어나는 것을 위해 서버의 자원을 늘리는 건 비효율적이다.</p>
<p>블록체인은 이러한 문제를 해결할 수 있다. 예를 들어 비트코인은 계좌번호, 주소, 전화번호, 신용카드 번호 등의 정보 없이 다른 사람에게 송금하거나 인터넷 서비스에서 결제할 수 있다. 또한 유지 보수하려고 서비스를 멈출 필요가 없으므로 24시간 265일 언제든지 거래할 수 있다. 운용하는 회사에 비트코인이 귀속되지 않으므로 거래소가 없어지더라도 내가 소유한 비트코인은 없어지지 않는다.</p>
<h2 id="인터넷-기술-기반의-변화">인터넷 기술 기반의 변화</h2>
<p>인터넷 서비스를 구축하는 방식에는 클라이언트-서버와 P2P가 있다.</p>
<p>P2P 방식은 컴퓨터 하나에 부하가 집중되지 않으므로 일부 컴퓨터에 장애가 발생해도 서비스 전체가 멈추지 않는다. 네트워크 안 어떤 컴퓨터든 서비스를 제공할 수 있으므로 큰 비용을 지급해 서비스를 유지할 필요도 없다.</p>
<p>블록체인은 P2P 방식에 기반을 두고 보안성 강화와 고가용성 서비스를 구현한다. 또한 탈중앙화 애플리케이션을 실행하는 플랫폼을 구축할 수 있다.</p>
<h2 id="블록체인이-사회에-주는-변화">블록체인이 사회에 주는 변화</h2>
<h3 id="화폐-시스템의-변화">화폐 시스템의 변화</h3>
<p>각 국가에서 발행해 유통하는 화폐는 약 180개이다. 반면에 블록체인 기반 암호화폐는 셀 수 없이 많다. 블록체인은 국가나 일부 기관만이 관리하던 화폐 발행을 자유화해 누구나 자신만의 화폐를 발행할 수 있게 한다.</p>
<h3 id="공유-경제-활성화">공유 경제 활성화</h3>
<p>블록체인 기반의 P2P 애플리케이션을 널리 활용하면 기존 소유 중심의 클라이언트-서버 기반 비즈니스 모델을 공유 중심으로 옮길 수 있다. 클라이언트-서버 대신 P2P가 인터넷의 주류 기술로 부상할 가능성이 열렸다는 시각도 있다.</p>
<p>블록체인의 활용도가 가장 높을 것으로 예상하는 영역은 &#39;물리적 자산이나 디지털 자산의 소유권 주고받기&#39;이다. 이는 암호화폐의 소유권을 주고 받는 기능에서 파생되는 것이다. </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[블록체인 주요 용어_2]]></title>
            <link>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%A3%BC%EC%9A%94-%EC%9A%A9%EC%96%B42</link>
            <guid>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%A3%BC%EC%9A%94-%EC%9A%A9%EC%96%B42</guid>
            <pubDate>Wed, 20 Mar 2024 16:53:19 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/cherub_jeongmin/post/818276df-f8e2-405f-bb1e-ea7320a1b104/image.png" alt=""></p>
<blockquote>
<p>[처음 배우는 블록체인] 이라는 책을 참고하여 개인공부와 복습의 용도로 게시글을 작성했습니다.</p>
</blockquote>
<h1 id="타임스탬프timestamp">타임스탬프(Timestamp)</h1>
<p>날짜와 시간을 나타내는 문자열이다. 가독성을 좋게 하려고 날짜가 명시되어 있지만 서버에는 유닉스 시간으로 저장할 때가 많다. 블록체인은 실제 거래를 생성한 시각과 블록에 정식으로 저장한 시각을 타임스탬프에 저장하는데 두 기록이 일치하지 않아 문제가 발생한다.</p>
<h1 id="해시값hash-value">해시값(Hash Value)</h1>
<p>암호화폐를 구분하는 작은 크기의 데이터를 말한다. 원본 데이터에서 해시값을 계산하는 함수를 해시 함수라고 한다. 해시값과 원래 입력값의 관계를 찾기 어렵게 만드는 해시 함수는 별도로 암호화 해시 함수라고 한다. 암호화폐의 블록 생성이나 주소 계산 등에서 암호화 해시 함수로 만든 해시값을 많이 활용한다.</p>
<h1 id="채굴mining">채굴(Mining)</h1>
<p>비트코인과 블록체인 기반 암호화폐는 누구나 새로운 블록 생성에 참여해 보상으로 암호화폐를 얻는다. 이러한 행동을 채굴이라고 한다. 채굴에 참여한 사람은 &#39;채굴자&#39;라고 한다.</p>
<h1 id="작업-증명pow-알고리즘">작업 증명(PoW) 알고리즘</h1>
<p>임의의 참여자들이 상호 운용하는 시스템(혹은 프로토콜)은 시스템에 문제를 발생시키는 참여자가 있어도 제대로 동작하게 만들어야 한다. 작업 증명 알고리즘은 채굴했다는 사실을 증명한 후에 블록을 생성하게 만드는 방법이다. 동시에 증명 없이는 블록을 생성할 수 없게 하는 역할도 한다. 대량의 컴퓨팅 자원을 이용하는 시스템에서 많이 채택하는 알고리즘이다.</p>
<h1 id="메인넷main-net과-테스트넷test-net">메인넷(Main Net)과 테스트넷(Test Net)</h1>
<p>메인넷은 독립적인 암호화폐로 인정하는 프로그램을 출시.운용하는 네트워크이다. 테스트넷은 블록체인 애플리케이션을 개발할 때 사용하는 메인넷과 같은 구조의 네트워크이다. 메인넷을 이용하면 수수료를 내야 하거나 배포한 프로그램을 제거할 수 없는 등의 문제가 있으므로 테스트넷을 제공하는 것이다. 대표적인 이더리움 기반 테스트넷은 작업 증명 알고리즘을 적용한 롭튼과 권한 증명 알고리즘을 적용한 코반, 린키비가 있다. 테스트넷에서 운용하는 암호화폐 역시 채굴 비용이 있으므로 이러한 암호화폐는 테스트넷 배포 사이트나 커뮤니티에서 얻을 것을 권장한다.</p>
<h1 id="코인coin과-토큰token">코인(Coin)과 토큰(Token)</h1>
<p>메인넷이 있는 블록체인 시스템에서 발행한 암호화폐를 코인이라고 한다. 메인넷의 블록체인 시스템을 빌려 독자적인 암호화폐를 발행하면 토큰이라고 한다. 보통 토큰 사용이 활발해지면 별도의 메인넷을 만들어 코인으로 승격시킨다.</p>
<h1 id="합의consensus-알고리즘">합의(Consensus) 알고리즘</h1>
<p>분산 시스템의 모든 프로세스가 같은 결괏값을 결정하는 과정을 합의라고 한다. 시스템에서 발생하는 에러를 막고 무결성을 보장한다. 블록체인 시스템은 누구나 블록을 생성할 수 있는 구조이므로 블록의 소유권과 생성 순서를 결정하는 합의 알고리즘을 사용한다. 블록체인은 블록 높이가 클수록 확정한 거래 내역이 바뀔 확률이 낮아지는 &#39;확률적 합의&#39; 개념의 알고리즘을 도입해 관리자가 없는 분산 시스템을 구현한다.</p>
<h1 id="확정confirmation">확정(Confirmation)</h1>
<p>거래를 블록에 저장시켜 기존의 거래 내역과 새로운 거래 내역을 검증하는 것을 확장이라고 한다. 거래 내역 검증 작업은 어떤 거래 하나가 저장된 블록과 연결된 다른 블록의 개수만큼 반복한다. 그래서 연결된 블록의 개수를 확정 횟수라고도 한다. 블록체인은 확률적 합의를 적용하므로 확정 횟수가 많을수록 확정한 거래 내역을 신뢰도를 보장할 수 있다. 따라서 확정 횟수를 신뢰도를 나타내는 지표로도 이용한다.</p>
<h1 id="가스gas">가스(Gas)</h1>
<p>가스는 이더리움에서 애플리케이션을 실행할 때 지급하는 네트워크 수수료이다. 블록체인 시스템에서 튜링 완전 애플리케이션의 동작 환경을 보장하려면 악성 프로그램의 실행을 막아야 한다. 가스는 악성 프로그램에 많은 수수료를 부과해서 자율적으로 문제를 해결하게 한다.</p>
<h1 id="erc20">ERC20</h1>
<p>ERC는 Ethereum Request for Comments의 줄임말이다. 이더리움 네트워크의 개선안을 제안하는 EIPs에서 관리하는 공식 프로토콜이다. 인터넷 프로토콜이나 파일 형식 등을 정의하는 RFC의 이더리움 버전이라고 생각하면 된다. ERC20은 ERC에서 정한 표준 토큰 스펙이다(숫자 20은 20번째 제안이라는 의미). 토큰 이름, 통화 코드, 화폐 총공급량과 토큰 전달 방법이 정의되어 있다. ERC20 호환 토큰을 만들면 ERC20 호환 지갑 등의 각종 애플리케이션을 구현해 사용할 수 있다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[블록체인 주요 용어_1]]></title>
            <link>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%A3%BC%EC%9A%94-%EC%9A%A9%EC%96%B4</link>
            <guid>https://velog.io/@cherub_jeongmin/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-%EC%A3%BC%EC%9A%94-%EC%9A%A9%EC%96%B4</guid>
            <pubDate>Wed, 20 Mar 2024 16:12:36 GMT</pubDate>
            <description><![CDATA[<p><img src="https://velog.velcdn.com/images/cherub_jeongmin/post/818276df-f8e2-405f-bb1e-ea7320a1b104/image.png" alt=""></p>
<blockquote>
<p>[처음 배우는 블록체인] 이라는 책을 참고하여 개인공부와 복습의 용도로 게시글을 작성했습니다.</p>
</blockquote>
<h1 id="암호화폐cryptocurrency-가상화폐">암호화폐(Cryptocurrency, 가상화폐)</h1>
<p>&#39;암호화&#39;라는 뜻을 가진 &#39;crypto-&#39;와 통화, 화폐란 뜻을 가진 &#39;currency&#39;의 합성어로, 분산 장부에서 공개키 암호화를 통해 안전하게 전송하고, 해시 함수를 이용해 쉽게 소유권을 증명해 낼 수 있는 디지털 자산이다. 일반적으로 암호화폐는 블록체인이나 DAG를 기반으로 한 분산 원장 위에서 동작한다.</p>
<h1 id="명목화폐fiat-money">명목화폐(Fiat Money)</h1>
<p>원이나 달러처럼 실질적 가치와는 관계 없이 표시된 가격으로 통용되는 일반적인 화폐를 의미한다.</p>
<h1 id="비트코인bitcoin">비트코인(Bitcoin)</h1>
<p>2008년 사토시 나카모토가 제안한 전자화폐 시스템이다. 기존 전자화폐와 달리 관리자가 없어도 자율적으로 동작하는 분산 시스템이다. 2009년 처음 코인을 발행하기 시작했으며 2018년 현재까지 중단없이 작동하고 있다. 비트코인 시스템은 &#39;Bitcoin&#39;이라고 표기하고, 암호화폐를 지칭할 때는 &#39;bitcoin&#39;, &#39;BTC&#39;라는 기호로 표기한다.</p>
<h1 id="이더리움ethereum">이더리움(Ethereum)</h1>
<p>암호화폐 종류의 하나로 알려져 있지만 블록체인 기반 애플리케이션을 개발하고 운용하는 플랫폼이라는 뜻도 있다. 튜링 완전한 프로그래밍 언어 기반의 애플리케이션을 개발할 수 있다.</p>
<h1 id="블록체인blockchain">블록체인(Blockchain)</h1>
<p>관리자 없이 자율적으로 동작하는 분산 시스템 기술을 통칭한다. 화폐 거래 내역을 &#39;블록&#39;이라는 데이터 단위로 저장한 후 해당 블록의 해시값을 다른 블록에 저장시켜 체인 형태의 연결고리를 만든다.</p>
<h1 id="블록체인-애플리케이션blockchain-application">블록체인 애플리케이션(Blockchain Application)</h1>
<p>블록체인 기반으로 구현한 애플리케이션을 일컫는 말이다. 스마트 계약 기반 암호화폐 및 디지털 애셋의 거래, DApps 개념을 포함한다.</p>
<h1 id="dapps">DApps</h1>
<p>탈중앙화 애플리케이션의 줄임말이다. 특정 관리자가 없어도 계속 동작하면서 스마트 계약을 실행하는 애플리케이션이다. 이더리움에서 동작하는 DApps는 분산 시스템에서 자율적으로 스마트 계약을 실행하므로 자율 분산 애플리케이션이라고도 한다.</p>
<h1 id="스마트-계약smart-contract">스마트 계약(Smart Contract)</h1>
<p>IT 기술을 이용해 계약 내역을 자동으로 실행하는 것을 스마트 계약이라고 한다. 예를 들어 전자화폐의 잔액이 일정 액수 이하면 신용카드로 자동으로 충전하는 서비스도 스마트 계약의 하나이다. 이더리움은 스마트 계약을 적용한 대표적인 블록체인 기반 애플리케이션 플랫폼이다.</p>
<h1 id="주소address">주소(Address)</h1>
<p>공개 키 암호로 암호화폐를 받거나 보내는 단위로 단위로 다루는 임의 문자열이다. 공개 키를 바탕으로 만들고 비밀 키가 있는 프로그램으로 암호화폐를 이용 권한을 얻을 수 있다.</p>
<h1 id="지갑wallet">지갑(Wallet)</h1>
<p>암호화폐 거래에 필요한 개인 키를 저장한 공간을 뜻한다. 암호화폐 자체는 블록체인에 공유해 저장한다.</p>
<h1 id="디지털-자산digital-asset">디지털 자산(Digital Asset)</h1>
<p>다이아몬드와 고급 자동차 등의 실제 자산 소유권 거래 내역을 블록체인으로 디지털화한 것을 말한다.</p>
<h1 id="거래transaction">거래(Transaction)</h1>
<p>일반적으로는 시스템 안에서 더 나눌 수 없는 처리 단위를 의미한다. 블록체인에서는 코인과 토큰 소유권을 포함하는 데이터를 주고받는 것을 뜻한다. 작성자의 전자 서명을 적용해 코인 및 토큰 발행을 증명하거나, 내용을 조작한 사실이 없음을 보장하는 데 사용한다.</p>
<h1 id="블록block">블록(Block)</h1>
<p>여러 거래를 모아 만든 데이터 단위이다. 거래를 블록에 저장하면 올바른 거래인지 검증하며, 뒤에서 설명할 작업 증명 알고리즘 등을 이용해 이중 지급을 막는다.</p>
<h1 id="블록-높이block-height">블록 높이(Block Height)</h1>
<p>새로운 블록을 생성할 때는 먼저 생성한 블록의 해시값(이전 거래 기록 등)을 저장해야 한다. 블록 높이는 다른 블록의 해시값을 포함해 연결된 블록의 전체 개수를 뜻한다. 블록 높이가 0이면 맨 처음 생성된 블록이며 이를 제네시스 블록이라고 한다. 거래와 블록 안 타임스탬프는 블록을 만든 사람이 자유롭게 설정할 수 있다. 하지만 타임스탬프 기록으로 결정한 블록 생성 순서는 신뢰할 수 없다. 따라서 기존 블록의 해시값을 새로 생성한 블록에 저장해 블록 생성 순서의 신뢰도를 보장한다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 5과목(21.03.07)]]></title>
            <link>https://velog.io/@cherub_jeongmin/5-k015eumv</link>
            <guid>https://velog.io/@cherub_jeongmin/5-k015eumv</guid>
            <pubDate>Thu, 29 Feb 2024 19:46:07 GMT</pubDate>
            <description><![CDATA[<ol>
<li><p>다음 암호 알고리즘 중 성격이 다른 하나는?</p>
<p> ① MD4
 ② MD5
 ③ SHA-1
 ④ AES</p>
</li>
</ol>
<hr>
<ol start="2">
<li><p>크래커가 침입하여 백도어를 만들어 놓거나, 설정파일을 변경했을 때 분석하는 도구는?</p>
<p> ① tripwire<br> ② tcpdump
 ③ cron
 ④ netcat</p>
</li>
</ol>
<hr>
<ol start="3">
<li>다음 내용이 설명하는 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/56b7a6e3-c99b-447b-925f-c6ce785ccf9b/image.png" alt="">
 ① GRID<br> ② TELNET
 ③ GPN
 ④ MQTT</li>
</ol>
<hr>
<ol start="4">
<li><p>나선형(Spiral) 모형의 주요 태스크에 해당되지 않는 것은?</p>
<p> ① 버전 관리<br> ② 위험 분석
 ③ 개발
 ④ 평가</p>
</li>
</ol>
<hr>
<ol start="5">
<li><p>정보 보안을 위한 접근통제 정책 종류에 해당하지 않는 것은?</p>
<p> ① 임의적 접근 통제
 ② 데이터 전환 접근 통제
 ③ 강제적 접근 통제
 ④ 역할 기반 접근 통제</p>
</li>
</ol>
<hr>
<ol start="6">
<li><p>LOC기법에 의하여 예측된 총 라인수가 36,000라인, 개발에 참여할 프로그래머가 6명, 프로그래머들의 평균 생산성이 월간 300라인일 때 개발에 소요되는 기간은?</p>
<p> ① 5개월
 ② 10개월
 ③ 15개월
 ④ 20개월</p>
</li>
</ol>
<hr>
<ol start="7">
<li><p>정형화된 분석 절차에 따라 사용자 요구사항을 파악, 문서화하는 체계적 분석방법으로 자료흐름도, 자료사전, 소단위명세서의 특징을 갖는 것은?</p>
<p> ① 구조적 개발 방법론
 ② 객체지향 개발 방법론
 ③ 정보공학 방법론
 ④ CBD 방법론</p>
</li>
</ol>
<hr>
<ol start="8">
<li><p>정보보호를 위한 암호화에 대한 설명으로 틀린 것은?</p>
<p> ① 평문 – 암호화되기 전의 원본 메시지
 ② 암호문 – 암호화가 적용된 메시지
 ③ 복호화 – 평문을 암호문으로 바꾸는 작업
 ④ 키(Key) - 적절한 암호화를 위하여 사용하는 값</p>
</li>
</ol>
<hr>
<ol start="9">
<li>다음 내용이 설명하는 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/1f614633-1bcf-43eb-a6ca-08c1a0dda68e/image.png" alt="">
 ① OTT
 ② Baas
 ③ SDDC
 ④ Wi-SUN</li>
</ol>
<hr>
<ol start="10">
<li><p>소프트웨어 비용 산정 기법 중 개발 유형으로 organic, semi-detach, embedded로 구분되는 것은?</p>
<p>① PUTNAM
② COCOMO
③ FP
④ SLIM</p>
</li>
</ol>
<hr>
<ol start="11">
<li>다음 LAN의 네트워크 토폴로지는 어떤 형인가?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/c97cda62-3702-44e4-81cd-9e76d384b6e7/image.png" alt="">
① 그물형<br>② 십자형
③ 버스형
④ 링형</li>
</ol>
<hr>
<ol start="12">
<li><p>전기 및 정보통신기술을 활용하여 전력망을 지능화, 고도화함으로써 고품질의 전력서비스를 제공하고 에너지 이용효율을 극대화하는 전력망은?</p>
<p>① 사물 인터넷
② 스마트 그리드
③ 디지털 아카이빙
④ 미디어 빅뱅</p>
</li>
</ol>
<hr>
<ol start="13">
<li>다음 내용이 설명하는 소프트웨어 개발 모형은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/abdbc3c1-fd40-42d9-8835-e7512129ea38/image.png" alt="">
① 프로토타입 모형
② 나선형 모형
③ 폭포수 모형
④ RAD 모형</li>
</ol>
<hr>
<ol start="14">
<li><p>스트림 암호화 방식의 설명으로 옳지 않은 것은?</p>
<p>① 비트/바이트/단어들을 순차적으로 암호화한다.
② 해쉬 함수를 이용한 해쉬 암호화 방식을 사용한다.
③ RC4는 스트림 암호화 방식에 해당한다.
④ 대칭키 암호화 방식이다.</p>
</li>
</ol>
<hr>
<ol start="15">
<li><p>세션 하이재킹을 탐지하는 방법으로 거리가 먼 것은?</p>
<p>① FTP SYN SEGNENT 탐지
② 비동기화 상태 탐지
③ ACK STORM 탐지
④ 패킷의 유실 및 재전송 증가 탐지</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>소프트웨어공학에 대한 설명으로 거리가 먼 것은?</p>
<p>① 소프트웨어공학이란 소프트웨어의 개발, 운용, 유지보수 및 파기에 대한 체계적인 접근 방법이다.
② 소프트웨어공학은 소프트웨어 제품의 품질을 향상시키고 소프트웨어 생산성과 작업 만족도를 증대시키는 것이 목적이다.
③ 소프트웨어공학의 궁극적 목표는 최대의 비용으로 계획된 일정보다 가능한 빠른 시일 내에 소프트웨어를 개발하는 것이다.
④ 소프트웨어공학은 신뢰성 있는 소프트웨어를 경제적인 비용으로 획득하기 위해 공학적 원리를 정립하고 이를 이용하는 것이다.</p>
</li>
</ol>
<hr>
<ol start="17">
<li><p>소프트웨어 개발 방법론 중 CBD(Component Based Development)에 대한 설명으로 틀린 것은?</p>
<p>① 생산성과 품질을 높이고, 유지보수 비용을 최소화할 수 있다.
② 컴포넌트 제작 기법을 통해 재사용성을 향상시킨다.
③ 모듈의 분할과 정복에 의한 하향식 설계방식이다.
④ 독립적인 컴포넌트 단위의 관리로 복잡성을 최소화할 수 있다.</p>
</li>
</ol>
<hr>
<ol start="18">
<li><p>정보 보안의 3요소에 해당하지 않는 것은?</p>
<p>① 기밀성
② 무결성
③ 가용성
④ 휘발성</p>
</li>
</ol>
<hr>
<ol start="19">
<li><p>소셜 네트워크에서 악의적인 사용자가 지인 또는 특정 유명인으로 가장하여 활동하는 공격 기법은?(문제 오류로 가답안 발표시 1번으로 발표되었지만 확정답안 발표시 1, 2번이 정답처리 되었습니다. 여기서는 가답안인 1번을 누르시면 정답 처리 됩니다.)</p>
<p>① Evil Twin Attack
② Phishing
③ Logic Bomb
④ Cyberbullying</p>
</li>
</ol>
<hr>
<ol start="20">
<li><p>공개키 암호에 대한 설명으로 틀린 것은?</p>
<p>① 10명이 공개키 암호를 사용할 경우 5개의 키가 필요하다.
② 복호화키는 비공개 되어 있다.
③ 송신자는 수신자의 공개키로 문서를 암호화한다.
④ 공개키 암호로 널리 알려진 알고리즘은 RSA가 있다.</p>
</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>④ AES</li>
</ol>
<p>AES는 대칭 키 암호화 알고리즘</p>
<p>MD4, MD5, SHA-1은 해시 암호화 알고리즘</p>
<hr>
<ol start="2">
<li>① tripwire</li>
</ol>
<p>tripwire : 크래커가 침입하여 백도어를 만들어 놓거나, 설정 파일을 변경했을 때 분석하는 도구이다. 공격자가 시스템을 점령했을 때, 파일이 트로이목마 등의 악성 코드로 변경된 경우에 방어자는 자신의 시스템 내의 파일들이 악의적으로 변경되었는지를 확인할 수 있도록 시스템 파일 무결성을 검사한다.</p>
<hr>
<ol start="3">
<li>④ MQTT</li>
</ol>
<p>MQTT : 사물통신, 사물 인터넷과 같이 대역폭이 제한된 통신 환경에 최적화하여 개발된 푸시기술 기반의 경량 메시지 전송 프로토콜이다.</p>
<hr>
<ol start="4">
<li>① 버전 관리    </li>
</ol>
<h3 id="나선형-모형">나선형 모형</h3>
<p>계획 수립 &gt; 위험 분석 &gt; 개발 &gt; 고객 평가</p>
<hr>
<ol start="5">
<li>② 데이터 전환 접근 통제</li>
</ol>
<h3 id="정보보안을-위한-접근통제-정책-종류">정보보안을 위한 접근통제 정책 종류</h3>
<p>임의적 접근통제정책
강제적 접근통제정책
역할기반 접근 통제정책</p>
<hr>
<ol start="6">
<li>④ 20개월</li>
</ol>
<hr>
<ol start="7">
<li>① 구조적 개발 방법론    </li>
</ol>
<p>구조적 개발 방법론 : 정형화된 분석 절차에 따라 사용자 요구사항을 파악, 문서화하는 체계적 분석 방법으로 자료 흐름도, 자료 사전, 소단위 명세서의 특징을 갖는다.</p>
<hr>
<ol start="8">
<li>③ 복호화 – 평문을 암호문으로 바꾸는 작업</li>
</ol>
<p>암호화 : 평문을 암호문으로 바꾸는 작업</p>
<hr>
<ol start="9">
<li>② Baas</li>
</ol>
<p>Baas : 블록체인 개발 환경을 클라우드로 서비스하는 개념</p>
<p>SDDC : 모든 컴퓨팅 인프라를 가상화하여 서비스하는 데이터센터</p>
<hr>
<ol start="10">
<li>② COCOMO</li>
</ol>
<h3 id="cocomo의-프로젝트-3가지-모드">COCOMO의 프로젝트 3가지 모드</h3>
<p>유기적 모델, 중간형 모델, 내장형 모델</p>
<hr>
<ol start="11">
<li>③ 버스형    </li>
</ol>
<hr>
<ol start="12">
<li>② 스마트 그리드</li>
</ol>
<p>스마트 그리드 : 전기의 생산, 운반, 소비 과정에 정보통신기술을 접목하여 공급자와 소비자가 서로 상호작용함으로써 효율성을 높인 지능형 전력망 시스템</p>
<hr>
<ol start="13">
<li>③ 폭포수 모형</li>
</ol>
<hr>
<ol start="14">
<li>② 해쉬 함수를 이용한 해쉬 암호화 방식을 사용한다.</li>
</ol>
<p>스트림 암호는 평문의 비트열과 키스트림 비트열을 XOR 연산을 통해서 암호문을 생성한다. 해쉬 함수와는 관련 없다.</p>
<hr>
<ol start="15">
<li>① FTP SYN SEGNENT 탐지</li>
</ol>
<h3 id="세션-하이재킹-탐지-방법">세션 하이재킹 탐지 방법</h3>
<p>비동기화 상태 탐지, ACK STORM 탐지, 패킷의 유실 및 재전송 증가 탐지</p>
<hr>
<ol start="16">
<li>③ 소프트웨어공학의 궁극적 목표는 최대의 비용으로 계획된 일정보다 가능한 빠른 시일 내에 소프트웨어를 개발하는 것이다.</li>
</ol>
<hr>
<ol start="17">
<li>③ 모듈의 분할과 정복에 의한 하향식 설계방식이다.</li>
</ol>
<p>CBD 방법론 : 각각의 컴포넌트를 만들고 조립해 또 다른 컴포넌트나 소프트웨어를 만드는 것, 따라서 상향식 설계 방식이다.</p>
<hr>
<ol start="18">
<li>④ 휘발성</li>
</ol>
<h3 id="정보보안-3요소">정보보안 3요소</h3>
<p>기밀성, 무결성, 가용성</p>
<hr>
<ol start="19">
<li>① Evil Twin Attack, ② Phishing</li>
</ol>
<p>Logic Bomb(논리 폭탄) : 시스템의 정상적인 기능을 가로막는 불법적인 소프트웨어</p>
<p>Cyberbullying : 사이버 상에서 특정인을 집단적으로 따돌리거나 괴롭히는 행위</p>
<hr>
<ol start="20">
<li>① 10명이 공개키 암호를 사용할 경우 5개의 키가 필요하다.</li>
</ol>
<p>공개키(비대칭키)의 암호키의 개수는 2*N이다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 4과목(21.03.07)]]></title>
            <link>https://velog.io/@cherub_jeongmin/4-taj0oc83</link>
            <guid>https://velog.io/@cherub_jeongmin/4-taj0oc83</guid>
            <pubDate>Thu, 29 Feb 2024 19:45:59 GMT</pubDate>
            <description><![CDATA[<ol>
<li><p>다음 중 응집도가 가장 높은 것은?</p>
<p> ① 절차적 응집도
 ② 순차적 응집도
 ③ 우연적 응집도
 ④ 논리적 응집도</p>
</li>
</ol>
<hr>
<ol start="2">
<li><p>OSI 7계층에서 물리적 연결을 이용해 신뢰성 있는 정보를 전송하려고 동기화, 오류제어, 흐름제어 등의 전송에러를 제어하는 계층은?</p>
<p> ① 데이터 링크 계층
 ② 물리 계층
 ③ 응용 계층<br> ④ 표현 계층</p>
</li>
</ol>
<hr>
<ol start="3">
<li><p>운영체제를 기능에 따라 분류할 경우 제어 프로그램이 아닌 것은?</p>
<p> ① 데이터 관리 프로그램
 ② 서비스 프로그램
 ③ 작업 제어 프로그램<br> ④ 감시 프로그램</p>
</li>
</ol>
<hr>
<ol start="4">
<li><p>IEEE 802.3 LAN에서 사용되는 전송매체 접속제어(MAC) 방식은?</p>
<p> ① CSMA/CD
 ② Token Bus
 ③ Token Ring
 ④ Slotted Ring</p>
</li>
</ol>
<hr>
<ol start="5">
<li><p>기억공간이 15K, 23K, 22K, 21K 순으로 빈 공간이 있을 때 기억장치 배치 전력으로 “First Fit”을 사용하여 17K의 프로그램을 적재할 경우 내부단편화의 크기는 얼마인가?</p>
<p> ① 5K
 ② 6K
 ③ 7K
 ④ 8K</p>
</li>
</ol>
<hr>
<ol start="6">
<li><p>교착상태가 발생할 수 있는 조건이 아닌 것은?</p>
<p> ① Mutual exclusion
 ② Hold and wait
 ③ Non-preemption
 ④ Linear wait</p>
</li>
</ol>
<hr>
<ol start="7">
<li><p>IPv6에 대한 설명으로 틀린 것은?</p>
<p> ① 멀티캐스팅(Multicast) 대신 브로드캐스트(Broadcast)를 사용한다.
 ② 보안과 인증 확장 헤더를 사용함으로써 인터넷 계층의 보안기능을 강화하였다.
 ③ 애니캐스트(Anycast)는 하나의 호스트에서 그룹 내의 가장 가까운 곳에 있는 수신자에게 전달하는 방식이다.
 ④ 128비트 주소체계를 사용한다.</p>
</li>
</ol>
<hr>
<ol start="8">
<li><p>TCP/IP 프로토콜에서 TCP가 해당하는 계층은?</p>
<p> ① 데이터 링크 계층
 ② 네트워크 계층
 ③ 트랜스포트 계층<br> ④ 세션 계층</p>
</li>
</ol>
<hr>
<ol start="9">
<li><p>C언어에서 변수로 사용할 수 없는 것은?</p>
<p> ① data02
 ② int01
 ③ _sub
 ④ short</p>
</li>
</ol>
<hr>
<ol start="10">
<li>다음 JAVA 코드 출력문의 결과는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/485365e6-046b-4d12-93dc-5a527e545159/image.png" alt="">
① 5 + 2 = 34&lt;chal&gt;5 + 2 = 34
② 5 + 2 + 3 + 4&lt;chal&gt;5 + 2 = 7
③ 7 = 7&lt;chal&gt;7 + 7
④ 5 + 2 = 34&lt;chal&gt;5 + 2 = 7</li>
</ol>
<hr>
<ol start="11">
<li><p>C언어에서 문자열을 정수형으로 변환하는 라이브러리 함수는?</p>
<p>① atoi( )<br>② atof( )
③ itoa( )<br>④ ceil( )</p>
</li>
</ol>
<hr>
<ol start="12">
<li><p>운영체제의 가상기억장치 관리에서 프로세스가 일정 시간동안 자주 참조하는 페이지들의 집합을 의미하는 것은?</p>
<p>① Locality<br>② Deadlock
③ Thrashing
④ Working Set</p>
</li>
</ol>
<hr>
<ol start="13">
<li>결합도가 낮은 것부터 높은 순으로 옳게 나열한 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/e953564d-37d2-47f9-ae2a-dac0ab60976c/image.png" alt="">
① (ㄱ) → (ㄴ) → (ㄹ) → (ㅂ) → (ㅁ) → (ㄷ)
② (ㄴ) → (ㄹ) → (ㅁ) → (ㅂ) → (ㄷ) → (ㄱ)
③ (ㄴ) → (ㄹ) → (ㅂ) → (ㅁ) → (ㄷ) → (ㄱ)
④ (ㄱ) → (ㄴ) → (ㄹ) → (ㅁ) → (ㅂ) → (ㄷ)</li>
</ol>
<hr>
<ol start="14">
<li>다음 설명의 ㉠과 ㉡에 들어갈 내용으로 옳은 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/771ed62e-56ec-4281-b99b-93e44a9c9d4f/image.png" alt="">
① ㉠ : Paging, ㉡ : Segmentation
② ㉠ : Segmentation, ㉡ : Allocation
③ ㉠ : Segmentation, ㉡ : Compaction
④ ㉠ : Paging, ㉡ : Linking</li>
</ol>
<hr>
<ol start="15">
<li><p>라이브러리의 개념과 구성에 대한 설명 중 틀린 것은?</p>
<p>① 라이브러리란 필요할 때 찾아서 쓸 수 있도록 모듈화되어 제공되는 프로그램을 말한다.
② 프로그래밍 언어에 따라 일반적으로 도움말, 설치 파일, 샘플 코드 등을 제공한다.
③ 외부 라이브러리는 프로그래밍 언어가 기본적으로 가지고 있는 라이브러리를 의미하며, 표준 라이브러리는 별도의 파일 설치를 필요로 하는 라이브러리를 의미한다.
④ 라이브러리는 모듈과 패키지를 총칭하며, 모듈이 개별 파일이라면 패키지는 파일들을 모아 놓은 폴더라고 볼 수 있다.</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>C언어에서 산술 연산자가 아닌 것은?</p>
<p>① %<br>② *
③ /
④ =</p>
</li>
</ol>
<hr>
<ol start="17">
<li><p>UDP 특성에 해당되는 것은?</p>
<p>① 양방향 연결형 서비스를 제공한다.
② 송신중에 링크를 유지관리하므로 신뢰성이 높다.
③ 순서제어, 오류제어, 흐름제어 기능을 한다.
④ 흐름제어나 순서제어가 없어 전송속도가 빠르다.</p>
</li>
</ol>
<hr>
<ol start="18">
<li><p>JAVA에서 변수와 자료형에 대한 설명으로 틀린 것은?</p>
<p>① 변수는 어떤 값을 주기억 장치에 기억하기 위해서 사용하는 공간이다.
② 변수의 자료형에 따라 저장할 수 있는 값의 종류와 범위가 달라진다.
③ char 자료형은 나열된 여러 개의 문자를 저장하고자 할 때 사용한다.
④ boolean 자료형은 조건이 참인지 거짓인지 판단하고자 할 때 사용한다.</p>
</li>
</ol>
<hr>
<ol start="19">
<li>다음은 파이썬으로 만들어진 반복문 코드이다. 이 코드의 결과는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/913efb69-ed7b-4871-b465-e628428c730f/image.png" alt="">
① A, B, C 출력이 반복된다.
② A, B, C 까지만 출력된다.
③ A, B, C, D 출력이 반복된다.
④ A, B, C, D 까지만 출력된다.</li>
</ol>
<hr>
<ol start="20">
<li><p>WAS(Web Application Server)가 아닌 것은?</p>
<p>① JEUS
② JVM
③ Tomcat
④ WebSphere</p>
</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>② 순차적 응집도</li>
</ol>
<h3 id="응집도">응집도</h3>
<p>우연적
논리적
시간적
절차적
통신적
순차적
기능적</p>
<p>우연적 응집도가 가장 응집도 낮음</p>
<p>Tip)) 기순통절시논우</p>
<hr>
<ol start="2">
<li>① 데이터 링크 계층</li>
</ol>
<p>데이터 링크 계층 : 물리적 연결을 이용해 신뢰성 있는 정보를 전송하려고 동기화, 오류 제어, 흐름 제어 등의 전송 에러를 제어하는 계층이며, 필요한 장비는 브릿지와 스위치가 있다.</p>
<hr>
<ol start="3">
<li>② 서비스 프로그램</li>
</ol>
<p>서비스 프로그램은 운영체제를 기능에 따라 분류할 경우 처리 프로그램에 해당된다.</p>
<hr>
<ol start="4">
<li>① CSMA/CD</li>
</ol>
<p>CSMA/CD : IEEE 802.3</p>
<hr>
<ol start="5">
<li>② 6K</li>
</ol>
<p>17k가 들어가 수 있는 공간 중 가장 처음은 23k이다.
23k - 17k = 6k</p>
<hr>
<ol start="6">
<li>④ Linear wait</li>
</ol>
<p>Mutual exclusion : 상호 배제</p>
<p>Hold and wait : 점유와 대기</p>
<p>Non-preemption : 비선점</p>
<h3 id="교착상태-발생-필요-조건">교착상태 발생 필요 조건</h3>
<p>상호배제, 점유와 대기, 비선점, 환형대기</p>
<hr>
<ol start="7">
<li>① 멀티캐스팅(Multicast) 대신 브로드캐스트(Broadcast)를 사용한다.</li>
</ol>
<p>IPv4는 유니캐스트, 애니캐스트, 멀티캐스트를 사용할 수 있다.</p>
<p>브로드캐스트는 IPv4에 해당된다.</p>
<hr>
<ol start="8">
<li>③ 트랜스포트 계층</li>
</ol>
<p>TCP : 트랜스포트 계층</p>
<hr>
<ol start="9">
<li>④ short</li>
</ol>
<hr>
<ol start="10">
<li>④ 5 + 2 = 34&lt;chal&gt;5 + 2 = 7</li>
</ol>
<p>문자열 형태의 데이터가 먼저 입력되었을 경우, 뒤의 데이터도 문자형으로 인식된다.</p>
<p>단, 괄호의 경우 사칙연산과 마찬가지로 먼저 수행된다.</p>
<hr>
<ol start="11">
<li>① atoi( )</li>
</ol>
<p>stdlib.h 라이브러리의 atoi함수는 문자열을 정수형으로 변환하는 기능을 제공한다.</p>
<hr>
<ol start="12">
<li>④ Working Set</li>
</ol>
<p>워킹셋(Working Set) : 운영체제의 가상기억장치 관리에서 프로세스가 일정 시간 동안 자주 참조하는 페이지들의 집합을 의미한다.</p>
<hr>
<ol start="13">
<li>③ (ㄴ) → (ㄹ) → (ㅂ) → (ㅁ) → (ㄷ) → (ㄱ)</li>
</ol>
<h3 id="결합도">결합도</h3>
<p>내용
공통
외부
제어
스탬프
자료</p>
<p>내용 결합도가 가장 강함</p>
<p>Tip)) 내공부제스자</p>
<hr>
<ol start="14">
<li>㉠ : Paging, ㉡ : Segmentation</li>
</ol>
<p>Paging 기법 : 가상기억장치의 일반적인 구현 방법으로 프로그램을 고정된 크기의 일정한 블록으로 나누는 기법</p>
<p>Segmentation : 가상기억장치의 구현 방법으로 프로그램을 가변적인 크기의 블록으로 나누는 기법</p>
<hr>
<ol start="15">
<li>③ 외부 라이브러리는 프로그래밍 언어가 기본적으로 가지고 있는 라이브러리를 의미하며, 표준 라이브러리는 별도의 파일 설치를 필요로 하는 라이브러리를 의미한다.</li>
</ol>
<p>표준 라이브러리가 기본적으로 포함되어 있는 라이브러리이다.</p>
<hr>
<ol start="16">
<li>④ =</li>
</ol>
<p>=는 대입 연산자</p>
<hr>
<ol start="17">
<li>④ 흐름제어나 순서제어가 없어 전송속도가 빠르다.</li>
</ol>
<p>UDP는 흐름제어가 없어 신뢰성이 낮고 전송속도가 빠르다.</p>
<hr>
<ol start="18">
<li>③ char 자료형은 나열된 여러 개의 문자를 저장하고자 할 때 사용한다.</li>
</ol>
<p>char 자료형은 하나의 문자를 저장하고자 할 때 사용한다.</p>
<p>나열된 여러 개의 문자는 문자열이고 string 자료형을 사용한다.</p>
<hr>
<ol start="19">
<li>① A, B, C 출력이 반복된다.</li>
</ol>
<p>while(True):의 조건이 True이므로 무한 루프가 된다.</p>
<p>continue문은 이후의 문장을 건너뛴다.</p>
<hr>
<ol start="20">
<li>② JVM</li>
</ol>
<p>JVM은 자바 가상 머신이다.</p>
<h3 id="was">WAS</h3>
<p>JEUS, Tomcat, WebSphere, JBOSS</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 3과목(21.03.07)]]></title>
            <link>https://velog.io/@cherub_jeongmin/3-3guyughs</link>
            <guid>https://velog.io/@cherub_jeongmin/3-3guyughs</guid>
            <pubDate>Thu, 29 Feb 2024 19:45:52 GMT</pubDate>
            <description><![CDATA[<ol>
<li>결과 값이 아래와 같을 때 SQL 질의로 옳은 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/bcc27d4e-67b2-46a4-bab8-b41afd2eb690/image.png" alt="">
 ① SELECT * FROM 공급자 WHERE
 공급자명 LIKE &#39;%신%&#39;;
 ② SELECT * FROM 공급자 WHERE
 공급자명 LIKE &#39;%대%&#39;;
 ③ SELECT * FROM 공급자 WHERE
 공급자명 LIKE &#39;%사%&#39;;
 ④ SELECT * FROM 공급자 WHERE
 공급자명 IS NOT NULL;</li>
</ol>
<hr>
<ol start="2">
<li>다음에서 설명하는 스키마(Schema)는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/ba072a48-b164-442e-b30e-06ff7213b12f/image.png" alt="">
 ① 개념 스키마
 ② 내부 스키마
 ③ 외부 스키마
 ④내용 스키마</li>
</ol>
<hr>
<ol start="3">
<li><p>데이터베이스 설계 단계 중 저장 레코드 양식설계, 레코드 집중의 분석 및 설계, 접근 경로 설계와 관계되는 것은?</p>
<p> ① 논리적 설계
 ② 요구 조건 분석
 ③ 개념적 설계
 ④ 물리적 설계</p>
</li>
</ol>
<hr>
<ol start="4">
<li>다음 릴레이션의 카디널리티와 차수가 옳게 나타낸 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/86705da2-0647-4eae-962a-abb93d3d3c3f/image.png" alt="">
 ① 카디널리티 : 4, 차수 : 4
 ② 카디널리티 : 4, 차수 : 6
 ③ 카디널리티 : 6, 차수 : 4
 ④ 카디널리티 : 6, 차수 : 6</li>
</ol>
<hr>
<ol start="5">
<li>다음과 같은 트랜잭션의 특성은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/be88ea82-cade-4dfd-8aab-edc2809d7d83/image.png" alt="">
 ① 원자성(atomicity)
 ② 일관성(consistency)
 ③ 격리성(isolation)
 ④ 영속성(durability)</li>
</ol>
<hr>
<ol start="6">
<li><p>병행제어의 로킹(Locking) 단위에 대한 설명으로 옳지 않은 것은?</p>
<p> ① 데이터베이스, 파일, 레코드 등은 로킹 단위가 될 수 있다.
 ② 로킹 단위가 작아지면 로킹 오버헤드가 증가한다.
 ③ 한꺼번에 로킹할 수 있는 단위를 로킹단위라고 한다.
 ④ 로킹 단위가 작아지면 병행성 수준이 낮아진다.</p>
</li>
</ol>
<hr>
<ol start="7">
<li><p>뷰(VIEW)에 대한 설명으로 옳지 않은 것은?</p>
<p> ① DBA는 보안 측면에서 뷰를 활용할 수 있다.
 ② 뷰 위에 또 다른 뷰를 정의할 수 있다.
 ③ 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약사항이 따르지 않는다.
 ④ 독립적인 인덱스를 가질 수 없다.</p>
</li>
</ol>
<hr>
<ol start="8">
<li>다음 정의에서 말하는 기본 정규형은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/98b52b7c-c7f1-4231-a012-08f6e601a5cc/image.png" alt="">
 ① 제1정규형(1NF) 
 ② 제2정규형(2NF)
 ③ 제3정규형(3NF)
 ④ 보이스/코드 정규형(BCNF)</li>
</ol>
<hr>
<ol start="9">
<li><p>릴레이션 R1에 속한 애튜리뷰트의 조합인 외래키를 변경하려면 이를 참조하고 있는 릴레이션 R2의 기본키도 변경해야 하는데 이를 무엇이라 하는가?</p>
<p> ① 정보 무결성
 ② 고유 무결성
 ③ 널 제약성
 ④ 참조 무결성</p>
</li>
</ol>
<hr>
<ol start="10">
<li><p>시스템 카탈로그에 대한 설명으로 틀린 것은?</p>
<p>① 시스템 카탈로그의 갱신은 무결성 유지를 위하여 SQL을 이용하여 사용자가 직접 갱신하여야 한다.
② 데이터베이스에 포함되는 데이터 객체에 대한 정의나 명세에 대한 정보를 유지관리한다.
③ DBMS가 스스로 생성하고 유지하는 데이터베이스 내의 특별한 테이블의 집합체이다.
④ 카탈로그에 저장된 정보를 메타 데이터라고도 한다.</p>
</li>
</ol>
<hr>
<ol start="11">
<li><p>조건을 만족하는 릴레이션의 수평적 부분집합으로 구성하며, 연산자의 기호는 그리스 문자 시그마(σ)를 사용하는 관계대수 연산은?</p>
<p>① Select
② Project
③ Join
④ Division</p>
</li>
</ol>
<hr>
<ol start="12">
<li><p>SQL에서 스키마(schema), 도메인(domain), 테이블(table), 뷰(view), 인덱스(index)를 정의하거나 변경 또는 삭제할 때 사용하는 언어는?</p>
<p>① DML(Data Manipulation Language)
② DDL(Data Definition Language)
③ DCL(Data Control Language)
④  IDL(Interactive Data Language)</p>
</li>
</ol>
<hr>
<ol start="13">
<li><p>정규화를 거치지 않아 발생하게 되는 이상(anomaly) 현상의 종류에 대한 설명으로 옳지 않은 것은?</p>
<p>① 삭제 이상이란 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄 삭제 현상이다.
② 삽입 이상이란 릴레이션에서 데이터를 삽입할 때 의도와는 상관없이 원하지 않는 값들도 함께 삽입되는 현상이다.
③ 갱신 이상이란 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상이다.
④ 종속 이상이란 하나의 릴레이션에 하나 이상의 함수적 종속성이 존재하는 현상이다.</p>
</li>
</ol>
<hr>
<ol start="14">
<li><p>관계 데이터 모델에서 릴레이션(relation)에 관한 설명으로 옳은 것은?</p>
<p>① 릴레이션의 각 행을 스키마(schema)라 하며, 예로 도서 릴레이션을 구성하는 스키마에서는 도서번호, 도서명, 저자, 가격 등이 있다.
② 릴레이션의 각 열을 튜플(tuple)이라 하며, 하나의 튜플은 각 속성에서 정의된 값을 이용하여 구성된다.
③ 도메인(domain)은 하나의 속성이 가질 수 있는 같은 타입의 모든 값의 집합으로 각 속성의 도메인은 원자값을 갖는다.
④ 속성(attribute)은 한 개의 릴레이션의 논리적인 구조를 정의한 것으로 릴레이션의 이름과 릴레이션에 포함된 속성들의 집합을 의미한다.</p>
</li>
</ol>
<hr>
<ol start="15">
<li><p>3NF에서 BCNF가 되기 위한 조건은?</p>
<p>① 이행적 함수 종속 제거
② 부분적 함수 종속 제거
③ 다치 종속 제거
④ 결정자이면서 후보 키가 아닌 것 제거</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>데이터베이스 성능에 많은 영향을 주는 DBMS의 구성 요소로 테이블과 클러스터에 연관되어 독립적인 저장 공간을 보유하며, 데이터베이스에 저장된 자료를 더욱 빠르게 조회하기 위하여 사용되는 것은?</p>
<p>① 인덱스(Index)
② 트랜잭션(Transaction)
③ 역정규화(Denormalization)
④ 트리거(Trigger)</p>
</li>
</ol>
<hr>
<ol start="17">
<li>아래의 SQL문을 실행한 결과는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/3f8aec5d-4b8e-405a-b177-15c99682041b/image.png" alt="">
① <img src="https://velog.velcdn.com/images/cherub_jeongmin/post/d4a38093-a0ef-4db8-b0fd-578b9a284706/image.png" alt="">
② <img src="https://velog.velcdn.com/images/cherub_jeongmin/post/b553d9f1-f50e-4afb-9208-0fd7612ac447/image.png" alt="">
③ <img src="https://velog.velcdn.com/images/cherub_jeongmin/post/3ed55b9d-6c11-474c-8e75-8f4a551072aa/image.png" alt="">
④ <img src="https://velog.velcdn.com/images/cherub_jeongmin/post/6427d959-ca5c-4192-8530-dba8130803b9/image.png" alt=""></li>
</ol>
<hr>
<ol start="18">
<li><p>『회원』테이블 생성 후 『주소』 필드(컬럼)가 누락되어 이를 추가하려고 한다. 이에 적합한 SQL명령어는?</p>
<p>① DELETE
② RESTORE
③ ALTER
④ ACCESS</p>
</li>
</ol>
<hr>
<ol start="19">
<li><p>트랜잭션을 수행하는 도중 장애로 인해 손상된 데이터베이스를 손상되기 이전에 정상적인 상태로 복구시키는 작업은?</p>
<p>① Recovery<br>② Commit
③ Abort
④ Restart</p>
</li>
</ol>
<hr>
<ol start="20">
<li><p>E-R 다이어그램의 표기법으로 옳지 않은 것은?</p>
<p>① 개체타입 - 사각형
② 속성 - 타원
③ 관계집합 - 삼각형
④ 개체타입과 속성을 연결 – 선</p>
</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>① SELECT * FROM 공급자 WHERE공급자명 LIKE &#39;%신%&#39;;</li>
</ol>
<hr>
<ol start="2">
<li>① 개념 스키마</li>
</ol>
<p>개념 스키마 : 사용자와 데이터베이스 관리자 관점의 스키마,
데이터베이스에 실제로 어떤 데이터가 저장되었으며, 데이터 간의 관계는 어떻게 되는지를 정의하는 스키마로 전체 관점으로 한개만 존재하며 접근 권한, 보안 및 무결성 등에 관한 정의를 포함</p>
<hr>
<ol start="3">
<li>④ 물리적 설계</li>
</ol>
<p>물리적 설계 : 논리적 설계 단계에서 논리적 데이터베이스 구조로 표현된 데이터를, 물리적 저장 장치에 저장할 수 있는 물리적 구조의 데이터로 변환하는 과정이다,
저장 레코드 양식 설계, 접근 경로 설계, 레코드 집중의 분석 및 설계를 한다.</p>
<hr>
<ol start="4">
<li>② 카디널리티 : 4, 차수 : 6</li>
</ol>
<p>카디널리티 : 튜플의 수</p>
<p>차수 : 속성으 수</p>
<hr>
<ol start="5">
<li>② 일관성(consistency)</li>
</ol>
<p>일관성 : 트랜잭션의 수행 전과 후의 데이터간 불일치가 생겨서는 안된다.</p>
<hr>
<ol start="6">
<li>④ 로킹 단위가 작아지면 병행성 수준이 낮아진다.</li>
</ol>
<p>로킹 단위가 작아지면 병행성 수준이 높아진다.</p>
<hr>
<ol start="7">
<li>③ 뷰에 대한 삽입, 갱신, 삭제 연산 시 제약사항이 따르지 않는다.</li>
</ol>
<p>뷰의 단점으로 삽입, 삭제, 갱신 연산에 제약이 따른다.</p>
<hr>
<ol start="8">
<li>① 제1정규형(1NF)  </li>
</ol>
<p>제1정규형 : 어떤 릴레이션 R에 속한 모든 도메인이 원자값만으로 되어 있다.</p>
<hr>
<ol start="9">
<li>④ 참조 무결성</li>
</ol>
<p>참조 무결성 : 외래키 값은 Null이거나 참조 릴레이션의 기본키 값과 동일해야 한다는 규정</p>
<hr>
<ol start="10">
<li>① 시스템 카탈로그의 갱신은 무결성 유지를 위하여 SQL을 이용하여 사용자가 직접 갱신하여야 한다.</li>
</ol>
<p>사용자가 직접 갱신하는게 아니라 시스템에서 자동으로 갱신된다.</p>
<hr>
<ol start="11">
<li>① Select    </li>
</ol>
<p>Select : 시그마(σ)</p>
<hr>
<ol start="12">
<li>② DDL(Data Definition Language)</li>
</ol>
<h3 id="ddl">DDL</h3>
<p>CREATE, ALTER, DROP</p>
<hr>
<ol start="13">
<li>④ 종속 이상이란 하나의 릴레이션에 하나 이상의 함수적 종속성이 존재하는 현상이다.</li>
</ol>
<h3 id="이상-현상-종류">이상 현상 종류</h3>
<p>삽입 이상, 삭제 이상, 갱신 이상</p>
<hr>
<ol start="14">
<li>③ 도메인(domain)은 하나의 속성이 가질 수 있는 같은 타입의 모든 값의 집합으로 각 속성의 도메인은 원자값을 갖는다.</li>
</ol>
<p>도메인은 하나의 속성이 가질 수 있는 같은 타입의 모든 값의 집합이다.</p>
<p>릴레이션의 각 열을 속성이라 한다.</p>
<p>릴레이션의 각 행을 튜플이라고 한다.</p>
<p>스키마는 한 개의 릴레이션의 논리적인 구조를 정의한 것으로 릴레이션에 포함된 속성들의 집합을 의미함</p>
<hr>
<ol start="15">
<li>④ 결정자이면서 후보 키가 아닌 것 제거</li>
</ol>
<p>Tip)) 도부이걸다줘</p>
<hr>
<ol start="16">
<li>① 인덱스(Index)
인덱스는 데이터 레코드를 빠르게 접근하기 위해 [키, 값, 포인터] 쌍으로 구성되는 데이터 구조이다.</li>
</ol>
<hr>
<ol start="17">
<li>② <img src="https://velog.velcdn.com/images/cherub_jeongmin/post/ccfe08b3-b0cd-400f-9bf7-ff5843bb9358/image.png" alt=""></li>
</ol>
<hr>
<ol start="18">
<li>③ ALTER    </li>
</ol>
<p>ARTER : 기존 테이블에 대해 새로운 열의 첨가, 값의 변경, 기본 열의 삭제 등에 사용</p>
<hr>
<ol start="19">
<li>① Recovery    </li>
</ol>
<p>Recovery(회복) : 여러 가지 장애로 인해 손상된 데이터베이스를 손상되기 이전의 정상적인 상태로 복구시키는 작업</p>
<hr>
<ol start="20">
<li>③ 관계집합 - 삼각형</li>
</ol>
<p>E-R 다이어그램에 삼각형은 없음</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 2과목(21.03.07)]]></title>
            <link>https://velog.io/@cherub_jeongmin/2-blgde0jr</link>
            <guid>https://velog.io/@cherub_jeongmin/2-blgde0jr</guid>
            <pubDate>Thu, 29 Feb 2024 19:45:41 GMT</pubDate>
            <description><![CDATA[<ol>
<li>구현 단계에서의 작업 절차를 순서에 맞게 나열한 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/1e04201e-f141-4694-968f-4771855f8456/image.png" alt="">
 ① ㉠-㉡-㉢-㉣
 ② ㉡-㉠-㉣-㉢
 ③ ㉢-㉠-㉡-㉣<br> ④ ㉣-㉡-㉠-㉢</li>
</ol>
<hr>
<ol start="2">
<li>다음 자료에 대하여 “Selection Sort”를 사용하여 오름차순으로 정렬한 경우 PASS 3의 결과는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/0e1d09c0-d059-470e-be1c-f7318f33a699/image.png" alt="">
 ① 3, 4, 7, 9, 8
 ② 3, 4, 8, 9, 7
 ③ 3, 8, 4, 9, 7
 ④ 3, 4, 7, 8, 9</li>
</ol>
<hr>
<ol start="3">
<li><p>하향식 통합시험을 위해 일시적으로 필요한 조건만을 가지고 임시로 제공되는 시험용 모듈은?</p>
<p> ① Stub
 ② Driver
 ③ Procedure
 ④ Function</p>
</li>
</ol>
<hr>
<ol start="4">
<li>다음 전위식(prefix)을 후위식(postfix)으로 옳게 표현한 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/702352c9-e2f6-49b2-a473-8578ddaa3118/image.png" alt="">
 ① A B C + D / * E -<br> ② A B * C D / + E -
 ③ A B * C + D / E -<br> ④ A B C + * D / E -</li>
</ol>
<hr>
<ol start="5">
<li><p>그래프의 특수한 형태로 노드(Node)와 선분(Branch)으로 되어 있고, 정점 사이에 사이클(Cycle)이 형성되어 있지 않으며, 자료 사이의 관계성이 계층 형식으로 나타나는 비선형 구조는?</p>
<p> ① tree
 ② network
 ③ stack
 ④ distributed</p>
</li>
</ol>
<hr>
<ol start="6">
<li><p>스택에 대한 설명으로 틀린 것은?</p>
<p> ① 입출력이 한쪽 끝으로만 제한된 리스트이다.
 ② Head(front)와 Tail(rear)의 2개 포인터를 갖고 있다.
 ③ LIFO 구조이다.
 ④ 더 이상 삭제할 데이터가 없는 상태에서 데이터를 삭제하면 언더플로(Underflow)가 발생한다.</p>
</li>
</ol>
<hr>
<ol start="7">
<li><p>디지털 저작권 관리(DRM)에 사용되는 기술요소가 아닌 것은?</p>
<p> ① 키관리
 ② 방화벽
 ③ 암호화<br> ④ 크랙방지</p>
</li>
</ol>
<hr>
<ol start="8">
<li><p>여러 개의 선택 항목 중 하나의 선택만 가능한 경우 사용하는 사용자 인터페이스(UI)요소는?</p>
<p> ① 토글 버튼
 ② 텍스트 박스
 ③ 라디오 버튼
 ④ 체크 박스</p>
</li>
</ol>
<hr>
<ol start="9">
<li><p>소프트웨어의 일부분을 다른 시스템에서 사용할 수 있는 정도를 의미하는 것은?</p>
<p> ① 신뢰성(Reliability)  
 ② 유지보수성(Maintainability)
 ③ 가시성(Visibility)    
 ④ 재사용성(Reusability)</p>
</li>
</ol>
<hr>
<ol start="10">
<li><p>자료구조에 대한 설명으로 틀린 것은?</p>
<p>① 큐는 비선형구조에 해당한다.
② 큐는 First In – First Out 처리를 수행한다.
③ 스택은 Last In – First out 처리를 수행한다
④ 스택은 서브루틴 호출, 인터럽트 처리, 수식 계산 및 수식 표기법에 응용된다.</p>
</li>
</ol>
<hr>
<ol start="11">
<li><p>다음 중 블랙박스 검사 기법은?</p>
<p>① 경계값 분석<br>② 조건 검사
③ 기초 경로 검사
④ 루프 검사</p>
</li>
</ol>
<hr>
<ol start="12">
<li><p>이진 검색 알고리즘에 대한 설명으로 틀린 것은?</p>
<p>① 탐색 효율이 좋고 탐색 시간이 적게 소요된다.
② 검색할 데이터가 정렬되어 있어야 한다.
③ 피보나치 수열에 따라 다음에 비교할 대상을 선정하여 검색한다.
④ 비교횟수를 거듭할 때마다 검색 대상이 되는 데이터의 수가 절반으로 줄어든다.</p>
</li>
</ol>
<hr>
<ol start="13">
<li><p>소프트웨어 품질목표 중 쉽게 배우고 사용할 수 있는 정도를 나타내는 것은?</p>
<p>① Correctness
② Reliability
③ Usability<br>④ Integrity</p>
</li>
</ol>
<hr>
<ol start="14">
<li><p>테스트 케이스에 일반적으로 포함되는 항목이 아닌 것은?</p>
<p>① 테스트 조건
② 테스트 데이터
③ 테스트 비용
④ 예상 결과</p>
</li>
</ol>
<hr>
<ol start="15">
<li><p>소프트웨어 설치 매뉴얼에 포함될 항목이 아닌 것은?</p>
<p>① 제품 소프트웨어 개요
② 설치 관련 파일
③ 프로그램 삭제
④ 소프트웨어 개발 기간</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>소프트웨어 형상관리(Configuration management)에 관한 설명으로 틀린 것은?</p>
<p>① 소프트웨어에서 일어나는 수정이나 변경을 알아내고 제어하는 것을 의미한다.
② 소프트웨어 개발의 전체 비용을 줄이고, 개발 과정의 여러 방해 요인이 최소화되도록 보증하는 것을 목적으로 한다.
③ 형상관리를 위하여 구성된 팀을 “chief programmer team”이라고 한다.
④ 형상관리의 기능 중 하나는 버전 제어 기술이다.</p>
</li>
</ol>
<hr>
<ol start="17">
<li><p>퀵 정렬에 관한 설명으로 옳은 것은?</p>
<p>① 레코드의 키 값을 분석하여 같은 값끼리 그 순서에 맞는 버킷에 분배하였다가 버킷의 순서대로 레코드를 꺼내어 정렬한다.
② 주어진 파일에서 인접한 두 개의 레코드 키 값을 비교하여 그 크기에 따라 레코드 위치를 서로 교환한다.
③ 레코드의 많은 자료 이동을 없애고 하나의 파일을 부분적으로 나누어 가면서 정렬한다.
④ 임의의 레코드 키와 매개변수(h)값만큼 떨어진 곳의 레코드 키를 비교하여 서로 교환해 가면서 정렬한다.</p>
</li>
</ol>
<hr>
<ol start="18">
<li><p>해싱 함수(Hashing Function)의 종류가 아닌 것은?</p>
<p>① 제곱법(mid-square)
② 숫자분석법(digit analysis)
③ 개방주소법(open addressing)
④ 제산법(division)</p>
</li>
</ol>
<hr>
<ol start="19">
<li><p>필드 테스팅(field testing)이라고도 불리며 개발자 없이 고객의 사용 환경에 소프트웨어를 설치하여 검사를 수행하는 인수검사 기법은?</p>
<p>① 베타 검사
② 알파 검사
③ 형상 검사<br>④ 복구 검사</p>
</li>
</ol>
<hr>
<ol start="20">
<li>다음 트리를 Preorder 운행법으로 운행할 경우 다섯 번째로 탐색되는 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/3f9019be-39ca-4eed-8d32-7d7e60c99d32/image.png" alt="">
① C
② E
③ G
④ H</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>② ㉡-㉠-㉣-㉢</li>
</ol>
<h3 id="구현-단계에서의-작업-절차">구현 단계에서의 작업 절차</h3>
<p>코딩 작업 &gt; 코딩 &gt; 컴파일 &gt; 테스트 &gt; 디버깅</p>
<hr>
<ol start="2">
<li>① 3, 4, 7, 9, 8</li>
</ol>
<p>선택정렬은 정렬되지 않은 값중 가장 작은 값을 선택 후 정렬되지 않은 첫 번째 요소와 바꾸는 방법</p>
<hr>
<ol start="3">
<li>① Stub    </li>
</ol>
<p>Stub : 임시 제공되는 가짜 모듈이며, 시험용 모듈이라고 한다.
하향식 통합시험에 사용</p>
<p>Driver : 검사 자료 입출력 제어 프로그램이며, 상향식 통합시험에 필요로 한다.</p>
<hr>
<ol start="4">
<li>④ A B C + * D / E -</li>
</ol>
<p>전위 표기법은 연산자가 앞에
중위 표기법은 연산자가 안에
후위 표기법은 연산자가 뒤에</p>
<hr>
<ol start="5">
<li>① tree</li>
</ol>
<p>트리 : 비선형구조 중 하나로 그래프와 다르게 싸이클이 형성되지 않는 자료구조</p>
<hr>
<ol start="6">
<li>② Head(front)와 Tail(rear)의 2개 포인터를 갖고 있다.</li>
</ol>
<p>스택 : 한쪽 끝으로만 삽입, 삭제 작업이 이루어짐,
가장 나중에 삽입된 자료가 가장 먼저 삭제되는 후입선출</p>
<p>큐 : Head(front)와 Tail(rear)의 2개 포인터를 갖고 있다.</p>
<hr>
<ol start="7">
<li>② 방화벽</li>
</ol>
<h3 id="디지털-저작권-관리의-기술요소">디지털 저작권 관리의 기술요소</h3>
<p>암호화, 키관리, 암호화 파일 생성, 식별 기술, 저작권 표현, 정책 관리, 크랙방지, 인증</p>
<hr>
<ol start="8">
<li>③ 라디오 버튼</li>
</ol>
<p>체크박스 : 여러개의 선택상황에서 1개 이상의 값을 선택할 수 있는 버튼</p>
<p>라디오버튼 : 여러 항목 중 하나만 선택할 수 있는 버튼</p>
<p>토글 버튼 : 둘중 하나의 값을 선택하는 버튼</p>
<hr>
<ol start="9">
<li>④ 재사용성(Reusability)</li>
</ol>
<hr>
<ol start="10">
<li>① 큐는 비선형구조에 해당한다.</li>
</ol>
<h3 id="선형구조">선형구조</h3>
<p>배열, 연결 리스트, 스택, 큐, 데크</p>
<hr>
<ol start="11">
<li>① 경계값 분석</li>
</ol>
<h3 id="블랙박스-테스트-검사-기법">블랙박스 테스트 검사 기법</h3>
<p>동치 분할, 경계값 분석, 원인 결과 그래프, 오류추측 기법, 비교 검사 기법</p>
<hr>
<ol start="12">
<li>③ 피보나치 수열에 따라 다음에 비교할 대상을 선정하여 검색한다.</li>
</ol>
<p>이진 검색은 중앙의 키값과 비교하여 다음에 비교할 대상을 검색</p>
<hr>
<ol start="13">
<li>③ Usability    </li>
</ol>
<p>Correctness : 정확성
Usability : 유용성
Reliability : 신뢰성
Integrity : 무결성</p>
<hr>
<ol start="14">
<li>③ 테스트 비용</li>
</ol>
<h3 id="테스트-케이스-항목">테스트 케이스 항목</h3>
<p>식별자 번호, 순서 번호, 테스트 조건, 테스트 데이터, 예상 결과</p>
<hr>
<ol start="15">
<li>④ 소프트웨어 개발 기간</li>
</ol>
<hr>
<ol start="16">
<li>③ 형상관리를 위하여 구성된 팀을 “chief programmer team”이라고 한다.</li>
</ol>
<p>형상관리를 위하여 구성된 팀을 형상통제위원회(CCB)라고 함</p>
<hr>
<ol start="17">
<li>③ 레코드의 많은 자료 이동을 없애고 하나의 파일을 부분적으로 나누어 가면서 정렬한다.</li>
</ol>
<p>퀵 정렬 : 레코드의 많은 자료 이동을 없애고 하나의 파일을 부분적으로 나누어 가면서 정렬하는 방식</p>
<hr>
<ol start="18">
<li>③ 개방주소법(open addressing)</li>
</ol>
<p>개방주소법 : 해싱 함수를 이용한 주소 계산시에 충돌을 해결하는 방법</p>
<hr>
<ol start="19">
<li>① 베타 검사    </li>
</ol>
<hr>
<ol start="20">
<li>② E</li>
</ol>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 1과목(21.03.07)]]></title>
            <link>https://velog.io/@cherub_jeongmin/11</link>
            <guid>https://velog.io/@cherub_jeongmin/11</guid>
            <pubDate>Tue, 27 Feb 2024 06:51:00 GMT</pubDate>
            <description><![CDATA[<ol>
<li><p>운영체제 분석을 위해 리눅스에서 버전을 확인하고자 할 때 사용되는 명령어는?</p>
<p> ① ls
 ② cat
 ③ pwd
 ④ uname</p>
</li>
</ol>
<hr>
<ol start="2">
<li><p>통신을 위한 프로그램을 생성하여 포트를 할당하고, 클라이언트의 통신 요청 시 클라이언트와 연결하는 내·외부 송·수신 연계기술은?</p>
<p> ① DB링크 기술
 ② 소켓 기술
 ③ 스크럼 기술<br> ④ 프로토타입 기술</p>
</li>
</ol>
<hr>
<ol start="3">
<li><p>객체지향 개념에서 연관된 데이터와 함수를 함께 묶어 외부와 경계를 만들고 필요한 인터페이스만을 밖으로 드러내는 과정은?</p>
<p> ① 메시지(Message)
 ② 캡슐화(Encapsulation)
 ③ 다형성(Polymorphism)<br> ④ 상속(Inheritance)</p>
</li>
</ol>
<hr>
<ol start="4">
<li><p>GoF(Gangs of Four) 디자인 패턴의 생성패턴에 속하지 않는 것은?</p>
<p> ① 추상 팩토리(Abstract Factory)<br> ② 빌더(Builder)
 ③ 어댑터(Adapter) 
 ④ 싱글턴(Singleton)</p>
</li>
</ol>
<hr>
<ol start="5">
<li><p>응용프로그램의 프로시저를 사용하여 원격 프로시저를 로컬 프로시저처럼 호출하는 방식의 미들웨어는?</p>
<p> ① WAS(Web Application Server)
 ② MOM(Message Oriented Middleware)
 ③ RPC(Remote Procedure Call)
 ④ ORB(Object Request Broker)</p>
</li>
</ol>
<hr>
<ol start="6">
<li><p>바람직한 소프트웨어 설계 지침이 아닌 것은?</p>
<p> ① 모듈의 기능을 예측할 수 있도록 정의한다.
 ② 이식성을 고려한다.
 ③ 적당한 모듈의 크기를 유지한다.
 ④ 가능한 모듈을 독립적으로 생성하고 결합도를 최대화한다.</p>
</li>
</ol>
<hr>
<ol start="7">
<li><p>객체지향 분석 방법론 중 Coad-Yourdon 방법에 해당하는 것은?</p>
<p> ① E-R 다이어그램을 사용하여 객체의 행위를 데이터 모델링하는데 초점을 둔 방법이다.
 ② 객체, 동적, 기능 모델로 나누어 수행하는 방법이다.
 ③ 미시적 개발 프로세스와 거시적 개발 프로세스를 모두 사용하는 방법이다.
 ④ Use-Case를 강조하여 사용하는 방법이다.</p>
</li>
</ol>
<hr>
<ol start="8">
<li>다음은 어떤 프로그램 구조를 나타낸다. 모듈 F에서의 fan-in과 fan-out의 수는 얼마인가?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/184bff0b-3432-4519-bf01-a8a42d62f950/image.png" alt="">
 ① fan-in : 2, fan-out : 3
 ② fan-in : 3, fan-out : 2
 ③ fan-in : 1, fan-out : 2 
 ④ fan-in : 2, fan-out : 1</li>
</ol>
<hr>
<ol start="9">
<li><p>현행 시스템 분석에서 고려하지 않아도 되는 항목은?</p>
<p> ① DBMS 분석<br> ② 네트워크 분석
 ③ 운영체제 분석
 ④ 인적 자원 분석</p>
</li>
</ol>
<hr>
<ol start="10">
<li><p>분산 컴퓨팅 환경에서 서로 다른 기종 간의 하드웨어나 프로토콜, 통신환경 등을 연결하여 응용프로그램과 운영환경 간에 원만한 통신이 이루어질 수 있게 서비스를 제공하는 소프트웨어는?</p>
<p>① 미들웨어
② 하드웨어
③ 오픈허브웨어
④ 그레이웨어</p>
</li>
</ol>
<hr>
<ol start="11">
<li><p>CASE(Computer Aided Software Engineering)에 대한 설명으로 틀린 것은?</p>
<p>① 소프트웨어 모듈의 재사용성이 향상된다.
② 자동화된 기법을 통해 소프트웨어 품질이 향상된다.
③ 소프트웨어 사용자들에게 사용 방법을 신속히 숙지시키기 위해 사용된다.
④ 소프트웨어 유지보수를 간편하게 수행할 수 있다.</p>
</li>
</ol>
<hr>
<ol start="12">
<li><p>UML(Unified Modeling Language)에 대한 설명 중 틀린 것은?</p>
<p>① 기능적 모델은 사용자 측면에서 본 시스템 기능이며, UML에서는 Use case Diagram을 사용한다.
② 정적 모델은 객체, 속성, 연관관계, 오퍼레이션의 시스템의 구조를 나타내며, UML에서는 Class Diagram을 사용한다.
③ 동적 모델은 시스템의 내부 동작을 말하며, UML에서는 Sequence Diagram, State Diagram, Activity Diagram을 사용한다.
④ State Diagram은 객체들 사이의 메시지 교환을 나타내며, Sequence Diagram은 하나의 객체가 가진 상태와 그 상태의 변화에 의한 동작순서를 나타낸다.</p>
</li>
</ol>
<hr>
<ol start="13">
<li><p>기본 유스케이스 수행 시 특별한 조건을 만족할 때 수행하는 유스케이스는?</p>
<p>① 연관<br>② 확장
③ 선택
④ 특화</p>
</li>
</ol>
<hr>
<ol start="14">
<li><p>다음 중 요구사항 모델링에 활용되지 않는 것은?</p>
<p>① 애자일(Agile) 방법
② 유스케이스 다이어그램(Use Case Diagram)
③ 시퀀스 다이어그램(Sequence Diagram)
④ 단계 다이어그램(Phase Diagram)</p>
</li>
</ol>
<hr>
<ol start="15">
<li><p>디자인 패턴을 이용한 소프트웨어 재사용으로 얻어지는 장점이 아닌 것은?</p>
<p>① 소프트웨어 코드의 품질을 향상시킬 수 있다.
② 개발 프로세스를 무시할 수 있다.
③ 개발자들 사이의 의사소통을 원활하게 할 수 있다.
④ 소프트웨어의 품질과 생산성을 향상시킬 수 있다.</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>럼바우(Rumbaugh) 분석기법에서 정보모델링이라고도 하며, 시스템에서 요구되는 객체를 찾아내어 속성과 연산 식별 및 객체들 간의 관계를 규정하여 다이어그램을 표시하는 모델링은?</p>
<p>① Object
② Dynamic
③ Function
④ Static</p>
</li>
</ol>
<hr>
<ol start="17">
<li><p>소프트웨어를 개발하기 위한 비즈니스(업무)를 객체와 속성, 클래스와 멤버, 전체와 부분 등으로 나누어서 분석해 내는 기법은?</p>
<p>① 객체지향 분석
② 구조적 분석
③ 기능적 분석
④ 실시간 분석</p>
</li>
</ol>
<hr>
<ol start="18">
<li><p>애자일 소프트웨어 개발 기법의 가치가 아닌 것은?</p>
<p>① 프로세스의 도구보다는 개인과 상호작용에 더 가치를 둔다.
② 계약 협상보다는 고객과의 협업에 더 가치를 둔다.
③ 실제 작동하는 소프트웨어보다는 이해하기 좋은 문서에 더 가치를 둔다.
④ 계획을 따르기보다는 변화에 대응하는 것에 더 가치를 둔다.</p>
</li>
</ol>
<hr>
<ol start="19">
<li><p>UML 다이어그램 중 시스템 내 클래스의 정적 구조를 표현하고 클래스와 클래스, 클래스의 속성 사이의 관계를 나타내는 것은?</p>
<p>① Activity Diagram
② Modea Diagram
③ State Diagram
④ Class Diagram</p>
</li>
</ol>
<hr>
<ol start="20">
<li><p>소프트웨어 설계시 제일 상위에 있는 main user function에서 시작하여 기능을 하위 기능들로 분할해 가면서 설계하는 방식은?</p>
<p>① 객체 지향 설계
② 데이터 흐름 설계
③ 상향식 설계
④ 하향식 설계</p>
</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>② cat, ④ uname</li>
</ol>
<p>uname을 이용하여 버전을 확인할 수 있지만, cat을 이용해도 확인이 가능하다.</p>
<hr>
<ol start="2">
<li>② 소켓 기술</li>
</ol>
<p>소켓 기술 : 통신을 위한 프로그램을 생성하여 포트를 할당하고, 클라이언트의 통신 요청 시 클라이언트와 연결하는 내.외부 송수신  연계 기술이다.</p>
<hr>
<ol start="3">
<li>② 캡슐화(Encapsulation)</li>
</ol>
<p>캡슐화 : 추상화된 객체의 구현을 은닉, 시스템의 한 컴포넌트의 내부구현이 다른 컴포넌트에 의존하지 않는것</p>
<hr>
<ol start="4">
<li>③ 어댑터(Adapter)  </li>
</ol>
<h3 id="생성-패턴-종류">생성 패턴 종류</h3>
<p>추상 팩토리, 빌더, 프로토타입, 싱글턴, 팩토리 메소드</p>
<p>어댑터(Adapter)는 구조 패턴에 속한다.</p>
<hr>
<ol start="5">
<li>③ RPC(Remote Procedure Call)</li>
</ol>
<p>RPC : 원격 프로시저 호출</p>
<hr>
<ol start="6">
<li>④ 가능한 모듈을 독립적으로 생성하고 결합도를 최대화한다.</li>
</ol>
<hr>
<ol start="7">
<li>① E-R 다이어그램을 사용하여 객체의 행위를 데이터 모델링하는데 초점을 둔 방법이다.</li>
</ol>
<p>Coad-Yourdon 방법은 주로 관계를 분석하는 기법으로 E-R 다이어그램을 사용하여 객체 행위를 모델링한다.</p>
<hr>
<ol start="8">
<li>② fan-in : 3, fan-out : 2</li>
</ol>
<hr>
<ol start="9">
<li>④ 인적 자원 분석</li>
</ol>
<h3 id="현행-시스템-분석">현행 시스템 분석</h3>
<p>플랫폼 기능 분석, 플랫폼 성능 분석, 운영체제 분석, 네트워크 분석, DBMS 분석, 비즈니스 융합 분석</p>
<hr>
<ol start="10">
<li>① 미들웨어    </li>
</ol>
<p>미들웨어 : 운영체제와 해당 운영체제에서 실행되는 응용 프로그램 사이에서 운영체제가 제공하는 서비스 이외에 추가적인 서비스를 제공하는 소프트웨어,
미들웨어는 표준화된 인터페이스를 제공함으로써 시스템 간의 데이터 교환에 일관성 보장</p>
<hr>
<ol start="11">
<li>③ 소프트웨어 사용자들에게 사용 방법을 신속히 숙지시키기 위해 사용된다.</li>
</ol>
<p>CASE는 소프트웨어 공학의 자동화를 의미한다.</p>
<hr>
<ol start="12">
<li>④ State Diagram은 객체들 사이의 메시지 교환을 나타내며, Sequence Diagram은 하나의 객체가 가진 상태와 그 상태의 변화에 의한 동작순서를 나타낸다.</li>
</ol>
<p>State Diagram : 객체가 가진 상태와 상태 변환을 나타냄
Sequence Diagram : 객체 사이에 오가는 메시지를 시간순으로 나타냄</p>
<hr>
<ol start="13">
<li>② 확장</li>
</ol>
<p>확장 : 기본 usecase 수행 시 특별한 조건을 만족할 때 수행할 usecase</p>
<hr>
<ol start="14">
<li>④ 단계 다이어그램(Phase Diagram)</li>
</ol>
<p>단계 다이어그램 : 단계 다이어그램은 존재하지 않는 다이어그램이다.</p>
<hr>
<ol start="15">
<li>② 개발 프로세스를 무시할 수 있다.</li>
</ol>
<hr>
<ol start="16">
<li>① Object</li>
</ol>
<p>Object 모델링 : 정보모델링, 시스템에서 요구되는 객체를 찾아내어 속성과 연산 식별 및 객체들 간의 관계를 규정</p>
<hr>
<ol start="17">
<li>① 객체지향 분석</li>
</ol>
<p>객체지향 분석 : 사용자의 요구사항을 분석하여 요구된 문제와 관련된 모든 클래스, 이와 연관된 속성과 연산, 그들 간의 관계 등을 정의하여 모델링하는 작업을 의미</p>
<hr>
<ol start="18">
<li>③ 실제 작동하는 소프트웨어보다는 이해하기 좋은 문서에 더 가치를 둔다.</li>
</ol>
<hr>
<ol start="19">
<li>④ Class Diagram</li>
</ol>
<p>Class Diagram : 클래스와 클래스가 가지는 속성, 클래스 사이의 관계를 표현한다.</p>
<hr>
<ol start="20">
<li>④ 하향식 설계</li>
</ol>
<p>하향식 설계 : 소프트웨어 설계 시 제일 상위에 있는 main user function에서 시작하여 기능을 하위 기능들로 분할해 가면서 설계하는 방식</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 5과목(20.09.26)]]></title>
            <link>https://velog.io/@cherub_jeongmin/5-8vka5gi3</link>
            <guid>https://velog.io/@cherub_jeongmin/5-8vka5gi3</guid>
            <pubDate>Tue, 27 Feb 2024 06:50:49 GMT</pubDate>
            <description><![CDATA[<ol>
<li><p>이용자가 인터넷과 같은 공중망에 사설망을 구축하여 마치 전용망을 사용하는 효과를 가지는 보안 솔루션은?</p>
<p> ① ZIGBEE
 ② KDD
 ③ IDS
 ④ VPN</p>
</li>
</ol>
<hr>
<ol start="2">
<li><p>CMM(Capability Maturity Model) 모델의 레벨로 옳지 않은 것은?</p>
<p> ① 최적단계
 ② 관리단계
 ③ 계획단계
 ④ 정의단계</p>
</li>
</ol>
<hr>
<ol start="3">
<li>다음 설명에 해당하는 생명주기 모형으로 가장 옳은 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/cd75b7c5-d3f0-45fe-9bf4-faa2ab3f76fe/image.png" alt="">
 ① 패키지 모형
 ② 코코모 모형
 ③ 폭포수 모형
 ④ 관계형 모델</li>
</ol>
<hr>
<ol start="4">
<li><p>서비스 지향 아키텍처 기반 애플리케이션을 구성하는 층이 아닌 것은?</p>
<p> ① 표현층
 ② 프로세스층
 ③ 제어 클래스층
 ④ 비즈니스층</p>
</li>
</ol>
<hr>
<ol start="5">
<li>다음 내용이 설명하는 스토리지 시스템은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/54b8e652-e5ed-4ec2-917f-4bb3760652e0/image.png" alt="">
 ① DAS
 ② NAS
 ③ N-SCREEN
 ④ NFC</li>
</ol>
<hr>
<ol start="6">
<li><p>소프트웨어 개발 프레임워크의 적용 효과로 볼 수 없는 것은?</p>
<p> ① 공통 컴포넌트 재사용으로 중복 예산 절감
 ② 기술종속으로 인한 선행사업자 의존도 증대
 ③ 표준화된 연계모듈 활용으로 상호 운용성 향상
 ④ 개발표준에 의한 모듈화로 유지보수 용이</p>
</li>
</ol>
<hr>
<ol start="7">
<li><p>SoftTech사에서 개발된 것으로 구조적 요구 분석을 하기 위해 블록 다이어그램을 채택한 자동화 도구는?</p>
<p> ① SREM
 ② PSL/PSA
 ③ HIPO
 ④ SADT</p>
</li>
</ol>
<hr>
<ol start="8">
<li><p>익스트림 프로그래밍 (eXtreme Programming)의 5가지 가치에 속하지 않는 것은?</p>
<p> ① 의사소통
 ② 단순성
 ③ 피드백<br> ④ 고객 배제</p>
</li>
</ol>
<hr>
<ol start="9">
<li>다음은 정보의 접근통제 정책에 대한 설명이다. (ㄱ)에 들어갈 내용으로 옳은 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/029c0928-096b-4228-9e1d-9aabd53decff/image.png" alt="">
 ① NAC
 ② MAC
 ③ SDAC
 ④ AAC</li>
</ol>
<hr>
<ol start="10">
<li><p>소프트웨어 개발 모델 중 나선형 모델의 4가지 주요 활동이 순서대로 나열된 것은?<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/35b8a124-e592-414a-aafb-f1d9cdb0b73a/image.png" alt=""></p>
<p>① Ⓐ-Ⓑ-Ⓓ-Ⓒ순으로 반복
② Ⓐ-Ⓓ-Ⓒ-Ⓑ순으로 반복
③ Ⓐ-Ⓑ-Ⓒ-Ⓓ순으로 반복
④ Ⓐ-Ⓒ-Ⓑ-Ⓓ순으로 반복</p>
</li>
</ol>
<hr>
<ol start="11">
<li><p>소프트웨어 비용 추정모형(estimation models)이 아닌 것은?</p>
<p>① COCOMO
② Putnam
③ Function-Point
④ PERT</p>
</li>
</ol>
<hr>
<ol start="12">
<li><p>공개키 암호화 방식에 대한 설명으로 틀린 것은?</p>
<p>① 공개키로 암호화된 메시지는 반드시 공개키로 복호화 해야 한다.
② 비대칭 암호기법이라고도 한다.
③ 대표적인 기법은 RSA 기법이 있다.
④ 키 분배가 용이하고, 관리해야 할 키 개수가 적다.</p>
</li>
</ol>
<hr>
<ol start="13">
<li>다음이 설명하는 다중화 기술은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/6b0de2ea-d1e6-4563-a8d9-0bf941fcb1d4/image.png" alt="">
① Wavelength Division Multiplexing
② Frequency Division Multiplexing
③ Code Division Multiplexing
④ Time Division Multiplexing</li>
</ol>
<hr>
<ol start="14">
<li><p>웹페이지에 악의적인 스크립트를 포함시켜 사용자 측에서 실행되게 유도함으로써, 정보유출 등의 공격을 유발할 수 있는 취약점은?</p>
<p>① Ransomware
② Pharming
③ Phishing<br>④ XSS</p>
</li>
</ol>
<hr>
<ol start="15">
<li><p>CBD(Component Based Development) 에 대한 설명으로 틀린 것은?</p>
<p>① 개발 기간 단축으로 인한 생산성 향상
② 새로운 기능 추가가 쉬운 확장성
③ 소프트웨어 재사용이 가능
④ 1960년대까지 가장 많이 적용되었던 소프트웨어 개발 방법</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>소프트웨어 정의 데이터센터(SDDC : Software Defined Data Center)에 대한 설명으로 틀린 것은?</p>
<p>① 컴퓨팅, 네트워킹, 스토리지, 관리 등을 모두 소프트웨어로 정의한다.
② 인력 개입 없이 소프트웨어 조작만으로 자동 제어 관리한다.
③ 데이터센터 내 모든 자원을 가상화하여 서비스한다.
④ 특정 하드웨어 에 종속되어 특화된 업무를 서비스하기에 적합하다.</p>
</li>
</ol>
<hr>
<ol start="17">
<li><p>컴퓨터 운영체제의 커널에 보안 기능을 추가한 것으로 운영체제의 보안상 결함으로 인하여 발생 가능한 각종 해킹으로부터 시스템을 보호하기 위하여 사용되는 것은?</p>
<p>① GPIB
② CentOS
③ XSS
④ Secure OS</p>
</li>
</ol>
<hr>
<ol start="18">
<li><p>NS(Nassi-Schneiderman) chart에 대한 설명으로 거리가 먼 것은?</p>
<p>① 논리의 기술에 중점을 둔 도형식 표현 방법이다.
② 연속, 선택 및 다중 선택, 반복 등의 제어논리 구조로 표현한다.
③ 주로 화살표를 사용하여 논리적인 제어구조로 흐름을 표현한다.
④ 조건이 복합되어 있는 곳의 처리를 시각적으로 명확히 식별하는데 적합하다.</p>
</li>
</ol>
<hr>
<ol start="19">
<li>다음 내용에 적합한 용어는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/658a654e-fe03-4e58-9433-603746dbb268/image.png" alt="">
① MapReduce
② SQL
③ Hijacking
④ Logs</li>
</ol>
<hr>
<ol start="20">
<li><p>소프트웨어 프로세스에 대한 개선 및 능력 측정 기준에 대한 국제 표준은?</p>
<p>① ISO 14001<br>② IEEE 802.5
③ IEEE 488
④ SPICE</p>
</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>④ VPN</li>
</ol>
<p>VPN은 이용자가 인터넷과 같은 공중망에 사설망을 구축하여 마치 전용망을 사용하는 효과를 가지는 보안 솔루션이다.</p>
<hr>
<ol start="2">
<li>③ 계획단계    </li>
</ol>
<h3 id="cmm-성숙도-5단계">CMM 성숙도 5단계</h3>
<p>초보 단계
반복 단계
정의 단계
관리 단계
최적 단계</p>
<hr>
<ol start="3">
<li>③ 폭포수 모형</li>
</ol>
<p>가장 오래된, 요구사항 변경 어려움 &gt; 폭포수</p>
<hr>
<ol start="4">
<li>③ 제어 클래스층</li>
</ol>
<h3 id="서비스-지향-아키텍처-기반-계층">서비스 지향 아키텍처 기반 계층</h3>
<p>비즈니스 계층
표현 계층
프로세스 계층
서비스 계층
영속 계층</p>
<hr>
<ol start="5">
<li>① DAS</li>
</ol>
<p>DAS : 하드디스크와 같은 데이터 저장창치를 호스트 버스 어댑터에 직접 연결하는 방식,
저장장치와 호스트 기기 사이에 네트워크 디바이스가 있지 말아야 하고 직접 연결하는 방식으로 구성</p>
<hr>
<ol start="6">
<li>② 기술종속으로 인한 선행사업자 의존도 증대</li>
</ol>
<p>기술종속으로 인해서 선행사업자의 의존도가 증대되지 않음</p>
<hr>
<ol start="7">
<li>④ SADT</li>
</ol>
<p>SADT : SoftTech사에서 개발된 것으로 구조적 요구 분석을 하기 위해 블록 다이어그램을 채택한 자동화 도구이다.
요구사항 분석이 논리적으로 표현될 수 있게 블록 다이어그램을 채택한다.</p>
<hr>
<ol start="8">
<li>④ 고객 배제</li>
</ol>
<h3 id="익스트림-프로그래밍의-5가지-가치">익스트림 프로그래밍의 5가지 가치</h3>
<p>존중, 단순성, 피드백, 의사소통, 용기</p>
<hr>
<ol start="9">
<li>② MAC</li>
</ol>
<h3 id="정보-보안을-위한-접근통제-정책-종류">정보 보안을 위한 접근통제 정책 종류</h3>
<p>MAC, DAC, RBAC</p>
<hr>
<ol start="10">
<li>Ⓐ-Ⓓ-Ⓒ-Ⓑ순으로 반복</li>
</ol>
<hr>
<ol start="11">
<li>④ PERT</li>
</ol>
<p>PERT는 프로젝트 일정 관리 기법이다.</p>
<hr>
<ol start="12">
<li>① 공개키로 암호화된 메시지는 반드시 공개키로 복호화 해야 한다.</li>
</ol>
<p>공개키 암호화 방식은 암호화나 복호화에 사용하는 키가 다른 암호화 방식이다.</p>
<hr>
<ol start="13">
<li>① Wavelength Division Multiplexing</li>
</ol>
<p>파장 분할 다중화 방식(Wavelength Division Multiplexing) : 광섬유를 이용한 통신 기술의 하나를 의미함,
파장이 서로 다른 복수의 광신호를 동시에 이용하는 것으로 광섬유를 다중화 하는 방식,
빛의 파장 축과 파장이 다른 광선은 서로 간섭을 일으키지 않는 성질을 이용함</p>
<hr>
<ol start="14">
<li>④ XSS</li>
</ol>
<p>XSS : 웹 페이지에 악의적인 스크립트를 포함시켜 사용자 측에서 실행되게 유도함으로써, 정보 유출 등의 공격을 유발할 수 있는 취약점이다.</p>
<hr>
<ol start="15">
<li>④ 1960년대까지 가장 많이 적용되었던 소프트웨어 개발 방법</li>
</ol>
<p>CBD : 컴포넌트 기반 개발,
기존의 시스템 및 소프트웨어를 구성하고 있는 컴포넌트를 조립해서 하나의 새로운 애플리케이션을 만드는 소프트웨어 개발 방법론으로 1990년대에 주류를 이룸</p>
<hr>
<ol start="16">
<li>④ 특정 하드웨어 에 종속되어 특화된 업무를 서비스하기에 적합하다.</li>
</ol>
<p>소프트웨어 정의 데이터센터는 특정 하드웨어와 상관 없이 독립적</p>
<hr>
<ol start="17">
<li>④ Secure OS</li>
</ol>
<p>Secure OS : 컴퓨터 운영체제의 커널에 보안 기능을 추가한 것으로 운영체제의 보안상 결함으로 인하여 발생 가능한 각종 해킹으로부터 시스템을 보호하기 위하여 사용되는 것임</p>
<hr>
<ol start="18">
<li> ③ 주로 화살표를 사용하여 논리적인 제어구조로 흐름을 표현한다.</li>
</ol>
<p>N-S 차트는 화살표를 사용하지 않아서 무조건 분기를 제외한 제어 구조를 사용함</p>
<hr>
<ol start="19">
<li>① MapReduce</li>
</ol>
<p>MapReduce(맵리듀스) : 대용량 데이터를 분산 처리하기 위한 목적으로 개발된 프로그래밍 모델,
방대한 입력 데이터를 분할하여 여러개의 머신들이 분산 처리하는 맵 함수와 이를 다시 하나의 결과로 합치는 리듀스 함수 단계로 나뉜다.</p>
<hr>
<ol start="20">
<li>④ SPICE</li>
</ol>
<p>SPICE : 소프트웨어의 품질 및 생산성 향상을 위해 소프트웨어 프로세스를 평가 및 개선하는 국제 표준이다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 4과목(20.09.26)]]></title>
            <link>https://velog.io/@cherub_jeongmin/4-iw4z9wzw</link>
            <guid>https://velog.io/@cherub_jeongmin/4-iw4z9wzw</guid>
            <pubDate>Tue, 27 Feb 2024 06:50:36 GMT</pubDate>
            <description><![CDATA[<ol>
<li><p>UNIX SHELL 환경 변수를 출력하는 명령어가 아닌 것은?</p>
<p> ① configenv<br> ② printenv
 ③ env
 ④ setenv</p>
</li>
</ol>
<hr>
<ol start="2">
<li><p>Java 프로그래밍 언어의 정수 데이터 타입 중 &#39;long&#39;의 크기는?</p>
<p> ① 1byte
 ② 2byte
 ③ 4byte
 ④ 8byte</p>
</li>
</ol>
<hr>
<ol start="3">
<li><p>Java에서 사용되는 출력 함수가 아닌 것은?</p>
<p> ① System.out.print( )<br> ② System.out.println( )
 ③ System.out.printing( )
 ④ System.out.printf( )</p>
</li>
</ol>
<hr>
<ol start="4">
<li><p>운영체제에서 커널의 기능이 아닌 것은?</p>
<p> ① 프로세스 생성, 종료
 ② 사용자 인터페이스
 ③ 기억 장치 할당, 회수
 ④ 파일 시스템 관리</p>
</li>
</ol>
<hr>
<ol start="5">
<li><p>OSI 7계층에서 단말기 사이에 오류 수정과 흐름제어를 수행하여 신뢰성 있고 명확한 데이터를 전달하는 계층은?</p>
<p> ① 전송 계층<br> ② 응용 계층
 ③ 세션 계층<br> ④ 표현 계층</p>
</li>
</ol>
<hr>
<ol start="6">
<li>다음 쉘 스크립트의 의미로 옳은 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/fe5ec740-57e5-4127-914b-5c97f48d8f15/image.png" alt="">
 ① wow 사용자가 로그인한 경우에만 반복문을 수행한다.
 ② wow 사용자가 로그인할 때까지 반복문을 수행한다.
 ③ wow 문자열을 복사한다.
 ④ wow 사용자에 대한 정보를 무한 반복하여 출력한다.</li>
</ol>
<hr>
<ol start="7">
<li>다음 자바 코드를 실행한 결과는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/94ff0a86-2cce-484e-9ec5-b066766ffad1/image.png" alt="">
 ① x＝7 y＝0
 ② x＝6 y＝-1
 ③ x＝7 y＝-1
 ④ Unresolved compilation problem 오류 발생</li>
</ol>
<hr>
<ol start="8">
<li>다음 파이썬으로 구현된 프로그램의 실행 결과로 옳은 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/399d74b0-ce8e-475c-80ab-c825efca51a4/image.png" alt="">
 ① [20, 60]<br> ② [60, 20]
 ③ [0, 20, 40, 60]
 ④ [10, 30, 50, 70]</li>
</ol>
<hr>
<ol start="9">
<li><p>공통모듈의 재사용 범위에 따른 분류가 아닌 것은?</p>
<p> ① 컴포넌트 재사용
 ② 더미코드 재사용
 ③ 함수와 객체 재사용
 ④ 애플리케이션 재사용</p>
</li>
</ol>
<hr>
<ol start="10">
<li>다음과 같은 프로세스가 차례로 큐에 도착하였을 때, SJF(Shortest Job First) 정책을 사용할 경우 가장 먼저 처리되는 작업은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/59d369dc-84fb-4dbf-a020-9ad833e0b18f/image.png" alt="">
① P1
② P2
③ P3
④ P4</li>
</ol>
<hr>
<ol start="11">
<li>4개의 페이지를 수용할 수 있는 주기억장치가 있으며, 초기에는 모두 비어 있다고 가정한다. 다음의 순서로 페이지 참조가 발생할 때, FIFO 페이지 교체 알고리즘을 사용할 경우 페이지 결함의 발생 횟수는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/2185ab7b-f2c4-43d8-ba8a-f52befd3280d/image.png" alt="">
① 6회
② 7회
③ 8회
④ 9회</li>
</ol>
<hr>
<ol start="12">
<li><p>TCP 흐름제어기법 중 프레임이 손실되었을 때, 손실된 프레임 1개를 전송하고 수신자의 응답을 기다리는 방식으로 한 번에 프레임 1개만 전송할 수 있는 기법은?</p>
<p>① Slow Start<br>② Sliding Window
③ Stop and Wait
④ Congestion Avoidance</p>
</li>
</ol>
<hr>
<ol start="13">
<li><p>결합도(Coupling)에 대한 설명으로 틀린 것은?</p>
<p>① 데이터 결합도(Data Coupling)는 두 모듈이 매개변수로 자료를 전달할 때, 자료구조 형태로 전달되어 이용될 때 데이터가 결합되어 있다고 한다.
② 내용 결합도(Content Coupling)는 하나의 모듈이 직접적으로 다른 모듈의 내용을 참조할 때 두 모듈은 내용적으로 결합되어 있다고 한다.
③ 공통 결합도(Common Coupling)는 두 모듈이 동일한 전역 데이터를 접근한다면 공통결합 되어 있다고 한다.
④ 결합도(Coupling)는 두 모듈간의 상호작용, 또는 의존도 정도를 나타내는 것이다.</p>
</li>
</ol>
<hr>
<ol start="14">
<li><p>응집도의 종류 중 서로 간에 어떠한 의미 있는 연관관계도 지니지 않은 기능 요소로 구성되는 경우이며, 서로 다른 상위 모듈에 의해 호출되어 처리상의 연관성이 없는 서로 다른 기능을 수행하는 경우의 응집도는?</p>
<p>① Functional Cohesion
② Sequential Cohesion
③ Logical Cohesion
④ Coincidental Cohesion</p>
</li>
</ol>
<hr>
<ol start="15">
<li><p>자바에서 사용하는 접근제어자의 종류가 아닌 것은?</p>
<p>① internal<br>② private
③ default
④ public</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>UDP 특성에 해당되는 것은?</p>
<p>① 데이터 전송 후, ACK를 받는다.
② 송신 중에 링크를 유지 관리하므로 신뢰성이 높다.
③ 흐름제어나 순서제어가 없어 전송속도가 빠르다.
④ 제어를 위한 오버헤드가 크다.</p>
</li>
</ol>
<hr>
<ol start="17">
<li>다음과 같은 세그먼트 테이블을 가지는 시스템에서 논리 주소(2, 176)에 대한 물리 주소는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/01cc7d13-545c-41c0-8c17-4eb8badbf00a/image.png" alt="">
① 398
② 400
③ 1928<br>④ 1930</li>
</ol>
<hr>
<ol start="18">
<li><p>TCP/IP에서 사용되는 논리주소를 물리주소로 변환시켜 주는 프로토콜은?</p>
<p>① TCP
② ARP
③ FTP<br>④ IP</p>
</li>
</ol>
<hr>
<ol start="19">
<li><p>C언어에서 구조체를 사용하여 데이터를 처리할 때 사용하는 것은?</p>
<p>① for
② scanf
③ struct
④ abstract</p>
</li>
</ol>
<hr>
<ol start="20">
<li><p>PHP에서 사용 가능한 연산자가 아닌 것은?</p>
<p>① @
② #
③ ＜＞
④ ===</p>
</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>① configenv</li>
</ol>
<h3 id="환경-변수-출력-명령어">환경 변수 출력 명령어</h3>
<p>printenv : 환경 변수 값을 출력</p>
<p>env : 환경 변수를 출력 또는 등록</p>
<p>setenv : 환경 변수의 값을 설정</p>
<hr>
<ol start="2">
<li>④ 8byte</li>
</ol>
<p>byte : 1byte
short : 2byte
int : 4byte
long : 8byte</p>
<hr>
<ol start="3">
<li>③ System.out.printing( )</li>
</ol>
<p>자바의 출력 함수는 print, println, printf가 있다.</p>
<hr>
<ol start="4">
<li>② 사용자 인터페이스</li>
</ol>
<p>커널 : 프로세스 관리, 기억장치 관리, 파일 관리, 입출력 관리, 프로세스간 통신, 데이터 전송 및 변환 등 여러가지 기능 수행</p>
<hr>
<ol start="5">
<li>① 전송 계층    </li>
</ol>
<p>전송 계층은 통신 양단 간 투명한 데이터 전송을 제공함</p>
<hr>
<ol start="6">
<li>② wow 사용자가 로그인할 때까지 반복문을 수행한다.</li>
</ol>
<p>who 명령어는 현재 시스템에 로그인한 유저의 목록을 보여 준다.</p>
<p>|(파이프)는 앞의 who 명령어의 출력 결과를 뒤의 grep 명령어로 전달한다.</p>
<p>grep 명령어는 who 명령문의 결과 중 wow 유저가 로그인하며 그 결과를 필터링하여 출력한다.</p>
<p>sleep 명령문 뒤의 숫자만큼 잠시 수행을 대기한다.</p>
<hr>
<ol start="7">
<li>④ Unresolved compilation problem 오류 발생</li>
</ol>
<p>자바에서 while 문은 조건 식의 결과 값이 Boolean이어야 함</p>
<hr>
<ol start="8">
<li>③ [0, 20, 40, 60]</li>
</ol>
<p>a[시작점 : 끝점 : 넘어가는 수]</p>
<hr>
<ol start="9">
<li>② 더미코드 재사용</li>
</ol>
<p>더미코드는 가짜 데이터로 주로 단위 테스트를 할 때 사용한다.</p>
<hr>
<ol start="10">
<li>④ P4</li>
</ol>
<p>SJF : 작업이 끝나기까지의 실행 시간 추정치가 가장 작은 작업으르 먼저 실행시키는 방식</p>
<hr>
<ol start="11">
<li>① 6회</li>
</ol>
<p>1
1 2
1 2 3
중복(1) 페이지 결함 X
중복(2) 페이지 결함 X
1 2 3 4
2 3 4 5
3 4 5 1</p>
<hr>
<ol start="12">
<li>③ Stop and Wait</li>
</ol>
<p>정지 및 대기 기업에 대한 설명이다.</p>
<hr>
<ol start="13">
<li>① 데이터 결합도(Data Coupling)는 두 모듈이 매개변수로 자료를 전달할 때, 자료구조 형태로 전달되어 이용될 때 데이터가 결합되어 있다고 한다.</li>
</ol>
<p>두 모듈이 매개 변수로 자료를 전달할 때, 자료구조 형태로 전달되어 이용될 때 데이터가 결합되어 있는 것은 스탬프 결합도에 대한 설명이다.</p>
<hr>
<ol start="14">
<li>④ Coincidental Cohesion</li>
</ol>
<p>Coincidental Cohesion(우연적 응집도) : 서로 간에 어떠한 의미 있는 연관관계도 지니지 않은 기능 요소로 구성되는 경우이며, 서로 다른 상위 모듈에 의해 호출되어 처리상의 연관성이 없는 서로 다른 기능을 수행하는 경우의 응집도</p>
<hr>
<ol start="15">
<li>① internal</li>
</ol>
<h3 id="자바에서의-접근-제어자">자바에서의 접근 제어자</h3>
<p>private, default, protected, public</p>
<hr>
<ol start="16">
<li>③ 흐름제어나 순서제어가 없어 전송속도가 빠르다.</li>
</ol>
<h3 id="udp의-특성">UDP의 특성</h3>
<p>비연결 지향 프로토콜</p>
<p>데이터그램 단위로 전송</p>
<p>TCP와 달리 패킷이나 흐름제어, 단편화 및 전송 보장 등의 기능 제공 X</p>
<hr>
<ol start="17">
<li>① 398</li>
</ol>
<p>논리 주소 : (세그먼트 번호, 변위)</p>
<p>물리 주소 = 세그먼트 테이블의 인덱스에 속한 주소값 + 변위</p>
<hr>
<ol start="18">
<li>② ARP</li>
</ol>
<p>ARP는 논리 주소를 물리 주소로 변환시키는 프로토콜이다.</p>
<hr>
<ol start="19">
<li> ③ struct</li>
</ol>
<p>C언어에서 구조체 키워드는 struct이다.</p>
<hr>
<ol start="20">
<li>② #</li>
</ol>
<p>#은 PHP에서 한줄 주석을 생성할 때 사용</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 3과목(20.09.26)]]></title>
            <link>https://velog.io/@cherub_jeongmin/3-be1b1s2k</link>
            <guid>https://velog.io/@cherub_jeongmin/3-be1b1s2k</guid>
            <pubDate>Tue, 27 Feb 2024 06:50:22 GMT</pubDate>
            <description><![CDATA[<ol>
<li>다음 설명과 관련 있는 트랜잭션의 특징은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/3fd1b4a7-8833-4336-82db-16fb6e79f9f8/image.png" alt="">
 ① Durability
 ② Isolation
 ③ Consistency
 ④ Atomicity</li>
</ol>
<hr>
<ol start="2">
<li><p>데이터베이스에 영향을 주는 생성, 읽기, 갱신, 삭제 연산으로 프로세스와 테이블 간에 매트릭스를 만들어서 트랜잭션을 분석하는 것은?</p>
<p> ① CASE 분석
 ② 일치 분석
 ③ CRUD 분석<br> ④ 연관성 분석</p>
</li>
</ol>
<hr>
<ol start="3">
<li><p>정규화된 엔티티, 속성, 관계를 시스템의 성능 향상과 개발 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링 기법은?</p>
<p> ① 인덱스정규화
 ② 반정규화
 ③ 집단화
 ④ 머징</p>
</li>
</ol>
<hr>
<ol start="4">
<li><p>학생 테이블을 생성한 후, 성별 필드가 누락되어 이를 추가하려고 한다. 이에 적합한 SQL 명령어는?</p>
<p> ① INSERT
 ② ALTER
 ③ DROP
 ④ MODIFY</p>
</li>
</ol>
<hr>
<ol start="5">
<li><p>정규화의 필요성으로 거리가 먼 것은?</p>
<p> ① 데이터 구조의 안정성 최대화
 ② 중복 데이터의 활성화
 ③ 수정, 삭제 시 이상현상의 최소화
 ④ 테이블 불일치 위험의 최소화</p>
</li>
</ol>
<hr>
<ol start="6">
<li><p>개체-관계 모델의 E-R 다이어그램에서 사용되는 기호와 그 의미의 연결이 틀린 것은?</p>
<p> ① 사각형 - 개체 타입 
 ② 삼각형 - 속성
 ③ 선 - 개체타입과 속성을 연결  
 ④ 마름모 - 관계 타입</p>
</li>
</ol>
<hr>
<ol start="7">
<li>다음 SQL문에서 빈칸에 들어갈 내용으로 옳은 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/a03ab2ae-81a5-4494-a241-bfee96f2d010/image.png" alt="">
 ① FROM
 ② SET
 ③ INTO
 ④ TO</li>
</ol>
<hr>
<ol start="8">
<li><p>릴레이션에 있는 모든 튜플에 대해 유일성은 만족시키지만 최소성은 만족시키지 못하는 키는?</p>
<p> ① 후보키
 ② 기본키
 ③ 슈퍼키
 ④ 외래키</p>
</li>
</ol>
<hr>
<ol start="9">
<li>DBA가 사용자 PARK에게 테이블 [STUDENT]의 데이터를 갱신할 수 있는 시스템 권한을 부여하고자 하는 SQL문을 작성하고자 한다. 다음에 주어진 SQL문의 빈칸을 알맞게 채운 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/abc90536-3af5-406e-91cf-de6a8822ef34/image.png" alt="">
 ① ㉠ INSERT, ㉡ INTO
 ② ㉠ ALTER, ㉡ TO
 ③ ㉠ UPDATE, ㉡ ON<br> ④ ㉠ REPLACE, ㉡ IN</li>
</ol>
<hr>
<ol start="10">
<li><p>관계대수에 대한 설명으로 틀린 것은?</p>
<p>① 주어진 릴레이션 조작을 위한 연산의 집합이다.
② 일반 집합 연산과 순수 관계 연산으로 구분된다.
③ 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시한다.
④ 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 비절차적방법이다.</p>
</li>
</ol>
<hr>
<ol start="11">
<li>다음 SQL문의 실행 결과는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/fc10b145-94bc-43b5-b95b-c70e3362b7e6/image.png" alt="">
① <img src="https://velog.velcdn.com/images/cherub_jeongmin/post/69e064ac-f497-44f3-a5f9-d4ceb263e41f/image.png" alt="">
② <img src="https://velog.velcdn.com/images/cherub_jeongmin/post/6c6a5c55-9525-4412-b0fd-8fa84035442d/image.png" alt="">
③ <img src="https://velog.velcdn.com/images/cherub_jeongmin/post/b5194731-46c8-45cc-96fc-5323995a1d1d/image.png" alt="">
④<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/20b0121a-c529-45e3-92ac-34d5f4d9904a/image.png" alt=""></li>
</ol>
<hr>
<ol start="12">
<li><p>로킹(Locking) 기법에 대한 설명으로 틀린 것은?</p>
<p>① 로킹의 대상이 되는 객체의 크기를 로킹 단위라고 한다.
② 로킹 단위가 작아지면 병행성 수준이 낮아진다.
③ 데이터베이스도 로킹 단위가 될 수 있다.
④ 로킹 단위가 커지면 로크 수가 작아 로킹 오버헤드가 감소한다.</p>
</li>
</ol>
<hr>
<ol start="13">
<li><p>사용자 X1에게 department 테이블에 대한 검색 연산을 회수하는 명령은?</p>
<p>① delete select on department to X1;
② remove select on department from X1;
③ revoke select on department from X1;
④ grant select on department from X1;</p>
</li>
</ol>
<hr>
<ol start="14">
<li><p>뷰(VIEW)에 대한 설명으로 틀린 것은?</p>
<p>① 뷰 위에 또 다른 뷰를 정의할 수 있다.
② 뷰에 대한 조작에서 삽입, 갱신, 삭제 연산은 제약이 따른다.
③ 뷰의 정의는 기본 테이블과 같이 ALTER문을 이용하여 변경한다.
④ 뷰가 정의된 기본 테이블이 제거되면 뷰도 자동적으로 제거된다.</p>
</li>
</ol>
<hr>
<ol start="15">
<li><p>데이터 모델에 표시해야 할 요소로 거리가 먼 것은?</p>
<p>① 논리적 데이터 구조
② 출력 구조
③ 연산
④ 제약조건</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>제 3정규형에서 보이스코드 정규형(BCNF)으로 정규화하기 위한 작업은?</p>
<p>① 원자 값이 아닌 도메인을 분해
② 부분 함수 종속 제거
③ 이행 함수 종속 제거
④ 결정자가 후보키가 아닌 함수 종속 제거</p>
</li>
</ol>
<hr>
<ol start="17">
<li><p>A1, A2, A3 3개 속성을 갖는 한 릴레이션에서 A1의 도메인은 3개 값, A2의 도메인은 2개 값, A3의 도메인은 4개 값을 갖는다. 이 릴레이션에 존재할 수 있는 가능한 튜플(Tuple)의 최대 수는?</p>
<p>① 24
② 12
③ 8<br>④ 9</p>
</li>
</ol>
<hr>
<ol start="18">
<li><p>데이터베이스 설계 시 물리적 설계 단계에서 수행하는 사항이 아닌 것은?</p>
<p>① 저장 레코드 양식 설계
② 레코드 집중의 분석 및 설계
③ 접근 경로 설계
④ 목표 DBMS에 맞는 스키마 설계</p>
</li>
</ol>
<hr>
<ol start="19">
<li><p>한 릴레이션 스키마가 4개 속성, 2개 후보키 그리고 그 스키마의 대응 릴레이션 인스턴스가 7개 튜플을 갖는다면 그 릴레이션의 차수(degree)는?</p>
<p>① 1
② 2
③ 4
④ 7</p>
</li>
</ol>
<hr>
<ol start="20">
<li><p>데이터웨어하우스의 기본적인 OLAP(on-line analytical processing) 연산이 아닌 것은?</p>
<p>① translate<br>② roll-up
③ dicing<br>④ drill-down</p>
</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>④ Atomicity</li>
</ol>
<p>Atomicity(원자성) : 데이터베이스에 반영되도록 완전히 완료 아니면 전혀 반영되지 않도록 복구되어야 함</p>
<p>Durability(영속성, 지속성) : 성공적으로 완료된 결과는 시스템이 고장나더라도 영구적으로 반영되어야 한다.</p>
<p>Isolation(독립성, 격리성) : 둘 이상의 트랜잭션이 동시에 실행되는 경우 어느 하나의 트랜잭션 실행중에 다른 트랜잭션의 연산이 끼어들 수 없다.</p>
<p>Consistency(일관성) : 시스템이 가지고 있는 고정요소는 트랜잭션 수행 전과 트랜잭션 수행 완료 후의 상태가 같아야 한다.</p>
<hr>
<ol start="2">
<li>③ CRUD 분석    </li>
</ol>
<p>CRUD 분석은 생성, 읽기, 갱신, 삭제의 영어 앞글자를 모아 만든 용어이며, CRUD 분석은 데이터베이스 테이블에 변화를 주는 트랜잭션의 CRUD 연산에 대해 CRUD 매트릭스를 작성하여 분석하는 것이다.</p>
<hr>
<ol start="3">
<li>② 반정규화</li>
</ol>
<p>반정규화 : 정규화된 엔티티, 속성, 관계를 시스템의 성능 향상과 개발 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링 기법이다. 정규화되어 있는 것을 정규화 이전 상태로 만드는 것을 말한다.</p>
<hr>
<ol start="4">
<li>② ALTER</li>
</ol>
<p>INSERT : 테이블에 데이터를 입력할 때 사용</p>
<p>ALTER : 테이블의 컬럼을 추가, 삭제, 수정, 이름변경 등이 가능하게 해줌</p>
<p>DROP : 테이블에서 컬럼을 삭제할 수 있으며, 데이터도 함께 삭제 됨</p>
<p>MODIFY : 테이블에 존재하는 컬럼의 데이터 유형, 기본값, NOT NULL 제약조건에 대해 변경할 때 사용</p>
<hr>
<ol start="5">
<li>② 중복 데이터의 활성화</li>
</ol>
<p>중복 데이터는 최소화하거나 없애야 한다.</p>
<hr>
<ol start="6">
<li>② 삼각형 - 속성</li>
</ol>
<p>속성은 타원형을 사용한다.</p>
<hr>
<ol start="7">
<li>② SET</li>
</ol>
<p>UPDATE의 기본형식은 &quot;UPDATE [테이블명] SET [열] = &#39;변경할 값&#39; WHERE [조건]&quot; 이다.</p>
<hr>
<ol start="8">
<li>③ 슈퍼키</li>
</ol>
<p>슈퍼키 : 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키이다. 릴레이션에 있는 튜플에 대해 유일성을 만족시키지만, 최소성은 만족 시키지 못한다.</p>
<hr>
<ol start="9">
<li>③ ㉠ UPDATE, ㉡ ON    </li>
</ol>
<p>grant update(컬럼1, 컬럼2, 컬럼3) on 테이블명 to 사용자명;</p>
<hr>
<ol start="10">
<li>④ 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 비절차적방법이다.</li>
</ol>
<p>관계대수 : 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적인 특성을 가진다.</p>
<p>관계해석 : 원하는 정보가 무엇이라는 것만 정의하는 비절차적인 특성을 가진다.</p>
<hr>
<ol start="11">
<li>③ <img src="https://velog.velcdn.com/images/cherub_jeongmin/post/4b573a36-584d-4aea-8a7a-09d8e575704c/image.png" alt=""></li>
</ol>
<p>EXISTS는 서브쿼리의 결과값에 만족하는 값이 메인쿼리에 있는지 없는지 데이터의 존재유무를 확인하는 조건식이다.</p>
<hr>
<ol start="12">
<li>② 로킹 단위가 작아지면 병행성 수준이 낮아진다.</li>
</ol>
<p>로킹 단위가 작으면, 로크의 수가 많아지고 제어 기법이 까다로워지며, 병행성이 높아짐</p>
<hr>
<ol start="13">
<li>③ revoke select on department from X1;</li>
</ol>
<p>revoke select on department from X1;dms tkdydwk &#39;X1&#39;에게 DEPARTMENT 테이블에 대한 SELECT 권한을 회수(삭제)한다는 의미이다.</p>
<hr>
<ol start="14">
<li>③ 뷰의 정의는 기본 테이블과 같이 ALTER문을 이용하여 변경한다.</li>
</ol>
<p>뷰의 정의를 변경하려면 뷰를 삭제하고 재생성 해야된다.</p>
<hr>
<ol start="15">
<li>② 출력 구조</li>
</ol>
<h3 id="데이터-모델에-표시해야-할-요소">데이터 모델에 표시해야 할 요소</h3>
<p>논리적으로 표현된 데이터 구조</p>
<p>이 구조에서 허용할 수 있는 연산</p>
<p>이 구조와 연산에서의 제약 조건에 대한 명세</p>
<hr>
<ol start="16">
<li>④ 결정자가 후보키가 아닌 함수 종속 제거</li>
</ol>
<p>보이스코드 정규형에 대한 특성은 결정자가 후보키가 아닌 함수 종속을 제거한다는 의미이다.</p>
<hr>
<ol start="17">
<li>① 24</li>
</ol>
<p>튜플 : 테이블이 한 행을 구성하는 속성들의 집합</p>
<p>도메인 : 애트리뷰트가 취할 수 있는 값들의 집합</p>
<p>튜플의 최대 수는 3 * 2 * 4 = 24이다.</p>
<hr>
<ol start="18">
<li>④ 목표 DBMS에 맞는 스키마 설계</li>
</ol>
<p>목표 DBMS에 맞는 스키마 설계는 데이터베이스 설계 단계 중 논리적 설계 단계에 속함</p>
<hr>
<ol start="19">
<li>③ 4        </li>
</ol>
<p>릴레이션의 차수는 그 릴레이션의 속성의 개수이므로 4이다.</p>
<hr>
<ol start="20">
<li>① translate    </li>
</ol>
<h3 id="olap-연산-유형">OLAP 연산 유형</h3>
<p>roll-up, drill-down, pivoting, slicing, dicing</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 2과목(20.09.26)]]></title>
            <link>https://velog.io/@cherub_jeongmin/2%EA%B3%BC%EB%AA%A9</link>
            <guid>https://velog.io/@cherub_jeongmin/2%EA%B3%BC%EB%AA%A9</guid>
            <pubDate>Tue, 27 Feb 2024 06:49:50 GMT</pubDate>
            <description><![CDATA[<ol>
<li><p>소프트웨어 패키징 도구 활용 시 고려 사항으로 틀린 것은?</p>
<p> ① 반드시 내부 콘텐츠에 대한 암호화 및 보안을 고려한다.
 ② 보안을 위하여 이기종 연동을 고려하지 않아도 된다.
 ③ 사용자 편의성을 위한 복잡성 및 비효율성 문제를 고려한다.
 ④ 제품 소프트웨어 종류에 적합한 암호화 알고리즘을 적용한다.</p>
</li>
</ol>
<hr>
<ol start="2">
<li><p>EAI(Enterprise Application Integration) 구축유형 중 Hybrid에 대한 설명으로 틀린 것은?</p>
<p> ① Hub &amp;Spoke와 Message Bus의 혼합방식이다.
 ② 필요한 경우 한 가지 방식으로 EAI구현이 가능하다.
 ③ 데이터 병목현상을 최소화할 수 있다.
 ④ 중간에 미들웨어를 두지 않고 각 애플리케이션을 point to point로 연결한다.</p>
</li>
</ol>
<hr>
<ol start="3">
<li><p>소스코드 품질분석 도구 중 정적분석 도구가 아닌 것은?</p>
<p> ① pmd
 ② checkstyle
 ③ valance
 ④ cppcheck</p>
</li>
</ol>
<hr>
<ol start="4">
<li>다음 Postfix 연산식에 대한 연산결과로 옳은 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/e2c21038-bd1f-4962-bb2c-fb0512d664a3/image.png" alt="">
 ① 35
 ② 42
 ③ 77<br> ④ 360</li>
</ol>
<hr>
<ol start="5">
<li><p>인터페이스 보안을 위해 네트워크 영역에 적용될 수 있는 것으로 거리가 먼 것은?</p>
<p> ① IPSec
 ② SSL
 ③ SMTP
 ④ S-HTTP</p>
</li>
</ol>
<hr>
<ol start="6">
<li><p>검증(Validation) 검사 기법 중 개발자의 장소에서 사용자가 개발자 앞에서 행해지며, 오류와 사용상의 문제점을 사용자와 개발자가 함께 확인하면서 검사하는 기법은?</p>
<p> ① 디버깅 검사
 ② 형상 검사
 ③ 자료구조 검사
 ④ 알파 검사</p>
</li>
</ol>
<hr>
<ol start="7">
<li>다음 초기 자료에 대하여 삽입 정렬(Insertion Sort)을 이용하여 오름차순 정렬할 경우 1회전 후의 결과는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/b582d2d9-dd66-4004-9cbb-983feca0b095/image.png" alt="">
 ① 3, 4, 8, 7, 9
 ② 3, 4, 9, 7, 8
 ③ 7, 8, 3, 4, 9
 ④ 3, 8, 4, 9, 7</li>
</ol>
<hr>
<ol start="8">
<li><p>소프트웨어 설치 매뉴얼에 대한 설명으로 틀린 것은?</p>
<p> ① 설치과정에서 표시될 수 있는 예외상황에 관련 내용을 별도로 구분하여 설명한다.
 ② 설치 시작부터 완료할 때까지의 전 과정을 빠짐없이 순서대로 설명한다.
 ③ 설치 매뉴얼은 개발자 기준으로 작성한다.
 ④ 설치 매뉴얼에는 목차, 개요, 기본사항 등이 기본적으로 포함되어야 한다.</p>
</li>
</ol>
<hr>
<ol start="9">
<li><p>인터페이스 구현 검증 도구가 아닌 것은?</p>
<p> ① ESB
 ② xUnit
 ③ STAF
 ④ NTAF</p>
</li>
</ol>
<hr>
<ol start="10">
<li><p>소프트웨어 형상 관리에서 관리 항목에 포함되지 않는 것은?</p>
<p>① 프로젝트 요구 분석서
② 소스 코드
③ 운영 및 설치 지침서<br>④ 프로젝트 개발 비용</p>
</li>
</ol>
<hr>
<ol start="11">
<li>다음 설명에 해당하는 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/46c056e1-1198-4f15-b743-55b4e94d6a80/image.png" alt="">
① 외부 스키마
② 내부 스키마
③ 개념 스키마
④ 슈퍼 스키마</li>
</ol>
<hr>
<ol start="12">
<li>다음 트리에 대한 INORDER 운행 결과는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/ae787a72-47f7-4ccc-a923-4bf60b7daaae/image.png" alt="">
① D B A E C F
② A B D C E F
③ D B E C F A<br>④ A B C D E F</li>
</ol>
<hr>
<ol start="13">
<li><p>n 개의 노드로 구성된 무방향 그래프의 최대 간선수는?</p>
<p>① n－1
② n／2
③ n(n－1)／2<br>④ n(n＋1)</p>
</li>
</ol>
<hr>
<ol start="14">
<li>다음이 설명하는 테스트 용어는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/1125f6aa-4c5e-4037-8da6-c19128a06689/image.png" alt="">
① 테스트 케이스
② 테스트 시나리오
③ 테스트 오라클
④ 테스트 데이터</li>
</ol>
<hr>
<ol start="15">
<li><p>빌드 자동화 도구에 대한 설명으로 틀린 것은?</p>
<p>① Gradle은 실행할 처리 명령들을 모아 태스크로 만든 후 태스크 단위로 실행한다.
② 빌드 자동화 도구는 지속적인 통합개발환경 에 서 유용하게 활용된다.
③ 빌드 자동화 도구에는 Ant, Gradle, Jenkins등이 있다.
④ Jenkins는 Groovy 기반으로 한 오픈소스로 안드로이드 앱 개발 환경에서 사용된다.</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>저작권 관리 구성 요소에 대한 설명이 틀린 것은?</p>
<p>① 콘텐츠 제공자(Contents Provider) : 콘텐츠를 제공하는 저작권자
② 콘텐츠 분배자(Contents Distributor) : 콘텐츠를 메타 데이터와 함께 배포 가능한 단위로 묶는 기능
③ 클리어링 하우스(Clearing House) : 키 관리 및 라이선스 발급 관리
④ DRM 컨트롤러 : 배포된 콘텐츠의 이용 권한을 통제</p>
</li>
</ol>
<hr>
<ol start="17">
<li><p>블랙박스 테스트 기법으로 거리가 먼 것은?</p>
<p>① 기초 경로 검사
② 동치 클래스 분해
③ 경계값 분석
④ 원인 결과 그래프</p>
</li>
</ol>
<hr>
<ol start="18">
<li><p>해싱함수 중 레코드 키를 여러 부분으로 나누고, 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용하는 방식은?</p>
<p>① 제산법<br>② 폴딩법
③ 기수변환법
④ 숫자분석법</p>
</li>
</ol>
<hr>
<ol start="19">
<li>다음에서 설명하는 클린 코드 작성 원칙은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/3ebfd396-a475-491f-8248-96e9e94b0234/image.png" alt="">
① 다형성
② 단순성
③ 추상화
④ 의존성</li>
</ol>
<hr>
<ol start="20">
<li><p>디지털 저작권 관리(DRM) 기술과 거리가 먼 것은?</p>
<p>① 콘텐츠 암호화 및 키 관리
② 콘텐츠 식별체계 표현
③ 콘텐츠 오류 감지 및 복구
④ 라이선스 발급 및 관리</p>
</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>② 보안을 위하여 이기종 연동을 고려하지 않아도 된다.</li>
</ol>
<p>보안을 고려해야 하지만 단일 기종에서만 사용할 수 있도록 할 수는 없고, 이기종 연동을 고려해야 한다.</p>
<hr>
<ol start="2">
<li>④ 중간에 미들웨어를 두지 않고 각 애플리케이션을 point to point로 연결한다.</li>
</ol>
<h3 id="eai-유형">EAI 유형</h3>
<p>Point-to-Point, Hub &amp; Spoke, 메시지 버스, 하이브리드</p>
<p>하이브리드는 중간에 미들웨어를 둔다.</p>
<hr>
<ol start="3">
<li>③ valance    </li>
</ol>
<h3 id="정적-분석-도구">정적 분석 도구</h3>
<p>cppcheck, pmd, checkstyle 등</p>
<h3 id="동적-분석-도구">동적 분석 도구</h3>
<p>valance, Avalanche 등</p>
<hr>
<ol start="4">
<li>② 42</li>
</ol>
<p>후위표기식은 연산 바로 앞의 두자리를 계산하고, 연산자를 빼준다. Postfix 후위 표기식에 따라 정리하면
3 * 4 + 5 * 6이다.</p>
<hr>
<ol start="5">
<li>③ SMTP    </li>
</ol>
<p>SMTP : 메일 전송에 사용되는 프로토콜이다.</p>
<hr>
<ol start="6">
<li>④ 알파 검사</li>
</ol>
<p>알파 테스트 : 검증 기법 중 개발자의 장소에서 사용자가 개발자 앞에서 행해지며, 오류와 사용상의 문제점을 사용자와 개발자가 함께 확인하면서 검사하는 기법이다.</p>
<hr>
<ol start="7">
<li>④ 3, 8, 4, 9, 7</li>
</ol>
<p>삽입정렬은 최소값을 찾지 않고 자리에 따라 비교하고 오름차순 적용하여 바꾼다.</p>
<hr>
<ol start="8">
<li>③ 설치 매뉴얼은 개발자 기준으로 작성한다.</li>
</ol>
<p>메뉴얼을 사용자가 이해할 수 있도록 작성해야한다.</p>
<hr>
<ol start="9">
<li>① ESB</li>
</ol>
<h3 id="인터페이스-구현-검증-도구">인터페이스 구현 검증 도구</h3>
<p>xUnit, STAF, FitNesse, NTAF 등</p>
<p>ESB는 기업에 여러 서비스들을 논리적으로 서로 연결하여 상호 조합, 연결, 운용하는 인프라 시스템이다.</p>
<hr>
<ol start="10">
<li>④ 프로젝트 개발 비용</li>
</ol>
<p>형상관리에 개발비용은 포함되지 않음</p>
<hr>
<ol start="11">
<li>② 내부 스키마</li>
</ol>
<p>내부 스키마 : 물리적 저장 장치의 입장에서 본 데이터베이스 구조로서 실제로 데이터베이스에 저장될 레코드의 형식을 정의하고 저장 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 나타냄</p>
<hr>
<ol start="12">
<li>① D B A E C F</li>
</ol>
<p>중위(INORDER)</p>
<hr>
<ol start="13">
<li>③ n(n－1)／2    </li>
</ol>
<p>무방향 그래프 최대 간선 수 : n(n-1)/2
방향 그래프 최대 간선 수 : n(n-1)</p>
<hr>
<ol start="14">
<li>③ 테스트 오라클</li>
</ol>
<p>테스트 케이스 : 구현된 소프트웨어가 사용자의 요구사항을 정확하게 준수했는지 확인하기 위해 설계된 입력 값, 실행 조건, 기대 결과 등으로 구성된 테스트 항목에 대한 명세서</p>
<p>테스트 시나리오 : 테스트 케이스를 적용하는 순서에 따라 여러 개의 테스트 케이스들을 묶은 집합</p>
<hr>
<ol start="15">
<li>④ Jenkins는 Groovy 기반으로 한 오픈소스로 안드로이드 앱 개발 환경에서 사용된다.</li>
</ol>
<p>Groovy 기반으로 한 오픈 소스로 안드로이드 앱 개발 환경에서 사용되는 것은 Gradle이다.</p>
<p>Jenkins : JAVA 기반의 오픈소스 형태, 서브릿 컨테이너에서 실행되는 서버 기반 도구</p>
<hr>
<ol start="16">
<li>② 콘텐츠 분배자(Contents Distributor) : 콘텐츠를 메타 데이터와 함께 배포 가능한 단위로 묶는 기능</li>
</ol>
<p>콘텐츠 분배자 : 암호화된 콘텐츠를 유통하는 곳 또는 사람</p>
<hr>
<ol start="17">
<li>① 기초 경로 검사</li>
</ol>
<p>기초 경로 검사는 화이트박스 테스트 기법 중 하나이다.</p>
<hr>
<ol start="18">
<li>② 폴딩법</li>
</ol>
<p>폴딩법 : 해싱함수 중 레코드 키를 여러부분으로 나누고 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용</p>
<hr>
<ol start="19">
<li>② 단순성</li>
</ol>
<p>단순성 : 코드를 간단하게 작성, 한 번에 한 가지를 처리하도록 코드를 작성하고 클래스/메소드/함수 등을 최소 단위로 분리</p>
<hr>
<ol start="20">
<li>③ 콘텐츠 오류 감지 및 복구 </li>
</ol>
<p>DRM는 콘텐츠 오류 감지 및 복구를 하지 않는다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 1과목(20.09.26)]]></title>
            <link>https://velog.io/@cherub_jeongmin/1%EA%B3%BC%EB%AA%A9</link>
            <guid>https://velog.io/@cherub_jeongmin/1%EA%B3%BC%EB%AA%A9</guid>
            <pubDate>Tue, 27 Feb 2024 06:49:33 GMT</pubDate>
            <description><![CDATA[<ol>
<li><p>XP(eXtreme Programming)의 기본원리로 볼 수 없는 것은?</p>
<p> ① Linear Sequential Method
 ② Pair Programming
 ③ Collective Ownership<br> ④ Continuous Integration</p>
</li>
</ol>
<hr>
<ol start="2">
<li><p>럼바우(Rumbaugh) 객체지향 분석 기법에서 동적 모델링에 활용되는 다이어그램은?</p>
<p> ① 객체 다이어그램(Object Diagram)
 ② 패키지 다이어그램(Package Diagram)
 ③ 상태 다이어그램(State Diagram)
 ④ 자료 흐름도(Data Flow Diagram)</p>
</li>
</ol>
<hr>
<ol start="3">
<li><p>CASE(Computer Aided Software Engineering)의 주요 기능으로 옳지 않은 것은?</p>
<p> ① S/W 라이프 사이클 전 단계의 연결
 ② 그래픽 지원
 ③ 다양한 소프트웨어 개발 모형 지원
 ④ 언어 번역</p>
</li>
</ol>
<hr>
<ol start="4">
<li><p>객체지향 기법의 캡슐화(Encapsulation)에 대한 설명으로 틀린 것은?</p>
<p> ① 인터페이스가 단순화 된다.
 ② 소프트웨어 재사용성이 높아진다.
 ③ 변경 발생 시 오류의 파급효과가 적다.
 ④ 상위 클래스의 모든 속성과 연산을 하위 클래스가 물려받는 것을 의미한다.</p>
</li>
</ol>
<hr>
<ol start="5">
<li>다음 내용이 설명하는 객체지향 설계 원칙은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/7cbc7681-d6e1-4d9c-8bb1-037e6b03a684/image.png" alt="">
 ① 인터페이스 분리 원칙<br> ② 단일 책임 원칙
 ③ 개방 폐쇄의 원칙<br> ④ 리스코프 교체의 원칙</li>
</ol>
<hr>
<ol start="6">
<li><p>파이프 필터 형태의 소프트웨어 아키텍처에 대한 설명으로 옳은 것은?</p>
<p> ① 노드와 간선으로 구성된다.
 ② 서브시스템이 입력데이터를 받아 처리하고 결과를 다음 서브시스템으로 넘겨주는 과정을 반복한다.
 ③ 계층 모델이라고도 한다.
 ④ 3개의 서브시스템(모델, 뷰, 제어)으로 구성되어 있다.</p>
</li>
</ol>
<hr>
<ol start="7">
<li><p>코드화 대상 항목의 중량, 면적, 용량 등의 물리적 수치를 이용하여 만든 코드는?</p>
<p> ① 순차 코드
 ② 10진 코드
 ③ 표의 숫자 코드
 ④ 블록 코드</p>
</li>
</ol>
<hr>
<ol start="8">
<li><p>디자인 패턴 사용의 장٠단점에 대한 설명으로 거리가 먼 것은?</p>
<p> ① 소프트웨어 구조 파악이 용이하다.
 ② 객체지향 설계 및 구현의 생산성을 높이는데 적합하다.
 ③ 재사용을 위한 개발 시간이 단축된다.
 ④ 절차형 언어와 함께 이용될 때 효율이 극대화된다.</p>
</li>
</ol>
<hr>
<ol start="9">
<li><p>DFD(data flow diagram)에 대한 설명으로 틀린 것은?</p>
<p> ① 자료 흐름 그래프 또는 버블(bubble) 차트라고도 한다.
 ② 구조적 분석 기법에 이용된다.
 ③ 시간 흐름을 명확하게 표현할 수 있다.
 ④ DFD의 요소는 화살표, 원, 사각형, 직선(단선/이중선)으로 표시한다.</p>
</li>
</ol>
<hr>
<ol start="10">
<li><p>그래픽 표기법을 이용하여 소프트웨어 구성 요소를 모델링하는 럼바우 분석 기법에 포함되지 않는 것은?</p>
<p>① 객체 모델링
② 기능 모델링
③ 동적 모델링
④ 블랙박스 분석 모델링</p>
</li>
</ol>
<hr>
<ol start="11">
<li><p>UML의 기본 구성요소가 아닌 것은?</p>
<p>① Things<br>② Terminal
③ Relationship
④ Diagram</p>
</li>
</ol>
<hr>
<ol start="12">
<li><p>소프트웨어의 상위설계에 속하지 않는 것은?</p>
<p>① 아키텍처 설계
② 모듈 설계
③ 인터페이스 정의 
④ 사용자 인터페이스 설계</p>
</li>
</ol>
<hr>
<ol start="13">
<li><p>다음 중 자료사전(Data Dictionary)에서 선택의 의미를 나타내는 것은?</p>
<p>① [ ]
② { }
③ ＋
④ ＝</p>
</li>
</ol>
<hr>
<ol start="14">
<li><p>소프트웨어의 사용자 인터페이스개발시스템(User Interface Development System)이 가져야 할 기능이 아닌 것은?</p>
<p>① 사용자 입력의 검증
② 에러 처리와 에러 메시지 처리
③ 도움과 프롬프트(prompt) 제공
④ 소스 코드 분석 및 오류 복구</p>
</li>
</ol>
<hr>
<ol start="15">
<li><p>요구 사항 명세기법에 대한 설명으로 틀린 것은?</p>
<p>① 비정형 명세기법은 사용자의 요구를 표현할 때 자연어를 기반으로 서술한다.
② 비정형 명세기법은 사용자의 요구를 표현할 때 Z 비정형 명세기법을 사용한다.
③ 정형 명세기법은 사용자의 요구를 표현할 때 수학적인 원리와 표기법을 이용한다.
④ 정형 명세기법은 비정형 명세기법에 비해 표현이 간결하다.</p>
</li>
</ol>
<hr>
<ol start="16">
<li><p>소프트웨어 개발 단계에서 요구 분석 과정에 대한 설명으로 거리가 먼 것은?</p>
<p>① 분석 결과의 문서화를 통해 향후 유지보수에 유용하게 활용 할 수 있다.
② 개발 비용이 가장 많이 소요되는 단계이다.
③ 자료흐름도, 자료 사전 등이 효과적으로 이용될 수 있다.
④ 보다 구체적인 명세를 위해 소단위 명세서(Mini-Spec)가 활용될 수 있다.</p>
</li>
</ol>
<hr>
<ol start="17">
<li><p>애자일 방법론에 해당하지 않는 것은?</p>
<p>① 기능중심 개발
② 스크럼
③ 익스트림 프로그래밍
④ 모듈중심 개발</p>
</li>
</ol>
<hr>
<ol start="18">
<li><p>클라이언트와 서버 간의 통신을 담당하는 시스템 소프트웨어를 무엇이라고 하는가?</p>
<p>① 웨어러블
② 하이웨어
③ 미들웨어
④ 응용 소프트웨어</p>
</li>
</ol>
<hr>
<ol start="19">
<li><p>GoF(Gangs of Four) 디자인 패턴 분류에 해당하지 않는 것은?</p>
<p>① 생성 패턴<br>② 구조 패턴
③ 행위 패턴<br>④ 추상 패턴</p>
</li>
</ol>
<hr>
<ol start="20">
<li><p>바람직한 소프트웨어 설계 지침이 아닌 것은?</p>
<p>① 적당한 모듈의 크기를 유지한다.
② 모듈 간의 접속 관계를 분석하여 복잡도와 중복을 줄인다.
③ 모듈 간의 결합도는 강할수록 바람직하다.
④ 모듈 간의 효과적인 제어를 위해 설계에서 계층적 자료 조직이 제시되어야 한다.</p>
</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>① Linear Sequential Method</li>
</ol>
<p>Linear Sequential Method(선형 순차적 방법)은 폭포수 모형을 의미함</p>
<hr>
<ol start="2">
<li>③ 상태 다이어그램(State Diagram)</li>
</ol>
<p>동적 모델링은 상태 다이어그램을 이용해 시간 흐름에 따른 객체들 간의 제어 흐름, 상호 작용, 동작 순서 등의 동적인 행위를 표현하는 모델링을 말한다.</p>
<hr>
<ol start="3">
<li>④ 언어 번역</li>
</ol>
<p>CASE(컴퓨터 지원 소프트웨어 공학) : 컴퓨터 지원 시스템 공학,
시스템 개발 방법론들의 자동화를 지원하는 소프트웨어 도구를 제공해 개발자의 반복적인 작업량을 줄이도록 하는 것</p>
<hr>
<ol start="4">
<li>④ 상위 클래스의 모든 속성과 연산을 하위 클래스가 물려받는 것을 의미한다.</li>
</ol>
<p>캡슐화는 필요한 속성과 행위를 하나로 묶고 그중 일부를 외부에서 사용하지 못하도록 은닉하는 것을 의미함</p>
<p>상속 : 상위 클래스의 모든 속성과 연산을 하위 클래스가 물려받음</p>
<hr>
<ol start="5">
<li>① 인터페이스 분리 원칙</li>
</ol>
<p>인터페이스 분리 원칙 : 클라이언트는 자신이 사용하지 않는 메소드와 의존 관계를 맺으면 안된다.</p>
<p>단일 책임 원칙 : 객체는 하나의 챔임만을 가져야 한다.</p>
<p>개방 폐쇄 원칙 : 기존 코드를 변경하지 않으면서 기능을 추가할 수 있도록 설계되어야 한다.</p>
<p>리스코프 교체의 원칙 : 기반 클래스는 파생 클래스로 대체 가능해야 한다.</p>
<hr>
<ol start="6">
<li>② 서브시스템이 입력데이터를 받아 처리하고 결과를 다음 서브시스템으로 넘겨주는 과정을 반복한다.</li>
</ol>
<p>파이프 필터 구조 : 서브시스템이 입력 데이터를 받아 처리하고 결과를 다른 시스템에 보내는 작업이 반복된다.</p>
<p>서브시스템을 필터라고 하고 서브시스템 사이의 관계를 파이프라 한다.</p>
<hr>
<ol start="7">
<li>③ 표의 숫자 코드</li>
</ol>
<p>표의 숫자 코드 : 대상 항목의 크기, 중량, 거리 등을 그래도 사용하는 코드</p>
<hr>
<ol start="8">
<li> ④ 절차형 언어와 함께 이용될 때 효율이 극대화된다.</li>
</ol>
<p>디자인 패턴은 객체지향 방법론의 가장 큰 장점인 재사용성과 모듈성을 극대화시켜 시스템 개발은 물론 유지보수에도 큰 효과가 있다.</p>
<hr>
<ol start="9">
<li>③ 시간 흐름을 명확하게 표현할 수 있다.</li>
</ol>
<p>DFD는 시간 흐름을 명확하게 표현할 수 없다.</p>
<hr>
<ol start="10">
<li>④ 블랙박스 분석 모델링</li>
</ol>
<p>럼바우 분석 기법에는 객체, 동적, 기능 모델링이 있다.</p>
<hr>
<ol start="11">
<li>② Terminal</li>
</ol>
<h3 id="uml의-구성요소">UML의 구성요소</h3>
<p>사물, 관계, 다이어그램</p>
<hr>
<ol start="12">
<li>② 모듈 설계</li>
</ol>
<h3 id="소프트웨어-상위-설계">소프트웨어 상위 설계</h3>
<p>아키텍처 설계, 데이터 설계, 시스템 분할, 인터페이스 정의, 사용자 인터페이스 설계</p>
<h3 id="소프트웨어-하위-설계">소프트웨어 하위 설계</h3>
<p>모듈 설계, 상세 설계, 자료구조 설계, 알고리즘 설계</p>
<hr>
<ol start="13">
<li>① [ ]    </li>
</ol>
<p>[ ] : 자료의 선택</p>
<hr>
<ol start="14">
<li>④ 소스 코드 분석 및 오류 복구</li>
</ol>
<p>소스 코드 분석 및 오류 복구는 보통 백엔드 컴파일러가 하는 역할이다.</p>
<hr>
<ol start="15">
<li>② 비정형 명세기법은 사용자의 요구를 표현할 때 Z 비정형 명세기법을 사용한다.</li>
</ol>
<p>사용자의 요구를 표현할 때 Z 비정형 명세기법을 사용하는 것은 정형 명세 기법이다.</p>
<hr>
<ol start="16">
<li>② 개발 비용이 가장 많이 소요되는 단계이다.</li>
</ol>
<p>개발비용이 가장 많이 소요되는 단계는 유지보수 단계이다.</p>
<hr>
<ol start="17">
<li>④ 모듈중심 개발</li>
</ol>
<h3 id="애자일-방법론의-종류">애자일 방법론의 종류</h3>
<p>익스트림 프로그래밍, 스크럼, 린 소프트웨어 개발 방법론, 크리스탈 패밀리, 기능 주도 개발 방법론, 동적 시스템 개발 방법론</p>
<hr>
<ol start="18">
<li>③ 미들웨어    </li>
</ol>
<p>미들웨어 솔루션 : 컴퓨터와 컴퓨터간의 연결을 쉽고 안전하게 할  수 있도록 해주고 이에 대한 관리는 도와주는 소프트웨어</p>
<hr>
<ol start="19">
<li>④ 추상 패턴</li>
</ol>
<h3 id="gof-디자인-패턴-분류">GoF 디자인 패턴 분류</h3>
<p>생성 패턴, 구조 패턴, 행위 패턴</p>
<hr>
<ol start="20">
<li>③ 모듈 간의 결합도는 강할수록 바람직하다.</li>
</ol>
<p>모듈 간의 결합도가 약할 수록 좋다.
반대로 응집도는 강할 수록 좋다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[[정보처리기사 필기] 기출문제 5과목(20.08.22)]]></title>
            <link>https://velog.io/@cherub_jeongmin/5</link>
            <guid>https://velog.io/@cherub_jeongmin/5</guid>
            <pubDate>Mon, 26 Feb 2024 15:31:44 GMT</pubDate>
            <description><![CDATA[<ol>
<li><p>물리적인 사물과 컴퓨터에 동일하게 표현되는 가상의 모델로 실제 물리적인 자산 대신 소프트웨어로 가상화함으로써 실제 자산의 특성에 대한 정확한 정보를 얻을 수 있고, 자산 최적화, 돌발사고 최소화, 생산성 증가 등 설계부터 제조, 서비스에 이르는 모든 과정의 효율성을 향상시킬 수 있는 모델은?</p>
<p> ① 최적화
 ② 실행 시간
 ③ 디지털 트윈<br> ④ N-Screen</p>
</li>
</ol>
<hr>
<ol start="2">
<li><p>정보보안의 3대 요소에 해당하지 않는 것은?</p>
<p> ① 기밀성
 ② 휘발성
 ③ 무결성
 ④ 가용성</p>
</li>
</ol>
<hr>
<ol start="3">
<li>다음 빈칸에 알맞은 기술은
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/b7508496-f380-448d-8907-176ad2b7b24d/image.png" alt="">
 ① Quantum Key Distribution
 ② Digital Rights Management
 ③ Grayware
 ④ Mashup</li>
</ol>
<hr>
<ol start="4">
<li><p>기능점수(Functional Point)모형에서 비용산정에 이용되는 요소가 아닌 것은?</p>
<p> ① 클래스 인터페이스
 ② 명령어(사용자 질의수)
 ③ 데이터파일<br> ④ 출력보고서</p>
</li>
</ol>
<hr>
<ol start="5">
<li><p>블록 암호화 방식이 아닌 것은?</p>
<p> ① DES
 ② RC4
 ③ AES
 ④ SEED</p>
</li>
</ol>
<hr>
<ol start="6">
<li><p>Putnam 모형을 기초로 해서 만든 자동화 추정 도구는?</p>
<p> ① SQLR/30<br> ② SLIM
 ③ MESH
 ④ NFV</p>
</li>
</ol>
<hr>
<ol start="7">
<li><p>큰 숫자를 소인수 분해하기 어렵다는 기반 하에 1978년 MIT에 의해 제안된 공개키 암호화 알고리즘은?</p>
<p> ① DES
 ② ARIA
 ③ SEED<br> ④ RSA</p>
</li>
</ol>
<hr>
<ol start="8">
<li><p>COCOMO 모델의 프로젝트 유형으로 거리가 먼 것은?</p>
<p> ① Organic
 ② Semi-detached
 ③ Embedded
 ④ Sequential</p>
</li>
</ol>
<hr>
<ol start="9">
<li><p>빅데이터 분석 기술 중 대량의 데이터를 분석하여 데이터 속에 내재되어 있는 변수 사이의 상호관례를 규명하여 일정한 패턴을 찾아내는 기법은?</p>
<p> ① Data Mining
 ② Wm-Bus
 ③ Digital Twin
 ④ Zigbee</p>
</li>
</ol>
<hr>
<ol start="10">
<li><p>기존 무선 랜의 한계 극복을 위해 등장하였으며, 대규모 디바이스의 네트워크 생성에 최적화되어 차세대 이동통신, 홈네트워킹, 공공 안전 등의 특수목적을 위한 새로운 방식의 네트워크 기술을 의미하는 것은?</p>
<p>① Software Defined Perimeter
② Virtual Private Network
③ Local Area Network
④ Mesh Network</p>
</li>
</ol>
<hr>
<ol start="11">
<li><p>DDoS 공격과 연관이 있는 공격 방법은?</p>
<p>① Secure shell
② Tribe Flood Network
③ Nimda
④ Deadlock</p>
</li>
</ol>
<hr>
<ol start="12">
<li>CPM 네트워크가 다음과 같을 때 임계경로의 소요기일은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/3f1ce953-1757-4461-9e4e-800d3d5d9469/image.png" alt="">
① 10일
② 12일
③ 14일
④ 16일</li>
</ol>
<hr>
<ol start="13">
<li><p>RIP(Routing Information Protocol)에 대한 설명으로 틀린 것은?</p>
<p>① 거리 벡터 라우팅 프로토콜이라고도 한다.
② 소규모 네트워크 환경에 적합하다.
③ 최대 홉 카운트를 115홉 이하로 한정하고 있다.
④ 최단경로탐색에는 Bellman-Ford 알고리즘을 사용한다.</p>
</li>
</ol>
<hr>
<ol start="14">
<li><p>소프트웨어 생명주기 모형 중 고전적 생명주기 모형으로 선형 순차적 모델이라고도 하며, 타당성 검토, 계획, 요구사항 분석, 구현, 테스트, 유지보수의 단계를 통해 소프트웨어를 개발하는 모형은?</p>
<p>① 폭포수 모형
② 애자일 모형
③ 컴포넌트 기반 방법론
④ 6GT 모형</p>
</li>
</ol>
<hr>
<ol start="15">
<li>소프트웨어 개발 모델 중 나선형 모델의 4가지 주요 활동이 순서대로 나열된 것은?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/c4afd205-477b-49f9-af15-8e6246b88301/image.png" alt="">
① Ⓐ-Ⓑ-Ⓓ-Ⓒ 순으로 반복
② Ⓐ-Ⓓ-Ⓒ-Ⓑ 순으로 반복
③ Ⓐ-Ⓑ-Ⓒ-Ⓓ 순으로 반복
④ Ⓐ-Ⓒ-Ⓑ-Ⓓ 순으로 반복</li>
</ol>
<hr>
<ol start="16">
<li><p>전자 칩과 같은 소프트웨어 부품, 즉 블록(모듈)을 만들어서 끼워 맞추는 방법으로 소프트웨어를 완성시키는 재사용 방법은?</p>
<p>① 합성 중심<br>② 생성 중심
③ 분리 중심
④ 구조 중심</p>
</li>
</ol>
<hr>
<ol start="17">
<li>다음 JAVA코드에서 밑줄로 표시된 부분에는 어떤 보안 약점이 존재하는가? (단, key는 암호화 키를 저장하는 변수이다.)
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/8b2fe790-71b9-41fc-9fc3-2e0b42040a5e/image.png" alt="">
① 무결성 검사 없는 코드 다운로드
② 중요 자원에 대한 잘못된 권한 설정
③ 하드코드된 암호화 키 사용
④ 적절한 인증없는 중요 기능 허용</li>
</ol>
<hr>
<ol start="18">
<li><p>소프트웨어 개발 표준 중 소프트웨어 품질 및 생산성 향상을 위해 소프트웨어 프로세스를 평가 및 개선하는 국제 표준은?</p>
<p>① SCRUM
② ISO/IEC 12509
③ SPICE
④ CASE</p>
</li>
</ol>
<hr>
<ol start="19">
<li><p>실무적으로 검증된 개발보안 방법론 중 하나로써 SW보안의 모범 사례를 SDLC(Software Development Life Cycle)에 통합한 소프트웨어 개발 보안 생명주기 방법론은?</p>
<p>① CLASP
② CWE
③ PIMS
④ Seven Touchpoints</p>
</li>
</ol>
<hr>
<ol start="20">
<li>다음 LAN의 네트워크 토폴로지는?
<img src="https://velog.velcdn.com/images/cherub_jeongmin/post/06d116b4-f06a-4722-9653-e7d642a654af/image.png" alt="">
① 버스형
② 성형
③ 링형
④ 그물형</li>
</ol>
<hr>
<h2 id="해설">해설</h2>
<ol>
<li>③ 디지털 트윈</li>
</ol>
<p>디지털 트윈은 미국 제너럴 일렉영이 주창한 개념으로, 컴퓨터에 현실 속 사물의 쌍둥이를 가상화하여 만들고, 현실에서 발생할 수 있는 상황을 컴퓨터로 시뮬레이션함으로써 결과를 미리 예측하는 기술이다.</p>
<hr>
<ol start="2">
<li>② 휘발성</li>
</ol>
<h3 id="정보보안-3대-요소">정보보안 3대 요소</h3>
<p>기밀성, 무결성, 가용성</p>
<hr>
<ol start="3">
<li>④ Mashup</li>
</ol>
<p>Quantum Key Distribution : 양자 암호 관련</p>
<p>Digital Rights Management : DRM이라고도 하며, 저작권 관리 관련 기술</p>
<p>Grayware : 바이러스, 트로잔 등 악성프로그램과는 다르게 사용자 동의를 받아 설치하는 프로그램</p>
<hr>
<ol start="4">
<li>① 클래스 인터페이스</li>
</ol>
<h3 id="기능점수-기능별-가중치-산정요소">기능점수 기능별 가중치 산정요소</h3>
<p>자료 입력(입력 양식)
정보 출력(출력 보고서)
명령어(사용자 질의수)
데이터 파일
필요한 외부 루틴과의 인터페이스</p>
<hr>
<ol start="5">
<li>② RC4</li>
</ol>
<h3 id="블록-암호화-방식">블록 암호화 방식</h3>
<p>DES, SEED, AES, ARIA</p>
<h3 id="스트링-암호화-방식">스트링 암호화 방식</h3>
<p>LFSR, RC4</p>
<hr>
<ol start="6">
<li>② SLIM</li>
</ol>
<p>Putnam : 소프트웨어 생명주기 전 과정 동안 사용될 곡선의 노력 분포를 가정해주는 모형</p>
<p>SLIM : Putnam 기법 모형을 기초로 개발된 자동화 추정 도구</p>
<hr>
<ol start="7">
<li>④ RSA</li>
</ol>
<p>DES는 1975년 IBM에서 개발</p>
<p>ARIA, SEED는 국내에서 개발</p>
<hr>
<ol start="8">
<li>④ Sequential</li>
</ol>
<h3 id="cocomo-모델의-3가지-모드">COCOMO 모델의 3가지 모드</h3>
<p>유기적 : 5만 라인 이라호 소규모 팀이 수행할 수 있는 아주 작고 간단한 소프트웨어 프로젝트</p>
<p>중간형 : 30만 라인 이하의 프로젝트</p>
<p>내장형 : 30만 라인 이상의 프로젝트</p>
<hr>
<ol start="9">
<li>① Data Mining</li>
</ol>
<p>Data Mining : 빅데이터 분석 기술 중 대량의 데이터를 분석하여 데이터 속에 내재되어 있는 변수 사이의 상호관계를 규명하여 일정한 패턴을 찾아내는 기법이다.</p>
<hr>
<ol start="10">
<li>④ Mesh Network</li>
</ol>
<p>Mesh Network : 네트워크를 이루고 있는 구조 중 하나로 그물 형태를 띠고 있는 네트워크 구조이다. 대규모 디바이스의 네트워크 생성에 최적화되어 차세대 이동 통신, 홈 네트워킹, 공공 안전 등의 특수 목적을 위한 새로운 방식의 네트워크 기술을 의미</p>
<hr>
<ol start="11">
<li>② Tribe Flood Network</li>
</ol>
<p>DDoS는 네트워크 취약점이 있는 호스트들을 탐색한 후 이를 호스트들에 분산 서비스 공격용 툴을 설치하여 에이전트로 만들 후 DDoS 공격에 이용</p>
<hr>
<ol start="12">
<li>③ 14일</li>
</ol>
<p>CPM : 노드와 간선으로 이루어진 네트워크</p>
<p>임계 경로 : 작업의 시작 및 종료 구간이 동시에 이루어질 때 가장 오래 걸리는 경로</p>
<hr>
<ol start="13">
<li>③ 최대 홉 카운트를 115홉 이하로 한정하고 있다.</li>
</ol>
<p>RIP의 최대 홉 카운트는 15홉</p>
<hr>
<ol start="14">
<li>① 폭포수 모형</li>
</ol>
<p>폭포수 모형 : 고전적 생명주기 모형, 선형 순차적 모형</p>
<hr>
<ol start="15">
<li>② Ⓐ-Ⓓ-Ⓒ-Ⓑ 순으로 반복</li>
</ol>
<h3 id="나선형-모델의-4가지-활동-순서">나선형 모델의 4가지 활동 순서</h3>
<p>계획 수립 &gt; 위험 분석 &gt; 개발 및 검증 &gt; 고객평가</p>
<hr>
<ol start="16">
<li>① 합성 중심</li>
</ol>
<p>합성 중심 : 블록 구성 방법이며, 전자 칩과 같은 소프트웨어 부품, 즉 블록을 만들어서 끼워 맞추는 방법으로 소프트웨어를 완성시키는 재사용 방법</p>
<hr>
<ol start="17">
<li>③ 하드코드된 암호화 키 사용</li>
</ol>
<p>소프 코드 내부에 암호화 키를 상수 형태로 하드코딩하여 사용하면 악의적인 공격자에게 암호화 키가 노출될 위험이 있음</p>
<hr>
<ol start="18">
<li>③ SPICE    </li>
</ol>
<p>소프트웨어 품질 및 생산성 향상을 위해 프로세스를 평가 및 개선하는 국제 표준 = SPICE</p>
<hr>
<ol start="19">
<li>④ Seven Touchpoints</li>
</ol>
<p>CLASP : 소프트웨어 개발 생명주기 초기단계에 보안강화를 목적으로 하는 정형화된 프로세스로써, 활동중심.역할기반의 프로세스로 구성된 집합체</p>
<p>CWE : 주요 보안 취약점, 보안 문제를 정리하는 프로젝트</p>
<p>PIMS : 개인정보 보호관리체계이다.</p>
<p>Seven Touchpoints : 소프트웨어 개발 생명주기의 각 단계에 관련된 7가지의 보안 강화 활동을 개발자에게 집중적으로 관리하도록 요구하여 실무적으로 검증된 개발보안 방법론</p>
<hr>
<ol start="20">
<li>① 버스형</li>
</ol>
<p>버스형 : 한 개의 통신 회선, 여러 대의 단말 장치</p>
]]></description>
        </item>
    </channel>
</rss>