본문으로 건너뛰기

스마트 계약은 어떻게 중개자 없이 실행될까

블록체인에 배포된 프로그램이 입력과 상태에 따라 같은 결과를 실행하는 원리와 한계를 살펴봅니다.

스마트 계약은 법률 문서가 아니라 블록체인에 배포된 프로그램입니다. 사용자가 거래를 보내 함수를 호출하면 네트워크의 노드들이 같은 코드를 실행하고 결과를 공유합니다.

코드가 상태를 바꾼다

스마트 계약은 토큰 잔액, 소유권, 대출 조건처럼 블록체인 위의 상태를 저장할 수 있습니다. 미리 정한 조건이 충족되면 값을 이전하거나 기록을 변경합니다. 한 번 배포된 계약은 특정 회사의 서버가 꺼져도 네트워크가 유지되는 동안 호출할 수 있습니다.

조합 가능성이 생태계를 만든다

공개된 계약은 다른 계약에서 다시 호출할 수 있습니다. 결제 토큰, 거래소, 대출 서비스가 서로 연결되는 이유입니다. 새로운 서비스가 기존 기능을 다시 만들지 않고 공개된 계약을 조합할 수 있다는 장점이 있습니다.

자동 실행이 안전을 보장하지는 않는다

코드는 작성된 대로 실행되지만, 코드 자체에 오류가 있거나 외부 가격 정보를 잘못 받아들이면 손실이 발생할 수 있습니다. 관리자 권한, 업그레이드 가능성, 감사 여부와 외부 데이터 의존성을 함께 확인해야 합니다.

스마트 계약의 핵심은 ‘신뢰가 필요 없다’는 구호보다, 누구의 코드가 어떤 조건에서 무엇을 바꾸는지 공개적으로 확인할 수 있다는 점입니다.

참고 자료