身為一個從 Web2 轉型中的 QA 工程師,我一開始接觸區塊鏈的時候,真的一頭霧水。什麼是錢包?什麼又是智能合約?為什麼寫個測試還要知道什麼是 Gas Fee?這些專有名詞到底是什麼?
區塊鏈到底是什麼?
▸ 區塊鏈(Blockchain)
區塊鏈就像一個 不可修改的分散式資料庫。資料會被打包成一個個「區塊」,每個區塊都會連接上一個區塊的散列,確保沒人能偷偷改資料。
想像 Git commit,每一筆提交都跟前一個版本有連結,一旦送出就不能改。
▸ 去中心化(Decentralization)
傳統系統有個主伺服器說了算,而區塊鏈則是每個節點都有一份資料,彼此透過共識機制同步。
有點像大家一起擁有一本「共享真相的紀錄本」,誰都不能單方面篡改。
資料怎麼被記錄?
▸ 區塊(Block)
每個區塊就像是資料紀錄簿中的一頁,上面記錄了多筆交易。
▸ 交易(Transaction)
這是區塊鏈上的「事件」。像是某人轉帳、部署合約、呼叫某個函式,全部都會變成交易。
就像 Web API 的每一個 request。
使用者怎麼操作?
▸ 錢包(Wallet)
這是區塊鏈上的身分證 + 簽章工具。你用它來持有資產,也用它來簽署交易。最常見的像是 MetaMask。
▸ 地址(Address)
每個錢包都有自己的「公開地址」,就像 Email 帳號。通常是 0x 開頭的十六進位字串。
▸ 私鑰(Private Key)
控制你錢包資產的密鑰。拿到私鑰就等於擁有那個錢包。就像 SSH 私鑰一樣重要,不可以外洩。
智能合約是什麼?
▸ 智能合約(Smart Contract)
這是部署在區塊鏈上的一段程式碼,可以自動執行規則。
想像成一個無法被修改的後端 API server,上線後永遠不能改 code(除非重寫部署)。
▸ Solidity
這是寫智能合約最常用的語言,語法像 JavaScript + C 的混合體。
▸ ABI(Application Binary Interface)
智能合約的 API 規格書。會列出合約有哪些 function、參數是什麼型別。
我們熟悉的「環境」對照區塊鏈

什麼是 Gas Fee?
你在鏈上做任何操作,都會消耗「Gas」。這是你給礦工的費用,用來讓他們處理你的交易。
接著第二章繼續介紹