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