스마트 컨트랙트 작동 원리
스마트 컨트랙트, 어떻게 작동하는가?
스마트 컨트랙트는 블록체인 상에서 전자 계약서로 이루어지며, 계약 당사자들끼리 합의한 내용 및 조건이 충족되면 자동으로 실행(self-execution)되도록 설계되어 있습니다. 계약 내용을 스마트 컨트랙트 소스 코드로 작성하여 블록체인 네트워크에 전송하면 네트워크 참여자(노드)들의 유효성 검증이 이뤄지며, 검증 완료 시 해당 스마트 컨트랙트가 포함된 블록이 생성되며 배포됩니다.
*이더리움 네트워크에서는 솔리디티(Solidity) 같은 독자적인 프로그램 언어를 이용하여 코드 작성
이후 블록체인은 스마트 컨트랙트가 담긴 블록의 변경 상태를 지속적으로 확인합니다. 조건에 따른 상태 변경시 명령 실행 비용을 계산하고 상태변경 트랜잭션을 생성합니다.
예를 들어, 부동산을 매도하고자 하는 사람이 부동산 매매 계약의 내용이 담긴 스마트 컨트랙트를 만들어 블록체인에 전송하면 블록이 생성되어 배포됩니다. 블록체인 내 노드들은 이 스마트 컨트랙트를 검토하여 블록을 만드는데 합의하고 스마트 컨트랙트가 담긴 블록을 자신의 블록체인 맨 끝에 추가합니다. 이후 변경 사항들을 끊임없이 다른 블록들과 교류하면서 오류가 없는지 혹은 조건에 충족되어 추가 계약 사항이 진행되는지 체크합니다.
부동산의 매수인은 블록체인 상에서 공개되어 있는 스마트 컨트랙트의 내용을 직접 확인한 후, 스마트 컨트랙트를 실행하기 위해 서명을 하게 됩니다. 이후 부동산 매수자가 스마트 컨트랙트에 담긴 내용에 따라 부동산 매매 대가에 해당하는 디지털자산을 매도인에게 이전하게 되면 등록된 부동산의 소유권이 매수자에게 자동으로 이전됩니다. 이때 블록체인 상에서의 스마트 컨트랙트는 대부분 오픈 소스(open source), 즉 누구나 확인할 수 있기 때문에 그 내용을 임의로 변경하거나 조작할 수 없습니다. 또한 스마트 컨트랙트의 체결사실도 모두에게 공유됩니다.
물론, 위에 제시된 예시처럼 블록체인과 실물경제를 연결하는 스마트 컨트랙트의 경우에는 블록체인 외부에서 이루어지는 일들을 블록체인 상에서 담보할 수 없는 오라클 문제(oracle problem)가 발생하는 등의 여러 보완점이 존재합니다. 그렇지만 아래와 같은 장점이 있습니다.
스마트 컨트랙트 장점은 무엇이 있을까요?
크게 자율성, 신뢰, 비용절감, 안정성, 효율성 등이 스마트 컨트랙트의 장점으로 분류됩니다.
1) 자율성
블록체인 내에서 진행되기 때문에 공신력을 가진 제 3자, 혹은 기관이 필요하지 않습니다. 이에 따라 거래 당사자들이 계약에 대한 온전한 권한, 통제성을 갖게 됩니다.
2) 비용 절감
블록체인에서 관련 계약, 거래 내역 등을 보증할 수 있는 제3자나 공신력 있는 기관이 필요하지 않기 때문에 비용 절감의 효과를 가질 수 있습니다.
3) 신뢰성
블록체인 내 스마트 컨트랙트에 의해 계약이 공정하게 진행되며 문서의 위변조가 극히 어려워 뛰어난 신뢰성을 가집니다.
4) 보안성
신뢰성과 연결된 것으로 문서가 암호화되어 블록체인 내 분산 원장 기술에 의해 안전하게 보관됩니다.