스마트 계약

요약

계약 당사자가 사전에 협의한 내용을 프로그래밍 하여 이 계약 조건이 만족되면 자동으로 계약 내용이 실행되도록 하는 시스템이다.

스마트 계약을 활용함으로써 해킹 위험이 낮아지고, 보안 비용이 줄어드며, 중개자가 없으므로 수수료도 절감되고, 무결성 검증 시간이 단축될 수 있다. 계약의 투명성으로 인해 이중지불 위험이 사라지며, 시스템 구축 비용이 절감되고, 확장성도 가질 수 있다.

서로 간의 신뢰가 필요한 서비스 영역에서 가장 큰 적용 효과를 보일것이라고 예상된다.

작동 원리

스마트 계약은 트랜잭션과 쿼리라는 두가지 인터페이스가 있다. 트랜젝션을 통한 인터페이스는 트랜잭션 데이터베이스에 저장되고 스마트 계약의 상태를 변경할 수 있는 접근방법이다. 그에 비해 쿼리는 트랜젝션 데이터베이스에 기록이 남지 않으면서 스마트 계약의 상태만 읽는 작업이다.

예시

상품 거래는 스마트 계약 시스템에서 다음과 같이 작동한다.

  • 기록 저장 판매자가 상품을 게시한다는 내용을 코딩하여 트랜잭션을 만든 후 블록체인에 전송한다. 상품 등록 트랜잭션 발생 시, 네트워크의 모든 노드는 그것을 공유하고 블록을 생성한 후 블록을 브로드캐스팅한다. 블록을 전달받은 노드들은 그 블록을 자신의 블록체인 끝에 추가라고, 해당 블록의 트랜잭션을 적용시켜 자신의 스마트 계약 데이터베이스를 동기화한다.

  • 상품 조회 구매자는 네트워크에서 상품을 조회한다. 저장되어 있는 값을 읽어 오는 것은 트랜잭션을 발생시키지 않으며 블록체인의 어떤 데이터도 변경시킬 필요 없이 쿼리 정보를 블록체인에 동기화할 필요가 없으며 블록 동기화 타이밍에 상관없이 바로 응답이 가능하다.

  • 계약 이행 구매자가 상품 구매 트랜잭션을 보내면 그 트랜잭션을 네트워크에 공유하고 동기화한다. 모든 노드의 스마트 계약 데이터베이스에 상품 구매자를 등록하고 돈을 판매자에게 전송한다. 그렇게 되면 콘텐츠의 소유권이 구매자에게로 이동한다.

Last updated