본문 바로가기
Blockchain/Founders 2019 (1기)

Founders 2019 (1기) 온라인 OT 정리 #4

https://brunch.co.kr/@bumgeunsong/47

 

외계어 없이 이더리움(Ethereum) 이해하기

쉽게 설명한 스마트 컨트랙트, 탈중앙화 앱(Dapp), ICO, 이더 | 블록체인 위에 다른 것도 올릴 수 없을까? 비트코인의 성공을 본 사람들은 이런 생각을 하기 시작했다. 블록체인이 데이터의 신뢰를 보증하는 기술이라면, 블록체인 위에 다른 종류의 데이터를 올릴 수는 없을까? 그래서 초기에는 많은 프로젝트들이 비트코인 블록체인을 활용해 화폐 이상의 것을 만들어내려는 시도를 했다.(네임코인, 컬러드 코인, 마스터 코인 등등)

brunch.co.kr


 

이더리움의 특징

 

 

스마트 컨트랙트

 

스마트 컨트랙트란 블록체인 위에 ‘약속’을 올려놓는 것이다.

어떤 조건을 만족하면 어떤 행동을 하라는 코드를 거래에 추가한다.

예를 들면,

’내일 기온이 20도 이상이면 에어컨을 틀어라’ ‘내가 좋아요를 누른 글은 복사해서 메일로 보내라’ 같은 명령이다.

 

블록체인 위에 ‘약속’을 올리면 무엇이 다를까?

첫 번째, 블록체인이 이 계약의 진위성과 실행을 보장한다.

단순한 약속이 아니라 ‘계약’이 된다.

블록체인에 기록되면 그 내용을 누구도 부정하거나, 위조할 수 없기 때문이다.

법이 아니라, 블록체인이 보증하는 계약이다.

두 번째, 블록체인 내부에 기록된 코드에 의해서 특정 조건을 만족할 경우, 정해진 행동이 자동으로 실행된다.

실제 문서 상으로 이루어지는 계약은 사람이 직접 실행하고,

법에 의해서 강제되지만 스마트 컨트랙트는 블록체인이 유효성을 보증하고 컴퓨터가 자동으로 실행한다.

 

 

스마트 컨트랙트를 통한 거래 과정

 

 

탈중앙화 애플리케이션 (Decentralized Application)

 

이더리움은 스마트 컨트랙트를 기반으로 개발자들이 자신이 원하는 애플리케이션을 만들 수 있도록 지원한다.

즉, 이더리움이 스마트폰의 안드로이드 OS와 같은 운영체제 역할을 한다.

 

블록체인은 상당히 복잡하고 구현하기 어려운 소프트웨어이다.

개발자들이 블록체인 애플리케이션을 만들기 위해서 매번 자체적인 블록체인을 만들기는 힘들다.

그 대신!

이더리움 블록체인의 규칙과, 다양한 개발 도구들을 사용하여 자신들의 필요에 맞춤화된 애플리케이션을 만들 수 있다. 블록체인 위에서 구현되는 이런 애플리케이션을 통틀어서

탈중앙화 된 애플리케이션(Decentralized application), 줄여서 Dapp이라고 한다.

 

 

ICO (Initial Coin Offering)

 

Dapp은 자금 조달의 문제를 앱 내에서 사용되는 토큰을 발행해서 판매하는 새로운 방식으로 해결한다.

Dapp이 토큰을 만들어서 이를 공개적으로 판매하는 것을 ICO(Initial Coin offering)이라고 한다.

 

 

이더 (Ether)

 

이더리움의 기초 화폐이다.

이더는 기본적으로 다른 암호화폐와 마찬가지로 서로 돈을 주고받을 있는 화폐의 기능을 한다.

거기에 더해서, 이더는 채굴자들이 스마트 컨트랙트를 실행시키는 필요한 수수료의 지불 수단이다.

 

 

GAS System

 

거래를 생성하는 사람은 이더로 Gas를 사서 거래에 첨부해야 한다.

이 Gas는 말 그대로 이더리움에서 스마트 컨트랙트를 실행시키는 대가로 지불하는 연료(Gas)인 셈이다.

Gas는 스마트 컨트랙트의 코드가 복잡할수록, 저장 공간을 많이 쓸수록 더 많이 지불해야 한다.

실행되는 만큼 Gas가 지불되고, Gas를 다 쓰면 실행이 취소된다.

 

 


 

이더리움의 비전

 

세상의 대부분의 것들이 점점 디지털화 되고 있다.

하지만, 특성상 복사나 수정이 쉽기 때문에 가치를 지난 자산은 디지털화하기가 어려웠다.

 

블록체인은 문제를 해결함으로써 디지털화를 가속화시킨다.

예를 들어, 최초의 비트코인 블록체인은 디지털 데이터의 신뢰를 보증함으로써

'가치를 가진 자산들' 디지털화될 있도록 만들었다.

 

 

탈중앙화 자율 조직, DAO

 

탈중앙화 자율 조직 (Decentralized Autonoumous Organization, DAO)이란,

어떠한 위계질서나 권한 집중도 없이,

모든 사람은 동일한 권리를 가지고, 조직의 룰은 스마트 컨트랙트로 구현되는 것이다.

이 조직에서는 사람의 개입 없이 모두가 합의하고 블록체인 위에 올라간 코드가 조직의 의사결정을 책임진다.

 

 

합의 매커니즘 (Consensus Mechanism)

 

PoW 문제점

   이더리움은 현재 비트코인과 마찬가지로 PoW(Proof-of-Work) 방식의 합의 메커니즘을 사용하고 있다.

PoW는 많은 양의 에너지를 소모하고, ASIC 같은 채굴 장비의 등장으로

특정 채굴 회사에게 쏠림 현상이 일어나는 문제가 있다.

그래서 이더리움은 다음 업데이트에서 PoW가 아닌 새로운 방식, Proof-of-stake (PoS) 방식으로 전환을 준비하고 있다.

암호화폐 커뮤니티에서는 몇 년 전부터 PoW 방식의 문제를 해결할 대안으로 PoS를 논의해왔다.

 

   PoS 방식이란?

PoS 방식은 PoW처럼 블록을 생성할 사람을 복잡한 해쉬 문제를 내서 정하는 것이 아니라,

참가자들이 블록에 대해서 베팅을 하는 방식으로 정한다.

참가자들은 ‘특정 블록이 문제가 없다’는 데에 돈(이더)을 건다.

베팅을 한 금액이 높을수록, 그 블록 생성 권한을 받을 확률이 높아진다.

만약 이 블록이 체인에 잘 연결되고 아무 문제가 없는 것으로 판명이 나면, 블록을 생성한 참가자는 보상을 받는다.

하지만 만약 잘못된 거래가 포함되어 있었다면, 베팅한 돈을 잃는다.

컴퓨팅 파워를 투입하는 것이 아니라, 자신이 보유한 돈을 베팅함으로써

내가 네트워크에 해를 끼치지 않을 것을 증명하는 셈이다.

그래서 지분 증명(Proof-of-Stake)라고 한다

전체 컴퓨팅 파워의 몇 %를 소유했느냐에 따라 권력이 주어지는 PoW와 달리,

PoS에서는 전체 베팅 금액의 몇 %를 소유했느냐에 따라 권력이 주어진다.

 

PoS 장점

블록에 베팅하는 방식을 쓰면 막대한 양의 전기가 필요 없다.

PoS는 PoW의 에너지 소모 문제를 해결하고,

일반 컴퓨터들도 검증자가 될 수 있기 때문에 권력을 분산시키는 효과도 있다.

PoW처럼 복잡한 문제를 풀지 않기 때문에 블록 하나를 처리하는 데 드는 시간도 빨라진다.

또한 PoW에서는 어떤 채굴자가 잘못된 거래를 블록체인에 넣으려고 시도했다 하더라도

그 참가자에게는 아무런 영향도 없는 반면,

PoS는 블록을 생성하고 거부당한 사람에게 큰 페널티가 주어진다는 점에서 더 안전하다.

 

PoS 단점

다만 PoS에서는 돈을 많이 가진 사람이 블록을 생성하고 보상을 받을 확률이 높기 때문에,

돈이 많은 사람은 더 많아지고, 없는 사람은 더 없어지는 빈익빈 부익부 현상이 일어난다.

한 계좌에 엄청나게 많은 돈을 가진 사람은 보상을 받을 확률이 현저히 높기 때문이다.

이 상황이 반복되면 채굴자들에게 권력이 집중되듯이 소수의 부자들에게 권력이 집중되는 것 아니냐는 비판이 있다.

 

 

프라이버시 (Privacy)

 

이더리움 역시 다른 암호화폐와 비슷하게 모든 거래 내역이 투명하게 공개된다.

그런데 이더리움에서는 단순히 돈거래뿐만 아니라 다양한 계약 내용이 오고 간다.

스마트 컨트랙트의 세부사항은 단순히 받는 사람, 보내는 사람, 보내는 금액을 떠나서,

어떤 계약 조건에 의해서, 언제 실행되었으며, 어떤 정보를 같이 보냈고,

이 스마트 컨트랙트가 어떤 스마트 컨트랙트와 연동되는지 등등을 모두 포함한다.

 

이는 심각한 프라이버시 문제를 발생시킨다.

단순 돈거래 내역만 공개되어도 프라이버시 문제가 발생할 판에,

블록체인 위에 다양한 비즈니스가 일어날 때를 생각해보자.

각 참여자가 무엇을 샀고, 어떤 기능을 이용했으며, 얼마를 환전했고, 언제 회원가입을 했는지 등등이 전부 공개된다.

프라이버시 문제는 앞으로 이더리움이 반드시 해결해야 할 문제다.

 

 

지나치게 엄격한 계약

 

블록체인에서 일어난 거래는 어떤 일이 있어도 되돌릴 수 없다.

잘못된 거래나 실수를 되돌릴 수 없다는 것은 블록체인의 단점이기도 하다.

 

블록체인 위에 올라가는 스마트 컨트랙트도 마찬가지다.

어떤 자산을 거래하는데, 내가 정해진 시간까지 돈을 지급하기로 하고 못하면

벌금을 물기로 스마트 컨트랙트를 작성했다고 하자.

그런데 막상 돈을 지급해야 할 순간에 불의의 사정(정전, 은행 서버 다운 등등) 때문에 돈을 제때 지급하지 못했다.

고의로 계약을 어기려고 한 것이 아니기 때문에, 상대방에게 사정을 설명하고 예외 인정을 해줄 수가 있다.

그런데 스마트 컨트랙트는, 바로 계약을 어겼다고 생각하고 페널티를 부과해버린다.

그런 사정을 미리 적어두지 않았다면

 

스마트 컨트랙트가 대중화되면 이런 식의 고지식함은 문제를 일으킬 여지가 크다.

이런 단순한 사례 외에도 현실에서는 여러 가지 상황으로 인해서 계약 내용에 대한 분쟁이 발생한다.

그런데 스마트 컨트랙트는 코드일 뿐 변호사가 아니기 때문에 이런 부분을 해결하지 못한다.

단지 정해진 대로 코드를 실행할 뿐이다.

사용자 입장에서 스마트 컨트랙트의 또 하나의 단점이다.

 

 

내부 거버넌스 (On-chain Governance) 부재

 

이더리움의 거버넌스 또한 비트코인과 마찬가지로,

자체적으로 프로토콜을 업데이트할 수 있는 방법이 없다는 점이 문제다.

이더리움은 누구도 소유하지 않는 오픈 소스 프로젝트다.

엄밀히 말해, 아무도 규칙(프로토콜)에 대한 결정권이나 책임이 없다.

 

그래서 프로토콜에서 업그레이드하려면 거의 모든 참가자들의 동의를 받아야 하고,

동의하지 않는 그룹은 하드 포크로 떨어져 나가는 일이 반복된다.

2016년 하드 포크를 통해 떨어져 나가 생긴 것이 이더리움 클래식이다

(엄밀히 말하면, 지금의 이더리움이 떨어져 나온 측이긴 하다)

 

현실 사회의 거버넌스인 정치를 생각해보자.

대통령 선거나 국회의원 선거에서 50%만 나와도 엄청난 숫자다.

67%의 동의를 얻으면 헌법도 고칠 수 있다.

그런데 90%의 동의를 받아야 프로토콜을 업데이트할 수 있다는 것은 상당히 큰 장애물이다.