스마트 계약이란?
세계 2위 암호화폐 거래소인 Coinbase에서는 스마트 컨트렉트 정의를 이렇게 정리했다.
정의
스마트 계약은 모든 계약과 마찬가지로 계약 조건을 설정합니다. 그러나 기존 계약과 달리 스마트 계약의 조건은 Ethereum과 같은 블록체인에서 실행되는 코드로 실행됩니다. 스마트 계약을 통해 개발자는 대출, 보험, 물류, 게임에 이르기까지 정교한 피어투피어 기능을 제공하는 동시에 블록체인 보안, 안정성 및 접근성을 활용하는 앱을 구축할 수 있습니다. -미국 암호화폐 코인거래소 CoinBase
https://www.coinbase.com/learn/crypto-basics/what-is-a-smart-contract
즉 스마트 컨트렉트는 블록체인 기술 기반으로 자동 실행되는 계약이다. 계약 조건이 충족되면 스마트 컨트렉트는 사전에 정의된 규칙에 따라 자동으로 실행되며, 중개자 없이도 신뢰할 수 있는 거래를 보장이 가능하다. 스마트 컨트렉트는 이더리움(Ethereum)블록체인에서 가장 널리 사용되며, 다른 블록체인 플렛폼에서도 다양한 형태로 활용되고 있다.
스마트 컨트랙트의 원리는 블록체인과 프로그래밍 언어를 결합하여 계약의 실행을 자동화하는 데 있다. 이를 이해하기 위해 다음과 같은 개념들이 중요하다:
블록체인
- 블록체인은 분산 원장 기술로, 모든 참여자가 동일한 데이터베이스를 공유하며 변경 사항이 발생하면 네트워크 전체에 기록된다. 모든 트랜잭션은 블록에 기록되고, 이 블록은 암호학적 방식으로 연결되어 있어 안전하게 보호된다.
- 스마트 컨트랙트는 이 블록체인 위에 존재하며, 그 내용과 실행 과정이 모든 참여자에게 투명하게 공개된다.
프로그램 코드
- 스마트 컨트랙트는 특정 조건을 정의한 코드로 작성된다. 이 코드는 주로 이더리움 같은 플랫폼에서 Solidity라는 프로그래밍 언어로 작성된다.(Web Assembly, Michelson 포함)
- 이 코드에는 계약의 조건, 거래의 규칙, 실행될 기능 등이 포함된다.
조건 기반 자동 실행
- 스마트 컨트랙트는 "조건 → 실행"의 논리를 기반으로 한다. 예를 들어, "A가 B에게 1이더(ETH)를 보내면, B는 A에게 상품을 발송한다"는 조건이 있을수도 있다.
- 이 조건이 충족되면, 스마트 컨트랙트는 자동으로 해당 행동을 수행한다. 만약 조건이 충족되지 않으면, 거래는 일어나지 않는다.
탈중앙화된 검증
- 블록체인의 모든 노드(참여자)는 스마트 컨트랙트의 실행을 검증한다. 이는 계약이 블록체인에 기록된 이후에 누구도 내용을 변경할 수 없음을 의미한다.
- 이로 인해 스마트 컨트랙트는 신뢰할 수 있고 조작이 불가능한 시스템이 된다.
트랜잭션 및 상태 변화
- 스마트 컨트랙트는 특정 트랜잭션이 발생할 때마다 상태(state)가 변경된다. 이 상태 변화는 블록체인에 기록되어 네트워크 참여자 모두가 확인할 수 있다.
- 예를 들어, A가 B에게 돈을 보내는 조건이 충족되면, A의 계정에서 돈이 차감되고 B의 계정에 돈이 추가된다. 이 과정이 블록체인에 기록되어 영구히 보존된다.
비가역성 및 투명성
- 한 번 실행된 스마트 컨트랙트는 되돌릴 수 없다. 이는 블록체인의 특성상, 이미 발생한 트랜잭션을 되돌리거나 수정할 수 없기 때문이다.
- 또한, 모든 참여자가 스마트 컨트랙트의 내용을 확인할 수 있어 투명성이 보장된다.
가스(Gas)
- 스마트 컨트랙트를 실행하는 데는 가스라고 불리는 일종의 수수료가 필요하다. 이 가스는 네트워크의 리소스를 사용하는 대가로, 이더리움 네트워크에서 이더(ETH)로 지불된다.
- 가스는 코드의 복잡도와 실행에 필요한 연산량에 따라 다르며, 충분한 가스가 제공되지 않으면 스마트 컨트랙트가 실행되지 않을 수 있다.
어디서 사용하느냐?
보통 스마트 계약 기반 앱(분산형 애플리케이션 or dapp이라고 불림) DeFi 앱을 사용하여 암호화폐 보유자가 은행이나 다른 금융 기관이 수수료를 내지 않고 전 세계 어디에서나 저축, 대출, 보험과 같은 복잡한 금융 거래에 참여가 가능하다. 2024년 기준 현재 가장 인기있는 스마트 계약 기반 애플리케이션 중 일부는 다음과 같다.
- 유니스왑: 스마트 계약을 통해 사용자가 중앙 기관이 환율을 설정하지 않고도 특정 종류의 암호화폐를 거래할 수 있도록 하는 분산형 거래소이다.
- 컴파운드: 스마트 계약을 사용하여 투자자는 이자를 벌 수 있고 차용인은 중간에 은행이 필요 없이 즉시 대출을 받을 수 있는 플랫폼이다.
- USDC: 스마트 계약을 통해 미국 달러에 고정된 암호화폐로, USDC 1개는 미국 달러 1개의 가치가 있다. UDDC는 스테이블코 인으로 알려진 새로운 디지털 화폐 범주에 속한다. (스테이블 코인에 관한 내용은 암호화폐에 대한 내용을 다룰때 따로 소개할 예정이다. ...암호화폐에도 종류가 여러가지 있기 때문. layer2, solana ecosystem, base, meme coin 등등 너무나 많다.)
'Web지식 > web3' 카테고리의 다른 글
Web3의 합의 메커니즘 (9) | 2024.09.22 |
---|---|
블록체인(BlockChain) (1) | 2024.08.25 |
web3.0 탈중앙화란? (0) | 2024.08.17 |
web2란? (0) | 2024.08.03 |
Web1.0란? (0) | 2024.07.28 |