最近,區塊鏈技術引起了廣泛關注。雖然區塊鏈技術目前正在快速發展,但是傳統區塊鏈技術要落地到商業應用,特別是金融應用,仍然存在很多問題需要解決,如交易性能、隱私保護等。解決這些問題的一種做法是重新開發新的區塊鏈,但是這種做法會造成大量重復性工作,并且需要不斷的發行新的數字資產。那么是否存在在不影響原有區塊鏈工作的基礎上,依托于原有區塊鏈進行技術升級的解決方案,側鏈就是在這種需求背景下被提出的。本文首先介紹了側鏈的基本概念,接著分析了側鏈的產生背景與工作原理,最后對目前主要存在的側鏈進行了介紹。
基礎概念
側鏈協議本質上是一種跨區塊鏈解決方案。通過這種解決方案,可以實現數字資產從第一個區塊鏈到第二個區塊鏈的轉移,又可以在稍后的時間點從第二個區塊鏈安全返回到第一個區塊鏈。其中第一個區塊鏈通常被稱為主區塊鏈或者主鏈,每二個區塊鏈則被稱為側鏈。最初,主鏈通常指的是比特幣區塊鏈,而現在主鏈可以是任何區塊鏈。側鏈協議被設想為一種允許數字資產在主鏈與側鏈之間進行轉移的方式,這種技術為開發區塊鏈技術的新型應用和實驗打開了一扇大門。
技術上的細節比較難理解。我的理解是目前的交易所、在線錢包等等實際上也屬于所謂的側鏈應用,只不過它們是中心化的、封閉的獨立網絡。想象一下,你把自己本地錢包里的比特幣轉賬到交易所地址上,那么交易所這個封閉網絡得到了這些幣,于是交易所以自身信用為擔保在平臺上1:1等價地給你交易所賬戶上添加這些數目。然后你可以在交易平臺上用交易所發行的“比特幣”實時地與人進行交易、抵押借貸等等。交易所是比特幣生態的重要應用,但它們存在這樣那樣的問題(跑路、被黑、虧空等等),它們是中心化的、封閉的獨立網絡。你的幣充值到交易所以后實際上你就不能掌控這些幣了,雖然它們名義上還是屬于你的。而現在的側鏈概念則實質上是一個類似于比特幣的獨立的、開放的分布式網絡,與交易所這樣的中心化的、封閉網絡相反。
產生背景
2012年,在比特幣聊天室中,首次出現了關于側鏈概念的相關討論。當時比特幣的核心開發團隊正在考慮如何可以安全的升級比特幣協議,以增加新的功能,但是直接在比特幣區塊鏈上進行功能添加比較危險,因為如果新功能在實踐中發生軟件故障,則會對現有的比特幣網絡造成嚴重影響。另外,由于比特幣的網絡結構特性,如果進行較大規模的改動,還需要獲得多數比特幣礦工的支持。
這時,比特幣核心開發者便提出了側鏈方案。
這種技術允許開發人員將新功能附加在其他的區塊鏈,但是這些區塊鏈仍然附著在現有比特幣區塊鏈上。這些區塊鏈中新功能可以充分利用現有比特幣的網絡特性,而不會對現有的比特幣網絡造成危害。
2014年,這時已經出現了許多具有新功能的區塊鏈,并產生了各種競爭幣,如萊特幣、狗狗幣等。這時,比特幣的核心開發團隊擔心這些競爭幣的產生會稀釋比特幣的價值。他們認為,應該把比特幣作為一種儲備貨幣,并將新功能添加到側鏈上。這樣如果用戶想使用其他的新的區塊鏈功能,就不需要購買其他代幣。
“側鏈最大的優勢是可以讓用戶訪問大量的新型服務。例如,你可以將比特幣移動到另一個區塊鏈上,從而利用相應區塊鏈的隱私特性、更快的交易速度和智能合約。”
為了將側鏈由概念轉化成現實,Adam Back、Matt Corallo等比特幣核心開發者共同發起成立了Blockstream公司,并在同年十月,發布了白皮書《Enabling Blockchain Innovations with Pegged Sidechains》,首次明確提出了側鏈的概念及其協議實現方案。
通過側鏈,可以在主鏈的基礎上,進行交易隱私保護技術、智能合約等新功能的添加,這樣可以讓用戶訪問大量的新型服務,并且對現有主鏈的工作并不造成影響。另外,側鏈也提供了一種更安全的協議升級方式,當側鏈發生災難性的問題時,主鏈依然安然無恙。
側鏈機制,簡單的說,就是一種使貨幣在兩條區塊鏈間移動的機制。
小明:我有一個比特幣地址和一個萊特幣地址,我可以把比特幣發到萊特幣地址么?小亮:莫開玩笑,比特幣,萊特幣是兩條獨立的區塊鏈,這怎么可能?老師:小亮同學說的對,比特幣,萊特幣是兩條獨立的區塊鏈,現在比特幣不能發到萊特幣地址,小明同學的想法很有創意,如果萊特幣塊鏈成為比特幣的一個側鏈后,比特幣就可以發到萊特幣地址。同理如果比特幣成為萊特幣的側鏈,萊特幣也可發送到比特幣地址。(作者:黃洪清)
實現方案
側鏈實現的技術基礎是雙向錨定(Two-way Peg),通過雙向錨定技術,可以實現暫時的將數字資產在主鏈中鎖定,同時將等價的數字資產在側鏈中釋放,同樣當等價的數字資產在側鏈中被鎖定的時候,主鏈的數字資產也可以被釋放。雙向錨定實現的最大難點是協議改造需兼容現有主鏈,也就是不能對現有主鏈的工作造成影響,其具體實現方式可以分為以下幾類:
(一)單一托管模式
最簡單的實現主鏈與側鏈雙向錨定的方法就是通過將數字資產發送到一個主鏈單一托管方(類似于交易所),當單一托管方收到相關信息后,就在側鏈上激活相應數字資產。這個解決方案的最大問題是過于中心化。圖1給出了以比特幣為主鏈的單一托管模式的工作原理示意圖:
(二)聯盟模式
聯盟模式是使用公證人聯盟來取代單一的保管方,利用公證人聯盟的多重簽名對側鏈的數字資產流動進行確認。在這種模式中,如果要想盜竊主鏈上凍結的數字資產就需要突破更多的機構,但是側鏈安全仍然取決于公證人聯盟的誠實度。圖2給出了以比特幣為主鏈的聯盟模式的工作示意圖:
單一托管模式與聯盟模式的最大優點是它們不需要對現有的比特幣協議進行任何的改變。
(三)SPV模式
SPV(Simplified Payment Verification)模式是最初的側鏈白皮書《Enabling Blockchain Innovations with Pegged Sidechains》中的去中心化雙向錨定技術最初設想。SPV是一種用于證明交易存在的方法,通過少量數據就可以驗證某個特定區塊中交易是否存在。
在SPV模式中,用戶在主鏈上將數字資產發送到主鏈的一個特殊的地址,這樣做會鎖定主鏈的數字資產,該輸出仍然會被鎖定在可能的競爭期間內,以確認相應的交易已經完成,隨后會創建一個SPV證明并發送到側鏈上。此刻,一個對應的帶有SPV證明的交易會出現在側鏈上,同時驗證主鏈上的數字資產已經被鎖住,然后就可以在側鏈上打開具有相同價值的另一種數字資產。
這種數字資產的使用和改變在稍后會被送回主鏈。當這種數字資產返回到主鏈上時,該過程會進行重復。它們被發送到側鏈上鎖定的輸出中,在一定的等待時間后,就可以創建一個SPV證明,來將其發送回主區塊鏈上,以解鎖主鏈上的數字資產。SPV模式存在的問題是需要對主鏈進行軟分叉。圖3給出了以比特幣主鏈的SPV模式的工作流程示意圖:
(四)驅動鏈模式
驅動鏈概念是由Bitcoin Hivemind創始人Paul Sztorc提出的。在驅動鏈中,礦工作為‘算法代理監護人’,對側鏈當前的狀態進行檢測。換句話說,礦工本質上就是資金托管方,驅動鏈將被鎖定數字資產的監管權發放到數字資產礦工手上,并且允許礦工們投票何時解鎖數字資產和將解鎖的數字資產發送到何處。礦工觀察側鏈的狀態,當他們收到來自側鏈的要求時,他們會執行協調協議以確保他們對要求的真實性達成一致。誠實礦工在驅動鏈中的參與程度越高,整體系統安全性也就越大。如同SPV側鏈一樣,驅動鏈也需要對主鏈進行軟分叉。圖4給出了以比特幣為主鏈的驅動鏈模式的工作流程示意圖:
(五)混合模式
上述所有的模式都是對稱的,而混合模式則是將上述獲得雙向錨定的方法進行有效的結合的模式。由于主鏈與側鏈在實現機制存在本質的不同,所以對稱的雙向錨定模型可能是不夠完善的。混合模式是在主鏈和側鏈使用不同的解鎖方法,例如在側鏈上使用SPV模式,而在主鏈網絡上則使用驅動鏈模式。同樣,混合模式也需要對主鏈進行軟分叉。
典型范例
目前,比較著名的側鏈包括基于比特幣網絡的側鏈BTC Relay、Rootstock的Liquid,以及非比特幣的側鏈如Lisk和國內的Asch等。
BTC Relay是由ConsenSys的推出的基于以太坊區塊鏈的智能合約的側鏈解決方案。BTC Relay把以太坊網絡與比特幣網絡以一種安全去中心化的方式連接起來。BTC Relay通過使用以太坊的智能合約功能允許用戶在以太坊區塊鏈上驗證比特幣交易。以太坊DApp開發者可以從智能合約向BTC Relay進行API調用來驗證比特幣網絡活動。
Liquid是Blockstream的開源側鏈項目,使用了比特幣雙向錨定技術,Liquid目的是實現使得比特幣可以在主鏈和側鏈中互轉,旨在提高隱私性、降低成本、加速交易所和經紀商之間的價值轉移及結算流程。
Lisk是一個致力于為JavaScript開發者提供創建分布式應用程序的區塊鏈平臺,由德國的Max Kordek和Oliver Beddows于2016年初成立。它把每一個分布式應用程序都會在其自己且獨一無二的區塊鏈,也就是側鏈上運行,這種封裝使得主要的Lisk的主網高效,迅速和精簡Asch是國內推出的一個基于側鏈技術的去中心化應用平臺,由單青峰于2016年初成立。Asch平臺提供的服務包括一個主鏈和一套應用軟件開發工具包。Asch的主鏈主要負責構建基礎設施、應用間的數據共享以及資產路由,應用軟件開發工具包內置了側鏈協議,主要負責構建具體的應用,通過側鏈協議可以與主鏈進行資產互通。
總結
側鏈是以融合的方式實現加密貨幣金融生態的目標,而不是像其它數字資產一樣排斥現有的系統。側鏈技術進一步擴展了區塊鏈技術的應用范圍和創新空間,使傳統區塊鏈可以支持多種資產類型,以及小微支付、智能合約、安全處理機制、財產注冊等,并可以增強區塊鏈的隱私保護。利用側鏈,我們可以輕松的建立各種智能化的應用如金融合約,股票、期貨、衍生品等。
補充閱讀
幾點說明
1、比特幣在側鏈里流通時還是比特幣,側鏈的比特幣與主鏈的比特幣通常是1比1的匯率,也可能有預定的匯率。2、側鏈的挖礦不能產出比特幣,側鏈可能有自己的幣,也可能沒有自己的幣,僅是為了比特幣的流通。3、側鏈可能是對等的和非對等的。對等的側鏈獨立存在,其也可成為主鏈。主側是相互的,如果有足夠的需求,比特幣也可成為萊特幣的側鏈。非對等側鏈依賴主鏈而存在。4、去中心化沒改變,每個人或公司都可創建自己的比特幣側鏈,用戶和礦工認同的會成為主流。5、當然側鏈要有足夠的算力保證側鏈的可靠和安全。6、側鏈白皮書提出了清晰的側鏈框架,具體側鏈怎么實現容許設計者自由發揮。
側鏈可能實現的一些創意想法
1、滯留費即長期不移動的幣隨著時間的推移將減值,減去的金額回饋礦工。比如超過1年不動的幣,每年減值10%?,F在的比特幣網絡,時常有大戶丟失密鑰,相應的幣也就丟了。這將降低比特幣經濟體貨幣的充足性和流動性,被認為是比特幣潛在的一個風險。通過滯留費,鼓勵貨幣流動,激勵礦工,也可回收一些因丟失密鑰丟掉的幣。2、新的挖礦所得約定礦工的算力如果威脅到網絡安全,將扣發挖礦所得。比如,算力超過50%的礦工沒有獎勵,這樣可約束礦工節制算力,防止51%攻擊。3、挖礦所得延期支付約定。現在,礦工挖到礦后立即得到獎勵和交易費。這個約定把挖礦所得延期支付。 比如:在挖到礦的100個區塊后支付挖礦所得。這有助于激勵礦工維護網絡的正常運作。4、定期可動用地址。新增一種與時間有關的地址。只有到了特定的時間才可動用該地址的幣。比如人們可以把10個幣發到這類型地址,設定10年后用。時間沒到時,任何人,包括擁有者,也不能動里面的幣。
這只是部分的創意想法,你可能也有自己的創意,比特幣社區的創意點子是層出不窮的。每種創意都有這樣那樣的優點缺點,側鏈,為我們提供了一個無礙測試和升級的機制。
評論
查看更多