공대생 정리노트
Geneva Report 1장 - Impact of Blockchain Technology on Finance 요약 본문
해당 리포트의 1장이 블록체인 기술의 기초를 다루고 있어 정리해 보았다.
블록체인은 사람이 아닌 컴퓨터가 읽을 수 있게 디자인된 ledger이다.
컨센서스에 대한 간단한 히스토리
분산 시스템에서는 비잔틴 장군 문제라고 불리는 문제점을 해결해야 한다.
비잔틴 장군 문제
비잔틴 군대가 성을 에워싸고 공격을 할지 말지 결정하는 문제이다.
장군들이 서로 메신저를 통해 전략에 대한 합의를 이끌어 내는데, 일부 장군이 배신자거나 혹은 메신저가 딜레이되거나 없어졌을 때 어떻게 합의를 이끌어 낼지에 대한 문제이다.
분산 시스템에서 장군들은 컴퓨터이고, 배신자 장군은 잘못된 컴퓨터들, 그리고 메신저들은 신뢰할 수 없는 네트워크를 통해 전달되는 데이터들이다.
블록체인은 ledger의 트랜잭션의 히스토리에 대한 agree를 결정하기 위해 분산 컨센서스를 사용하였다.
사토시 나카모토가 제안한 비트코인 시스템은 트랜잭션을 검증하는 것에 인센티브로 비트코인을 제공한다.
이러한 시스템은 트랜잭션들의 히스토리를 연속해서 검증하게 만든다.
참여자들은 ledger를 보면서 비트코인이 어느 수량만큼 이동이 되었는지 알 수 있다.
payment를 검증하기 위해 트랜잭션 ledger은 한개의 버전만 존재해야하는데, 다른 ledger history가 존재하면 double spend(한 개의 비트코인을 이용해 두 개의 payment를 진행)가 일어날 수 있기 때문이다
블록체인의 특징
비트코인의 컨센서스는 비트코인을 보상으로 받기 위한 참여자들의 경쟁을 베이스로 하고 있다.
이는 proof-of-work를 통해 진행이 된다.
비트코인 프로토콜은 자동적으로 다음 블록을 계산하기 위한 난이도 조정을 시행한다.
핵심 아이디어는 비트코인이 가치를 가진다면, 채굴자들은 올바른 ledger를 만들기 위한 노력을 계속 할 것이다. 만약 누군가가 시스템을 전복시킬 의도로 수많은 채굴자들을 통해 여러 버전의 ledger를 만들려고 하면 엄청난 전기료와 장비 비용이 들어갈 것이다.
블록체인은 네트워크에 몇 천개의 full nodes를 두고 있다. full nodes는 블록체인을 계속해서 검증하지만, 새 블록을 만들어내지는 않는다.
블록체인 기술과 분산 데이터베이스
컨센서스 프로토콜이 트랜잭션을 통해 ledger을 만들면, 이런 ledger들이 모여 append-only-log가 되고,
이는 분산 데이터베이스처럼 되는 것이다.
블록체인은 금융 프로젝트와 같은 다른 수많은 프로젝트와는 달리 누구나 네트워크에 참여해 채굴자가 될 수 있는 오픈 permissionless 네트워크를 가진다.
Smart contract
Smart contract는 contract condition을 정의한 소프트웨어에 의해 강제로 디지털 자산을 이동시키는 것을 말한다.
Smart contract는 third party를 필요로 하지 않고 블록체인 내부에서 contract를 실행시킬 수 있다.
Tokens
회사나 재단이 오픈 소스 프로젝트를 시작할 때 그들의 토큰을 발행한다. 일부는 그들의 token-based 블록체인에서 사용하지만, 현존하는 블록체인 네트워크의 smart contract를 기반한 토큰을 발행하는 경우도 있다.
후자의 경우 블록체인 네트워크의 컴퓨터들의 smart contract가 수행이 되면 토큰의 트랜잭션들을 검증한다
Protocol layers - an analogy to the internet
인터넷은 분산된 컴퓨터들이 정보를 교환하기 위해 여러 프로토콜들로 이루어진 스택을 사용하고 있다. (HTTP , TCP/IP, SMTP, SSL/TLS ...)
블록체인 기술은 디지털 자산 및 토큰을 교환할 수 있는 탈중앙화 시스템을 제공하면서 오픈 프로토콜에 추가적인 가능성을 보여줬다. 블록체인이 밸류를 전송하는 역할을 하고 그 위에 다른 레이어들이 어플리케이션을 이용해 디지털 자산으로 추가적인 작업들을 할 수 있기 때문이다.
그러나 아직은 이런 프로토콜이 등장하지는 않았다.. 인터넷이 발전하면서 수많은 어플리케이션이 나온 만큼, 블록체인 위에 생길 어플리케이션도 현재로서는 전혀 예측할 수가 없다
'블록체인' 카테고리의 다른 글
이더리움 개발 스택 (0) | 2022.01.09 |
---|---|
geth 사설망 실행하기 (0) | 2021.12.19 |
Layer 2 / the lightening Network (1) | 2021.12.15 |
Bitcoin: A Peer-to-Peer Electronic Cash System - Satoshi Nakamoto 요약 (0) | 2021.12.02 |
블록체인 이해하기 (0) | 2021.11.21 |