智慧合約是什麼?智慧合約 = 部署在區塊鏈上、按程式碼自動執行的程式。一旦部署,按預設邏輯執行——無法干預、無法修改(除非合約本身有升級機制)。主要語言:Solidity(以太坊系列)、Rust(Solana)。用途:DeFi 協議(Uniswap、Aave)、NFT 合約、DAO 治理、跨鏈橋等。安全風險:合約漏洞、重入攻擊、閃電貸攻擊等。新手與合約互動需謹慎——簽名前必看清楚要做什麼。
智慧合約是 Web3 自動化的基礎。新手開賬戶從 幣安官網 起步,下載 幣安官方App,iOS 使用者先看 下載頁。
智慧合約的本質
A:智慧合約 = 鏈上自動程式。
| 維度 | 說明 |
|---|---|
| 部署位置 | 區塊鏈 |
| 觸發方式 | 使用者呼叫 + 付 Gas |
| 執行 | 自動按程式碼 |
| 修改 | 通常不可(除非升級機制) |
| 透明度 | 程式碼公開 |
幣安官方幫助文件顯示——所有 DeFi 協議都基於智慧合約。
主要應用型別
A:智慧合約的幾大應用。
| 型別 | 例子 |
|---|---|
| 代幣合約 | ERC-20 / BEP-20 |
| NFT 合約 | ERC-721 / ERC-1155 |
| DEX | Uniswap |
| 借貸 | Aave、Compound |
| 跨鏈橋 | Stargate |
| DAO | Snapshot 治理 |
| 遊戲 | Axie Infinity |
每個 DApp 後端都是一個或多個智慧合約。
第 1 步:合約呼叫
A:使用者與合約互動。
| 步驟 | 操作 |
|---|---|
| 1 | 使用者透過錢包發起請求 |
| 2 | 錢包構造交易 |
| 3 | 使用者簽名 |
| 4 | 交易廣播到鏈 |
| 5 | 礦工執行合約程式碼 |
| 6 | 狀態更新 |
每次呼叫都付 Gas — 即使失敗也付。
第 2 步:常見合約動作
A:新手會遇到的合約動作。
| 動作 | 說明 |
|---|---|
| Approve | 授權 DApp 操作某代幣 |
| Swap | 兌換 |
| Stake | 質押 |
| Mint | 鑄造 NFT |
| Transfer | 轉賬 |
| Vote | 投票 |
每種動作都有對應的 Gas 成本 — Approve 類似 Stake 類似 Swap。
第 3 步:合約審查
A:新手如何判斷合約是否安全。
| 判斷項 | 看什麼 |
|---|---|
| 已審計 | 由 CertiK / Trail of Bits 等審計 |
| 開源 | 程式碼公開可查 |
| 部署時長 | > 1 年風險低 |
| TVL | > 1 億美元 = 大池子 |
| 歷史 | 有無被攻擊 |
新手優先選老牌、TVL 大、有審計的協議。
智慧合約風險
A:合約的主要風險。
| 風險 | 說明 |
|---|---|
| 漏洞 | 程式碼錯誤 |
| 重入攻擊 | 歷史多次 |
| 閃電貸攻擊 | 操控價格 |
| 治理攻擊 | 治理代幣被濫用 |
| 升級風險 | 升級後邏輯變化 |
DeFi 歷史上多次合約被攻擊 — 損失數千萬至數億美元。
Approve 安全建議
A:Approve 是新手最容易踩坑的合約動作。
| 建議 | 說明 |
|---|---|
| 不要無限 Approve | 改成精確數額 |
| 用完撤銷 | revoke.cash 等工具 |
| 大額錢包專用 | 小額測試 |
| 警惕陌生合約 | 100% 不籤 |
定期清理 Approve = 減少風險敞口。
實操要點
智慧合約讓 DeFi 自動執行——但也帶來了"程式碼就是法律"的風險。新手與合約互動時——務必看清楚每次簽名要做什麼、是 Approve 還是其他動作、給的額度多大。錯誤的一個簽名可能讓錢包資產被全部轉走。建議從幣安 Web3 錢包內建的"主流 DApp"開始體驗——這些是幣安做了篩選的安全協議。在 幣安官網 完成賬戶開通、下載 幣安官方App 後,鏈上互動慢慢熟悉。加密資產價格波動劇烈,請在風險承受範圍內參與。
延伸閱讀:本站 Web3入門 分類講 Web3 基礎,鏈上操作 分類講鏈上互動。
FAQ
Q:智慧合約能改嗎? A:通常不能——一旦部署,按程式碼執行。少數有"代理合約"機制的協議可升級,但需要經過治理流程。
Q:怎麼知道合約要做什麼? A:在區塊瀏覽器查合約程式碼——但需要技術能力。普通使用者依賴審計報告 + 歷史記錄判斷。
Q:合約錯了能找回錢嗎? A:通常不能——鏈上交易不可逆。極少情況下協議方主動賠付(如部分 DAO 治理決定)。
Q:自己能寫智慧合約嗎? A:能——Solidity 等語言可學。但寫好的合約需要審計才能上線,門檻較高。
Q:合約會過期嗎? A:通常不會——合約一旦部署永久存在。除非有自毀函式(selfdestruct)的特殊設計。