主鏈與側(cè)鏈的雙向橋接網(wǎng)絡(luò)怎樣去構(gòu)建
概述
我們提出了一種新穎的方法,用于在主鏈和側(cè)鏈之間構(gòu)建無(wú)信任的雙向橋梁。 通過(guò)永久停止側(cè)鏈,即使在樂(lè)觀的情況下,我們也不再需要嚴(yán)格的同步要求和長(zhǎng)時(shí)間的退出延遲。而代之的是,只有在側(cè)鏈暫停很長(zhǎng)一段時(shí)間后才允許提款。 一旦停止了側(cè)鏈,就可以通過(guò)流動(dòng)性提供者網(wǎng)絡(luò)使用原子交換立即提取資金以進(jìn)行使用。 可以同時(shí)啟動(dòng)新的側(cè)鏈,以終止舊的側(cè)鏈以接受并開(kāi)始處理掉期后的資金。
現(xiàn)有提案存在的問(wèn)題
目前的側(cè)鏈建議有幾個(gè)問(wèn)題,我們?cè)谶@篇文章中解決。我們將在本節(jié)中討論一些更常見(jiàn)的建議:
合并挖礦(Merge-Mined)側(cè)鏈
合并挖礦涉及通過(guò)允許礦工同時(shí)開(kāi)采兩個(gè)或更多鏈條來(lái)重復(fù)使用工作量證明。這用于像Rootstock這樣的系統(tǒng),作為引導(dǎo)側(cè)鏈啟動(dòng)的一種方式。
不幸的是,合并挖礦僅提供針對(duì)外部哈希率的安全性,而在一般情況下則不提供安全性。另外,它在任何情況下都無(wú)法實(shí)現(xiàn)不信任的雙向資金橋梁(即在不信任第三方的情況下,將代幣/代幣從主鏈和側(cè)鏈轉(zhuǎn)移到主鏈和側(cè)鏈)。
Federated Peg(聯(lián)邦掛鉤)側(cè)鏈
federated peg聯(lián)邦掛鉤)實(shí)現(xiàn)主側(cè)鏈之間的互相轉(zhuǎn)賬,通過(guò)多個(gè)集體構(gòu)成的聯(lián)盟共同監(jiān)督和維護(hù)主側(cè)鏈之間的轉(zhuǎn)賬。如果聯(lián)盟的大多數(shù)成員未通過(guò)多重簽名對(duì)此表示同意,則該聯(lián)盟無(wú)法從側(cè)鏈向主鏈釋放資金。即使聯(lián)盟不直接控制實(shí)際資金,用戶(hù)也可以將其資金無(wú)限期地停留在側(cè)鏈中,直到大多數(shù)人決定解鎖資金為止。因此,用戶(hù)應(yīng)聯(lián)邦的要求。
通常在主鏈的智能合約功能(例如比特幣腳本)的表達(dá)能力不足時(shí)使用。為了有效地鎖定和解鎖側(cè)鏈和主鏈之間的資金,需要在鏈上驗(yàn)證證明,這可能需要廣泛的功能。這就是Liquid 1和Rootstock等系統(tǒng)的工作方式。
還有另一種稱(chēng)為Drivechain的2-way federated peg(雙向聯(lián)邦掛鉤)系統(tǒng),其中聯(lián)邦是主鏈礦工的隱式子集。即使在這種情況下,加入聯(lián)盟是未經(jīng)許可的,我們?nèi)匀挥龅脚c上段所述相同的問(wèn)題,即大多數(shù)礦工可以任意竊取或鎖定資金。
Plasma鏈
受早期CoinWitness的啟發(fā),Plasma Cash使用基于代幣的數(shù)據(jù)模型(不同于比特幣的UTXO數(shù)據(jù)模型或以太坊的賬戶(hù)數(shù)據(jù)模型)。這具有很好的功能,即側(cè)鏈上的所有代幣對(duì)主鏈都是已知的-類(lèi)似于打開(kāi)的通道。通過(guò)使用復(fù)雜的退出博弈來(lái)維護(hù)不信任的雙向掛鉤,無(wú)論在側(cè)鏈上發(fā)生什么情況(包括操作員扣留區(qū)塊或產(chǎn)生無(wú)效區(qū)塊),都必須維護(hù)該掛鉤,這是維持雙向交易所必需的。
這些退出游戲產(chǎn)生的問(wèn)題是它們是交互式的,必須在一個(gè)實(shí)時(shí)的、不斷變化的側(cè)鏈上執(zhí)行。因此他們需要考慮用過(guò)的代幣和無(wú)效支出的可能的欺詐性退出,這最終阻止了監(jiān)視塔的有效使用,并要求用戶(hù)持有狀態(tài)(代幣歷史)。這迫使用戶(hù)進(jìn)入嚴(yán)格的同步要求,并要求每個(gè)用戶(hù)運(yùn)行一個(gè)完整的節(jié)點(diǎn)。
停止的雙向橋接
假設(shè)與要求
這篇文章使用了“側(cè)鏈”一詞,盡管它可以等效地替換為“具有延遲狀態(tài)執(zhí)行的執(zhí)行環(huán)境”,我們將在后面的文章中介紹。
資金通過(guò)單向橋存入側(cè)鏈(即資金被鎖定在合約中,沒(méi)有立即取回的方式)。側(cè)鏈上的執(zhí)行按正常情況進(jìn)行。盡管我們要求側(cè)鏈區(qū)塊標(biāo)頭在鏈上可用,并且對(duì)無(wú)效區(qū)塊和不可用數(shù)據(jù)都提供解決方案,但這種方式通常是正向的。無(wú)效的數(shù)據(jù)區(qū)塊可以通過(guò)有效性證明或欺詐證明解決(盡管首選欺詐證明),而不可用的數(shù)據(jù)可以通過(guò)按請(qǐng)求始終將所有數(shù)據(jù)作為調(diào)用數(shù)據(jù)發(fā)布在鏈上或通過(guò)使用非交互式鏈上數(shù)據(jù)可用性證明來(lái)解決
任何數(shù)據(jù)模型都可用于側(cè)鏈,包括UTXO數(shù)據(jù)模型(如比特幣),賬戶(hù)數(shù)據(jù)模型(如以太坊)或基于代幣的數(shù)據(jù)模型(如Plasma Cash實(shí)際上這里提出的方案可用于增強(qiáng)Plasma結(jié)構(gòu))。執(zhí)行模型還可以通過(guò)任意斷言和程序擴(kuò)展到廣義狀態(tài)執(zhí)行。
雙向橋接
我們注意到,側(cè)鏈退出游戲的復(fù)雜性、成本和安全假設(shè)的大部分允許無(wú)可信的雙向橋(即Plasma)源于這樣一個(gè)事實(shí),即在每一個(gè)退出嘗試中,通過(guò)永久性的、在非常緊迫的時(shí)間窗口內(nèi),必須執(zhí)行有效性。這使得這些方案特別容易受到鏈擁塞攻擊,并且大大限制了它們的安全容量。
我們可以通過(guò)簡(jiǎn)單地拒絕提款來(lái)減少這種復(fù)雜性,直到側(cè)鏈已經(jīng)停止并且足夠長(zhǎng)的時(shí)間已經(jīng)過(guò)去(比如,幾個(gè)月或一個(gè)系統(tǒng)參數(shù))。在此之前,任何人都可以發(fā)布欺詐證明或數(shù)據(jù)不可用證明來(lái)使任何數(shù)量的側(cè)鏈區(qū)塊失效。
停止側(cè)鏈
現(xiàn)在最大的懸而未決的問(wèn)題是“誰(shuí)來(lái)決定何時(shí)停止側(cè)鏈?”多重簽名聯(lián)合會(huì)可能具有過(guò)多的控制權(quán)或者可能永遠(yuǎn)不會(huì)停止?;跈?quán)益的投票是可操縱的,也可能導(dǎo)致側(cè)鏈永不停止。
事實(shí)證明,最簡(jiǎn)單的答案是最優(yōu)雅的:側(cè)鏈在預(yù)定數(shù)量的固定塊之后簡(jiǎn)單地停止。這也具有阻止側(cè)鏈僵化的良好效果:用戶(hù)將撤回資金,然后將其存入新的側(cè)鏈中,這可能會(huì)改善規(guī)格或減少安全漏洞??梢栽阱X(qián)包級(jí)別將其抽象出來(lái),因此不是一個(gè)重要的UX阻止程序。
快速提款:流動(dòng)性提供者
為了避免提款延遲,流動(dòng)性提供者可以通過(guò)原子交換購(gòu)買(mǎi)側(cè)鏈上的資金所有權(quán)。這與為Plasma提議的代幣化快速退出類(lèi)似,盡管沒(méi)有資金被提取。流動(dòng)性提供者將承擔(dān)欺詐和資本鎖定成本的相關(guān)風(fēng)險(xiǎn),并將其轉(zhuǎn)移給用戶(hù)以獲取利潤(rùn)以換取流動(dòng)性。但是通過(guò)運(yùn)行側(cè)鏈完整節(jié)點(diǎn),他們將能夠?qū)A(chǔ)資產(chǎn)的有效性充滿(mǎn)信心地進(jìn)行購(gòu)買(mǎi)。
快速提款只需要一個(gè)流動(dòng)性提供者,而無(wú)需執(zhí)行無(wú)信任的雙向橋梁。成為流動(dòng)性提供者只需要提供流動(dòng)資金而無(wú)其他許可。激勵(lì)流動(dòng)性提供者以確保他們交換有效資金,并因此通過(guò)任何必要手段確保與之交換的側(cè)鏈技巧有效。
快速恢復(fù):跨側(cè)鏈發(fā)生
盡管現(xiàn)在我們有了讓用戶(hù)能夠通過(guò)流動(dòng)性提供商迅速提取其資金以使用的方法,但用戶(hù)資金現(xiàn)在已處于主鏈上,這速度可能會(huì)很慢,昂貴,擁擠,或者涉及昂貴的gas費(fèi)用。為了解決這個(gè)問(wèn)題,我們可以在舊的側(cè)鏈停止后立即啟動(dòng)一個(gè)新的側(cè)鏈,可能會(huì)使用新規(guī)則(類(lèi)似于硬分叉)。
新的側(cè)鏈可以立即接受存款,因此用戶(hù)可以從舊的側(cè)鏈進(jìn)行原子交換資金,然后將其無(wú)縫地存入新的側(cè)鏈(具有UI集成)。在舊的側(cè)鏈經(jīng)過(guò)很長(zhǎng)時(shí)間發(fā)布欺詐證明之后,新的側(cè)鏈也可以接受批量取款到存款。
借助正確的錢(qián)包集成和無(wú)許可的流動(dòng)性提供商網(wǎng)絡(luò),幾乎在所有情況下,這都使用戶(hù)甚至不知道自己使用的是特定的側(cè)鏈情況下進(jìn)行資金轉(zhuǎn)移。
來(lái)源: 區(qū)塊鏈研究實(shí)驗(yàn)室