티스토리 뷰

블록체인/Ethereum

스마트 컨트랙트란

longtime노씨 2018. 5. 7. 03:41

빨간색 글씨는 추후 연구 후에 update 예정


전통적인 계약서가 효력을 갖기 위해서는 계약 당사자 간에 사인을 하고 계약서를 나눠 갖거나 공증을 함으로써 계약이 정의된다. 계약에 명시된 조건을 실행하지 않거나 계약에 분쟁이 발생하면 법적으로 문제를 해결한다. 전통적인 계약에서는 계약 당사자 간에 분쟁이 발생하면 법적으로 문제를 해결하기 위해 변호사가 개입해야 되는 등 분쟁 해결에 많은 시간과 비용이 발생한다.


스마트 컨트랙트는 디지털 형식으로 정의된 계약들의 집합이며, 컴퓨터 프로그램화 되어 있다. 스마트 컨트랙트는 사람의 개입 없이 프로그램으로 명시된 내용에 따라 계약을 집행하기 때문에 계약 당사자 간에 분쟁이 발생하기 어렵다.


전통적인 계약 vs 스마트 컨트랙트


 

 전통적인 계약

스마트컨트랙트 

계약 명세 

종이 

프로그램 코드 

계약 실행 

계약 당사자들이 실행 

코드에 의해 실행됨 

분쟁 발생시 

법적으로 해결 

코드에 의해 실행 =>분쟁x

관련기록

계약 당사자들이 서류 보관

전자적으로 블록에 기록



Q. 코드에 의해 실행된다 해도 분쟁이 발생하는 상황은 어떤 경우일까?



Smart contract는 Solc compiler에서 compile된 후 Byte Code가 된다. 해당 Byte Code는 Ethereum Client를 통해 블록체인에 배포되고 account의 항목으로 저장된다. 배포 후 스마트 컨트랙트 주소가 생성되고 자바스크립트 등 다른 언어로 개발된 어플리케이션에서 해당 컨트랙트의 바이트코드에 접근하여 활용할 수 있도록 도와주는 interface인 ABI(Application Binary Interface)가 함께 생성 된다.










Q. 이더리움 클라이언트(Geth)가 각각의 Node를 지칭하는건가? 정확히 이더리움 클라이언트가 무엇인가?

Q. 해당 컨트랙트 주소에 입력값과 가스 비용을 지불하고 트랜잭션을 발생하면 실행된다는 것을 직접 코드를 통해 실행해보고 이해하기



'블록체인 > Ethereum' 카테고리의 다른 글

다음 해야할 것  (0) 2018.05.07
EVM(Ethereum Virtual machine)  (0) 2018.05.07
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함