본문 바로가기

알기쉬운 블록체인

스마트 컨트랙트 , 스마트 계약

알기쉬운 블록체인 오늘은 스마트 컨트랙트를 알아본다.


스마트 컨트랙트(smart contract) 혹은 스마트 계약이란 블록체인을 기반으로
금융거래, 부동산 계약, 공증 등 다양한 형태의 계약을 체결하고 이행하는 것을 말한다.
블록체인 2.0이라고도 한다.

 

기존의 계약형태와 스마트 컨트랙트를 비교하면서 어떻게 다른지 표로 알아보자.

스마트컨트랙트는 1994년 닉 자보(Nick Szabo)가 처음 제안했다.
2013년 이더리움 플랫폼을 개발한 비탈릭 부테린 (Vitalik Buterin)이 비트코인의 블록체인 기술을 이용하여
대금 결제, 송금 등 금융 거래 뿐 아니라 모든 종류의 계약을 처리할 수있도록 기능을 확장하면서 널리 확산되었다.
애초에 부테린은 기존 비트코인의 소스 코드 일부를 수정해 스마트 계약 기능이 구현하고자 했지만
비트코인 커뮤니티에서 자신의 요구가 받아들여지지 않자
비트코인을 포크(fork)하여 새로 이더리움 (Ethereum)이라는 가상화폐를 만들고 스마트 계약 기능을 구현했다.
이 기능을 사용하면 개발자가 직접 계약 조건과 내용을 코딩할 수 있다.
그렇기 때문에 원칙적으로 인간이 행하고자 하는 모든 종류의 계약을 이더리움 플랫폼을 이용해 구현할 수 있다.

이리하여 2015년에는 이더리움 블록체인이 출시되었다.
이는 블록체인 기술을 새로운 경지로 이끌어갈 가능성을 제시했다.
이더리움 네트워크는 탈중앙화된 애플리케이션이 블록체인 상에서 운영되도록 해주는 동시에
스마트 계약을 가능하게 한다.
많은 이들이 스마트 계약과 탈중앙화 앱을 블록체인 기술의 미래로 인식했고 위에서 밝힌 바처럼  
이를 블록체인 2.0이라고 명명했다.
이더리움이 블록체인 2.0으로 각광받는 이유는 솔리디티(Solidity) 때문이다.
다만 솔리디티(Solidity)라는 자바 기반의 독립적인 프로그래밍 언어를 알아야 하기 때문에
프로그래머가 아닌 일반인들이 직접 스마트 계약의 조건과 내용을 코딩하기는 어렵다.


스마트 컨트랙트(smart contract)는 컴퓨터 프로그래밍으로 만드는 계약이므로 조건에 맞으면 자동실행되는 계약이다.
강제로 되는 것이라 무를 수 없으며 튜링 완전 언어로 되어 있어 무슨 계약이든 만들 수 있다.  


비트코인에서는 트랜잭션의 의미가 비트코인의 움직임만을 담는 것이라면
이더리움 블록체인에서는 트랜잭션 안에 메시지 자체만 보내거나 1BTC를 전송 한다고 할 경우
전송과 더불어 계약 내용을 담을 수 있다.
또한 비트코인의 지갑과 다르게 이더리움에는 Account 개념이 있다.
이 계정 (Account)에는 비트코인 지갑과 같이 화폐 움직임을 다루는 계정 (External Owned Account)과
계약 내용을 다루는 계정 (Contract Account)가 따로 있다.
이 두 가지 계정에서 만든 내용이 트랜잭션에 같이 들어가게 된다.
바로 이 계정의 개념이 비트코인과 차이가 나는 중요한 부분들이다.

또한 비트코인 블록체인에서전 블록의 해시를 연결해 체인을 만들며 그 과정이 제 3자의 신뢰가 필요없게 만들어 주듯
비트코인이 화폐 흐름을 블록 해시로 연결해 이중지불문제나 신뢰성 문제를 해결했다면
이더리움은 계약의 내용까지 블록해시로 연결하여 자동차 딜러와 같이 신뢰할 수 있는 제 3자가 필요없는 계약을 만든 것이다.

비트코인이 비트코인의 이동과정만 담는다면,
이더리움은 계약의 내용과 진행과정이 담긴다는 것이다.

스마트 컨트랙트의 간단한 예를 들어본다.

 




비탈릭 부테린은 "블록체인 활용이 진일보하기 위해서는 블록체인 상에서 사용자들이 실물자산과 연결된 토큰 같은 디지털 자산에 쉽게 접근할 수 있어야 한다"고 말했다.
이더리움은 블록체인 기술 발전의 새로운 단계이다.
비트코인 블록체인과 동일한 기초위에 구축되었지만 블록체인의 가능성을 새로운 수준으로 끌어 올렸다.

이더리움 블록체인이 내재된 프로그래밍 언어를 통해 애플리케이션과 스마트 계약이 가능한 것이다.

 

 

'알기쉬운 블록체인' 카테고리의 다른 글

마이이더월렛 가스 개념과 수수료  (1) 2018.12.13
이더리움 계정과 트랜잭션  (0) 2018.12.12
이더리움과 이더 Ethereum , Ether  (0) 2018.12.10
TXID , Txhash  (0) 2018.12.07
KYC 인증, (Know Your Customer)  (0) 2018.12.06