본문 바로가기
Investment/Blockchain, Bitcoin

알기쉬운 블록체인 4강 : 블록체인의 본질

by YOU_IN 2021. 7. 1.

안녕하세요 :)

알기쉬운 블록체인 4강 강의노트입니다.

이번 강에서 중요한 것은 블록체인의 4가지 정의와

소유권, 원장에 대한 개념을

확실히 이해하는 것이라 생각됩니다!

 

그럼 이번 강의노트도 많은 분들께 도움이 되었으면 좋겠습니다 :)!

 

 


제 4강 블록체인의 본질

 

출처 :  https://documentmedia.com/article-2937-Why-the-Future-of-Enterprise-Blockchain-Is-in-Applications.html

 

 


 

4-1. 컴퓨터들의 협업

◈ 분산 P2P 시스템의 신뢰성과 무결성

분산 P2P 시스템 통제의 어려움

- 중앙의 통제 시스템에 대한 유무를 알 수 없는 사용자.

- 중앙의 통제를 거부하는 사용자

- ex) 고양이 무리 짓기 : 오라고 해도 오지 않을 수 있고 한 무리로 만드는 것이 쉽지 않다.

• 분산 P2P 시스템이 해결해야 할 주요 과제

1) 신뢰성

- 별도의 증명 없이 믿어주는 확고한 신념

- 사전에 형성된 이후, 지속적인 상호작용의 결과에 따라 변경

2) 무결성

- 시스템의 완결성, 일관성, 정확성, 안전성, 오류 없음

- 비기능적 측면

- 시스템에 대한 신뢰성에 영향을 줌

=> 시스템을 신뢰하는 사용자는 시스템에 참여해서 기여

지속적인 상호 결과를 통해 더 큰 신뢰가 형성되면 시스템의 구성원으로 남게 된다.

시스템의 무결성은 사용자의 기대를 충족시켜 시스템에 대한 신뢰를 높인다!

분산 P2P 시스템의 무결성 확보 방법은?

1) 전체 노드 또는 피어의 개수를 아는가?

2) 각 피어의 신뢰성에 대해 어느 정도 알고 있는가?

• 분산 P2P 시스템의 무결성 위협요소

1) 기술적 결함 : 분산시스템은 언제든지 고장이나 오류가 날 수 있다.

ex) 컴퓨터, 네트워크 장비 등

-> 기술적인 결함에 대한 대처방안 필요

2) 악의적 사용자 : 시스템을 개인의 이익을 위해 착취하려는 개인의 악의가 원인

-> 기술보다는 사회학적 측면에 연관

-> 시스템의 근간인 신뢰성을 공격하기 때문에 가장 심각한 위협요소

-> 신뢰를 잃는 순간 사용자 감소로 인한 시스템의 와해

◈ 무결성 측면에서 블록체인의 역할

블록체인의 과제

1) 최악의 조건을 가진 분산시스템에서의 무결성과 신뢰성 확보

2) 개수도 알려져 있지 않고, 신뢰성과 안전성도 알 수 없는 피어들로 구성된 순수 분산 P2P 시스템에서 무결성을 확보하고 유지

비잔틴 장군 문제 (Byzantine General Problem)

- 분산네트워크의 오류에 대처하는 방법을 논하기 위해 레슬리 램포트가 1982년 제기한 명제

- 여러 곳에 진지를 구축한 장군(프로세스)들은 공격이나 퇴각 명령을 주고받아 일사불란하게 전투함

- 문제는 반역자(오류나 악의적인 피어)가 섞여 있어서 메시지가 정확히 전달될 것이라는 보장을 못함

=> 단 하나의 합의된 진짜 명령어를 구분하는 방법이 필요

즉, 블록체인도 분산 시스템 환경에서 신뢰성, 무결성을 확보하는 것이 가장 중요한 과제다.

 

 

 


4-2. 블록체인의 정의

◈ 블록체인의 네 가지 의미

1) 데이터 구조의 명칭

- 데이터 구조(Data Structure) : 데이터를 저장하고 정리하는 방식 ex) 건물 설계도, 평면도

- 추상화된 데이터 구조

(i) Linked List : 1차원으로 연결된 데이터의 리스트

(ii) Stack : Last in First Out(LIFO) 구조의 Linked List (나중에 입력한 데이터를 먼저 꺼내는 구조)

(iii) Queue : Fist in Fist Out(FIFO) 구조의 Linked List (먼저 입력한 것을 먼저 꺼내는 구조)

(iv) Tree : 다차원으로 연결된 Linked List (부모 노드가 있고 밑으로 자식 노드가 있는 구조)

- 데이터 구조로서의 블록체인

: 블록 단위에 모인 데이터들이 체인처럼 서로 연결된 구조. 먼저 생성된 블록은 그 다음 블록을 연결하는 방식.

ex) 책의 각 페이지들이 정보를 담고 페이지 번호를 통해 서로 연결

2) 알고리즘의 명칭

- 알고리즘(Algorithm) : 어떤 문제를 해결하기 위해 컴퓨터가 실행해야 하는 일련의 명령어와 그 순서. 알고리즘 명령어는 데이터 구조의 특징을 활용하여 구성.

ex) 데이터 정렬 및 탐색, 임의 접근

- 어떤 알고리즘을 구현할때는 적용되는 데이터베이스의 특징까지도 생각해서 알고리즘을 구현.

- 알고리즘으로서의 블록체인

: 순수 분산 P2P 시스템에서 여러 블록체인 내의 정보를 합의된 방법을 써서 서로 협상하는 일련의 명령어를 의미. 분산 합의 알고리즘은 블록체인의 핵심 알고리즘.

서로 믿을 수 없는 노드들을 합의된 형태로 만드는 것이 분산 합의 알고리즘

Ex 1) 비잔틴 장군 문제

Ex 2) 식사하는 철학자들 문제 : 왼쪽에 있는 포크를 쓰느냐, 오른쪽에 있는 포크를 쓰느냐에 따라 편하게 식사를 할 수도 있고 각자의 포크를 찾지 못해서 불편한 식사를 할 수 있다. 합의된 방향의 포크를 쓰면 모두 편하게 식사를 할 수 있다.

-> 즉, 합의 알고리즘 없이는 분산되어 있는 사용자들이 공동의 목표를 가지고 합의된 형태의 행동을 수행할 수 없다.

3) 기술묶음의 명칭

- 기술묶음(Technology Suite)으로서의 블록체인

(i) 블록체인의 데이터 구조

(ii) 블록체인 알고리즘

(iii) 암호화 및 정보 보안 기술 등의 조합

=> 응용분야와 무관하게 분산 P2P 시스템의 무결성을 확보하는 데 이용

4) 순수 분산 P2P 시스템 (일반 응용분야를 가짐)

- 일반 응용분야를 가지는 순수 분산 P2P시스템으로서의 블록체인

: 블록체인 기술묶음을 활용하는 거래장부(원장, Ledger)들의 순수 분산 P2P 시스템을 지칭. 순수 분산 시스템의 한 소프트웨어 단위를 의미하는 것이 아닌 순수 분산 시스템 전체를 의미

◈ 블록체인의 정의와 응용

블록체인이란?

- 블록체인 기술묶음(Blockchain Technology)을 활용하는 원장의 순수 분산 P2P 시스템을 지칭하는 포괄적인 의미.

- 기술묶음이 아니라 데이터 구조나 알고리즘 환경에서 사용되는 경우는 명시적으로 블록체인 데이터 구조, 블록체인 알고리즘, 또다른 블록체인 기술묶음으로 이야기 할 예정

블록체인의 정의

- 목적 : 무결성을 확보하고 유지하기 위해

- 데이터 구조 : 순서에 따라 연결된 블록들의 정보 내용을

- 알고리즘 : 암호화 기법과 보안 기술을 이용해 협상하는 알고리즘으로 구성된 소프트웨어를 활용하는

- 시스템 : 원장의 순수 분산 P2P시스템

블록체인의 응용

- 소유권을 관리하고 명확하게 검증하는 것.

- 대표적인 응용분야가 암호화폐다. 암호화폐의 소유권을 관리하는 것은 자연스러운 블록체인의 응용분야의 하나일 뿐. 그 자체가 블록체인의 전부는 아니다.

-> 결국 블록체인은 보다 포괄적인 구조를 의미한다.

 

 

 

블록체인이 암호화폐의 소유권 관리 측면에서 부각된 이유는?

1) 이해하고 설명하기 쉬움

2) 경제에 가장 크게 영향을 미치는 실사례이기 때문

- 소유권 관리는 경제적 규모가 매우 큰 시장이다.

- 전통적인 금융과 관련된 시장에서 소유하고 관리하는 방식은 중앙 통제식으로 고정이 되어 있었다. 소유권을 관리하고 증명하는 방식을 다르게 바꿀 수 있다면 변혁에 대한 파급력은 엄청날 것이다.

- 따라서, 블록체인의 경우 그 동안의 소유권 관리 형태를 혁신적으로 변화시킬 수 있는 기술

=> 블록체인은 특정 재화와 상관없이 소유권을 관리하고 명료화하는 일반적인 환경에 적용 가능.

* 구체적으로 블록체인은 원장의 분산 P2P 시스템을 관리하는 기술묶음의 용도로 활용될 수 있고 디지털화할 수 잇는 재화를 소유권으로 관리하거나 암호화폐와 같은 특정 분야에 응용할 수 있다. 하지만, 특정한 응용분야에 국한된 것이 아니라 일반적인 환경에 적용 가능한 것이 중요한 사실이다.


 

4-3. 소유권의 개념

◈ 소유권 증명의 세 가지 요소

내가 가진 물건이 내 것이라는 것을 어떻게 증명할까?

- 집에서 가지고 온 사과 Vs. 가게에서 훔친 사과

- 목격자의 확보가 중요하다. 동일한 사실을 증언하는 독립적인 다수의 목격자가 있을수록 신뢰성이 높아진다.

=> 블록체인의 핵심 개념 중 하나!

소유권을 입증하는 세 가지 요소

1) 소유자가 누구인가 : 내가 나임을 증명하는 것

2) 소유 물건은 무엇인가 : 내가 가지온 사과

3) 소유자와 물건의 매핑(Mapping) : 내가 가지고 온 사과가 내 것이라는 것

=> 목격자의 증언은 이 모든 것을 증명하는 유일한 방법이다. But, 많은 시간 소모로 인해 신뢰 할 수 있는 기관이 발행한 문서로 대체를 한다.

사람에 대한 식별 Vs. 물건에 대한 식별

ex) 신분증, 출생증명서, 운전 면허증 등 / ex) 일련번호, 제조날짜, 제조 증명서, 상세설명서 등

- 사람과 물건은 불변함. (사과가 배로 바뀌지 않고, 비디오 장비가 오디오 장비로 바뀌지 않는다.)

- But, 소유자와 물건의 매핑은 변함. 소유관계 자체는 언제든지 변할 수 있다.

- 매핑에 대한 식별이 필요하다. ex)원장, 등기명부 등 – 소유권이 이전될 때마다 새롭게 기록함

소유권에 대한 증명 관리

1) 소유권에 대한 최신 원장, 명부 관리의 중요성으로 인한 특수기관 설립.

2) 소유물의 가치가 클수록 정부에서 직접 규제.

- 원장을 공공에 공개하여 소유권을 쉽게 검색, 증명하는 것도 필요하다.

- ex) 미국에서는 부동산, 특허, 배, 비행기, 회사 등의 소유권에 대한 원장, 결혼, 출생, 사망에 관한 등록을 정부가 관리.

• 소유권 개념 간의 상관관계

 

 

- 소유권 증명 : 자산과 소유자의 매핑, 사용자와 자산 자체가 맞는지 식별해야 함.

- 소유권 사용 : 소유권을 가지고 있는 사람이 맞는지 인증 -> 인증 받은 사용자가 합당한 소유 권한을 승인 받았는지 확인해야 한다. 즉, 비밀번호와 서명은 인증과 승인을 구현하기 위한 기능이다.

 

 

 

• 보안의 세 가지 개념

1) 식별(Identification)

- 식별자(이름 등)를 이용해 ‘누구’라고 주장하는 것

2) 인증(Authentication)

- 누군가가 그 사람이 주장한 ‘누구’와 서로 일치하는지 증명하는 것

- ex) ID/PW, 지문 등을 활용한 생체 인증

3) 승인(Authorization)

- 인증된 사람에 대해서 특정 자원이나 서비스에 대한 접근 권한을 부여하는 과정.

- 성공적인 인증 이후에 인증된 특정인이 가진 특성과 권리에 대한 평가를 토대로 얻는 최종 결과.

주류 판매

1) 운전면허증에 적힌 생년월일 확인

2) 와인을 살 권리가 있는지 판단

3)성인일 경우에만 와인을 판매

◈ 원장의 소유권과 블록체인

원장의 개념과 원칙

 

 

- 소유권 증명 : 원장에서 읽은 과거 데이터를 이용해 소유권을 증명

- 소유권 이전 : 소유권이 이전되는 경우 원장에서 신규 데이터를 생성하여 이 사실을 문서화

투명성개인정보가 가지는 상반된 속성

- 투명성은 누구나 쉽게 보고 검색할 수 있어야 한다. 반면에 개인정보는 프라이버시가 중요하여 다른 사람에게 노출되지 않기를 바라기 때문에 투명성과 대치되는 개념이다.

1) 투명성

- 원장이 누구에게나 공개되어 있으면 소유권의 증명은 훨씬 쉬어진다.

- 법정에서 목격자가 공개 증언하는 것과 비슷한 방법으로 투명성은 소유권을 증명하는 기초가 된다.

2) 개인정보 보호

- 소유권 이전은 법적인 소유자에게만 베타적으로 허용되어야 한다.

- 개인정보보호는 소유권 이전의 기초가 된다.

* 블록체인은 누구나 읽을 수 있게 개방된 원장과 유사한 데이터 구조를 가지는 거대한 분산 P2P 시스템.

 

• 원장의 소유권을 명확하게 만들 수 있는 방법은?

- 조작될 위험이 있는 원장을 하나만 유지하는 대신 원장의 순수 분산 PRP 시스템을 활용

- 다수의 노드가 동의하는 다수의 원장을 이용해 소유권을 확인

• 원장의 소유권 유지와 블록체인의 관련성

1) 소유권 관리를 위한 개별 원장은 블록체인-데이터 구조로 표현

2) 개별 원장들은 P2P 시스템의 컴퓨터(노드)에 저장

3) 블록체인-알고리즘은 개별 노드들이 공동의 일관된 소유권 상태에 합의할 수 있도록 해줌

4) 블록체인 시스템의 무결성을 통해 소유권에 대한 진실을 판단하게 만들어 줌

5) 암호화 기법을 통해 식별, 인증, 승인, 데이터 보안을 가능하게 만들어 줌


4강 강의 노트 끝-!

감사합니다 :)

*사진의 모든 출처 : http://www.kmooc.kr/

댓글