沒有免費的午餐——從EOS RAM價格看公鏈通證經濟體系設計

深度 正文 2018-07-24

自6月份EOS主網上線以來,其RAM價格一路走高。在2018年7月3日,1 KB RAM價格已達到近0.9 EOS / KB,而在7月4日又一度暴跌至不到0.5 EOS/KB。EOS RAM是什麼?為什麼價格會在短期內暴漲暴跌?我們通過對EOS RAM原理的簡要介紹,分析其隱藏在價格曲線背後的機制,可以看到免費的未必是最好的。另外,Bancor算法等在數字資產領域內的創新應用或許會帶給我們驚喜。關鍵是應設計好整個通證經濟模型。

1. 事件回顧

只要近期參與過EOS相關的投資或開發,你一定聽到過對EOS RAM價格高企的討論、抱怨等聲音。我們可以很直觀的從近期的價格走勢中看到這一變化。RAM的價格從6月19日0.017 EOS/KB左右的價格一路上漲到最高0.9 EOS/KB。即使是在以價格波動率大而著稱的數字資產市場中,50倍的漲幅也可稱的上是令人驚訝了。


沒有免費的午餐——從EOS RAM價格看公鏈通證經濟體系設計

(來自eosmeta.io)

在EOS上創建一個EOS賬戶需要大約4KB內存。在當前價格(2018年7月4日16點時EOS價格為8.8美元、RAM價格為0.5 EOS/KB)下,建立一個賬戶即需要付出大約120元人民幣的成本。如果按以太坊上的現象級應用CryptoKitties來進行一個粗略的換算,它如果運行在EOS目前大概需要150萬元人民幣(參考http://3g.163.com/tech/article/DLQJSB9Q000998GP.html)。

2. EOS內存和Bancor算法是什麼?

EOS的目的是為了構建一個區塊鏈操作系統,因此EOS在設計的過程中引入了許多計算機體系結構中的概念。

EOS計算資源主要包括兩類:一類是內存(RAM),另一類是CPU和網絡帶寬。其中:RAM主要是為了存儲區塊鏈平臺中的賬戶信息、智能合約執行信息等數據;而CPU和網絡帶寬則是即時性計算資源。因此對於這兩類資源的使用模式也不太一樣,對於RAM需要使用EOS進行購買;而對於CPU和網絡帶寬則採用的是抵押模式。

但其實在EOS Dawn 4.0之前,RAM和CPU帶寬等資源一樣都是通過抵押EOS來獲取的,所以用EOS的數量在RAM的抵押和換回時是相同的。為了防止RAM價格上漲後用戶不願意將內存換回為EOS,自Dawn 4.0 版本以後,EOS的RAM轉而採用了買賣的機制。買賣時的價格是根據Bancor算法公式進行動態計算,通過市場供需關係來調節。

那麼,什麼是Bancor算法?追本溯源,Bancor是在1940年-1942年間由凱恩斯、舒馬赫提出的一個超主權貨幣的概念,可作為一種賬戶單位用於國際貿易中,並由英國在二戰後正式提出。然而,由於美國實力在二戰後一枝獨秀,Bancor方案並沒有在佈雷頓森林會議上被採納使用。但應用這一思想的Bancor算法則繼續延續了其生命力。Bancor算法由Bancor Network項目提出應用,旨在採用公式來設定好數字資產間的兌換價格。其聯合創始人Eyal Hertzog近期也被BM邀請一起來探討EOS中Bancor算法的應用。

在EOS中,Bancor算法被用來指導RAM的買賣。它是根據當前EOS的總量與剩餘可買入RAM的數量來計算出RAM的價格。即剩餘的RAM越少、EOS越多,則價格越高。而且在購買時,EOS會先轉換為一箇中間通證RAMCORE;再通過RAMCORE轉為RAM的數量。因此EOS中的算法比原有Bancor算法更為複雜。通過contracts/eosio.system/exchange_state.cpp代碼可看到,其中涉及到2個公式(也可參考https://blog.csdn.net/w7849516230/article/details/80836913和https://eospark.com/ram.html):

EOS與RAMCORE的兌換公式為:

沒有免費的午餐——從EOS RAM價格看公鏈通證經濟體系設計

其中,E為EOS到RAMCORE所能兌換的數量,R是RAMCORE的初始發行總量,C1為當前EOS餘量,T1為用於購買的EOS數量,F為常量參數。

將上述公式的進行反向整理設計,即可得到RAMCORE與RAM的兌換公式為:

沒有免費的午餐——從EOS RAM價格看公鏈通證經濟體系設計

其中,T2是準備購入的RAM數量;C2為可分配的RAM餘量。將中間變量E代入即可得出用於購買的EOS數量(T1)與可兌換到的RAM數量(T2)之間的關係。

為方便直觀的理解,可以對公式進行簡化,得到:

可以看到隨著可買RAM餘量(C2)的降低或者EOS數量(C1)的增多,RAM的價格會加速增長(即同樣付出T1的EOS下,可換取到的RAM數量T2變少了)。

因此EOS的RAM交易可看作是一種做市商交易模式。其價格由Bancor算法得出;EOS平臺自身作為傳統意義上的做市商,來保證RAM商品的流動性。因此,這一機制的初衷就是為了保證RAM作為一種相對稀缺的資源其價格可滿足供給和需求的經濟學原理,而不至於受到個別投機者的影響。可以說,這一模式有其獨特的創新應用價值。

3. 價格為什麼會暴漲暴跌

知道了交易機制,我們再來分析為什麼近期價格會劇烈波動。直接原因可能在於近期數字資產市場各類資金的湧入炒作。由於近期整個數字資產市場行情持續走低,一部分資金從投資數字資產的市場中撤出轉而進入其他領域內。出於投機心理或者對於EOS生態稀缺資源囤積居奇的思路,EOS內存價格也被相應的抬高。

另外,BM的態度也被人們視為一個風向標。在7月3日前,BM採取的是讓市場和社區來主導的思路,並不想人為干預市場運營。但隨著價格的不斷增高,根據IMEOS消息,7月4日BM也開始考慮去修改Bancor算法,同時還包括使用SSD擴容物理RAM的計劃。因此引起了一定的恐慌性拋售,RAM價格也從高點開始下跌。

同時,也有人指出,與現實中目前的64GB情況不同,最初在Dawn4.0裡Bancor算法假定的是1TB等較大內存情況;原本設想的RAM也是按照每年5%的增速擴大,目前看可能較難應對短期內的行情衝擊。根據Bancor算法,如果在需求不變的情況下,只有增加供給,即超級節點進行擴容才可以直接解決該問題。超級節點本身可能也會持有大量EOS,所以對於需要何時擴容、擴容多少這些問題,超級節點出於自身利益的關係,達成共識的過程可能並不會太順利。另外,隨著生態體系的不斷髮展,相同的行情很可能會周而復始的上演。因此,簡單的擴容較難從根本上解決這一問題。

4. 背後的更深層次原因

暴漲暴跌背後的更深層次原因也和EOS本身的通證經濟體系有關。

與一些比特幣、以太坊等公有區塊鏈平臺不同,在EOS上進行交易並沒有手續費。而生成區塊的工作則由21個超級節點來完成。作為獎勵,EOS每年會進行一定量的增發分配給超級節點作為回報。

由於沒有了手續費或“gas”的概念,同時為了防止大量無意義交易佔用資源,EOS對交易所需佔用的資源(RAM)需要使用EOS通證進行“購買”,並在Dawn4.0版本之後採用市場價格機制進行調節。然而,這一機制由於大量投機者的湧入而遭遇了挑戰。

從深層次來說,手續費在整個通證經濟體系中,既可作為對節點運行維護者即礦工們的獎勵,又避免了用戶過度使用而造成的資源浪費。實踐已經證明這一機制具有很好的效果。“gas”本身就是一個很形象的名稱,說明了發生交易、運行合約(尤其是圖靈完備的合約)時所應付出的消耗成本。

因此,手續費可理解為“使用時付費”的資源租賃模式;而購買RAM可理解為“使用前付費”的資源購買模式。儘管具體方式不同,但在整個通證經濟體系,都需要有一個資源調節機制存在。所以對於資源調節對應的“是否應該免除手續費”這一問題,其答案或許並不是簡單的是或否,而應考慮業務模型中的資源使用機制如何設計。

現在絕大多數的主流公鏈項目都有手續費的概念,用於維護整個生態體系的完整。例如,以太坊等公鏈平臺每次交易運行都需要付出一定量的gas。但同時,手續費的存在使得在DApp生態快速發展的大背景下,也帶來了用戶體驗降低、使用門檻提高等負面影響。

5. 解決思路

回到EOS內存問題本身,除了簡單的擴容之外,我們也可以從EOS機制和Bancor算法找到一些解決思路。

RAM的價格機制本質可以理解成EOS基於Bancor協議給RAM創建了一個智能合約:使用EOS購買獲得RAM;RAM獲得囤貨後價格飛昇帶來的更多EOS收益,買賣均會產生手續費0.5%。當市場RAM的佔有量達到一定比例後,稀缺性會導致價格加速增長。

因此,對於EOS上不斷增長的DApp應用上,可通過側鏈等形式運行單獨的DApp應用,並通過多個側鏈間市場競爭的方式尋求RAM供給與需求間的平衡。

6. 啟示

對於區塊鏈用戶和區塊鏈開發者,都應知道天下沒有免費午餐。對於區塊鏈來說也不例外,所以應認真分析區塊鏈項目通證經濟體系中所有環節是否存在“弱點”,對是否要採用手續費等方式進行通盤考慮,分析區塊鏈項目的各方面是否符合業務邏輯和業務需求。

而要解決EOS當前RAM價格問題短期內可通過擴容等方式擴大供給來直接降低價格,但長期來看還應採用側鏈等創新技術方式。