原文:《什麼是通證標準?

作者:Zubin Pratap

介紹

通證標準是一組商定的規則,在給定區塊鏈協議上,約定加密通證的設計、開發、行為和操作。為了使通證標準有用,它們必須被廣泛採用。如果沒有被廣泛採用,他們的規則就不能提升到“標準”的地位——因為標準的意思就是廣泛人群普遍遵守的規則。

在這篇文章中,我們將探討為什麼標準對於提高加密通證的採用、使用和價值很重要。我們還將探討以太坊標準是如何開發的,還將簡要討論Solana 標準。

為什麼我們需要通證標準

讓我們首先了解“通證”的含義。加密世界中的通證通常是使用基於區塊鏈的技術(最典型的是智能合約)創建、管理和分發的加密貨幣。通證可能具有市場價值,也可能具有一些實用性,使得持有通證在經濟收益之外也願意持有某個通證。

標準是一組將某些東西“標準化”的規則。在通證的上下文中,標準化意味著擁有一組規則來定義通證應包含的數據、通證能夠進行的行為和操作,以及持有人或持有人社區可以對該通證採取的操作。通證標準為其基礎區塊鏈上的通證的創建、發行、部署、轉移、銷毀和其他屬性提供了指導。正如你所想,這些通證標準最有可能出現在支持智能合約的區塊鏈上,因為在這樣的區塊鏈將能夠之上,開發者可以創建任意數量的通證。

我們現在了解什麼是通證標準,但要真正了解它們在生態系統中的作用,我們需要了解它們的用處。換句話說,我們為什麼要通證標準,它們解決什麼問題?

在非常通用的層面上,一個標準可以允許多種實現。例如,以太坊為以太坊節點運行的客戶端軟件製定了標準,以提供與以太坊網絡的連接。通過這個標準,任何人都可以用他們喜歡的語言實現以太坊客戶端,前提是滿足以太坊節點和客戶端的標準和規範。因此,以太坊網絡可以有任意數量的節點和客戶端,包括Golang、Rust、Java、C#、C++ 或Python 編寫的以太坊軟件。這增加了“客戶端多樣性”,通過減少對單個代碼庫實現的依賴,使網絡更健壯。但所有這些實現,無論軟件語言、設計或實現細節如何,都有一個共同點——它們都遵循客戶端的統一規範。

因此,標準有助於實現方式的多樣性。這意味著在安全性、速度、可擴展性等方面可以有不同的方法,而這種多樣性豐富了整體體驗。這也意味著開發人員和設計人員可以參考系統所需的最小操作,進行相應的設計。同時也會激勵標準之上的創新,從而解鎖更多的用例,推動更多的採用,等等。

這正是通證標準很重要的原因。標準化不同通證的功能有助於開發人員在這些標準之上構建應用程序,因為他們知道只要應用同一標準,底層接口就會是相同的。

通證標準帶來的另一個好處是:實施它們的智能合約變得“可組合”。這意味著我們可以設計合約來相互交互,因為標準化使我們能夠知道,一個遵循標準的智能合規將擁有哪些函數、方法、數據類型和行為。然後我們可以編寫代碼與這些合約進行交互,這意味著智能合約的生態系統可以以不同的方式互操作、互連和混合匹配,從而使整體遠大於部分之和。一個簡單的例子是,當一個新的加密通證在基於以太坊的區塊鍊網絡上發佈時,如果它符合通證的ERC-20 標準,那麼它將與支持ERC-20 通證的DEX 集成。

以太坊標準化過程

通過以以太坊為案例研究,我們可以對通證標準的重要性有一個更高層次的理解。以太坊遵循的流程依賴於以太坊改進提案(EIP),該提案描述了適用於以太坊平台(區塊鏈核心協議)的標準、客戶端和節點的API 以及運行以太坊虛擬機的智能合約。

EIP分為三種類型:

  • 標準跟踪:這些通常涵蓋對核心協議的更改。它們有四個子類別:
  1. 核心:與以太坊協議的核心規則有關。
  2. 網絡:與改進網絡協議規範有關。
  3. 接口:用於通過RPC 與協議交互的API 和其他相關更改,以及智能合約ABI 接口。
  4. ERC:以太坊徵求意見;這些是應用程序的標準,包括智能合約和通證標準。
  • Meta/Process EIP:這些涵蓋圍繞以太坊但不直接接觸協議本身的進程。這些可能包括影響協議變更等決策過程的提案。
  • 信息性EIP:這些涵蓋了以太坊設計問題或社區將從中受益的指南,但不會改變或觸及以太坊協議的功能。這些也是比較次要的EIP,因為用戶可以隨意忽略它們。

以太坊標準和指南通常有EIP 提案流程的生命週期。這些生命週期階段是“idea”、“draft”、“review”、“last call”(最終審查)、“final”(最終標準)、“stagnant”(非最終EIP,閒置時間超過六個月) 、 “withdraw”和“living”(EIPs 是可操作的,但本質上會定期更新,永遠不會真正最終確定)。

通用以太坊通證標準

你可以在此處找到所有EIP 的列表。但是,讓我們看一些流行的以太坊通證標準。

正如我們在上一節中提到的,通證標準是標準追踪(Standards Track)的一部分,並且與適用於應用程序(包括智能合約)的相關規則。

其中最著名的可能是ERC-20,它來自EIP-20。該標準適用於可替代通證——在類型和價值上與另一個通證完全相同的通證,這意味著沒有通證是唯一的。這些exchange 中最常用來被交易的加密通證。 ERC-20 規定了一種通證標準,該標準規定了在智能合約要實現的API。如果你點擊上面的ERC-20 相關鏈接,你可以看到ERC-20 通證智能合約必須實施符合標準的簽名和事件列表。這使它們具有互操作性,並使我們能夠編寫可以與這些通證交互的應用程序,從而使生態系統更具可組合性。開發人員還可以用他們喜歡的語言編寫與這些ERC-20 通證智能合約交互的庫,因為我們有一份ERC-20 規範公開的所有功能和數據的列表。

Chainlink 的LINK 通證合約也符合ERC-677 規範,它通過添加一個transferAndCall方法來增強ERC-20 通證的功能性,該方法可以在單個交易中,將通證發送給被調用的合約,並且調用接收合約中的特定功能。這就繞過了ERC-20 中轉移通證是一個多步驟的過程的限制,ERC-20 會增加複雜性並也增加了發送者的gas fee。

另一個流行的通證標準是EIP-721 中製定的ERC-721 通證標準。與ERC-20 通證不同,ERC-721 通證允許將某些獨特的屬性添加到不同的通證中,從而使它們“不可替代”。此功能可用於標記從藝術到個人身份的一切事物。由於該標準要求的方法列表是公開的,因此像Opensea 這樣的NFT 市場可以通過它建立市場以列出、交易和銷售NFT,因為市場的代碼可以與NFT 的智能合約交互,以讀取和寫入與NFT 相關的數據。

EIP-2309 提出了基於ERC-721 的一些改進,它標準化了在創建或傳輸不可替代通證時發出的事件的結構。

另一個流行的通證標準是ERC-1155,它是由EIP-1155 所約定。 ERC-1155 制定了可以發行ERC-20 和ERC-721 通證類型的智能合約的標準。這被稱為多通證標準。該ERC 還試圖糾正ERC-20 和ERC-721 中的錯誤並改進它們的功能。

在提案生命週期的各個階段還有其他標準,你可以在這裡查看它們的更多信息。

Solana 通證標準

雖然通證標準只是一種標準化規則(除了區塊鏈,在化工領域到建築領域都會遵循一定的標準!),但它們在不同的上下文中確實有不同的名稱。在Solana 生態系統中,通證標準包含在Solana 程序庫(SPL) 中,這是一個在Solana 鏈的運行時(runtime)上運行的鏈上軟件程序庫。兼容SPL 的通證會與Solana 鍊和Solana 錢包兼容,並增加了Solana 生態系統中的可組合性。 Solana 通證包含在Solana 通證計劃中,該計劃是整個SPL 的一部分。該程序為Solana 兼容通證的創建、發行、轉移和銷毀創建了一個標準化接口,可與以太坊生態系統中的ERC-20 和ERC-721 相媲美。

Solana 的原生通證是SOL 通證,相當於以太坊的ETH。這也是一個SPL 通證。 SPL 通證的功能差異很大——有些可以是NFT,有些可以是可替代的但流通量很小,還有一些可以結合其他各種類型的功能。

同樣的,遵守SPL 標準意味著Solana 上的通證可以使用符合SPL 標準的錢包和智能合約進行交互,從而實現生態系統內的可組合性和創新。它們還提供用於研究的分析和元信息,正如在Solscan 上可以看到的那樣。 Solscan 的功能也是根據SPL 的標準,該標準規定了符合SPL 的通證必須具有哪些功能,以便開發者可以構建一個前端與所有符合SPL 的通證進行交互。

總結

為了使在區塊鍊網絡上的智能合約有效運行,通證標準被用來來指導智能合約的實施,這些智能合約提供可以構建去中心化應用程序的編程接口。如果你是開發人員,現在就可以創建你自己ERC-20 通證。你還可以通過了解這些標準如何幫助發展DeFi 協議、NFT 項目和元宇宙來加深你的技能。