DeFi 算什麼?

萬物皆計算

最近

DeFi

大熱,可稱現象級,很多人從經濟學和網際網路應用 度談了不少,本文中我試著提供一種基於

計算理論

的不同解釋。

以太坊

作為第二代公鏈代表專案。依照其白皮書願景,旨在利用區塊鏈技術在公共網際網路上實現一臺具備

圖靈完備計算能力

的分散式計算機,相較於前輩比特幣,最重要的升級是實現了圖靈完備的

智慧合約

。那麼運轉五年至今,以太坊上已有大量智慧合約部署,這臺計算機是否真的具備了圖靈完備的計算能力,值得研究探討,或許是我們透徹理解以太坊生態的關礙所在。

參照通用圖靈機定義,如果把以太坊系統內各個地址 ETH(以太幣)狀態視作圖靈機字元表的一種編碼方式,雖未能從白皮書上找到嚴格的數學證明,我們暫且從眾將這種建立在

ETH

(以太幣)這種編碼之上的智慧合約視作是圖靈完備的,以便後續問題討論的簡化。

圖靈完備相對論

先拋一個觀點 :即使是一臺相對系統內部計算圖靈完備的通用圖靈機,當其外部輸入資料和內部編碼之間對映關係存在

隨機波動

時,那麼使用該外部輸入資料計算過程所獲得的輸出也未必是圖靈完備的。

眾所周知,鏈下世界大多數經濟活動運轉在法幣系統上,各個經濟體的法定貨幣某種程度上也可視為該經濟系統內表示和傳遞價值的

Token

。我們可以從各個交易平臺的價格資料觀察到,法幣單位價格和鏈上 ETH(以太幣)單位價格之間的對映關係始終存在波動,並未實現天然的錨定。

這種現象究其原因涉及到很多維度,一個可能的主因是貨幣價值的

信用來源

不同。法幣信用來源於國家機器;而 ETH(以太幣)則比較奇葩,其信用來源是伴隨區塊鏈技術出現的一種創新形式:即透過

分散式的電力

能量輸入(PoW 挖礦),以

自組織

的方式產生信用,一些具體的討論可參 《比特幣是怎麼想的》。

大部分時間裡這兩個系統的信用對映關係的變化率是

不等價

的,所以才造成了價格的波動,同樣的波動現象還可以在各國貨幣匯率以及公司股價之間觀測到。更進一步看,即使是執行在以太坊上各個不同合約中的 Token,其信用來源也同樣具有多樣性,典型如 ETH(以太幣)和

USDT

信用來源的巨大差別,故這些 Token 之間價格波動也是時刻存在的。

圖靈機

本質上雖然是一個數學模型,但現實應用中要依託物理裝置來實現,因為用於編碼的經典資訊形式離不開物理載體,大部分計算機、礦機的積體電路和電晶體就作此用途。有別於一臺經典計算機的物理形態,在以太坊系統內,有著不同的礦機(計算機)型別參與合約的計算,雖然軟硬體存在差別,但各個礦機之間透過

EVM

(以太坊虛擬機器)輸出的計算結果卻具有

一致性

,所以 EVM 從計算原理上也是這麼一臺圖靈機,只是它虛擬的執行在區塊鏈上。

一種可能的 險是,當我們使用 ETH(以太幣)作為編碼,用以太坊這臺圖靈機來完成鏈下法幣 Token 問題的計算時,由於兩種 Token 之間價格波動導致的

編碼錯誤

,會影響該計算的圖靈完備性。

這個問題乍看難於理解,但我們還是可以從

通用圖靈機的結構

計算原理

入手討論:

一條無限 紙帶,紙帶分成一個個格子,每個格子可以最多寫一個字元

一個字元表,包含紙帶上字元全集和一個空白字元(表示沒有字元)

一個讀寫頭,讀寫格子的指標,可以讀寫擦去格子中的內容,可以左右移動一個格子

一個狀態暫存器,用於儲存狀態,追蹤

整個機器的狀態

(執行,停止)

一個有限指令集,讀寫頭在特定情況下應該執行的行為(程式)

DeFi 算什麼?

通用圖靈機

圖靈大神在設計通用圖靈機時,巧妙的把計算問題等價的轉換為

機械運動

模型,當然這種機械運動不但可以透過物質化實現,也可以透過完全資訊化的虛擬圖靈機形態以抽象的資訊方式實現。對於 ETH(以太幣)相對法幣 Token 計算的編碼混亂,我們也可以透過將其轉化為

動力學問題

來討論求解。把這種導致 ETH(以太幣)編碼混亂波動關係,抽象成一個外部動力學環境對機械運動的圖靈機計算干擾模型。

需要說明的是,在實際發生的情況中,波動導致的編碼混亂會影響圖靈機的各個模組,在這裡我們只關注其核心定義模組——

機械運動的轉移函式

,它規定了機器如何從一個格子走到下一格子,為了討論問題方便,我們這裡還需要對模型再做兩次簡化:

第一次簡化

:雖然價格波動作為複雜系統的一種湧現,是一個隨機非週期性過程,但卻只有一個維度兩個方向,假設我們可以透過一種對映關係把所有模組編碼混亂都轉化為圖靈機讀寫頭位移的隨機機械抖動;

第二次簡化

:雖然實際情況更為複雜,為了方便表示這種隨機抖動,我們引入現代金融學中描述證券價格隨時間演化模型,把這種抖動視作隨機的布朗運動(也稱維納過程)。

於是我們把模型最終簡化成為了:一臺讀寫頭連續受到

外部布朗運動

干擾的圖靈機,其計算的圖靈完備性問題。

作一個形象的比喻,對於鏈下法幣表示價值作為輸入的計算過程而言,以太坊就是一臺

泡在布朗運動水分子

中的圖靈機,且水分子的布朗運動能夠顯著影響圖靈機讀寫頭位移機械運動,當影響大過紙帶上一個格子的間距時,圖靈機位移函式的準確性就會失效,導致整個計算過程的混亂。而由於這種影響是隨機發生的,如果整個計算過程中不能透過內部固有演算法修正,計算就不再是圖靈完備的,計算的價值大打折扣。

誇張的說,這種情況下,

泡水的圖靈機

和猴子打字機又能有多少差別呢?有效的部分就只剩下對以太坊系統內部問題的計算了。比如在各專案發幣時(ICO)作個 Token 狀態的分散式儲存工具,或者開發一些鏈上資產屬性的 Fomo 遊戲。

DeFi 算什麼?

一臺讀寫頭連續受到外部布朗運動干擾的圖靈機(Aero)& 猴子打字機,來源:Wikimedia Commons。 New York Zoological Society

DeFi 上場,拯救泡水圖靈機

和以太坊系統內部計算相比,

計算法幣世界的問題

始終是誘人的,經濟體量、社會價值不可同日而語,利潤有多可觀,看看法幣世界金融行業就知一二。當然解決傳統金融的問題,也是尼克·薩博提出智慧合約概念的初衷所在。有激勵就會有變化,大部分

DeFi 專案

在以太坊 Layer 2 搭建的種種結構,本質上是試圖對抗(矯正)這種隨機波動干擾,拯救泡水的以太坊圖靈機。

DeFi 專案眾多,雖然都是拯救,但各有各的幹法,下面我們簡要說說這些方案的底層原理 :

提高信噪比

計算通訊不分家,如果把

價格波動

視作通訊過程中的

通道背景噪音

,不明原因無法準確消除時,乾脆把原訊號功率放大再放大,以達到對抗波動干擾,準確傳遞價格資訊的目標。就好比兩個遊客在人群熙攘的廣場上對話,為了讓對方能清楚聽到自己說話的內容而刻意提高了音量。如此以來問題的確是可以解決,但是要多浪費些力氣,晚飯只好多吃一點。這裡面多花的力氣就是為了放大訊號功率而額外付出的能量。

這個

訊號放大

的過程在 DeFi 裡透過

上鍊預言機和公眾質押池

實現。由上鍊預言機負責把鏈下價格資料不斷「抓取」到鏈上合約中供進一步計算使用。多數 DeFi 專案裡上鍊預言機節點本身需要質押 ETH(以太幣)對預言資料信用背書。

受限於預言機節點質押資產總量,當其不足以產生足夠信用規模完成業務計算時。預言機節點所預言的價格資料信用,會經由一個

公眾質押池

進一步放大。公眾質押池對普通使用者開放參與,只要你相信預言機節點上鍊資料的真實性,並及時補倉質押 ETH(以太幣)以應對價格波動即可。當然這裡為了應對不可知的劇烈價格波動,一定是超額質押的,相當於提高了預言機的

訊號功率

,也難免會造成一部分資產信用浪費。即便如此,由於數字貨幣價格波動劇烈,極端情況下這套機制還是會因為背景噪音過大而造成宕機,請參照 3。12 行情。

對賭交易預言機

專案一般形式是一組普通使用者可以開放參與的

鏈上對賭合約

。應對價格波動,由交易雙方向合約打入 ETH(以太幣),換取合約中原生 Token 表示的看跌看漲期權,同時根據演算法產生出第三種相對錨定目標價格波動更小的合約內 Token,當然作為整個計算過程的輸出,第三種 Token 有時候是隱形的存在。

這種模型有著很多變種,但在本質上可視為一個「

賭 模型

」,每個博弈者使用自己認定的價格資訊(邊資訊)輸入合約,透過對價格波動機率分佈的估計,承擔相應的受益和 險。這個過程可以消除 ETH(以太幣)相對法幣 Token

波動的熵

。同 ETH(以太幣)本身相比,合約中作為計算輸出的第三種 Token 相對於法幣價格波動的熵率大為減小,伴隨著更大的能量(信用)輸入,

逐漸逼近

鏈下法幣價格。

DeFi 算什麼?

資訊理論基礎,Thomas M。 Cover 與 Joy A。 Thomas 著

博弈雙方將自己的 ETH(以太幣)轉入合約的過程,可以視作施加一種和已存隨機抖動大小相同、方向相反的外部機械運動作用於圖靈機讀寫頭的過程。有了這些機械運動(能量)的相互抵消,計算過程中 ETH(以太幣)相對法幣 Token 波動的

資訊熵被擦除

。相當於在圖靈機工作工程中,其內部同時執行著一個讀寫頭抖動矯正的演算法。

根據羅夫·蘭道爾在《

不可逆性與計算過程中的熱量產生問題

》文中對這種消除資訊不確定性原理論證,目前我們可以理解到這種演算法的能量(信用)輸入水平和波動消除有相關性,但尚未 各 DeFi 專案有嚴格完備的數學證明,所以這種計算方式精準度最終還是需要用 DeFi 專案本身的

生命週期

來作評估。由於此類問題的複雜度有可能也已經和通用圖靈機一樣觸及了人類已知的複雜度上限,最終未必能夠找到數學上嚴格的證明,造物主大概也是用個體的生命週期來分散式解決 NP 困難問題的。

因為

對抗波動

的計算過程中耗費了能量,對應所耗能量的表示 Token 也應在系統中被擦除,具體表現為參與博弈各方資產應該有

罰沒銷燬

。如果系統內所有的數值都一直都在增加,我也很難理解這個過程的計算結果是可信的。引申一下,總覺得以太坊系統手續費應該伴隨計算從系統中銷燬掉,而非直接參與二次流轉讓所有 ETH 持幣者買單,這樣一臺運轉的圖靈機狀態如何算是復位 ?畢竟不能習慣性的認為以太坊和比特幣系統經濟體激勵邏輯完全等價。

理論上,和提高信噪比的模式相比,對賭交易形式預言機的一個顯著優勢是:如果設定得當,擦除不確定性所耗能量可以和波動本身

恰好相等

,而不需要像第一種模式裡,由於不能精確計算波動而被迫花費額外能量。當然,這種優勢僅僅存在於理論上,具體還要看每個 DeFi 經濟體演算法設計在現實中的實踐反饋。

另外,對於這種 DeFi 模型,由於缺少質押資金池放大信用,能夠處理的鏈下法幣 Token 計算規模上會受限。

應該還有其它形式消除波動的 DeFi 模型,也有把上述兩種方案混用的,因為專案實在太多太多了,體驗又反人類,未能學習列舉之。

還有些專案打著 DeFi 旗號,核心卻還是個「

加密貓

」式資產 Fomo 遊戲。又或者某些專案 Token 表示目標不是錨定鏈下法幣世界,其資產屬性和維度不在此文討論之列。

計算的價值

有人要問,說了半天為什麼非要

計算

啊,計算本身對我們又有什麼價值?這就涉及到伴隨計算機產業發展而生的計算理論了。簡單來說,因為 Wolfram 在計算等價性原理中透過元胞自動機的計算過程向我們證明了:即使按照極其簡單規則執行的系統,也可以演化出宇宙極限的複雜度。如果這個世界的很多問題包含此類不可約化的複雜,那麼有些問題我們即使已知規則和資料也不能預判狀態,

非透過計算不可

。而羅夫·蘭道爾透過計算理論說明了:正是能量驅動計算的過程,可以擦除系統內不確定性資訊,使得我們自身熵減,或者說獲得薛定諤所謂的「

負熵

」,這個話題有點複雜度,後續開文詳說。

從計算理論 度,曾經火爆的 ICO 只能算是完成了區塊鏈的 ERC20 格式資料儲存,算不上使用以太坊進行了完整的計算。很多專案發幣以後,大規模鏈上轉賬(可視為某種計算過程)也就發生了一兩次,然後大多數專案 Token 就進入了中心化交易所。

中心化交易所

是區塊鏈宇宙的資訊黑洞,裡面發生的運算一致性不好說,利用這種型別經濟體 Token 完成任何有價值的完備性計算便更加困難。

眼前 DeFi 熱度和 17 年有幾分相似,雖然每次進步,開放的市場中,都會有人利用資訊不對稱制造大量的泡沫,但泡沫消盡,總會留下些什麼。伴隨著 DeFi 落地生根,在 ETH(以太幣)相對法幣 Token 波動率一定範圍內,以太坊終於實現了可以

做法幣價值計算

的圖靈機初衷。區塊鏈第一次透過自組織形式捕獲了 Off Chain 價值,消除了價格波動,完成了圖靈完備的計算,這難道不是行業一直期待的 Killer application 場景粉墨登場嗎?

拓展開來,其實此類模型並不侷限在區塊鏈領域,具備著一定的普遍性。在傳統經濟領域,把

英鎊

視為圖靈機黑盒來計算

美元的問題

,如果沒有匯率交易來平衡兩種貨幣價值資訊關係的波動,計算也無法得到正確的輸出。

計算的極限

假設你已經接受了計算的價值,讓我們談談

計算的極限

。如果把以太坊 PoW 挖礦過程視為把真實的物理能量引入區塊鏈,導致其系統內以自組織方式形成的耗散結構更有序。那麼系統

相對法幣經濟體的信用

就是這種有序網路結構熵和法幣經濟體本身網路結構熵的差值。而 DeFi 透過消耗以太坊系統內這種有序結構熵完成計算,同時不可避免的導致以太坊系統熵增,那麼 DeFi 能夠計算問題的信用規模就受限於以太坊系統本身信用,所有 DeFi Token 信用總量是以太坊信用總量子集。在生物圈,能量隨營養級逐級傳遞過程中,平均效率為 10%~20%。非常好奇這個效率在以太坊到 DeFi 生態中究竟比例如何,我只能說肯定

超不過 100%

完成任何計算

都有成本

,即使你的計算對我的問題有價值,也要看我付不付得起錢。由於所有以太坊合約都共用一個開放的公共通道,目前因為 DeFi 活躍,造成了 Gas 費顯著提升。究竟有多少法幣世界的問題可以花費如此貴的 Gas 費用,完成計算後仍有持續利潤,我們就不得而知了。

另外也正因為這唯一的公共通道,有些吹泡泡的專案,反而會故意放大波動,透過製造噪音,干擾計算謀利,也許支援加密計算的智慧合約最終能夠解決此類問題,目前無解。

一朵烏雲

最後談談本文立論的

一朵烏雲

,在行文之初,我們默認了,相對於系統內各個地址 ETH(以太幣)狀態而言,以太坊的智慧合約是圖靈完備的。但實際情況是,除了外部電力輸入,以太坊作為區塊鏈公鏈,並沒有更多外部世界強制力能有效滲透入其系統內部對計算做修正或干擾。這種透過自組織實現的圖靈完備,就像受到慣性力影響的圖靈機,如果系統不能保證足夠的能量輸入冗餘,其

計算結果的可靠性

仍是存疑的,當然也並非完全不能做有效計算,只是證明過程會更加複雜,計算中能夠承載的信用規模也會隨之減小。

舉一個例子,伴隨著計算,以太坊系統有

序度損失

,用來表示系統價值的 ETH Token 為什麼還增加了。感覺是 DeFi 吃完飯沒給錢,抹抹嘴走了,然後所有 ETH Token Holder 一起代買單,總感覺以太坊交易手續費還是要銷燬才對。

關於 DeFi 能夠帶給以太坊系統的價值,目前看來也還含糊不清。我這裡缺少資料統計研究,只有一個簡單的整體性指標。就是無論中間怎麼傳導,最終一定要以太坊系統整體在挖礦活動中「吃」到了更多的電力(能量),使得系統有序度進一步提高,而

網路結構熵減

。這種挖礦能耗的增加和 DeFi 活躍正相關性越大越好,如若不然,就很可能是引發系統更快崩潰的「正反饋」,而非促進系統更有序的「創新」。

發散一下

發散談幾個腦洞大點的問題。

關於 DeFi 專案的

Fork

,DeFi 合約因為需要公共信用,所以一定是開源形式,加之目前公鏈資訊儲存是無加密資料形態,相當於在一個公共的計算機上跑著一個開源的演算法。所以一旦演算法能夠捕獲價值產生利潤,這種演算法的專有權就會受到挑戰。傳統世界是盜版拷 ,區塊鏈世界就是出現 Fork。說到 Fork 本質上是一種我們熟悉的區塊鏈專案自我「

繁殖

」行為,類比自然界,只要生態位上還有未被捕獲的額外能量供給,物種就一定會透過繁殖更多個體來填滿冗餘能量空間。

公鏈上的合約版權本質上是一種「

Open IP

」的新形態,故 Fork 從根本上無法杜絕,不過合約本體還是有機會利用早 紅利建立起使用者規模網路優勢。既然沒有正當性和有效手段阻止 Fork,不如順應自然規律,為 Fork 提供便利,主動繁殖更多合約「個體」來佔滿相應生態位。同時要注意在合約中埋下伏筆,讓所有 Fork 個體和本體與合約共享資料以及 Token。如此一來實現了跨合約通訊和計算,就好似變成了社會化動物種群,業務的

拓展性和魯棒性

都會提升,更有機會在各條公鏈之間實現資料跨鏈。

談談 DeFi 和 CeFi 的關係。

類似區塊鏈和古典網際網路,和 DeFi 相對應的

CeFi

一詞最近也被點亮了。CeFi 外延更廣,在區塊鏈行業內最典型的業態應該算

交易所和穩定幣

(USDT)。無論具體形式如何,和 DeFi 最顯著的區別是 CeFi 信用不是由區塊鏈自組織實現的,而來自於專案方組織背書,字面意思就是中心化的信用注入。

中心化注入並不代表沒有信用(整個人類社會也是一個廣義的自組織),相反大多數時候使用者的使用體驗是

又快又好

。只是大家根據 CeFi 在區塊鏈上有限的公開資料無法判斷專案的信用 險。 險未知就不能定價,不能定價的東 不叫 險,叫不確定性。面對 CeFi 時,使用者要麼不信要麼全信,一旦遭遇 險,級別也不是灰犀牛而是黑天鵝,行話叫做

系統魯棒性差

所以使用者會根據自己對 險和成本不同維度偏好分流資產,最終 DeFi 和 CeFi 會捕獲不同維度、不同場景價值。市場情緒過分自信時,來者不拒;市場恐慌時,價值會流向

確定性最強

的資產形態。所以對於眼前 DeFi 泡沫來說,很可能演化的情況是 DeFi 做菜,ETH 收汁兒,BTC 吃飯,無知無畏者買單。

對於更廣義的 CeFi 業務,如傳統銀行和金融機構,其實區塊鏈公鏈和 DeFi 提供了一個低成本的產品模型試驗場。經過 DeFi 公開驗證的業務場景,至少對抗了各種攻擊,避免了封閉測試環境漏洞。一旦這些

鏈上經濟體模

型實踐

成功之後,又可以成為各個鏈下經濟體之間價值互通、共同計算的橋樑,誰說資訊孤島只在區塊鏈世界裡才有?

目前以太坊上 DeFi 專案產品概念大多有著 CeFi 的影子。但是一個公共的,低成本的金融業務實驗場,很可能會帶來

開源軟體

發展模式,DeFi 演算法透過快速迭代超越被模仿的 CeFi 本尊,那麼未來金融行業許多新演算法和標準,很可能會由 DeFi 再反噬回 CeFi,讓我們拭目以待!

最後想小小提醒一句,

圖靈機

已經就位了,各位還在等什麼呢?

撰文:王冠,區塊鏈行業研究員,曾參與聯合發起多個區塊鏈技術社群組織和公鏈專案,畢業於東南大學建築學院

TAG: 以太DeFi計算圖靈機token