디지털 영역

라리·2021년 10월 27일
0

HTTP(Hypertext Transfer Protocol)

HTTP는 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜이다. HTTP는 웹에서 이루어지는 모든 데이터 교환의 기초이며, 클라이언트-서버 기반 프로토콜이다. 클라이언트-서버 프로토콜이란 수신자(보통 웹 프라우저) 측에 의해 요청이 초기화 되는 프로토콜을 의미한다. 하나의 완전한 문서는 텍스트, 레이아웃 설명, 이미지, 비디오, 스크립트 등 불러온 하위 문서들로 재구성된다.

  1. REST 아키텍쳐 모델에서 대표적으로 사용되는 프로토콜이다.
  2. 웹상에서 클라이언트와 서버 간 정보를 주고받을 수 있는 애플리케이션 계층 프로토콜이다.
  3. 클라이언트와 서버 사이에 요청/응답 기반 데이터 교환 방식을 갖는다.

MQTT(Message Queue for Telemetry Transport)

Facebook은 수많은 사용자가 동시에 메세지를 전송하더라도 짧은 시간 내에 서로 간의 메시지를 전송하기 위해 MQTT 프로토콜 방식을 도입했다. MQTT 방식의 도입을 통해 수 초 걸리던 폰 간(Phone-to-Phone) 전송 속도를 수 백밀리 초로 단축할 수 있고, 배터리 및 패킷 소모량이 적다는 장점이 있다.

그로스해킹

그로스해커는 제품의 성장을 이끌 수 있는 수많은 방안들을 고민하고, 실험하며, 이를 통해 제품의 성장을 반드시 이뤄내야 하며, 제품의 성장으로 성과를 평가받는 사람을 의미한다.
그로스해킹은 제품이나 서비스의 핵심 지표를 파악하고 분석하며 사용자의 흐름에 따라 개선하면서 시장을 확장시키는 마케팅 기법을 의미한다. 사용자의 피드백을 수집한 데이터를 바탕으로 제품을 끊임없이 개선하는 작업을 해야 하며, 대표적인 사례로 아마존이 있다.

디지털뉴딜

D.N.A(데이터, 네트워크, 인공지능) 생태계 강화, 교육 인프라 디지털 전환, 비대면 산업 육성, 사회간접자본(SOC) 디지털화 등 4개 분야에 걸쳐 12개 추진과제로 구성된 정책

Git(소프트웨어 버전 관리 도구)

  1. Git의 작업 폴더는 전체 기록과 각 기록을 추적할 수 있는 정보를 포함하는 완전한 형태의 저장소이다.
  2. Git의 commit 동작은 로컬 저장소에서 이루어지고 push라는 동작으로 원격 저장소에 반영된다.
  3. Git은 로컬 저장소에서 대부분의 작업이 이루어져 매우 빠른 응답을 받을 수 있다.
  4. Git은 분산형 버전 관리 시스템으로 때형 프로젝트에서 효과적이고 유용하다.

객체지향 기법

  1. 다형성
    메시지에 의해 객체가 연산을 수행하게 될 때 하나의 메시지에 대해 각 개체가 가지고 있는 고유한 방법으로 응답할 수 있는 능력
  2. 캡슐화
    서로 관련성이 많은 데이터와 이에 관련된 함수 등을 한 묶음으로 처리하는 기법
  3. 추상화
    공통 성질을 추출하여 클래스를 설정함
  4. 상속성
    상위 클래스 속성과 메소드를 하위 클래스에서 재정의 없이 물려받아 사용함

테스트케이스 작성 순서

  1. 테스트 계획 검토 및 자료 확보
  2. 위험 평가 및 우선순위 결정
  3. 테스트 요구사항 정의
  4. 테스트 구조 설계 및 테스트 방법 결정
  5. 테스트 케이스 정의
  6. 테스트 케이스 타당성 확인 및 유지보수

JSON(JavaScript Object Notation)

  1. 속성-값 쌍으로 이루어진 데이터 오브젝트를 전달하기 위해 사용하는 개방형 표준 포맷이다.
  2. AJAX(Asynchronous Javascript And XML)에서 많이 사용된다.
  3. 비동기 브라우저/서버 통신을 위해, 넓게는 XML을 대체하는 주요 데이터 포맷이다.
  4. JSON은 문자열을 전송 받은 후에 해당 문자열을 바로 파싱하므로 XML보다 빠른 처리속도를 보여준다.

XML

다른 특수한 목적을 갖는 마크업 언어를 만드는 데 사용하도록 권장하는 다목적 마크업 언어

OSI 7계층

  1. FTP, SMTP, HTTP, Telnet 등 프로토콜이 속하는 계층은 application 계층이다.
  2. 계층을 지날 때 마다 헤더(header)가 붙는데, 이것은 해당 계층의 기능과 관련된 제어 정보가 포함되어 있다.
  3. 통신 중 연결이 끊어지지 않도록 유지시키는 역할을 수행하는 계층은 session 계층이다.
  4. 각 계층은 서로 독립적으로 구성되어 있고, 각 계층은 하위 계층의 기능을 이용하여 상위 계층에 기능을 제공한다.

데이터링크 계층
데이터링크 계층은 시스템 간에 신뢰성 있는 정보를 전송하는 기능을 제공한다. 일반적으로 전송과정에서 데이터 오류가 발생할 수 있는데 데이터링크 계층은 이러한 오류를 검출하여 복구시킴으로써 신뢰성 있는 데이터 송수신을 보장해준다.
또한, MAC 주소 제어 등 여러 에러 제어 및 흐름 제어를 수행함으로써 데이터링크의 효율을 향상시키는 역할을 담당한다. 이 계층에서는 프레임 사이의 구분을 위해 앞뒤 flag를 사용하고, flag는 프레임과 프레임 사이를 구분하기 위해서 삽입하는 것이다.

인코딩

인코딩은 문자셋을 컴퓨터가 이해할 수 있는 바이트와 매핑하는 규칙을 말한다. 예를 들어 ASCII Code에서 ABC는 문자셋이고, A는 코드 65, B는 ZHEM 66 등 바이트 순서와 매핑한 것이 인코딩이다.

ERC-721, ERC-20 토큰

  1. ERC-721은 증서라고 알려진 NFT의 표준안이다. NFT는 대체불가토큰의 약자이다.
  2. ERC-20은 일반적으로 거래소에서 거래하고 있는 대부분의 토큰 발행 기준으로 대체 카등한 특징을 가진다.
  3. ERC-20은 이더리움과 교환 가능하며 이더리움 지갑으로 전송이 가능하다.

NoSQL(Not Only SQL)

  1. 비관계형 데이터 저장 기술을 의미하며, RDBMS의 한계를 극복하기 위한 형태로 수평적 확장성을 갖고 있다.
  2. 문서, 그래프, 키 값, 인 메모리, 검색을 포함해 다양한 데이터 모델을 사용한다.
  3. NoSQL은 분산 처리라는 특징으로 인해 클라우드 환경에 맞는 저장 기술이며 주로 빅데이터 분석 등에 사용된다.
  4. NoSQL은 데이터 저장에 고정된 테이블 스키마가 필요하지 않고 조인 연산을 사용할 수 없다.

맵 리듀스(Map Reduce)

구글에서 대용량 데이터 처리를 분산 병렬 컴퓨팅으로 처리하기 위한 목적으로 제작하여 2004년 발표한 소프트웨어 프레임워크다. 페타바이트(PetaByte) 이상의 대용량 데이터를 시노리도가 낮은 컴퓨터로 구성된 클러스터 환경에서 병렬 처리를 지원하기 위해 개발되었다.

리브라

  1. 페이스북에서 개발 중인 암포화폐로, 2020년 연말 출시를 목표로 하며 2020년 4월에 '리브라 2.0' 백서를 공개하였다.
  2. 페이스북은 왓츠앱과 메신저 등 자사 서비스를 활용해 리브라를 글로벌 결제 플랫폼으로 활용하려고 한다.
  3. 리브라는 퍼블릭 블록체인이 아닌 프라이빗 블록 체인을 기반으로 운영도딜 것이다.
  4. 통화 바스켓을 기초로 한 글로벌 단일 모델에서 각 법정 통화와 연결된 다중 토큰 모델로 전환하였다.

ERD(Entity Relationship Diagram)

ERD에서 개체 집합은 직사각형, 개체 사이의 관계는 마름모, 속성은 타원, 링크는 직선 등으로 표현하며 데이터 구조와 구조들 간의 관계를 표현할 수 있다.

스피어피싱

불특정 다수가 아닌 특정기관이나 기업의 내부 직원을 표적 삼아 집중적으로 공격하는 행위를 일컫는 용어로, 신뢰있는 내용처럼 위장한 악성 이메일을 관련자들에게 전송하여 감염시킨다.
이후 원격 제어 및 데이터 탈취 등을 시도하는 대표적인 지능형 표적 공격으로 문서(HWP,PDF,DOC 등) 파일의 취약점을 이용한 공격 활용이 많다.

역공학(Reverse Engineering)

현재 프로그램으로부터 데이터, 아키텍쳐, 절차에 관한 분석 및 설계 정보를 추출하는 과정으로, 소프트웨어를 분석하여 기존 시스템의 문서화를 재작성하거나 자료사전, ERD 등의 설계 정보를 재생시키는 작업이다.

재공학(Re-Engineering)

기존 프로세스를 파기하지 않고 변경된 사용자의 요구사항이나 수정된 환경으로 기존 프로세스를 보완하여 재구축하는 것을 의미한다. 금융권의 차세대 프로젝트가 큰 규모의 재공학에 해당한다.

리팩토링(Refactoring)

외부동작을 바꾸지 않으면서 내부 구조를 개선하는 방법론을 말한다.

PaaS

사용자 정의의 응용 프로그램을 개발하고 사용할 수 있는 개발자를 위한 프레임워크를 제공한다.

장점 : 필요한 플랫폼만 소비 형태로 사용하기 때문에 비용 부담을 덜 수 있고, 개발 및 배포 프로세스를 빠르게 확보할 수 있다.
단점 : 특정 플랫폼 서비스에 종속될 수 있다.

IaaS

컴퓨팅, 네트워킹, 스토리지 및 기타 인프랄 사용하기 위한 서비스이며 사용자는 필요할 때마다 서비스를 통해 리소스를 구입할 수 있다.

SaaS

애플리케이션은 웹 브라우저를 통해 직접 실행되므로 클라이언트 측에서 다운로드나 설치가 필요하지 않다.

POP(Post Office Protocol)

응용 계층 인터넷 프로토콜 중 하나로, TCP/IP 연결을 통해 이메일을 가져오는데 사용된다. 여러 버전의 POP 프로토콜이 개발되었지만, 일반적으로 POP를 지칭하는 경우 보통 POP3를 가리킨다. G메일 같은 대부분의 웹 메일에서 지원한다.

레그테크

규제와 기술의 합성어로, 내부 통제와 법규 준수를 용이하게 하는 정보기술을 말한다. 이를 도입하면 준법감시 능력을 제고할 수 있고, 금융시장 전체적으로 규제 준수를 위한 사회적 비용 절감이 가능하다.

섭테크

금융감동과 기술의 합성어로, 최신 기술을 활용해 금융감독 업무를 효율적으로 수행하기 위한 기법을 말한다.

린스타트업

아이디어를 빠르게 최소기능제품으로 제조한 후 시장의 반을을 보고 다음 제품 개선에 반영하는 전략이다. 단기간 동안 제품을 제조하고 성과를 측정하여 제품 개선에 반영하는 것을 반복해 성공 확률을 높이는 경영 방법론의 일종이다. 린 스타트업은 만들기 -> 측정 -> 학습의 과정을 통해 꾸준한 혁신을 이루는 것을 주 내용으로 한다.

애자일(Agile)

고객의 요구에 민첩하게 대응하고 그때그때 주어지는 문제를 풀어나가는 방법론을 말한다.

파이썬

파이썬은 들여쓰기를 사용하여 블록을 구분하는 문법을 적용하였으며, 이는 코드의 종속성을 나타내기 위함이다.

레코그니션(Rekognition)

이미지/동영상의 시각적 분석 기능을 쉽게 추가할 수 있게 해주는 아마존으 애플리케이션이다. 이를 통해 수많은 이미지를 검색, 확인 및 구성할 수 있고 rekognition vido를 통해 저장된 도영상 또는 실시간 스트림 동영상에서 동작 기반 컨텍스트를 추출하고 분석할 수 있다.

랭크브레인

구글이 2015년에 발표한 랭크브레인은 검색 결과를 분류하기 위해 사용하는 기계학습(AI) 기반 알고리즘이다. 백링크, 콘텐츠의 신선도, 콘텐츠의 길이, 도메인 권한 등에 따라 결과의 중요성을 증가시키거나 감소시킨다. 한 번도 보지 못한 키워드를 기존에 알고 있던 키워드와 매칭함으로써 사용자가 쓴 새로운 키워드의 뜻을 알아낼 수 있다.

피죤(Pigeon)

구글이 2014년에 발표한 알고리즘으로, 적절하지 않은 검색엔진 결과 페이지에 페널티를 주는 방식을 채택하였다. 피죤 업데이트를 함으로써 검색자의 위치와 다른 지리적인 요인을 고려하여 더 적절하고 정확한 결과를 제공한다.

허밍버드(Humminbird)

구글의 허밍버드는 검색 문의를 잘 파악한 후 검색 의도에 적합한 결과를 제공할 수 있도록 업데이트된 알고리즘으로서, 검색자의 의도를 파악하기 때문에 사이트가 정확히 검색 단어를 갖고 있지 않아도 페이지가 검색엔진 결과 페이지에서 랭킹에 들 수 있게끔 하였다.

에어스(AiRS)

네이버가 2017년에 처음 선보인 인공지능 콘텐츠 추천 알고리즘이다. 이용자가 콘텐츠를 소비하는 패턴을 분석해 비슷한 관심사의 사람들이 많이 본 컨텐츠를 먼저 보여주는 협력 필터와 문서의 충실도 및 이용자 피트백을 반영한 품질 모델이 결합돼 콘텐츠를 추천한다.

로지스틱 회귀분석(Logistic Regression)

데이터를 두 개의 그룹으로 분류하는 문제에 자주 쓰인다. 기존 회귀분석과의 차이는, 회귀분석에서 우리가 원하는 것이 예측값(실수)이기 때문에 종속변수의 범위가 실수이지만, 로지스틱 회귀분석에서는 종속변수 값으로 0또는 1을 갖는다.

서포트 벡터 머신(SVM)

선형 분류와 비선형 분류 및 회귀 모두에 적용 가능하다.

JSP

HTML 내에 자바 코드를 삽입하여 웹 서버에서 동적으로 웹 페이지를 생성하여 웹 브라우저에게 돌려주는 언어이며, 웹 서버에서 동작한다. JSP는 동적인 웹 페이지를 효율적으로 활용하기 위한 방법을 제공한다.
1. JSP는 자바 기반이기 때문에 윈도우즈, 리눅스 등 운영체제에 상관없이 플랫폼에 동립적이다.
2. JSP 페이지에 대한 요청의 처리 등이 웹 서버에 동작한다. JSP는 동적인 웹 페이지를 효율적으로 생성하고 활용하기 위한 방법을 제공한다.

ReLU(Rectified Linear Unit)

딥러닝에서 가장 많이 사용되는 활성화 함수로, 기타 활성화 함수인 sigmoid와 tanh가 갖는 기울기 소실 문제를 해결하기 위함 힘수이다.
1. sigmoid, tanh 함수보다 학습이 따르고, 연산 비용이 적으며 구현이 매우 간단하다.
2. ReLU는 입력값 x가 0보다 크면 기울기가 1인 직선, 0보다 작으면 함수 값이 0이 된다. 이는 0보다 작은 값들이 뉴련에서 죽을 수 있는 단점을 야기한다.

SHA(Secure Hash Algorithm)

미국 국가안보국(NSA)이 1993년 처음으로 설계한 암호학적 해시 함수들의 모임이며, 미국 국가 표준으로 지정되었다. TSL, SSL, PGR, SSH, IPSec 등 많은 보안 프로토콜과 프로그램에서 사용되고 있다.

세그멘테이션

세그멘테이션 기법은 세그먼트가 메모리에 적재될 때 빈 공간을 찾아 할당하는 사용자 관점의 가상 메모리 관리 기법이다.

페이징 기법에서는 가상 메모리를 같은 크기의 단위로 분할하나, 세그멘테이션 기법에서는 가상 메모리를 서로 크기가 다른 논리적 단위인 세그먼트로 분할하고 메모리를 할당하며, 주소 변환을 하게 된다. 각각의 세그먼트들은 연속적인 공간에 저장되어 있다. 세그먼트들의 크기가 서로 다르기 때문에 메모리를 페이징 기법처럼 미리 분할해 둘 수 없으며, 페이징 기법과 마찬가지로 매핑을 위해 세그먼트 테이블을 필요로 한다.

세그멘테이션 기법은 하나의 세그먼트 단위로 통제가 가능한 장점이 있기에 내부 단편화가 발생하지 않는다. 그러나 서로 다른 크기의 세그먼트에 대해 필요시에 메모리에 올리고 필요 없을 경우 내리는 작업을 반복하다 보면 외부 단편화가 생기는 문제점이 있다.

허니팟

비정상적인 접근을 탐지하기 위해 의도적으로 설치해 둔 시스템으로, 네트워크 상에 특정 컴퓨터를 연결해 두고 해당 컴퓨터에 중요한 정보가 있는 것처럼 꾸며두면, 공격자가 해당 컴퓨터를 크래킹하기 위해 시도하는 것을 탐지할 수 있다.

FDS

FDS는 이상거래, 사기거래를 차단할 수 있는 플랫폼을 칭하는 이름이다. 고도화된 FDS는 보이스피싱을 비롯해 메모리해킹까지 대부분의 공격에 대응할 수 있다는 장점도 갖추고 있다.

SIEM

SIEM은 보안 정보 및 이벤트 관리를 의미하며 조직에 탐지. 분석 및 대응 방안을 제공하는 솔루션 개념을 의미한다. SIEM 소프트웨어는 보안 정보 관리(SIM)와 보안 이벤트 관리(SEM)를 결합하여 애플리케이션 및 네트워크 하드웨어에 의해 생성되는 보안 경보에 대한 실시간 분석을 제공한다.

비선점 스케줄링

비선점 스케줄링은 이미 할당된 자원을 다른 프로세스가 뺏을 수 없으며, 응답시간의 예측이 편하고 일괄처리 방식에 적합하다. 단점은 덜 중요한 덜 중요한 작업이 자원을 할당받으면, 중요한 작업이 있더라도 먼저 처리될 수 없다.

FCFS(First Come First Served)
SJF(Shortest Job First)
HRN(Highest Response-ratio Next)

선점 스케줄링

선점 스케줄링은 우선순위가 높은 프로세스를 빠르게 처리 가능하고, 어떤 프로세스가 자원을 사용하고 있다면 우선순위가 더 높은 프로세스가 올 경우 자원을 뺏길 수 있다. 빠른 응답 시간을 필요로 하는 시스템에서 주로 사용되고, 오버헤드가 크다.

Round Robin
SRT(Shortest Remaining Time)

RSA

RSA는 공개키 암호화 방식으로, 공개키 암호화 중 가장 널리 쓰이고 있으며, 자리 수가 많은 양의 정수에 대한 소인수 분해가 어렵다는 것에 착안하여 이를 수학적으로 구현한 비대칭 암호화 알고리즘이라 할 수 있다. 알고리즘의 안정성을 위해 비밀키와 공개키가 비대칭적으로 이루어져 있으며 전자서명에도 적용할 수 있다.

교착상태

두 개 이상의 작업이 서로 상대방의 작업이 끝나기만을 기다리고 있기 때문에 결과적으로 아무것도 완료되지 못하는 상태를 가리킨다.

교착상태 회피
자원이 어떻게 요청될지에 대한 추가정보를 제공하도록 요구하는 것
[자원 할당 그래프 알고리즘, 은행원 알고리즘]

교착상태 무시
예방 혹은 회피기법을 프로그래밍에 넣으면 성능에 큰 영향을 미칠 수 있게 된다.

교착상태 예방
교착상태의 4가지 조건 중 한가지를 제거하여 예방하는 것
(1) 상호 배제 조건의 제거
(2) 점유와 대기 조건의 제거
(3) 비선점 조건의 제거
(4) 순환 대기 조건의 제거

포트

  1. TCMP와 UDP는 포트번호로 부호 없는 16비트 정수를 사용함으로써 0 이상 65,535 이하의 값으로 이루어져 있다.
  2. 한 프로세스가 포트 번호를 두 개 이상 사용하는 경우가 종종 있으며, 둘 이상의 프로세스가 한 포트 번호를 사용할 수도 있다.
  3. 0 ~ 1023 포트번호는 용도가 정해져 있다.
  4. 기관이나 사업자들을 위해 IANA에서 관리하는 포트는 registered port 이다.

리눅스 커널

프로세서나 시스템 메모리에 상주하면서 디바이스나 메모리 같은 하드웨어 자원을 관리하고, 프로세스의 스케줄을 관리하여 다중 프로세스를 구현하며, 시스템에 연결된 입출력을 처리하는 운영체제의 핵심 역할을 수행한다.

  1. 시스템에 연결된 입출력을 처리한다.
  2. 프로세스를 생성하거나 종료한다.
  3. 하드웨어와 통신하며 애플리케이션을 통제한다.

0개의 댓글