什麼是代幣標準?
代幣標準是一套技術規範,規定代幣程式應提供哪些功能、接受什麼輸入,以及怎樣把結果告訴錢包和其他應用。它讓不同開發者建立的代幣可以用一組共同規則被識別和呼叫。
可以把標準理解為介面約定:它規定「對外怎樣溝通」,但不替每個專案決定供應量、用途、管理權限或鏈下權利。兩個代幣可以遵循同一標準,卻採用不同程式碼、擁有不同權限,並代表完全不同的對象。
沒有共同標準會發生什麼
如果每個代幣都自行命名查詢餘額、轉帳和授權功能,錢包和應用就要為每個代幣單獨編寫連接方式。一個新代幣即使可以正常轉移,也可能無法被現有錢包顯示,或無法被其他鏈上程式呼叫。
共同標準為常用操作規定統一入口。錢包知道怎樣詢問餘額,應用知道怎樣請求轉帳,區塊瀏覽器知道應讀取哪些事件,其他程式也能按相同格式呼叫多個代幣。開發者不必事先認識每一個具體代幣,仍可以提供基礎支援。
標準提高的是軟體相容性,不是代幣品質。介面統一後,錯誤或惡意實作也可能更容易接入現有應用,因此使用方仍需驗證具體程式碼和權限。
標準通常規定哪些內容
代幣標準的範圍因網路和代幣類型而異,常見內容包括以下幾類。
查詢功能
標準可以規定怎樣查詢某個地址的餘額、代幣總供應量,或某個獨立編號目前由誰控制。統一查詢方式讓錢包和應用能夠展示基礎資訊。
查詢結果只反映程式目前回傳的資料。標準不會驗證顯示名稱是否真實、供應是否有鏈下支撐,也不會保證描述代幣的附加資料(詮釋資料)連結長期可用。
轉帳功能
標準可以規定發送方怎樣把代幣轉給接收方、呼叫需要哪些參數,以及成功或失敗時應如何回應。對於帶獨立編號的代幣,轉帳還需要指明具體編號。
部分標準提供較安全的轉帳方式,用來檢查接收方程式是否知道怎樣處理收到的代幣。這可以減少某些誤轉情況,但不能防止錯誤地址、惡意授權或程式漏洞造成的損失。
授權功能
授權允許持有人讓另一個地址或程式在限定範圍內代為操作。例如,持有人可以批准某個應用轉移一定數量的可替換代幣,或授權操作者管理一組獨立編號代幣。
標準會規定怎樣建立、查詢和撤銷授權,但不決定使用者是否應當授權。額度大小、持續時間和被授權程式的行為仍需由具體實作和使用者判斷。
事件和紀錄格式
鏈上程式執行轉帳、鑄造或授權時,可以發出結構化事件。事件是供應用讀取的執行紀錄提示,錢包、區塊瀏覽器和資料服務可以據此更新介面或建立索引。
事件不能代替最終狀態。應用仍需要確認交易是否成功,並按網路規則讀取目前資料;僅看到一條未經確認或來自錯誤合約的事件,不足以證明餘額已經有效改變。
可選功能和擴充
標準可能把名稱、交易代碼、詮釋資料,或列出全部獨立編號的功能(列舉)列為可選項,也可能允許啟用轉帳費、凍結、暫停或其他擴充。應用不能因為代幣聲稱採用某個標準,就假定所有可選功能都存在。
擴充還可能彼此不相容,或需要錢包主動適配。基礎轉帳相同,不表示舊應用能夠理解後來增加的所有權限和資料欄位。
標準、實作和代幣不是一回事
標準是一份功能約定,說明相容程式應怎樣對外回應。實作是開發者按照這份約定編寫並部署的具體程式碼。代幣則是由某個具體實作管理的鏈上紀錄和單位。
一份標準可以有很多程式碼實作;同一份實作也可能被用於建立多個不同代幣。某個實作還可以在標準要求之外增加費用、凍結、名單、升級或其他邏輯。
因此,「採用某標準」只說明它計畫支援一組介面,不能證明程式碼沒有缺陷,也不能說明所有介面都被正確實作。應用接入時需要核對部署地址、實際回傳結果、額外權限和異常行為。
標準如何形成和被採用
代幣標準通常先以技術提案、規範文件或共享程式的形式出現。作者說明要解決的問題、介面要求和設計理由,社群和開發者討論後,提案可能進入較穩定的狀態,也可能繼續修改或停止推進。
文件狀態和市場採用是兩件事。一項提案可以寫得完整卻很少被使用;另一項標準也可能在最終定稿前就已經出現大量實作。錢包和應用是否支援,取決於實際部署、使用需求和開發者選擇,不是編號本身自動帶來的結果。
標準更新也不一定自動改變已經部署的代幣。舊合約可能繼續按舊介面執行,新功能可能透過新合約、新版本或可選擴充提供。閱讀標準時需要同時確認網路、版本、狀態和具體實作。
可替換代幣的共同介面
可替換代幣按數量記錄,同等單位通常可以互換。這類標準常規定餘額查詢、總供應量、轉帳,以及允許其他地址在限定額度內代為轉移的授權功能。
以 Ethereum 為例,應用層標準提案被稱為 Ethereum Request for Comments(ERC)。ERC-20 是規定可替換代幣基礎介面的一項 ERC 標準,讓錢包和鏈上應用可以用共同方式查詢餘額、請求轉帳和處理授權。
ERC-20 沒有規定代幣必須使用固定供應,也沒有禁止開發者加入暫停、轉帳費或名單等額外邏輯。名稱、交易代碼和小數位等顯示資訊也不能代替合約地址來唯一識別代幣。
獨立編號代幣的共同介面
非同質化代幣(non-fungible token,NFT)需要分別追蹤每個編號。相應標準通常規定怎樣查詢編號的持有人、轉移指定編號,以及授權另一個地址操作單個或一組代幣。
這類介面在不同網路中有不同實作。以 Ethereum 為例,ERC-721 規定獨立編號代幣的持有、轉移和授權等基礎操作,而詮釋資料和完整編號清單屬於可選擴充。採用該標準不表示圖片或其他內容一定儲存在鏈上,也不證明代幣代表的鏈下對象真實存在。
還有一些標準允許同一個程式同時管理可替換單位、獨立編號單位或同一編號下的多個副本。它們服務於不同紀錄需求,不表示某一種標準普遍優於另一種。
不同網路的標準化方式
代幣標準不一定都是「每個代幣部署一個合約,並實作同一介面」。不同區塊鏈可以用協議規則、共享程式或可選擴充實現相容。
例如,Solana 的代幣程式統一提供鑄造、帳戶紀錄、轉移和授權等指令。每個 mint 記錄某種代幣的供應和權限,而錢包與應用透過同一代幣程式處理多個 mint。
Solana 還提供可添加額外功能的代幣程式 Token Extensions。建立代幣時,開發者可以按需選擇擴充;部分擴充不能在初始化後添加,也可能彼此不相容。這說明「使用同一代幣程式」仍不足以判斷兩個代幣具備完全相同的行為。
跨網路出現相同標準名稱或相似介面時,也不能假定地址、權限和交易格式可以直接通用。標準的適用範圍始終與具體網路和執行環境相連。
相容不等於行為完全相同
錢包或應用聲稱「支援某標準」,通常表示它能處理該標準要求的基礎介面。實際相容仍可能受以下情況影響:
- 代幣沒有完整實作必需功能,或回傳方式與預期不符;
- 代幣加入轉帳費、暫停、凍結或名單規則;
- 應用不支援某些可選擴充;
- 接收方程式不能處理特定轉帳方式;
- 透過固定入口切換執行程式碼的代理升級結構改變了實際邏輯;
- 同名代幣部署在不同網路或不同地址。
因此,介面相容測試需要面對具體程式碼和具體呼叫結果。「符合標準」標籤本身不是安全審計,也不是對未來行為不變的保證。
標準沒有規定什麼
代幣標準通常不會替代以下資訊:
- 誰可以繼續鑄造、凍結、暫停或升級代幣;
- 代幣總量如何分配,未來會否改變;
- 代幣有什麼實際用途或市場需求;
- 名稱、圖示和詮釋資料是否由可信來源維護;
- 代幣聲稱對應的儲備、實物或服務是否存在;
- 持有人是否擁有贖回、治理或其他鏈下權利。
這些問題需要查看具體實作、權限和鏈下安排。技術標準只解決其中一部分軟體互動問題,不能承擔真實性、價值或法律效果的證明。
常見問題
代幣必須遵循標準嗎?
不一定。開發者可以建立自訂介面,但錢包和應用需要額外適配。採用廣泛支援的標準通常更容易獲得基礎相容性。
標準編號越新越好嗎?
不能這樣判斷。新標準可能增加功能,也可能支援較少、仍在修改,或不適合某種用途。需要查看提案狀態、實際採用和具體需求。
同一個代幣能採用多個標準嗎?
可能。一個實作可以同時支援多個介面,或在基礎標準上加入擴充。但這些介面是否正確協同仍需檢查具體程式碼。
遵循標準就能在所有錢包中顯示嗎?
不保證。錢包還要支援相應網路、標準版本和可選功能,並識別正確的合約或 mint。名稱和圖示等詮釋資料也可能需要額外來源。
標準能保證代幣安全嗎?
不能。標準只規定共同介面或行為要求。程式碼缺陷、管理權限、外部資料、使用者授權和底層網路仍可能帶來風險。
相關詞條
繼續了解加密代幣、智能合約、區塊鏈和加密錢包,或返回加密貨幣術語表。
參考來源
- NISTIR 8301:區塊鏈網路中的代幣設計與管理——代幣資料模型、協議與帳戶操作以及標準的不同範圍。
- Ethereum.org:代幣標準——代幣介面對錢包、應用和鏈上程式相容性的作用。
- Ethereum 應用層標準流程——ERC 類別、標準提案狀態和應用互通範圍。
- Ethereum 可替換代幣標準 ERC-20——餘額、轉帳、授權和事件等基礎介面。
- Ethereum 非同質化代幣標準 ERC-721——獨立編號代幣的持有、轉移、授權和可選擴充。
- Solana Docs:代幣與擴充——共享代幣程式、mint、代幣帳戶和可選擴充。




