原文作者:付少慶,SatoshiLab,萬物島BTC 工作室
V1.5 版本修改註解:
(1)《一文梳理比特幣二層(Layer 2)建設的基礎知識體系V1.0 版》發表於2024 年2 月份,經過三月份寫作《從一個狀態機的角度觀察比特幣二層,可以得到更多的思考與結論》文章,得出了一些不同二層的特徵總結,歸納到基礎知識體系中會便於閱讀,於是發布了V1.5 版本內容。
(2)修改了一些細節的文字表達內容,如一層與二層的連接技術。
(3)因為經常有爭議,把2.4 節中的關於Centralised,Decentralised,Distributed 三個概念做了更細緻的說明。
(4)把2.4 節中的第二張圖片做了完善和修改,使其對比更清晰。
(5)增加了2.5 節,區塊鏈的基礎特性與三種Layer 2 建設的特點總結,這樣更容易理解如果使用多種組合結構。
比特幣銘文的興起,為比特幣生態帶來了新的生機,讓更多的人開始重新關注比特幣, 也有人說是打開了比特幣生態的潘多拉魔盒。在比特幣生態眾多技術發展中,比特幣二層建設是重中之重。針對這個方向,我借鑒一些網路上的知名文章,和多位朋友的交流,以及我們團隊在Web3 產品設計與開發中所探索的經歷,總結了一篇比特幣二層的基礎知識文章。這種方式便於總結與學習,也因為個體認知的局限性,希望能拋磚引玉,吸引更多人完善相關思路,讓這個領域得到更好的發展。
區塊鏈的世界是以比特幣為開局,以比特幣生態為終局。(水滴資本大山老師的總結,我個人很認同。)以太坊也是比特幣的一種側鏈技術探索。在本文中我們會混合使用“二層建設”或“二層網絡建設”,通常“二層網絡建設”的詞語相對狹義,二層建設是一個更廣泛的概念。但為了適應業界通常討論的一層網絡,二層網絡等常用說明,我們也會使用「二層網絡建設」的概念,這兩個詞語在本文中是一個概念。
1. 常見二層Layer 2 要完成的使命
為了理解比特幣二層建設需要解決哪些基本問題。我們先從了解區塊鏈系統的基礎特性開始。
1.1.區塊鏈的基礎特性與基礎需求
本文使用Vitalik 提出的一個概念:區塊鍊是一台「世界電腦」。我們從這個角度來理解區塊鏈的多種特性會更清晰。在後面章節,我們也會依據計算機中的馮諾依曼結構來分析這個「世界計算機」發展的可能性。
我們先總結一些基礎特性:
註:
為了維護區塊鏈這台「世界電腦」的正常運作而產生的需求稱為內部需求;
為了滿足使用這台「世界電腦」的使用者的需求稱為外部需求。
公開透明:這是區塊鏈這台「世界電腦」的資料儲存與執行指令特點,同時也是需要全球眾多分散式節點共同參與運算的內部需求特性。這個特點正好滿足了使用者對資料的知情權,是這台「世界電腦」本身的內部協作要求和使用者的外部需求的共同結果。後面提到的隱私特性是滿足使用者外部的需求,同時又不破壞這台「世界電腦」本身的協作要求。去中心化:這個特性是這台「世界電腦」的架構特性,去中心化的程度和容錯性,在理論上都是由拜占庭將軍理論(協作者中有可能不誠實的情形,即不遵守協議的情形)在支持。非拜占庭將軍系統從理論上都不是區塊鏈系統,我們稍後會看到二層建設中的非區塊鏈系統的兩種情況。去中心化的程度是區塊鏈安全性的重要指標,也是某些特性的基礎。
安全性:安全性是由這台「世界電腦」的架構特性所產生的內部需求和使用者所需的外部需求的共同組成。從微觀層面安全性由密碼學相關的技術來保證,從宏觀層面上由架構的去中心化來保證,從而使得不會因為微觀數據的偽造,或宏觀架構的破壞而影響這台“世界計算機”的安全性。
運算能力:區塊鏈這台世界計算機的一個主要功能是運算能力。衡量這個指標,我們一般用是否圖靈完備來考察。有些鏈為了保持自己的主要特性,是故意設計成圖靈不完備的。例如,比特幣網絡,中本聰不僅讓其代碼指令不圖靈完備,而且在發展中還故意刪減了一些指令集,從而保持其穩定性和安全性。所有的圖靈完備技術都是為了擴展區塊鏈的運算能力。從分層設計的想法來看,簡單的系統更適合做底層。
性能:在運算能力相同的情況下,效能是檢視區塊鏈這個世界電腦的另一個主要能力。一般都用TPS,即每秒處理的交易數量來衡量的。
儲存:區塊鏈被描述為“世界電腦”,那麼它一定有一個儲存功能,就是將資料記錄下來的能力。目前基本上都在區塊內存儲,更專業的區塊外的鏈上存儲還在發展中。
隱私:隱私是「世界電腦」中的細分需求,即要求在計算和儲存的過程中保持資料生產者和使用者的權限範圍(我們把抗審查性也放在隱私部分)。這基本上是由使用者的外部需求所驅動的。
還有一個綜合指標可擴展性,一般是指整個架構的可擴展性,這個特性影響多數的基礎特性,在架構層面,系統的可擴展性是一個很重要的指標。其他還會有一些連結能力,或其他一些特定場景的能力,在這裡不過多的討論,遇到這些特殊的場景時,再詳細分析。
在這些區塊鏈的基礎特性中,大都由不可能三角形在限制相互的發展關係。例如,DSS 猜想即去中心化(Decentralization,D)、安全性(Security,S)和可擴展性(Scalability,S)。如下圖所示:
在分散式系統中,類似的不可能三角形是CAP 原理,CAP 指的是在一個分散式系統中Consistency(一致性)、Availability(可用性)、Partition tolerance(分區容錯性) 三者不可兼得。區塊鏈系統是具有拜占庭將軍問題的分散式系統,所以也適用於CAP 原理。
CAP 原理如下圖所示:
1.2.二層建設的作用
二層建設要完成哪些角色?提供哪些功能呢?二層建設一定是擴展一層系統的不足,將不適合在一層系統上完成的事情,在二層建設上完成。
我們從上面總結的區塊鏈特性可以有一個初步的結論,一定是擴展這些基礎能力:公開透明、去中心化、安全性、運算能力、效能(吞吐量)、儲存、隱私等。除了這些技術角度的基礎能力,還有一個很重要的經濟學問題需要解決,就是降低成本,通常一層網絡的執行事務的綜合成本都比較高,需要使用二層網絡降低這些成本。
總結成一句話就是為了增加容量、降低成本、客製化特性三個維度的方案都是二層建設。對於客製化特性,目前還不夠明顯,或經常掩藏在前兩個特性中,有一些費解。我們可以這樣理解,一層網絡的特性對於許多應用,所需的程度不同,可以在二層上面針對某些應用重新調整各種特性的實現度。
在二層建設中,區塊鏈的基礎能力會各有取捨,會降低一些特性,甚至丟棄一些特性, 而換取某些特性的顯著提升。例如:有些二層為了提高效能,會降低去中心化的程度,會降低安全性;有些二層為了增加吞吐量,如閃電網絡,會改變系統的結構和結算的方式。還有一些會不降低基礎特性的前提下,增強了某種特性,例如RGB 的處理方式,明顯增加了隱私性和抗審查性,但增加了技術實現難度。在後面的案例中,我們會看到同時降低或改變幾種特性的二層建設。
其中降低成本應該是所有的二樓建設的一個基本需求。 (是否有不降低成本的二樓?我還沒見過。)
1.3.為什麼要做分層設計?
分層設計是一種人類處理複雜系統的手段和方法論,透過將系統劃分為多個層次結構並定義各層之間的關係和功能,以實現系統的模塊化、可維護性和可擴展性,從而提高系統的設計效率和可靠性。
對於一項廣泛且龐大的協定體系,使用分層會有明顯的好處。這樣做使人容易理解, 容易分工實現與容易分模組改進等優點。如電腦網路中的ISO/OSI 的七層模型設計,但在具體的實作中,可以合併一些分層,例如,具體的網路協定TCP/IP 是四層協定。如下圖所示:
具體地說協議分層的優點:
各層次之間是獨立的。某一層並不需要知道它的下一層是如何實現的,而只需要知道該層透過層間的介面所提供的服務。這樣,整個問題的複雜程度就下降了。也就是說上一層的工作如何進行並不影響下一層的工作,這樣我們在進行每一層的工作設計時只要確保界面不變,可以隨意調整層內的工作方式。
靈活性好。當任何一層發生變化時,只要層間接口關係保持不變,則在這層以上或以下層均不受影響。當某一層出現技術革新或某一層在工作中出現問題時不會連累到其它層的工作,排除問題時也只需要考慮這一層單獨的問題即可。
結構上可分割開。各層都可以採用最適合的技術來實現。技術的發展往往不對稱的,層次化的劃分有效避免了木桶效應,不會因為某一方面技術的不完善而影響整體的工作效率。
易於實現和維護。這種結構使得實現和調試一個龐大且複雜的系統變得易於處理,因為整個的系統已經被分解為若干個相對獨立的子系統。在進行調試和維護時,可以對每一層進行單獨的調試,避免了出現找不到、解決錯問題的情況。
能促進標準化工作。因為每一層的功能及其所提供的服務都已有了精確的說明。標準化的好處就是可以隨意替換其中的某一層,對於使用和研究來說十分方便。
分層模塊化設計思想是技術領域對待一項功能龐大,需要多人協作,並不斷改進工程項目的常見處理方法,並且是經過實踐檢驗,行之有效的方法。
2. 比特幣Layer 2 的幾種建設思路
我們以比特幣的二層建設為案例,進行相關的分析。比特幣的二樓有三種顯著的二樓建設路線:
(1)一種是基於鏈的擴展路線,和EVM 的二層很類似,是區塊鏈結構;
(2)一種是基於分散式的路線,以閃電網路為代表,是分散式結構。
(3)還有一條是基於中心化系統的路線,以中心化索引為代表,是中心化的結構。
前兩種方式都很有特點,已經有一些在使用的產品和探索中的產品。對於第一種方式, 因為有了以太坊的蓬勃發展和其他比特幣模仿鏈的探索,基於鏈的二層擴展相對更容易,可參考案例更多。第二種以分散式為基礎的方式通常較為難度,發展也緩慢一些,以閃電網絡為代表。第三種方式很有爭議,因為看起來不像是二層建設,但似乎又完成了二層建設的功能。
哪一種二層建設方案比較好呢?我們用一個市場檢驗結果來作為衡量標註,哪個二層網的總鎖倉價值TVL(Total Value Locked)高,那種方案就是最優方案。隨著時間和技術的發展,這個最優方案會是一個變化的過程。
對於比特幣的二層網絡定義,只要依賴比特幣網絡,和比特幣網絡建立技術關聯,一些特性又優於比特幣的一層網絡,都算比特幣的二層網絡建設。換句大山的話:只要消耗BTC 作為gas,以BTC 為底層資產,擴展了比特幣性能的系統都算是二層建設。根據這個判斷, 我們應該會認可第三種二層網絡建設,即中心化結構的二層建設。
比特幣本身技術的發展,如修改OP_RETURN、SegWit(隔離見證)、Taproot(隔離見證升級版)、Schnnor 簽名、MAST、Tapscript 都應該為連接一層和二層的目的而設計,不應該使用這些技術過多的開發功能,因為一層網絡再怎麼擴展也不會有質的突破,必須進行二層建造。但在沒有更好用的比特幣二層產品情況下,這些連接一層和二層的技術能力,在一段時間內會被過度的使用。
2.1.基於鏈的二樓建設
早期的比特幣模仿鏈做了多種探索,像是「Colorcoin」(彩色幣)、「CovertCoins」和「MasterCoin」;各種擴容的比特幣模仿鏈,像BCH(Bitcoin Cash),BSV(Bitcoin SV) , 5 BTG(Bitcoin Gold);各種側鏈技術都是基於鏈的擴展建設案例,可以說是一種廣義的二層。
包括以太坊,也是一種基於比特幣的改進探索。 Vitalik 在說服其他專案團隊無果的情況下,針對比特幣的不完美:UTXO 的無帳號系統,執行語言的非圖靈完備,可擴展性差等問題,自己組建團隊發佈白皮書,開發新一代的區塊鏈系統。以太坊的這種探索雖然不是比特幣上直接的二層建設,但廣義來說是一種基於鏈的建設探索。
以太坊對於比特幣不完善的改進探索,以及以太坊上二層的發展與驗證,給了比特幣上基於鏈的二層網絡發展的參考案例。各種的Rollup 方案,跨鏈方案,訊息通道技術,以及以太坊本身的分片技術(從處理複雜系統的分層想法來看,也許這種想在一個層次解決多個問題的思路是錯誤的),使得以太坊技術的生態蓬勃,使不少人一度認為公鏈的發展方向和未來已經確定,以太坊為代表的生態已經勝出,其實這也是基於鏈的二層建設相對成熟的一種表現。但基於鏈的二層建設只是二層建設的一種方式,它有自身的優缺點,還需要其他的二層技術來完善整個二層生態。
比特幣中基於鏈的二層建設,大致包含兩種典型的鏈類型,一種是兼容EVM 的賬號模型,一種是類比特幣的UTXO 模型。現有的案例(我們用廣義二層定義)包括:像是以太坊、 Polygon、Bsc、Arbitrum 等都是EVM 的帳號模型,像CKB(Nervos),Chia 都是UTXO 模型。
在後面的章節,介紹已經運行的比特幣二層專案中,會比較詳細地介紹某些案例。
此外,已經在以太坊上成功的二層項目,也會加入到基於鏈的比特幣二層建設中。對於這些以太坊上的二層專案方,改造成比特幣上二層的工作量和挑戰會更少。在以太坊的rollup 成熟與模組化的發展和理論成果上,這種方式的二層建設會成為擴容討論的主流,也是見效最快的方案。
這種改造會有多大的成功?還有待發展的檢驗。可以從這種基於鏈的二層建設的優缺點做一些初步的判斷。
基於鏈的二樓建設的優缺點有哪些?
這種方案的缺點是基於鏈的二層一般還會受限於區塊鏈的限制,對於效能的提升有限, 不是將系統變得更中心化,就是降低區塊產生間隔,增大區塊容量,安全性上一般都會降低。於是產生了二樓上面的二層建設,也就是所謂的Layer 3 或Layer 4 。
優點是:這種方案保持了區塊鏈的大多數基礎特性,並且一般都解決了圖靈完備的問題, 交易費用也顯著降低,在一定程度上擴展了一層網絡的能力。而這種方案的建設案例豐富, 技術實現相對容易,已經有了不少的探索案例,上層應用的遷移也非常便捷,是一種更快的實現方式,相信這種方式會產生較多的二層網絡。
大致判斷,因為這種方式的擴展局限性,基於鏈結構的二層應該會存在眾多項目,在每個垂直領域都可能存在一個或多個二層,每個項目要完成自己特色的二層建設,滿足某些應用的需求。其價值也會由其上所應用的數量和總價值來決定。
2.2.基於分散式系統的二樓建設
在二層建設中,還有一些是基於分散式系統的建設。在這種方案中,二層的結構和框架已經不是區塊鏈的結構,而是一種基於Channel 的分散式系統。閃電網絡是一個典型的代表。
分散式系統由一組有限的進程和一組有限的通道Channel 組成。分散式系統中為了傳遞訊息,需要控制的資料、事件、通道,已經是一組比較複雜的問題。我們在這裡所指的Channel 是這上層的通道概念,如閃電網路中的支付通道,Nostr 中的訊息通道,而不是分散式網路中的特定技術Channel 的底層概念。
在分散式系統的二層建設中分為兩類:
(1)只完成價值傳遞,類似閃電網絡;
(2)既完成價值傳遞,又完成圖靈完備的技術,如RGB;
在以分散式為基礎的二層建設方案中,因為是價值傳遞,有許多超越原有訊息傳遞的難點, 例如通道內的總價值容量,對事務的嚴謹性,不能二次消費等問題都超越信息傳遞的難度。所以基於分佈式的二層建設發展沒有基於鏈的二層建設發展快,成熟的案例不是很多。
如果要在這樣的二層上完成圖靈完備的計算,也就是在Channel 上建立一個圖靈完整的虛擬機器系統,會更有難度。像RGB 協議,就是透過客戶端驗證,一次密封,來實現在一個分散式系統上的圖靈完備的計算。
比特幣中基於分散式的分散式系統的二層建設,已有的案例包括:閃電網絡,RGB,是否有更著名的案例?如果按照廣義二層建置的標準來看,Nostr 是不是也屬於Channel 機制的分散式系統的二樓建置?在整理以太坊資料時候,看到以太坊中文檔中有使用Channel 的案例:Connext,Raiden,Perun,可以作為深度研究者的探索方向。
在後面的章節,介紹已經運行的比特幣二層項目中,會比較詳細的介紹閃電網絡和RGB。
基於分散式的分散式系統的優缺點有哪些?
這種方案的優點一般是系統更加去中心化,二層網絡中能夠容納無數的節點,隱私性和抗審查能力也更好,有無限的擴展性,從而在理論上性能變得極大。
這種方案的缺點是技術實現複雜,在龐大的分散式系統中的路由算法,價值拆分與封裝算法都比較複雜。相對於資訊傳遞,在價值傳遞方面還缺乏許多工程實現經驗和基礎設施。這也是閃電網絡一直被認為是發展緩慢的一個原因。
另外在這個系統中實現圖靈完備的系統是一個非常大的挑戰,也就是Channel+計算, 理論上絕對可以實現,但實務上仍處在早期的實驗階段。 RGB 是這種情況額一個典型代表。
基於分散式方式的二層建設一旦獲得突破,將會極大的推動上層應用的發展。其龐大的分散式節點形成的去中心化能力,與圖靈完備的程式碼執行能力都會更好的支援下一代網路應用,也就是大家都在說的「Mass Adoption」場景。
大致判斷,基於Channel 的分散式結構的二層一般只會存在幾個較少的平行項目,有兩個主要原因,一個是這種系統的其無限擴展能力,另一個是實現的技術難度大,所以這樣的系統要求在設計和理念上更開放,能容納更多的人和團隊參與。而基於這種二層基礎設施應用開發團隊也會推動這種二層的發展,例如,基於RGB 的BiHelix 專案。
2.3.基於中心化系統的二樓建設
要不要這個分類?應該會有爭議。
像Ordinals 這樣的中心化索引結構,或某些功能節點的索引器都是中心化結構的,它們也是一種二層建設思路。但這種建設想法會比較少的被認可,因為二層過於中心化,對一層網絡的擴展非常有限。這種中心化結構的二層建設,其各種區塊鏈的基礎特性都要依賴一層網絡,二層只作為一些簡單的計算和統計功能,二層有時像是一種可有可無的臨時存在, 隨時可以被另一個二層取代,重要性好像沒有那麼高。但從On-Chain 和Off-Chain 的角度看, 和凡是能夠提高一層網絡能力的角度看,這種中心化的結構也是一種二層擴展。
這種系統的案例除了Ordinals,應該還有那些中心化的交易所。在後面的案例中不介紹這種情況的項目。
基於中心化系統的二層建設的優缺點:
優點是中心化系統非常成熟,有無數的可用案例和優化方案,完全的圖靈完備和卓越的性能。
缺點就是二層極度中心化,所有的區塊鏈基礎特性都要依賴一層網絡。
大致判斷,基於中心化結構的二層應該會存在較少的項目,甚至是階段性的存在。在基於鍊式結構和Channel 的分散式結構成熟完善後,大多數中心化結構的二層建設會消亡,或只會留下較少的特徵場景的中心化二層。目前階段,因為中心化系統很成熟,在能夠寫入基礎鏈上資料的情況下,能夠很好的滿足On-Chain 資料和Off-Chain 計算的場景,是當前比特幣生態初級應用的最容易實現模式,被大量使用。
2.4.更廣義的二層概念以及更上層應用
從上面的二層建設的結構來分析,有區塊鍊式結構,分散式系統結構,中心化系統結構。這就是我們對系統結構的常見分類:Centralised,Decentralised,Distributed,從這個角度我們更容易理解每種類型的特徵以及適用場景。三種二層類型都有其優缺點,在未來完整的比特幣生態中根據不同的場景,三種類型應該都有分佈。
我使用這個圖是參考Vitalik 的文章:The Meaning of Decentralization,連結網址:https://medium.com/@VitalikButerin/the-meaning-of-decentralization-a0c92b 76 a 274
對於這個圖國內常會有一些爭議,認為Decentralised,Distributed 的圖標識反了。從控制與決策的角度,應該能夠消除這種爭議,能比較好的理解Decentralised,Distributed。對於圖中的Centralised(A),從多種角度理解,大家應該都沒有爭議,所以我們只對去中心化和分散式做比較。 Decentralised 去中心化其實是一種多中心化,其控制和決策還需要一定的中心節點參與,這個時候控制與決策被稱為共識。例如比特幣中具有挖礦能力的全節點, 才有能力決定新區塊的產生與寫入新區塊中的內容,而那些沒有挖礦能力的節點是唯讀節點或驗證節點。在POS 和DPOS 的鏈中,這種情況會更明顯,只有共識節點才能決定產生與寫入新區塊中的內容。在共識協議中同步演算法與非同步演算法的差異也更明顯,會決定區塊鍊網路中可以容納的節點數量。在分散式系統Distributed 中,完全沒有明顯的中心存在,只有節點,任何節點可以隨時加入或離開這個網絡,其控制與決策都是局部的,這也是分散式系統可以做到效能非常大的原因。這樣說明,是不是就消除了Decentralised,Distributed 的常見爭議?
此外區塊鏈人群中經常討論二樓建設上面的Layer 3 ,甚至是Layer 4 ,是一種廣義的二層建設。與Gavin Wood 提出的Web3 技術堆疊的5 層結構中的Layer 3 ,Layer 4 是完全不同的概念。 Web3 技術堆棧中的Layer 3 ,Layer 4 是應用協定的分類方式。
這些二層建設會對上層應用產生哪些影響?在擁有了區塊鏈系統所提供的基礎特性:公開透明、去中心化、安全性、運算能力、吞吐量、儲存、隱私等,上層應用會建構在這些二層的擴充上,並且會在這些二層上穿插互動。在基於區塊鍊式結構的二層擴展,和分散式結構的二層擴展,中心化結構的二層擴展,以及部分的中心化應用,會產生真正的、大規模使用的Web3.0 應用。
2.5.區塊鏈的基礎特性與三種Layer 2 建設的特性總結
本節內容來自寫作的另外一篇文章《從狀態機的角度觀察比特幣二層,可以得到更多的思考與結論》,這裡直接引用總結表格和一些結論。對於Web3.0 應用的系統架構,也請參考那篇文章。
通過上表,我們能夠大致總結出區塊鏈結構、分散式系統結構、中心化結構的特性。
(1)區塊鏈結構
區塊鏈結構的最大好處是解決信任相關問題(帳本的作用),可以記錄資料的變化過程(狀態轉換),於是資料和計算規則都變成了可信任資料與可信任計算。
區塊鏈結構最大的問題是效能差,這有兩個原因,一是區塊鏈結構在於無法去除部分計算的場景,都是以全量計算的方式處理所有請求。如,部分計算與全局計算,局部數據與全局數據,臨時數據與永久數據。二是區塊鏈結構有明顯的效能上限。如果是透過鏈的方式進行二層擴展,支援的事務數量也很有限。
為了擴大包含區塊鏈結構的效能,需要多層建設,並且需要與異質的系統結合使用。
透過上表,只有區塊鏈結構才能實現去信任帳本功能,所以一個系統中要想實現去信任帳本功能,必須包含區塊鏈系統。但大規模應用對效能的要求,使得區塊鏈系統一定需要結合其他系統才能滿足需求。
(2)分散式系統
在上表中,我們可以看到分散式系統的明顯優點:去中心化、效能、可擴充性都是極好, 只有在功能實現上有比較複雜的特點。此外,分散式系統不具備去信任帳本的能力。
於是如果能夠基於比特幣的一層帳本功能,在二層建設中使用分散式系統,理論上可以在維持區塊鏈基礎特性的同時,還能實現無限的效能擴展。這方面的案例以比特幣+閃電網絡為代表,這樣組合的效能就是比特幣的7 TPS * ∞。
在分散式系統中實現圖靈完備的原因是:在區塊鏈系統中記錄和運行智慧合約的代價是很高的,因為是全域資料與全域代碼。所以智慧合約也適合分層理論,將智慧合約的程式碼儲存與執行局限在參與者之間。
(3)中心化系統
在上表中,我們可以看到中心化系統的好處是工程實現相對簡單,這是由於內部的邏輯控制簡單,計算簡單。同樣,中心化系統也不具有去信任帳本的能力。中心化系統的優勢不突出,如果是處理規模不大的數據,或處理臨時數據與臨時計算會相對比較適合。
中心化系統的二層建設可以作為其他兩種方式的補充或過渡性方案。
(4)綜合分析
在價值時代,透過上面的內容,我們可以看到單靠一個系統很難到達滿足需求的效果。這也是比特幣生態發展二層的實際需求。但這個三種系統怎麼組合需要很多的探索,我們先從理論上分析,面對不同的需求,會有不同的組合結構。
首先,從協議分層的設計想法來看,比特幣網絡確實不需要圖靈完備,它是一個全球的信任機器,只需要保存這些需要全域信任的資料和資料變化的軌跡。根據這個最基本要求,比特幣的指令集可以減少到最低。其他功能,則交給上層的擴充來完成。
一般的小型應用,只需要在單一的區塊鏈上就可以完成。稍大的系統適合在區塊鏈+區塊鏈的二層建設上完成。但對於大規模的應用,優選的方案是使用區塊鏈系統+分散式系統。
透過多種系統結構的組合,可以突破單一系統基礎理論的限制。例如,區塊鏈系統受限於DSS 不可能三角形的限制,但如果使用區塊鏈系統+分散式系統,就可以解決去中心化D、安全性S、可擴展性S 的不可能三角形。其他組合,區塊鏈+中心化系統,也可以一定程度上解決擴展性的問題。分散式系統+中心化系統,可以解決分散式系統中CAP 三角形的限制。
3. 二層建設的相關事物
有了一層網絡和二層建設,在兩者之間有什麼關聯呢?或兩者直接透過什麼關聯?一種是技術上的直接關聯,例如,透過雙向鎖定或橋的技術的連接。另一種是系統外的相關性,如比特幣和以太坊,雖然沒有直接關聯,但人們將BTC 改造成WBTC 在以太坊上流動, 甚至沒有任何的技術關聯,只是個體基於價格的波動來調整比特幣和以太幣的部位,是一種系統外的關聯性。
在這裡我們只討論技術上的關聯性,這些關聯技術完全和二層的結構與特性緊密相關。後面我們從更宏觀的角度,參考馮諾依曼結構來判斷區塊鏈相關生態的發展。
3.1.一層和二層的連接技術
前面我們已經提到比特幣本身技術的發展,例如修改OP_RETURN、SegWit(隔離見證)、 Taproot(隔離見證升級版)、Schnnor 簽名、MAST、Tapscript 都應該為連接一層和二層的目的而設計,是比特幣生態中連結一層與二層的基礎技術元素。這些連接技術是思考二層建設的重要組成部分,雖然網上有一些BTC 的連接技術實施方案,例如,使用HashLock, 抑或門限簽名、MPC 等,但這些方案功能比較有限,不適合功能更加複雜和需求更細分場景,還是需要使用比特幣生態中為連結所產生的基礎技術元素。
BEVM 的一層和二層連接有一定的代表性,較多的使用了上述基本元素所建構的功能。其Shnorr 簽名+MAST 合約+ 比特幣輕節點網路的BTC L2 解決方案,是一個很好的學習連接一層與二層的案例。
除了這些連接一層與二層的基礎技術元素,具體的連接技術會因為二層建設的結構不同, 而有所不同。我先籠統的介紹一些連接技術類型,常見連接區塊鏈一層網絡和二層網絡的技術有以下幾種:
跨鏈技術:透過跨鏈技術,不同區塊鏈之間可以進行互通,實現一層網路和二層網路之間的連結。跨鏈技術可以實現資產的跨鏈轉移和交互,使得不同區塊鏈之間的數據和價值可以流動。
隔離驗證技術:隔離驗證技術可以將一層網路中的交易資料隔離開來,然後透過二層網路進行驗證和處理。這種方式可以減輕一層網路的負擔,提高整體的吞吐量和效率。
側鏈技術:側鏈技術是一種將主鍊和側鏈連接的技術,透過側鏈可以實現一層網路和二層網路之間的資料傳輸。側鏈可以將一些特定的功能和應用從主鏈上分離出來,以提高整體的效能和擴展性。
State Channel 技術:State Channel 技術是一種基於二層網絡的解決方案,透過在鏈外建立通訊通道,使得交易可以在鏈外進行,只在需要時才提交到一層網絡。 State Channel 技術可以提高交易的速度和吞吐量,並減少交易費用。
Plasma 技術:Plasma 技術是一種基於二層網路的擴展方案,透過將一層網路的交易資料分片處理,然後透過二層網路進行驗證和處理,可以實現更高的吞吐量和擴展性。
常見的二層結構有區塊鍊式結構,分散式系統結構,中心化系統結構,上面的常見連接技術會因為二層的結構不同,大多數只能用在一種結構中,在這裡不深入討論。
隨著二層建設的成熟,有更具體的技術或案例,甚至可以不是技術層面的關聯而只是經濟層面的關聯。
檢視一層與二層連接技術的好壞有哪些參考指標呢?大致看到的指標有:
一層能否對二層的交易做驗證?
一層的資產能否在二層崩潰的時候順利逃生?
連接技術是否會降低系統的某些特性?
……
一層與二層連接技術的內容,應該在二層建設有了更多案例的時候,才能更好的總結與完善。這些連接技術目前更多的是由二層建設者來完成,以後是否有類似跨鏈橋的獨立產品, 目前還不好說。
本節更多的是提出問題,讓我們參與者、建設者有更多的思考。
3.2.參考馮諾依曼結構宏觀看區塊鏈的發展
在前面,我們已經使用Vitalik 提出的概念:區塊鍊是一台“世界計算機”。既然都可以稱為計算機,那麼這個「世界計算機」就可以和傳統計算機的馮諾依曼結構來做對比分析。
馮諾伊曼結構的電腦的五大部件:運算元、控制器、記憶體、輸入設備和輸出設備。在區塊鏈這個「世界電腦」系統中,也存在這樣的相似部件,而且也要重視這五大部件中的連接部分,因為在一個分散式系統中,連接部分影響更大。
「世界計算機」的發展規律和傳統的電腦發展規則很相似。如果比較傳統的電腦發展來說,區塊鏈系統還處於類似286 之前的階段,還在擴充處理能力,擴充儲存能力,有簡單的周邊,能做得事情還非常有限。
幾個對比傳統電腦發展與「世界電腦」發展的對比:
(1)CPU(運算器與控制器)的擴展,就像當前一層與二層運算能量與吞吐量的擴展;
(2)記憶體的擴展,會逐漸從競爭鏈上的空間,到使用真正的區塊鏈儲存。目前一層、 二層的鏈上儲存空間就像傳統電腦中的暫存器,一級緩存,二級緩存,以後會有類似內存、硬盤、外部存儲等專業的區塊鏈存儲方式。目前的寫入資料方式,今後也會有很大的改變。
(3)輸入設備與輸出設備,在區塊鏈系統中,就是預言機。在二層建設中這些輸入與輸出設備還沒有太多的體現,在上層應用會有更多的需求。
(4)區塊鏈中一些特殊的鍊和功能,很像傳統電腦中的GPU,專用設備卡,特殊外設等零件。
(5)鏈上應用和更上層的應用,就像傳統電腦還沒有區分操作系統與應用軟件,也在一步步的進化和功能分離。
(6)目前的區塊鏈應用很多都是金融應用,很像早期的傳統計算機,大多用於科學研究與軍事應用,隨著發展,慢慢的走向企業,走向家庭,走向個人。區塊鏈應用也會有類似的發展趨勢,從早期的金融應用發展到更廣泛的應用。
從二層的建設,比較傳統電腦與區塊鏈的「世界電腦」還有很多可以討論的內容, 在本文中不在多敘述。
4. 目前比特幣的Layer 2 建設狀況
4.1.已經在運行的比特幣二層項目
在本文中,我們主要介紹那些已經成功運行的比特幣二層項目,參考了一些研報內容和業內報道,這些二層建設已經運行了一定的時間,大部分從2015-2019 年開始醞釀或啟動。一些較新的項目,如果有特點,也會介紹。我們會看到這些案例基本上都是基於鏈的二層建設, 基於Channel 的分散式系統建設只有閃電網絡。如果算上以太坊的二層建設,雷電網絡(Raiden Network)也是一個基於Channel 的設計案例,但當前其發展似乎並不成功,在本文中不介紹。以太坊的Plasma 技術是一個基於Channel 的子鏈的設計方案,似乎是鍊和Channel 的結合體,我個人更認為其主要特徵是一個基於鏈的二層設計,在此也不過多討論。
1. LightningNetwork 閃電網絡(基於分散式的二層建設)
Lightning Network(閃電網絡)是建立在比特幣區塊鏈上的第二層解決方案,旨在解決比特幣的可擴展性和低交易速度的問題。閃電網絡於2015 年首次提出,並在2018 年開始全面實施。
閃電網絡的主要特點是快速、低成本和可擴展。它透過建立一系列的支付通道,使得比特幣交易可以在通道內部進行,而不需要直接記錄在區塊鏈上。這樣可以大幅減少交易確認時間和交易費用,並支援大量的平行交易。閃電網絡保證交易安全可靠依賴的是RMSC 協議, HTLC 解決的是可路由可擴展性。其架構的可擴展性使其具有非常大的效能。
自推出以來,閃電網絡得到了廣泛的關注和採用。越來越多的比特幣用戶、交易所和商家開始使用閃電網絡進行快速跨鏈交易和即時支付。此外,開發者也不斷改進閃電網絡的效能和使用者體驗,為其提供更多功能和擴充性。
儘管閃電網絡在可擴展性和交易速度方面提供了顯著的改進,但仍面臨一些技術和採用挑戰。例如,網路的穩定性、路由算法和使用者界面等方面需要不斷改進。然而,隨著時間的推移和技術的進步,閃電網絡有望成為比特幣和其他加密貨幣的重要支付解決方案,為用戶提供更快速、低成本的交易體驗。
2.Liquid(基於鏈的二樓建設)
Liquid 是由Blockstream 於2015 年推出的側鏈解決方案。作為比特幣的第一個側鏈, Liquid 旨在提供更快速、安全和私密的交易解決方案,以滿足金融機構和交易所等專業用戶的需求。
Liquid 的主要特點之一是快速的交易確認時間。相較於比特幣的確認時間約10 分鐘, Liquid 的交易確認時間只需2 分鐘。這使得用戶能夠更快地進行交易,並在需要時迅速完成資金轉移。另一個重要特點是Liquid 的交易隱私。 Liquid 採用了Confidential Transactions (機密交易)技術,使得交易金額得以隱藏,只有交易的參與者能夠查看特定金額。這有助於保護交易參與者的隱私。
Liquid 也具備更高的交易吞吐量。透過使用Federated Peg(聯邦錨定)技術,Liquid 能夠支援大量並行的交易,並在比特幣網路上進行錨定,實現與比特幣的互通性。這使得Liquid 能夠處理更多的交易量,並提高整體系統的吞吐量。
自推出以來,Liquid 在加密貨幣行業中逐漸成長。越來越多的交易所、金融機構和企業開始採用Liquid 作為其交易和資金結算的解決方案。同時,Blockstream 也不斷推出新的功能和改進,以進一步完善Liquid 的效能和安全性。
總結來說,Liquid 是Blockstream 推出的一個旨在提供快速、私密和高吞吐量交易的比特幣側鏈解決方案。它透過縮短交易確認時間、提供交易隱私和增加交易吞吐量,滿足了專業用戶的需求。隨著時間的推移,Liquid 在加密貨幣行業中得到了廣泛的應用和發展。
3. Rootstock(RSK)(基於鏈的二層建設)
Rootstock(RSK)是一個建立在比特幣區塊鏈上的智慧合約平台,旨在為比特幣生態系統提供類似以太坊的功能。 Rootstock 於2015 年首次提出,並在2018 年正式上線。
Rootstock 的主要特點是與比特幣的雙向錨定和智慧合約功能。通過與比特幣的雙向錨定,Rootstock 能夠使用比特幣作為其主要資產,實現安全性和穩定性。同時,Rootstock 支援智慧合約功能,使開發者能夠在其平台上建立和執行具有自動化功能的智慧合約。
自推出以來,Rootstock 在比特幣生態系統中逐漸被認可和採用。它為比特幣用戶和開發者提供了更多的功能和靈活性,使得比特幣能夠支援更廣泛的應用場景,如去中心化金融(DeFi)、數字資產發行和供應鏈管理等。
然而,與其他智慧合約平台相比,Rootstock 的發展相對較慢。它在使用者和開發者社群方面的擴張還需要更多的努力。儘管如此,Rootstock 的發展前景仍然被認為是正面的,它有潛力成為比特幣生態系統中重要的智慧合約平台之一。
4. RGB(基於分散式+圖靈完備的二層建設)
RGB 的故事可以追溯到2016 年,當時Giacomo Zucco 希望利用Peter Todd 的客戶端驗證和一次性密封條的概念、開發一種更好的染色幣(Colored coins)並將這些代幣帶入閃電網絡(這就是“RGB” 名字的由來)。它是一個建立在比特幣區塊鏈上的開放性協議, 旨在為數字資產的創建、交易和管理提供更豐富的功能。
RGB 是由LNP/BP 標準協會開發的可擴展且保密的比特幣和閃電網絡智慧合約系統。它採用了私有和共同所有權的概念,是一種圖靈完備的、無信任的分散式計算形式,不需要引入代幣的非區塊的去中心化協議。 RGB 的設計目的是在UTXO 區塊鏈(如比特幣)上運行可擴展、穩健且私密的智慧合約,以實現所有可能性。通過RGB,開發者可以執行如代幣發行、NFT 鑄造、DeFi、DAO, 以及更多複雜的多類別智慧合約。
RGB 協定是基於客戶端驗證(client-side validation)和一次性密封(single-use-seals)的概念,在比特幣生態系統的第二層和第三層上(鏈外)運行的客戶端狀態驗證和智慧合約系統。
5.Stacks(基於鏈的二層建設)
Stacks(前身為Blockstack)是一個建立在比特幣區塊鏈之上的去中心化運算平台。 Stacks 於2013 年首次提出,並在2017 年進行了首次代幣發行(ICO)。它的主要特點是提供去中心化身份驗證、儲存和智慧合約功能。
Stacks 的核心特點是透過比特幣的安全性和穩定性來支援去中心化應用的開發和執行。它採用一種稱為「Stacking」的共識機制,透過讓持有STX 代幣的用戶鎖定一定數量的代幣並參與網絡驗證來實現共識。這種機制為用戶提供了激勵,並增加了網路的安全性。
在發展方面,Stacks 已經成為去中心化應用領域的重要平台之一。它吸引了一群開發者和項目加入,建立了眾多的去中心化應用,並提供了豐富的工具和開發文件。 Stacks 也與其他區塊鏈項目合作,擴展其生態系統和應用場景。
6.其他比特幣二層項目
憑藉比特幣的熱度,產生了較多的新項目。其中華人發起的計畫較多,這些新的計畫如B² Network、BEVM、Dovi、Map Protocol、Merlin、Bison 等也有一定的特色。
B²Network 成立於2022 年,是基於ZK-Rollup 開發的比特幣二層網絡,相容於EVM,可實現EVM 生態開發者無縫部署DApps。是典型的具有以太坊技術二層技術轉移到比特幣生態的案例。
BEVM 的原有團隊成立於2017 年,中間探索多種比特幣的擴展應用。 2023 年提出的BEVM 概念,是相容EVM 的去中心化比特幣L2。 BEVM 基於Taproot 升級帶來的Schnorr 簽名算法等技術,讓BTC 以去中心化的方式從比特幣主網跨鏈到第2 層。由於BEVM 與EVM 相容,所有在以太坊生態中運行的DApp,都可以在BTC Layer 2 上運行,並以BTC 作為Gas。 2023 年11 月29 日,BEVM 發布了白皮書。
Dovi 成立於2023 年,是相容EVM 智慧合約的比特幣Layer 2 。 2023 年11 月,Dovi 正式發布了白皮書。白皮書介紹,Dovi 整合Schnorr 簽名和MAST 結構,以提高事務隱私,優化資料大小和驗證流程;發行比特幣以外各種資產類型的靈活框架,實現了跨鏈資產轉移。
Map Protocol 的團隊成立也比較早,原來主要是做跨鏈協議,也就是我們前面介紹的一層和二層的連接技術。在比特幣生態火熱後,很快就能建造基於鏈的二層建設。能夠將當前的銘文資產跨鏈,降低交易費用,這些會吸引到一些項目方和應用。
Merlin Chain 從起官網看,很容易看到其Bridge 的屬性,將BTC 上面的資產轉移到二層網絡,降低交易費用,是典型的先解決痛點問題的代表。從官網介紹和一些研報上看Merlin 是一個整合了ZK-Rollup 網絡、去中心化預言機和鏈上BTC 防詐騙模組的比特幣Layer 2 解決方案。該項目由Bitmap Tech 推出,他們是一個有特色的團隊,他們推出的Bitmap.game 和BRC-420 “藍色盒子”Ordinals 資產都有不錯的知名度。
Bison 成立於2023 年,是一款比特幣原生的zk-rollup,可提高交易速度,同時在原生比特幣上實現高級功能。開發者可以使用zk-rollup 來打造創新的DeFi 解決方案,例如交易平台、借貸服務和自動化做市商。從其官網上看,Bridge 也是一個重要功能點。將比特幣資產跨鏈出來,完成上層資產應用,是許多專案的切入點。
從上面這幾個比較新的項目B² Network、BEVM、Dovi、Map Protocol、Merlin、Bison 來看,他們快速的完成了降低交易費用,滿足比特幣一層資產交易需求。他們都牽涉到了資產跨鏈,那些原來就有跨鏈協議的團隊,做起來更快速,原來有二層建設的經驗團隊,他們在上層應用方面更有優勢。這些較新的項目都是基於鏈的二層建設,利用了原有的技術累積和短期的爆發力優勢。這些項目,同質化有些大,後期的發展會如何?與基於分散式的二層建設服務商的競爭結果會如何?還有需要不少的觀察。從以太坊上的二層專案經驗看,利用了熱點營銷,代幣發行之後,很多項目就會躺平,比特幣的二層會不會這樣?
從目前運行在比特幣二層的項目我們可以大致看出,知名的比特幣二層項目都成立比較早,對相關技術已經探索了很長時間,但因為比特幣生態的基礎技術沒有形成,項目大多不夠精彩,或者說是被以太坊和以太坊生態的光芒所掩蓋。隨著比特幣基礎協議的成熟,尤其是隔離見證、Taproot、Schnorr 簽名,MAST 梅克爾抽象語法樹,Tapscript 等基礎技術底層的形成,使得一層與二層之間的連接技術發展較好,於是比特幣生態能做得事情正變得更豐富。從已經在運行的比特幣的二層項目,我們可以看到一部分是原有的比特幣生態的建設者, 另一部分是以太坊二層的建設者,還有一部分是來自連接技術的建設者,不管來時哪個方向的項目,都需要使用這些新產生的比特幣基礎連接技術,使用的方式越充分,越多樣化,對二層的支援會更好。
4.2.比特幣二樓建設的發展分析
資金在哪裡,熱度就在哪裡,還會吸引更多的資金聚集。比特幣目前有約8,000 億美金的市值,其生態發展較弱,但有爆發之勢。於是很多專案都宣稱要進行比特幣的二層建設。這裡我們不說這些項目的具體名稱,但對這些項目的進入者做一些分類,看看其特徵和各自的優缺點。
1. 原有的比特幣二層建設項目
原有的比特幣二層項目,尤其是已經研發了多年,有了一定的累積優勢,是否能藉助這次比特幣的熱度重新煥發青春?是否會蓬勃發展?有很大的不確定性。
衡量標準有兩個:一是前面提到的,最終哪個二層網的總鎖倉價值TVL 高,哪個比特幣的二層就會勝出。另外一個是二層的結構類型,基於鏈的二層建設,因為其擴展特點,會容納較多的並行者,基於分佈式的二層建設,只能容納比較少的競爭者。
原有的二層專案還需要充分發揮自己已經累積的優勢,並藉助新技術建立建立新優勢, 吸引更多的應用進駐平台,才有機會重新煥發青春,爭取更多的市場份額。如果做不到吸引更多的應用程式進入,這樣的舊項目很有可能最終會沉沒或轉型。其實這樣的計劃還可以和後面介紹的完全沒有技術積累,但已經通過某種共識建立了社區的項目合作或合併,以換取更大的發展。
此外如果那些老的項目能夠在基於分散式的二層建技術累積方面有優勢,可以完全介入基於分佈式的二層建設,並且通過提供上層應用的引導會更有效。
2. 新進入的比特幣二層建設項目
新進入比特幣二層建設的項目,一般沒有太多積累優勢,但這個給這樣團隊後發優勢, 可以研究最新的技術,先解決那些輕量級,最有吸引力的需求,吸引到一定數量應用的進駐。最好是已經在以太坊生態,或是其他生態中擁有了二層建設經驗的團隊,更適合快速的進入比特幣的二層建設。這樣的項目可以考慮選型基於鏈的二層建設,會更快,更有優勢。
完全沒有經驗或優勢的團隊,可以參考第三種情況,是否可以透過社群共識來篩選出使用者和累積資金。
3. 沒有累積但想進入的比特幣二層項目
我原來對沒有任何技術積累或社區積累,就宣傳要進入Web3.0 的項目,沒有太多理解, 大概率把這些項目認為是CX 項目。但透過銘文現象,那些透過某個銘文產生了一個很大的社區共識,如sats,ordi,rats,這些社區不僅擁有了很多的成員,還積累了一定的資金。這樣的計畫完全可以從零開啟一個新的二層建設,透過社群的力量,把上層應用整合到社群中,同時有可能把二層建設出來,這樣的二層大機率會選型為基於鏈的二層建設,因為簡單且快速,並且通過社區力量,把DID(去中心化身份),DAO 工具,DeFi 應用,其他的上層應用,在社區的二層來搭建,而且不需要自己建設只需要引入成熟的產品方,並與其共享收入分成。這樣就有可能形成一個小小的生態。這樣的計畫對社區建設,基金會的管理,決策機制提出較高的要求。
4. 上層應用的發展
隨著比特幣二層的迅猛發展,BTC 上沉睡的巨量資金開始重新被喚醒,並且因為眼球效應,會吸引更多的新用戶進入到Web3.0 領域,加上比特幣二層技術迅猛發展,會為Mass Adoption 打下堅實的基礎。上層應用會從目前的金融應用為開始階段,逐漸將那些需要高性能,大流量,頻繁交互的應用引入,如Gamefi,SocialFi 等應用,不會出現基於鏈的應用的宕機,和服務體驗不好的情況。比特幣二層的發展將為上層應用帶來非常多的機會和堅實的基礎設施,成熟後會為更多不那麼Native 的Web3 團隊帶來更多的機會。
不管如何,Web3.0 時代才剛開始,還在萌芽期和初長期,需要很多的探索和建設,很多國家和地區對Web3.0 中的許多新事物還沒有完全開放。 Web3.0 需要大量的建設,並且會給予各個專案團隊更多的機會。不斷感知新發展、新技術,不斷調整,不斷的參與建立Web3.0 , 這樣的團隊一定會在某個階段,某個領域會有所收穫。
參考文獻說明
寫作本文是我在閱讀了大量的業內文章的基礎上,同時參與TwitterSpace,線下交流等眾多活動的結果。受了很多人的講話內容的啟發,一些突出的影響人員和因素如下:
(1)水滴資本的大山老師,他寫了不少文章,還在萬物島給我們做了多次講課,還參加了他參與的不少Space 活動。
(2)有些深度技術內容是透過聽洪蜀寧老師的講課,觀看他的視頻,線下和洪蜀寧老師的交流所得,如分佈式系統中的路由問題,RGB 的圖靈完備問題。
(3)www.btcstudy.org 上的眾多文章。這個網站整理的知識很豐富。
(4)Nervos(CKB) 首席架構師Jan Xie 的訪談節目。
(5)閱讀了較多的BIP 協議,Segwit,Taproot,ordinals,brc 20 ,Atomical 等內容。
(6)其他區塊鏈知識,包括分層設計思想,馮諾依曼結構的對比,來自我前幾年寫作幾本圖書的知識積累,其中出版了5 本,《區塊鏈知識-大眾普及版》《區塊鏈知識-技術普及版》《圖靈區塊鏈》《區塊鏈經濟模型》,《Web3.0 :建構元宇宙的數字未來》;還有以太坊的3 本,完成了部分寫作,未出版。這些內容大量的參考了許多區塊鏈的原生協議、 白皮書、技術原理,這些內容的產出也是眾人的結果,我只是做了收集和整理。慢慢的我理解了這些底層原理和眾多技術之間的關聯性和未來可能的應用場景。
(7)在我們專案中設計相關產品時,與團隊成員的討論與思考。
非常感謝SatoshiLab 的大山老師,Elaine Yang,洪蜀寧以及相關技術專家,他們閱讀本文給了不少反饋和修改意見,對文章引用概念的準確性把關嚴格,直到我們能找到原始的參考文獻才會確認合格,非常欣賞這種嚴謹的習慣!非常感謝所有完善我知識體系的貢獻者和參與者。