리비전 diff
빈 문서 → r1 · 2026-07-19 22:18
본문 변경 비교
+891
-0
변경 0
기준: 새 문서
| 이전 | 이전 내용 | 현재 | 현재 내용 |
|---|---|---|---|
| 1 | [[인포박스]] | ||
| 2 | | 스마트 컨트랙트(Smart Contract) | | | ||
| 3 | |:---:|:---:| | ||
| 4 | | **분류** | 코인 용어 / 블록체인 기술 / 스마트 컨트랙트 / 온체인 프로그램 | | ||
| 5 | | **영문명** | Smart Contract | | ||
| 6 | | **한 줄 요약** | 블록체인 위에 배포되어 정해진 조건과 코드에 따라 자동으로 실행되는 프로그램 | | ||
| 7 | | **관련 분야** | 블록체인, 이더리움, DeFi, NFT, DAO, 토큰, 오라클, RWA, 게임파이 | | ||
| 8 | | **주요 기능** | 조건부 실행, 자산 전송, 토큰 발행, 권한 관리, 자동 정산, 온체인 기록 | | ||
| 9 | | **대표 플랫폼** | Ethereum, BNB Chain, Solana, Sui, Aptos, Avalanche, Polygon, Arbitrum, Optimism | | ||
| 10 | | **대표 언어** | Solidity, Vyper, Rust, Move, Cairo | | ||
| 11 | | **대표 실행 환경** | EVM, SVM, Move VM, WASM | | ||
| 12 | | **대표 활용 사례** | ERC-20 토큰, NFT, DEX, 대출 프로토콜, 스테이블코인, DAO, 브리지, 게임 아이템 | | ||
| 13 | | **관련 개념** | 가스비, 트랜잭션, ABI, 오라클, 프록시, 멀티시그, 감사, 재진입 공격 | | ||
| 14 | | **공식 참고 문서** | [Ethereum Smart Contracts](https://ethereum.org/developers/docs/smart-contracts/) | | ||
| 15 | | **Solidity 문서** | [Solidity Docs](https://docs.soliditylang.org/) | | ||
| 16 | | **OpenZeppelin** | [OpenZeppelin Docs](https://docs.openzeppelin.com/) | | ||
| 17 | | **Chainlink Oracle** | [Chainlink Docs](https://docs.chain.link/) | | ||
| 18 | [[/인포박스]] | ||
| 19 | |||
| 20 | ## 개요 | ||
| 21 | |||
| 22 | 스마트 컨트랙트는 블록체인 위에서 실행되는 프로그램이다. | ||
| 23 | |||
| 24 | 일반적인 계약은 사람이 계약서를 작성하고, 조건이 충족되었는지 확인한 뒤, 은행·법원·플랫폼·중개기관 등이 실행을 돕는다. | ||
| 25 | |||
| 26 | 반면 스마트 컨트랙트는 조건과 실행 규칙을 코드로 작성하고, 그 코드를 블록체인에 배포한다. | ||
| 27 | |||
| 28 | 이후 사용자가 트랜잭션을 보내면 스마트 컨트랙트는 정해진 코드에 따라 자동으로 실행된다. | ||
| 29 | |||
| 30 | 예를 들어 다음과 같은 규칙을 코드로 만들 수 있다. | ||
| 31 | |||
| 32 | - 사용자가 토큰을 보내면 NFT를 발행한다. | ||
| 33 | - 담보 가치가 기준 이하로 떨어지면 대출 포지션을 청산한다. | ||
| 34 | - 투표 기간이 끝나면 가장 많은 표를 받은 제안을 실행한다. | ||
| 35 | - 일정 수량의 토큰을 예치하면 보상을 지급한다. | ||
| 36 | - 두 사용자가 조건을 만족하면 자산을 교환한다. | ||
| 37 | - 특정 NFT 보유자만 콘텐츠를 열람할 수 있게 한다. | ||
| 38 | |||
| 39 | 스마트 컨트랙트는 블록체인 애플리케이션의 핵심 구성 요소이다. | ||
| 40 | |||
| 41 | DeFi, NFT, DAO, 스테이블코인, 브리지, 게임파이, RWA, 런치패드, 온체인 거버넌스는 대부분 스마트 컨트랙트를 기반으로 작동한다. | ||
| 42 | |||
| 43 | 스마트 컨트랙트의 핵심 특징은 다음과 같다. | ||
| 44 | |||
| 45 | 1. 블록체인에 배포된다. | ||
| 46 | 2. 특정 주소를 가진다. | ||
| 47 | 3. 코드와 상태를 가진다. | ||
| 48 | 4. 트랜잭션을 통해 실행된다. | ||
| 49 | 5. 실행 결과가 온체인에 기록된다. | ||
| 50 | 6. 배포 후 임의 수정이 어렵다. | ||
| 51 | 7. 누구나 코드를 검증할 수 있는 경우가 많다. | ||
| 52 | 8. 중개자 없이 자동 실행될 수 있다. | ||
| 53 | |||
| 54 | 스마트 컨트랙트는 “자동 계약서”라고 설명되기도 하지만, 실제로는 법률 문서라기보다 블록체인 위에서 실행되는 프로그램에 가깝다. | ||
| 55 | |||
| 56 | ## 스마트 컨트랙트란 | ||
| 57 | |||
| 58 | 스마트 컨트랙트는 특정 조건이 충족되면 미리 정해진 로직을 실행하는 온체인 프로그램이다. | ||
| 59 | |||
| 60 | 스마트 컨트랙트는 사람이 직접 실행하지 않아도 된다. | ||
| 61 | |||
| 62 | 사용자가 트랜잭션을 보내면 블록체인 네트워크의 검증자 또는 노드가 해당 코드를 실행하고, 실행 결과를 네트워크 상태에 반영한다. | ||
| 63 | |||
| 64 | 스마트 컨트랙트는 다음과 같은 구조를 가진다. | ||
| 65 | |||
| 66 | - 코드 | ||
| 67 | - 상태 | ||
| 68 | - 함수 | ||
| 69 | - 이벤트 | ||
| 70 | - 주소 | ||
| 71 | - 권한 | ||
| 72 | - 저장소 | ||
| 73 | - 외부 호출 | ||
| 74 | - 트랜잭션 실행 기록 | ||
| 75 | |||
| 76 | 예를 들어 ERC-20 토큰 스마트 컨트랙트에는 다음과 같은 정보가 들어간다. | ||
| 77 | |||
| 78 | - 토큰 이름 | ||
| 79 | - 심볼 | ||
| 80 | - 총 공급량 | ||
| 81 | - 주소별 잔액 | ||
| 82 | - 전송 함수 | ||
| 83 | - 승인 함수 | ||
| 84 | - 소각 함수 | ||
| 85 | - 발행 함수 | ||
| 86 | - 이벤트 로그 | ||
| 87 | |||
| 88 | 사용자가 토큰을 전송하면 스마트 컨트랙트는 보내는 주소의 잔액을 줄이고, 받는 주소의 잔액을 늘린다. | ||
| 89 | |||
| 90 | 이 과정은 블록체인에 기록되고, 누구나 거래 내역을 확인할 수 있다. | ||
| 91 | |||
| 92 | ## 작동 방식 | ||
| 93 | |||
| 94 | 스마트 컨트랙트의 기본 작동 흐름은 다음과 같다. | ||
| 95 | |||
| 96 | 1. 개발자가 스마트 컨트랙트 코드를 작성한다. | ||
| 97 | 2. 코드를 컴파일한다. | ||
| 98 | 3. 블록체인 네트워크에 배포한다. | ||
| 99 | 4. 컨트랙트 주소가 생성된다. | ||
| 100 | 5. 사용자가 컨트랙트 함수에 트랜잭션을 보낸다. | ||
| 101 | 6. 네트워크가 코드를 실행한다. | ||
| 102 | 7. 상태가 변경된다. | ||
| 103 | 8. 실행 결과와 이벤트가 블록체인에 기록된다. | ||
| 104 | |||
| 105 | 예를 들어 NFT 민팅 컨트랙트라면 다음과 같은 흐름이 가능하다. | ||
| 106 | |||
| 107 | 1. 사용자가 민팅 버튼을 누른다. | ||
| 108 | 2. 지갑에서 트랜잭션에 서명한다. | ||
| 109 | 3. 트랜잭션이 블록체인에 전송된다. | ||
| 110 | 4. 스마트 컨트랙트가 민팅 조건을 확인한다. | ||
| 111 | 5. 조건이 맞으면 NFT를 발행한다. | ||
| 112 | 6. NFT 소유자가 사용자 주소로 기록된다. | ||
| 113 | 7. 민팅 이벤트가 발생한다. | ||
| 114 | 8. 블록 익스플로러에서 기록을 확인할 수 있다. | ||
| 115 | |||
| 116 | ## 코드와 상태 | ||
| 117 | |||
| 118 | 스마트 컨트랙트는 코드와 상태로 구성된다. | ||
| 119 | |||
| 120 | ### 코드 | ||
| 121 | |||
| 122 | 코드는 스마트 컨트랙트의 규칙이다. | ||
| 123 | |||
| 124 | 예를 들어 다음과 같은 로직이 코드에 포함될 수 있다. | ||
| 125 | |||
| 126 | - 누가 토큰을 받을 수 있는지 | ||
| 127 | - 몇 개의 토큰을 발행할 수 있는지 | ||
| 128 | - 언제 출금할 수 있는지 | ||
| 129 | - 어떤 조건에서 청산되는지 | ||
| 130 | - 누가 관리자 권한을 가지는지 | ||
| 131 | - 수수료를 얼마로 설정할지 | ||
| 132 | - 보상을 어떻게 계산할지 | ||
| 133 | |||
| 134 | ### 상태 | ||
| 135 | |||
| 136 | 상태는 스마트 컨트랙트가 현재 기억하고 있는 데이터이다. | ||
| 137 | |||
| 138 | 예를 들어 다음 정보가 상태에 해당한다. | ||
| 139 | |||
| 140 | - 주소별 토큰 잔액 | ||
| 141 | - NFT 소유자 | ||
| 142 | - 예치된 담보 수량 | ||
| 143 | - 대출 부채 | ||
| 144 | - 투표 수 | ||
| 145 | - 관리자 주소 | ||
| 146 | - 유동성 풀 잔액 | ||
| 147 | - 락업 종료 시간 | ||
| 148 | - 보상 누적량 | ||
| 149 | |||
| 150 | 스마트 컨트랙트의 함수가 실행되면 상태가 변경될 수 있다. | ||
| 151 | |||
| 152 | 예를 들어 토큰 전송 함수가 실행되면 보내는 사람과 받는 사람의 잔액 상태가 바뀐다. | ||
| 153 | |||
| 154 | ## 트랜잭션 | ||
| 155 | |||
| 156 | 스마트 컨트랙트는 보통 트랜잭션을 통해 실행된다. | ||
| 157 | |||
| 158 | 트랜잭션은 사용자가 블록체인에 보내는 요청이다. | ||
| 159 | |||
| 160 | 예를 들어 다음 행동은 모두 트랜잭션이다. | ||
| 161 | |||
| 162 | - 토큰 전송 | ||
| 163 | - NFT 민팅 | ||
| 164 | - DEX 스왑 | ||
| 165 | - 대출 실행 | ||
| 166 | - 담보 예치 | ||
| 167 | - 스테이킹 | ||
| 168 | - DAO 투표 | ||
| 169 | - 컨트랙트 배포 | ||
| 170 | - 권한 변경 | ||
| 171 | |||
| 172 | 트랜잭션이 실행되면 가스비가 발생할 수 있다. | ||
| 173 | |||
| 174 | 가스비는 네트워크가 해당 코드를 실행하고 데이터를 저장하는 데 필요한 비용이다. | ||
| 175 | |||
| 176 | 스마트 컨트랙트 트랜잭션은 단순 코인 전송보다 복잡할 수 있으므로 더 많은 가스비가 필요할 수 있다. | ||
| 177 | |||
| 178 | ## 가스비 | ||
| 179 | |||
| 180 | 가스비는 스마트 컨트랙트를 실행하기 위해 지불하는 네트워크 수수료이다. | ||
| 181 | |||
| 182 | 스마트 컨트랙트는 단순히 글을 저장하는 것이 아니라 실제 계산을 수행한다. | ||
| 183 | |||
| 184 | 계산이 많거나 저장하는 데이터가 많을수록 더 많은 가스가 필요하다. | ||
| 185 | |||
| 186 | 가스비가 발생하는 이유는 다음과 같다. | ||
| 187 | |||
| 188 | - 네트워크 자원 사용 비용 지불 | ||
| 189 | - 스팸 트랜잭션 방지 | ||
| 190 | - 검증자 또는 채굴자 보상 | ||
| 191 | - 복잡한 계산에 비용 부과 | ||
| 192 | - 온체인 데이터 저장 비용 반영 | ||
| 193 | |||
| 194 | 예를 들어 다음 거래는 일반적으로 가스비가 든다. | ||
| 195 | |||
| 196 | - ERC-20 토큰 전송 | ||
| 197 | - NFT 민팅 | ||
| 198 | - DEX 스왑 | ||
| 199 | - 대출 포지션 생성 | ||
| 200 | - DAO 투표 | ||
| 201 | - 컨트랙트 배포 | ||
| 202 | - 브리지 사용 | ||
| 203 | |||
| 204 | 반대로 단순 조회 함수는 블록체인 상태를 바꾸지 않기 때문에 사용자가 직접 가스비를 내지 않는 경우가 많다. | ||
| 205 | |||
| 206 | ## 배포 | ||
| 207 | |||
| 208 | 스마트 컨트랙트를 블록체인에 올리는 과정을 배포라고 한다. | ||
| 209 | |||
| 210 | 배포가 완료되면 컨트랙트 주소가 생성된다. | ||
| 211 | |||
| 212 | 이 주소는 사용자가 해당 컨트랙트와 상호작용할 때 사용하는 주소이다. | ||
| 213 | |||
| 214 | 배포 과정은 일반적으로 다음과 같다. | ||
| 215 | |||
| 216 | 1. 개발자가 코드를 작성한다. | ||
| 217 | 2. 테스트넷에서 테스트한다. | ||
| 218 | 3. 보안 검토 또는 감사를 진행한다. | ||
| 219 | 4. 메인넷 배포 트랜잭션을 보낸다. | ||
| 220 | 5. 컨트랙트 주소가 생성된다. | ||
| 221 | 6. 블록 익스플로러에 코드를 검증한다. | ||
| 222 | 7. 프론트엔드 또는 앱에서 해당 주소를 연결한다. | ||
| 223 | |||
| 224 | 컨트랙트 주소를 잘못 입력하면 다른 컨트랙트와 상호작용할 수 있으므로, 공식 주소 확인이 중요하다. | ||
| 225 | |||
| 226 | ## ABI | ||
| 227 | |||
| 228 | ABI는 Application Binary Interface의 약자이다. | ||
| 229 | |||
| 230 | 스마트 컨트랙트와 외부 애플리케이션이 대화하기 위한 인터페이스이다. | ||
| 231 | |||
| 232 | 사용자가 웹사이트에서 버튼을 누르면, 프론트엔드는 ABI를 이용해 어떤 함수를 호출해야 하는지 이해한다. | ||
| 233 | |||
| 234 | ABI에는 다음 정보가 포함된다. | ||
| 235 | |||
| 236 | - 함수 이름 | ||
| 237 | - 함수 입력값 | ||
| 238 | - 함수 출력값 | ||
| 239 | - 이벤트 구조 | ||
| 240 | - 읽기 함수 | ||
| 241 | - 쓰기 함수 | ||
| 242 | |||
| 243 | 예를 들어 DEX 앱은 ABI를 통해 스마트 컨트랙트의 `swap`, `addLiquidity`, `removeLiquidity` 같은 함수를 호출할 수 있다. | ||
| 244 | |||
| 245 | ## 이벤트 | ||
| 246 | |||
| 247 | 이벤트는 스마트 컨트랙트 실행 중 발생한 기록을 외부에서 쉽게 추적할 수 있도록 남기는 로그이다. | ||
| 248 | |||
| 249 | 예를 들어 ERC-20 토큰에서는 토큰 전송 시 `Transfer` 이벤트가 발생한다. | ||
| 250 | |||
| 251 | NFT가 발행될 때도 전송 이벤트가 기록된다. | ||
| 252 | |||
| 253 | 이벤트는 다음 용도로 사용된다. | ||
| 254 | |||
| 255 | - 블록 익스플로러 표시 | ||
| 256 | - 지갑 내 거래 내역 표시 | ||
| 257 | - 데이터 인덱싱 | ||
| 258 | - 알림 서비스 | ||
| 259 | - 디앱 상태 업데이트 | ||
| 260 | - 분석 대시보드 | ||
| 261 | |||
| 262 | 이벤트는 스마트 컨트랙트의 상태 변경을 외부 서비스가 추적하는 데 매우 중요하다. | ||
| 263 | |||
| 264 | ## 읽기 함수와 쓰기 함수 | ||
| 265 | |||
| 266 | 스마트 컨트랙트 함수는 크게 읽기 함수와 쓰기 함수로 나눌 수 있다. | ||
| 267 | |||
| 268 | ### 읽기 함수 | ||
| 269 | |||
| 270 | 읽기 함수는 블록체인 상태를 조회만 한다. | ||
| 271 | |||
| 272 | 예시는 다음과 같다. | ||
| 273 | |||
| 274 | - 토큰 잔액 조회 | ||
| 275 | - 총 공급량 조회 | ||
| 276 | - NFT 소유자 조회 | ||
| 277 | - 현재 가격 조회 | ||
| 278 | - 보상 누적량 조회 | ||
| 279 | - 담보비율 조회 | ||
| 280 | |||
| 281 | 읽기 함수는 상태를 바꾸지 않기 때문에 일반적으로 가스비를 직접 내지 않는다. | ||
| 282 | |||
| 283 | ### 쓰기 함수 | ||
| 284 | |||
| 285 | 쓰기 함수는 블록체인 상태를 변경한다. | ||
| 286 | |||
| 287 | 예시는 다음과 같다. | ||
| 288 | |||
| 289 | - 토큰 전송 | ||
| 290 | - NFT 민팅 | ||
| 291 | - 스왑 | ||
| 292 | - 예치 | ||
| 293 | - 출금 | ||
| 294 | - 스테이킹 | ||
| 295 | - 대출 | ||
| 296 | - 청산 | ||
| 297 | - 투표 | ||
| 298 | |||
| 299 | 쓰기 함수는 트랜잭션을 발생시키며, 가스비가 필요하다. | ||
| 300 | |||
| 301 | ## 스마트 컨트랙트 언어 | ||
| 302 | |||
| 303 | 스마트 컨트랙트를 작성하는 언어는 블록체인마다 다를 수 있다. | ||
| 304 | |||
| 305 | 대표적인 언어는 다음과 같다. | ||
| 306 | |||
| 307 | ### Solidity | ||
| 308 | |||
| 309 | Solidity는 이더리움과 EVM 계열 체인에서 가장 널리 사용되는 스마트 컨트랙트 언어이다. | ||
| 310 | |||
| 311 | ERC-20, ERC-721, DeFi, DAO, DEX, 대출 프로토콜 등 많은 컨트랙트가 Solidity로 작성된다. | ||
| 312 | |||
| 313 | ### Vyper | ||
| 314 | |||
| 315 | Vyper는 이더리움 계열 스마트 컨트랙트 언어이다. | ||
| 316 | |||
| 317 | Python과 유사한 문법을 가지고 있으며, 단순성과 보안성을 강조한다. | ||
| 318 | |||
| 319 | ### Rust | ||
| 320 | |||
| 321 | Rust는 Solana, Near, CosmWasm 등 여러 생태계에서 사용된다. | ||
| 322 | |||
| 323 | 성능과 메모리 안전성을 강조하는 언어이다. | ||
| 324 | |||
| 325 | ### Move | ||
| 326 | |||
| 327 | Move는 Sui와 Aptos 등에서 사용되는 스마트 컨트랙트 언어이다. | ||
| 328 | |||
| 329 | 디지털 자산의 안전한 표현을 위해 설계되었으며, 리소스 모델을 강조한다. | ||
| 330 | |||
| 331 | ### Cairo | ||
| 332 | |||
| 333 | Cairo는 Starknet 생태계에서 사용되는 언어이다. | ||
| 334 | |||
| 335 | 영지식 증명과 확장성 환경에 맞춰 설계되었다. | ||
| 336 | |||
| 337 | ## EVM | ||
| 338 | |||
| 339 | EVM은 Ethereum Virtual Machine의 약자이다. | ||
| 340 | |||
| 341 | 이더리움 스마트 컨트랙트가 실행되는 가상머신이다. | ||
| 342 | |||
| 343 | EVM은 이더리움뿐 아니라 여러 블록체인에서 사용된다. | ||
| 344 | |||
| 345 | 대표적인 EVM 계열 네트워크는 다음과 같다. | ||
| 346 | |||
| 347 | - Ethereum | ||
| 348 | - BNB Chain | ||
| 349 | - Polygon | ||
| 350 | - Arbitrum | ||
| 351 | - Optimism | ||
| 352 | - Base | ||
| 353 | - Avalanche C-Chain | ||
| 354 | - Fantom | ||
| 355 | - Kaia | ||
| 356 | - Linea | ||
| 357 | - Scroll | ||
| 358 | |||
| 359 | EVM의 장점은 개발자와 도구가 많다는 것이다. | ||
| 360 | |||
| 361 | Solidity, Hardhat, Foundry, MetaMask, Etherscan, OpenZeppelin 같은 도구와 생태계가 널리 사용된다. | ||
| 362 | |||
| 363 | ## 스마트 컨트랙트와 토큰 | ||
| 364 | |||
| 365 | 스마트 컨트랙트의 대표적인 활용 사례는 토큰 발행이다. | ||
| 366 | |||
| 367 | 토큰은 블록체인 위에서 특정 가치를 표현하는 디지털 자산이다. | ||
| 368 | |||
| 369 | 대표적인 토큰 표준은 다음과 같다. | ||
| 370 | |||
| 371 | - ERC-20 | ||
| 372 | - ERC-721 | ||
| 373 | - ERC-1155 | ||
| 374 | - ERC-4626 | ||
| 375 | - SPL Token | ||
| 376 | - Sui Coin | ||
| 377 | - Move Object 기반 자산 | ||
| 378 | |||
| 379 | ### ERC-20 | ||
| 380 | |||
| 381 | ERC-20은 이더리움 계열에서 가장 대표적인 대체 가능 토큰 표준이다. | ||
| 382 | |||
| 383 | 대체 가능 토큰은 각 단위가 서로 같은 가치를 가진다. | ||
| 384 | |||
| 385 | 예를 들어 1 USDC와 다른 1 USDC는 같은 가치로 취급된다. | ||
| 386 | |||
| 387 | ERC-20은 다음과 같은 자산에 사용된다. | ||
| 388 | |||
| 389 | - 거버넌스 토큰 | ||
| 390 | - 유틸리티 토큰 | ||
| 391 | - 스테이블코인 | ||
| 392 | - 거래소 토큰 | ||
| 393 | - 보상 토큰 | ||
| 394 | - 래핑 토큰 | ||
| 395 | |||
| 396 | ### ERC-721 | ||
| 397 | |||
| 398 | ERC-721은 NFT 표준이다. | ||
| 399 | |||
| 400 | 각 토큰이 고유한 ID를 가지며 서로 다른 자산으로 취급된다. | ||
| 401 | |||
| 402 | 활용 예시는 다음과 같다. | ||
| 403 | |||
| 404 | - 디지털 아트 | ||
| 405 | - 프로필 이미지 | ||
| 406 | - 게임 아이템 | ||
| 407 | - 멤버십 | ||
| 408 | - 티켓 | ||
| 409 | - 인증서 | ||
| 410 | - 도메인 이름 | ||
| 411 | |||
| 412 | ### ERC-1155 | ||
| 413 | |||
| 414 | ERC-1155는 여러 종류의 토큰을 하나의 컨트랙트에서 관리할 수 있는 표준이다. | ||
| 415 | |||
| 416 | 대체 가능 토큰과 NFT를 함께 다룰 수 있어 게임 아이템에 자주 사용된다. | ||
| 417 | |||
| 418 | ## 스마트 컨트랙트와 DeFi | ||
| 419 | |||
| 420 | DeFi는 Decentralized Finance의 약자이다. | ||
| 421 | |||
| 422 | DeFi는 스마트 컨트랙트를 이용해 금융 기능을 온체인에서 구현한다. | ||
| 423 | |||
| 424 | 대표적인 DeFi 서비스는 다음과 같다. | ||
| 425 | |||
| 426 | - 탈중앙화 거래소 | ||
| 427 | - 대출 프로토콜 | ||
| 428 | - 스테이블코인 | ||
| 429 | - 유동성 공급 | ||
| 430 | - 파생상품 | ||
| 431 | - 수익 최적화 | ||
| 432 | - 스테이킹 | ||
| 433 | - 보험 | ||
| 434 | - 자산 관리 | ||
| 435 | |||
| 436 | 예를 들어 DEX에서는 스마트 컨트랙트가 유동성 풀을 관리한다. | ||
| 437 | |||
| 438 | 사용자가 토큰을 스왑하면 스마트 컨트랙트가 가격 공식에 따라 토큰을 교환하고, 수수료를 유동성 공급자에게 배분한다. | ||
| 439 | |||
| 440 | 대출 프로토콜에서는 스마트 컨트랙트가 담보, 부채, 이자, 청산을 관리한다. | ||
| 441 | |||
| 442 | 사용자가 담보를 예치하고 자산을 빌리면, 스마트 컨트랙트는 담보비율을 계산하고 기준 이하로 떨어질 경우 청산을 실행한다. | ||
| 443 | |||
| 444 | ## 스마트 컨트랙트와 NFT | ||
| 445 | |||
| 446 | NFT는 스마트 컨트랙트를 통해 발행되고 전송되는 고유 디지털 자산이다. | ||
| 447 | |||
| 448 | NFT 컨트랙트는 다음 정보를 관리한다. | ||
| 449 | |||
| 450 | - 토큰 ID | ||
| 451 | - 소유자 | ||
| 452 | - 메타데이터 주소 | ||
| 453 | - 승인 권한 | ||
| 454 | - 전송 기록 | ||
| 455 | - 민팅 조건 | ||
| 456 | - 로열티 정보 | ||
| 457 | |||
| 458 | NFT는 단순 이미지뿐 아니라 여러 권리를 표현할 수 있다. | ||
| 459 | |||
| 460 | 활용 예시는 다음과 같다. | ||
| 461 | |||
| 462 | - 디지털 아트 | ||
| 463 | - 게임 아이템 | ||
| 464 | - 멤버십 카드 | ||
| 465 | - 콘서트 티켓 | ||
| 466 | - 출석 증명 | ||
| 467 | - 인증서 | ||
| 468 | - 부동산 권리 증명 | ||
| 469 | - 커뮤니티 패스 | ||
| 470 | |||
| 471 | ## 스마트 컨트랙트와 DAO | ||
| 472 | |||
| 473 | DAO는 Decentralized Autonomous Organization의 약자이다. | ||
| 474 | |||
| 475 | DAO는 스마트 컨트랙트를 이용해 조직 운영과 의사결정을 온체인으로 관리한다. | ||
| 476 | |||
| 477 | DAO 스마트 컨트랙트는 다음 기능을 제공할 수 있다. | ||
| 478 | |||
| 479 | - 제안 생성 | ||
| 480 | - 투표 | ||
| 481 | - 투표권 계산 | ||
| 482 | - 금고 관리 | ||
| 483 | - 제안 실행 | ||
| 484 | - 권한 관리 | ||
| 485 | - 멀티시그 연동 | ||
| 486 | - 보상 지급 | ||
| 487 | |||
| 488 | DAO에서는 토큰 보유량, NFT 보유 여부, 스테이킹 수량 등에 따라 투표권이 정해질 수 있다. | ||
| 489 | |||
| 490 | 스마트 컨트랙트는 투표 결과에 따라 자동으로 자금을 이동하거나 설정을 변경할 수 있다. | ||
| 491 | |||
| 492 | ## 스마트 컨트랙트와 오라클 | ||
| 493 | |||
| 494 | 스마트 컨트랙트는 기본적으로 블록체인 안의 정보만 직접 읽을 수 있다. | ||
| 495 | |||
| 496 | 그러나 많은 서비스는 외부 정보가 필요하다. | ||
| 497 | |||
| 498 | 예를 들어 다음 정보는 블록체인 밖에 있다. | ||
| 499 | |||
| 500 | - 코인 가격 | ||
| 501 | - 환율 | ||
| 502 | - 주식 가격 | ||
| 503 | - 날씨 | ||
| 504 | - 스포츠 경기 결과 | ||
| 505 | - 선거 결과 | ||
| 506 | - 실물 자산 가격 | ||
| 507 | - 신용 점수 | ||
| 508 | - 배송 상태 | ||
| 509 | |||
| 510 | 오라클은 이러한 외부 데이터를 스마트 컨트랙트에 전달하는 인프라이다. | ||
| 511 | |||
| 512 | 대표적인 오라클 프로젝트에는 Chainlink, Pyth, RedStone 등이 있다. | ||
| 513 | |||
| 514 | 오라클은 DeFi에서 특히 중요하다. | ||
| 515 | |||
| 516 | 대출 프로토콜은 담보 가격을 알아야 청산을 실행할 수 있고, 파생상품 프로토콜은 외부 가격 데이터를 바탕으로 정산해야 하기 때문이다. | ||
| 517 | |||
| 518 | 오라클이 잘못된 가격을 제공하면 정상 사용자 자산이 청산되거나, 공격자가 프로토콜을 악용할 수 있다. | ||
| 519 | |||
| 520 | ## 프록시와 업그레이드 | ||
| 521 | |||
| 522 | 스마트 컨트랙트는 한 번 배포되면 코드를 수정하기 어렵다. | ||
| 523 | |||
| 524 | 이 특징은 신뢰성을 높여주지만, 버그 수정이나 기능 개선이 어려워지는 단점도 있다. | ||
| 525 | |||
| 526 | 이를 해결하기 위해 일부 프로젝트는 프록시 패턴을 사용한다. | ||
| 527 | |||
| 528 | 프록시 구조는 다음과 같다. | ||
| 529 | |||
| 530 | - 사용자는 프록시 컨트랙트와 상호작용한다. | ||
| 531 | - 프록시 컨트랙트는 실제 로직 컨트랙트로 호출을 전달한다. | ||
| 532 | - 로직 컨트랙트를 교체하면 기능을 업그레이드할 수 있다. | ||
| 533 | - 저장소는 프록시 쪽에 유지된다. | ||
| 534 | |||
| 535 | 프록시 업그레이드는 편리하지만 관리자 권한 리스크가 존재한다. | ||
| 536 | |||
| 537 | 관리자가 악의적으로 로직을 바꾸면 사용자 자산에 영향을 줄 수 있다. | ||
| 538 | |||
| 539 | 따라서 업그레이드 가능한 컨트랙트는 다음 장치를 함께 사용하는 경우가 많다. | ||
| 540 | |||
| 541 | - 멀티시그 | ||
| 542 | - 타임락 | ||
| 543 | - DAO 투표 | ||
| 544 | - 감사 | ||
| 545 | - 업그레이드 공지 | ||
| 546 | - 권한 분리 | ||
| 547 | |||
| 548 | ## 멀티시그 | ||
| 549 | |||
| 550 | 멀티시그는 여러 명의 서명이 있어야 거래를 실행할 수 있는 지갑 또는 권한 구조이다. | ||
| 551 | |||
| 552 | 예를 들어 5명 중 3명이 승인해야 자금 이동이 가능한 구조가 있다. | ||
| 553 | |||
| 554 | 이를 3-of-5 멀티시그라고 부른다. | ||
| 555 | |||
| 556 | 멀티시그는 스마트 컨트랙트 운영에서 자주 사용된다. | ||
| 557 | |||
| 558 | 활용 예시는 다음과 같다. | ||
| 559 | |||
| 560 | - DAO 금고 관리 | ||
| 561 | - 프로토콜 관리자 권한 관리 | ||
| 562 | - 업그레이드 승인 | ||
| 563 | - 긴급 중단 권한 | ||
| 564 | - 토큰 발행 권한 | ||
| 565 | - 보안 대응 | ||
| 566 | |||
| 567 | 대표적인 멀티시그 도구로는 Safe가 있다. | ||
| 568 | |||
| 569 | ## 타임락 | ||
| 570 | |||
| 571 | 타임락은 특정 작업이 즉시 실행되지 않고 일정 시간이 지난 뒤 실행되도록 하는 장치이다. | ||
| 572 | |||
| 573 | 예를 들어 스마트 컨트랙트 업그레이드가 제안되면 48시간 뒤에만 실행되도록 할 수 있다. | ||
| 574 | |||
| 575 | 타임락의 장점은 사용자에게 대응 시간을 준다는 점이다. | ||
| 576 | |||
| 577 | 만약 위험한 업그레이드가 제안되면 사용자는 자산을 인출하거나 거버넌스에서 반대할 수 있다. | ||
| 578 | |||
| 579 | 타임락은 다음 영역에 사용된다. | ||
| 580 | |||
| 581 | - DAO 제안 실행 | ||
| 582 | - 컨트랙트 업그레이드 | ||
| 583 | - 관리자 권한 변경 | ||
| 584 | - 수수료 변경 | ||
| 585 | - 담보 설정 변경 | ||
| 586 | - 토큰 발행 정책 변경 | ||
| 587 | |||
| 588 | ## 스마트 컨트랙트 보안 | ||
| 589 | |||
| 590 | 스마트 컨트랙트 보안은 매우 중요하다. | ||
| 591 | |||
| 592 | 스마트 컨트랙트에는 실제 자산이 들어갈 수 있기 때문이다. | ||
| 593 | |||
| 594 | 버그가 있으면 공격자가 자금을 탈취하거나, 프로토콜을 비정상적으로 조작할 수 있다. | ||
| 595 | |||
| 596 | 대표적인 스마트 컨트랙트 취약점은 다음과 같다. | ||
| 597 | |||
| 598 | - 재진입 공격 | ||
| 599 | - 오버플로우와 언더플로우 | ||
| 600 | - 권한 설정 오류 | ||
| 601 | - 가격 오라클 조작 | ||
| 602 | - 프론트러닝 | ||
| 603 | - MEV 공격 | ||
| 604 | - 무제한 승인 악용 | ||
| 605 | - 업그레이드 권한 탈취 | ||
| 606 | - 초기화 함수 누락 | ||
| 607 | - 잘못된 청산 로직 | ||
| 608 | - 랜덤값 조작 | ||
| 609 | - 브리지 검증 오류 | ||
| 610 | |||
| 611 | 스마트 컨트랙트 보안을 위해 다음 절차가 사용된다. | ||
| 612 | |||
| 613 | - 단위 테스트 | ||
| 614 | - 통합 테스트 | ||
| 615 | - 퍼즈 테스트 | ||
| 616 | - 정적 분석 | ||
| 617 | - 형식 검증 | ||
| 618 | - 외부 감사 | ||
| 619 | - 버그 바운티 | ||
| 620 | - 테스트넷 운영 | ||
| 621 | - 코드 공개 | ||
| 622 | - 모니터링 | ||
| 623 | - 긴급 중단 기능 | ||
| 624 | |||
| 625 | ## 재진입 공격 | ||
| 626 | |||
| 627 | 재진입 공격은 스마트 컨트랙트 보안에서 가장 유명한 취약점 중 하나이다. | ||
| 628 | |||
| 629 | 재진입 공격은 컨트랙트가 외부 컨트랙트로 자금을 보내는 과정에서, 외부 컨트랙트가 다시 원래 컨트랙트를 호출해 상태가 완전히 업데이트되기 전에 반복 출금을 시도하는 방식이다. | ||
| 630 | |||
| 631 | 대표적인 방어 방법은 다음과 같다. | ||
| 632 | |||
| 633 | - Checks-Effects-Interactions 패턴 | ||
| 634 | - Reentrancy Guard 사용 | ||
| 635 | - 외부 호출 최소화 | ||
| 636 | - 상태 업데이트를 먼저 수행 | ||
| 637 | - 출금 방식 분리 | ||
| 638 | |||
| 639 | 재진입 공격은 과거 여러 DeFi 해킹 사건의 원인이 되었기 때문에, 스마트 컨트랙트 개발에서 반드시 고려해야 한다. | ||
| 640 | |||
| 641 | ## 권한 관리 | ||
| 642 | |||
| 643 | 스마트 컨트랙트에는 관리자 권한이 존재할 수 있다. | ||
| 644 | |||
| 645 | 관리자 권한은 다음 기능을 수행할 수 있다. | ||
| 646 | |||
| 647 | - 컨트랙트 업그레이드 | ||
| 648 | - 수수료 변경 | ||
| 649 | - 토큰 발행 | ||
| 650 | - 긴급 중단 | ||
| 651 | - 오라클 변경 | ||
| 652 | - 화이트리스트 관리 | ||
| 653 | - 자금 이동 | ||
| 654 | - 파라미터 변경 | ||
| 655 | |||
| 656 | 관리자 권한은 필요할 수 있지만, 동시에 중앙화 리스크가 된다. | ||
| 657 | |||
| 658 | 특정 개인 지갑 하나가 관리자 권한을 가지고 있다면, 해당 지갑이 해킹되거나 악용될 경우 전체 프로토콜이 위험해질 수 있다. | ||
| 659 | |||
| 660 | 따라서 중요한 프로토콜은 보통 다음 방식을 사용한다. | ||
| 661 | |||
| 662 | - 멀티시그 | ||
| 663 | - 타임락 | ||
| 664 | - DAO 거버넌스 | ||
| 665 | - 권한 분리 | ||
| 666 | - 관리자 권한 제거 | ||
| 667 | - 점진적 탈중앙화 | ||
| 668 | |||
| 669 | ## 승인과 무제한 승인 | ||
| 670 | |||
| 671 | DeFi를 사용할 때 사용자는 특정 스마트 컨트랙트가 자신의 토큰을 사용할 수 있도록 승인한다. | ||
| 672 | |||
| 673 | 이 기능을 approve라고 한다. | ||
| 674 | |||
| 675 | 예를 들어 DEX에서 USDC를 ETH로 바꾸려면, 먼저 DEX 컨트랙트가 사용자의 USDC를 사용할 수 있도록 승인해야 한다. | ||
| 676 | |||
| 677 | 문제는 많은 사용자가 편의를 위해 무제한 승인을 한다는 점이다. | ||
| 678 | |||
| 679 | 무제한 승인은 다음 위험이 있다. | ||
| 680 | |||
| 681 | - 컨트랙트가 해킹되면 승인된 토큰이 탈취될 수 있음 | ||
| 682 | - 악성 사이트가 승인 권한을 악용할 수 있음 | ||
| 683 | - 오래된 승인 권한이 남아 있을 수 있음 | ||
| 684 | |||
| 685 | 따라서 사용자는 주기적으로 토큰 승인 권한을 확인하고, 사용하지 않는 권한을 해제하는 것이 좋다. | ||
| 686 | |||
| 687 | ## 스마트 컨트랙트 감사 | ||
| 688 | |||
| 689 | 스마트 컨트랙트 감사는 외부 보안 전문가가 코드를 검토하는 과정이다. | ||
| 690 | |||
| 691 | 감사는 버그와 취약점을 줄이는 데 도움이 된다. | ||
| 692 | |||
| 693 | 하지만 감사를 받았다고 해서 안전이 100% 보장되는 것은 아니다. | ||
| 694 | |||
| 695 | 감사의 주요 범위는 다음과 같다. | ||
| 696 | |||
| 697 | - 코드 로직 검토 | ||
| 698 | - 권한 구조 검토 | ||
| 699 | - 경제 설계 검토 | ||
| 700 | - 오라클 리스크 검토 | ||
| 701 | - 재진입 가능성 확인 | ||
| 702 | - 수학 계산 오류 확인 | ||
| 703 | - 업그레이드 구조 확인 | ||
| 704 | - 테스트 커버리지 확인 | ||
| 705 | - 알려진 취약점 패턴 확인 | ||
| 706 | |||
| 707 | 감사 보고서는 사용자가 프로젝트의 보안 수준을 판단하는 데 참고 자료가 될 수 있다. | ||
| 708 | |||
| 709 | ## 스마트 컨트랙트와 법적 계약 | ||
| 710 | |||
| 711 | 스마트 컨트랙트라는 이름 때문에 법적 계약과 동일하다고 오해하기 쉽다. | ||
| 712 | |||
| 713 | 하지만 스마트 컨트랙트는 기본적으로 코드이다. | ||
| 714 | |||
| 715 | 코드가 특정 조건에 따라 실행된다고 해서, 그 자체가 모든 국가에서 법적 계약으로 인정되는 것은 아니다. | ||
| 716 | |||
| 717 | 법적 계약은 다음 요소를 요구할 수 있다. | ||
| 718 | |||
| 719 | - 당사자 | ||
| 720 | - 의사표시 | ||
| 721 | - 계약 목적 | ||
| 722 | - 법적 효력 | ||
| 723 | - 관할권 | ||
| 724 | - 분쟁 해결 방식 | ||
| 725 | - 소비자 보호 | ||
| 726 | - 규제 준수 | ||
| 727 | |||
| 728 | 스마트 컨트랙트는 이러한 법적 계약을 자동 실행하는 도구로 활용될 수 있지만, 법률 문서와 코드가 항상 같은 의미를 가지는 것은 아니다. | ||
| 729 | |||
| 730 | 특히 RWA, 증권형 토큰, 보험, 대출, 부동산, 실물 자산 거래에서는 법적 구조와 온체인 코드가 함께 설계되어야 한다. | ||
| 731 | |||
| 732 | ## 장점 | ||
| 733 | |||
| 734 | 스마트 컨트랙트의 장점은 다음과 같다. | ||
| 735 | |||
| 736 | ### 자동 실행 | ||
| 737 | |||
| 738 | 조건이 충족되면 코드가 자동으로 실행된다. | ||
| 739 | |||
| 740 | 중개자가 직접 처리하지 않아도 된다. | ||
| 741 | |||
| 742 | ### 투명성 | ||
| 743 | |||
| 744 | 공개 블록체인에서는 컨트랙트 주소, 코드, 거래 내역을 확인할 수 있다. | ||
| 745 | |||
| 746 | ### 조합성 | ||
| 747 | |||
| 748 | 여러 스마트 컨트랙트가 서로 연결될 수 있다. | ||
| 749 | |||
| 750 | 예를 들어 DEX, 대출, 스테이블코인, 오라클, 금고가 서로 조합되어 복잡한 DeFi 전략을 만들 수 있다. | ||
| 751 | |||
| 752 | ### 검열 저항성 | ||
| 753 | |||
| 754 | 탈중앙화된 네트워크 위에 배포된 컨트랙트는 특정 중앙 서버보다 중단되기 어렵다. | ||
| 755 | |||
| 756 | ### 무신뢰 실행 | ||
| 757 | |||
| 758 | 사용자는 상대방을 직접 신뢰하지 않아도 스마트 컨트랙트 규칙을 기준으로 거래할 수 있다. | ||
| 759 | |||
| 760 | ### 글로벌 접근성 | ||
| 761 | |||
| 762 | 인터넷과 지갑만 있으면 전 세계 사용자가 동일한 컨트랙트에 접근할 수 있다. | ||
| 763 | |||
| 764 | ## 한계 및 주요 변수 | ||
| 765 | |||
| 766 | 스마트 컨트랙트는 강력한 기술이지만 한계도 있다. | ||
| 767 | |||
| 768 | 가장 큰 변수는 코드 오류이다. | ||
| 769 | |||
| 770 | 스마트 컨트랙트에 버그가 있으면 배포 후 수정이 어렵고, 공격자가 실제 자산을 탈취할 수 있다. | ||
| 771 | |||
| 772 | 또한 스마트 컨트랙트는 기본적으로 블록체인 밖의 정보를 직접 알 수 없다. | ||
| 773 | |||
| 774 | 외부 가격, 날씨, 경기 결과, 실물 자산 상태 같은 데이터는 오라클을 통해 가져와야 한다. | ||
| 775 | |||
| 776 | 오라클이 잘못되면 스마트 컨트랙트도 잘못된 결정을 내릴 수 있다. | ||
| 777 | |||
| 778 | 가스비도 중요한 변수이다. | ||
| 779 | |||
| 780 | 복잡한 스마트 컨트랙트는 많은 가스비를 필요로 한다. | ||
| 781 | |||
| 782 | 네트워크가 혼잡하면 단순한 거래도 비싸질 수 있다. | ||
| 783 | |||
| 784 | 업그레이드 구조도 중요하다. | ||
| 785 | |||
| 786 | 완전히 불변인 컨트랙트는 신뢰성이 높지만 버그 수정이 어렵다. | ||
| 787 | |||
| 788 | 업그레이드 가능한 컨트랙트는 유연하지만 관리자 권한 리스크가 있다. | ||
| 789 | |||
| 790 | 스마트 컨트랙트의 장기적인 활용에는 다음 요소들이 영향을 줄 수 있다. | ||
| 791 | |||
| 792 | - 코드 보안 | ||
| 793 | - 감사 품질 | ||
| 794 | - 오라클 안정성 | ||
| 795 | - 가스비 수준 | ||
| 796 | - 네트워크 확장성 | ||
| 797 | - 사용자 지갑 보안 | ||
| 798 | - 승인 권한 관리 | ||
| 799 | - 프록시와 업그레이드 권한 | ||
| 800 | - 관리자 권한 분산 | ||
| 801 | - 법적 계약과의 연결 | ||
| 802 | - 규제 환경 | ||
| 803 | - 개발자 도구 | ||
| 804 | - 블록체인 생태계의 실제 사용량 | ||
| 805 | |||
| 806 | ## 활용 분야 | ||
| 807 | |||
| 808 | ### 토큰 발행 | ||
| 809 | |||
| 810 | ERC-20, SPL, Move 기반 자산 등 다양한 토큰을 발행할 수 있다. | ||
| 811 | |||
| 812 | ### NFT | ||
| 813 | |||
| 814 | 디지털 아트, 게임 아이템, 멤버십, 티켓, 인증서 등을 NFT로 만들 수 있다. | ||
| 815 | |||
| 816 | ### DeFi | ||
| 817 | |||
| 818 | DEX, 대출, 스테이블코인, 파생상품, 금고, 유동성 공급 등 금융 기능을 구현할 수 있다. | ||
| 819 | |||
| 820 | ### DAO | ||
| 821 | |||
| 822 | 투표, 금고, 제안 실행, 보상 지급 등 조직 운영을 온체인으로 관리할 수 있다. | ||
| 823 | |||
| 824 | ### 게임 | ||
| 825 | |||
| 826 | 게임 아이템, 캐릭터, 보상, 마켓플레이스, 플레이어 간 거래를 구현할 수 있다. | ||
| 827 | |||
| 828 | ### RWA | ||
| 829 | |||
| 830 | 부동산, 채권, 펀드, 예술품, 원자재 같은 현실 자산의 권리를 온체인에서 표현할 수 있다. | ||
| 831 | |||
| 832 | ### 보험 | ||
| 833 | |||
| 834 | 특정 조건이 충족되면 자동으로 보험금을 지급하는 구조를 만들 수 있다. | ||
| 835 | |||
| 836 | ### 공급망 | ||
| 837 | |||
| 838 | 상품 이동, 인증서, 원산지, 물류 상태를 온체인으로 기록할 수 있다. | ||
| 839 | |||
| 840 | ### 신원과 인증 | ||
| 841 | |||
| 842 | 자격 증명, 멤버십, 출석 증명, 학위 증명 등을 스마트 컨트랙트와 NFT로 관리할 수 있다. | ||
| 843 | |||
| 844 | ## 생태계 | ||
| 845 | |||
| 846 | 스마트 컨트랙트 생태계는 개발자, 사용자, 지갑, 블록체인, 오라클, 감사 업체, 프론트엔드, 인덱서, DAO, 거래소로 구성된다. | ||
| 847 | |||
| 848 | 개발자는 스마트 컨트랙트 코드를 작성한다. | ||
| 849 | |||
| 850 | 블록체인은 코드를 실행하고 상태를 기록한다. | ||
| 851 | |||
| 852 | 사용자는 지갑으로 트랜잭션을 보내 컨트랙트와 상호작용한다. | ||
| 853 | |||
| 854 | 오라클은 외부 데이터를 제공한다. | ||
| 855 | |||
| 856 | 감사 업체는 코드 보안을 검토한다. | ||
| 857 | |||
| 858 | 프론트엔드는 사용자가 컨트랙트를 쉽게 사용할 수 있도록 화면을 제공한다. | ||
| 859 | |||
| 860 | 인덱서는 이벤트와 데이터를 정리해 앱과 분석 도구에 제공한다. | ||
| 861 | |||
| 862 | DAO는 스마트 컨트랙트를 통해 거버넌스와 금고를 운영한다. | ||
| 863 | |||
| 864 | 거래소와 지갑은 사용자가 토큰과 컨트랙트에 접근할 수 있게 한다. | ||
| 865 | |||
| 866 | 스마트 컨트랙트는 이 모든 요소를 연결하는 블록체인 애플리케이션의 핵심 실행 계층이다. | ||
| 867 | |||
| 868 | ## 같이 보기 | ||
| 869 | |||
| 870 | * [[블록체인]] | ||
| 871 | * [[이더리움]] | ||
| 872 | * [[솔리디티]] | ||
| 873 | * [[EVM]] | ||
| 874 | * [[트랜잭션]] | ||
| 875 | * [[가스비]] | ||
| 876 | * [[DeFi]] | ||
| 877 | * [[NFT]] | ||
| 878 | * [[DAO]] | ||
| 879 | * [[오라클]] | ||
| 880 | * [[Chainlink]] | ||
| 881 | * [[ERC-20]] | ||
| 882 | * [[ERC-721]] | ||
| 883 | * [[토큰]] | ||
| 884 | * [[스테이블코인]] | ||
| 885 | * [[탈중앙화 거래소]] | ||
| 886 | * [[대출 프로토콜]] | ||
| 887 | * [[브리지]] | ||
| 888 | * [[멀티시그]] | ||
| 889 | * [[프록시 컨트랙트]] | ||
| 890 | * [[RWA]] | ||
| 891 | * [[게임파이]] |