背景
雖然比特幣有不少缺點和限制,但比特幣卻又是最去中心化、最多分布節(jié)點、最公平區(qū)塊鏈,從數(shù)字貨幣地位、節(jié)點數(shù)量、去中心的權(quán)威等方面比特幣還是很有優(yōu)勢。類似以太坊、比特股的區(qū)塊鏈在技術(shù)和應(yīng)用上后來居上,對比特幣區(qū)塊鏈產(chǎn)生相當(dāng)大的威脅,而基于比特幣的應(yīng)用開發(fā)難度大限制多,因此應(yīng)用項目不多。為了在創(chuàng)新的同時,又保留比特幣網(wǎng)絡(luò)的去中心化保障,側(cè)鏈技術(shù)由此推出。側(cè)鏈?zhǔn)且藻^定比特幣為基礎(chǔ)的新型區(qū)塊鏈,它以融合的方式實現(xiàn)新的金融生態(tài)目標(biāo)和進(jìn)一步擴展了比特幣網(wǎng)絡(luò)的應(yīng)用場景。
另一方面,相比起公鏈來看,現(xiàn)在聯(lián)盟鏈的發(fā)展勢頭要耀眼得多,但我們需要警惕的是,不要讓聯(lián)盟鏈變成純粹的中心化或多中心化。聯(lián)盟鏈和私鏈的方式從一定程度違背了區(qū)塊鏈的去中心價值和信任體系,也讓區(qū)塊鏈里面的數(shù)字資產(chǎn)不能在不同的區(qū)塊鏈間直接轉(zhuǎn)移,主動或被動地導(dǎo)致了價值的孤島,由此各種連接不同區(qū)塊鏈的跨鏈技術(shù)也被人們開始關(guān)注和探索。
分類
下面通過技術(shù)實現(xiàn)不同,介紹幾種側(cè)鏈
公證人機制(Notary)
Interledger
Interledger Protocol,簡稱ILP,是由Ripple公司主導(dǎo)發(fā)起了互聯(lián)賬目協(xié)議,它將實現(xiàn)不同賬本之間的連接從而創(chuàng)造賬本之間的協(xié)作。Interledger協(xié)議適用于所有記賬系統(tǒng)、能夠包容所有記賬系統(tǒng)的差異性,ILP推出的目標(biāo)就是打造全球統(tǒng)一支付標(biāo)準(zhǔn),創(chuàng)建統(tǒng)一的網(wǎng)絡(luò)金融傳輸?shù)膮f(xié)議。
金融機構(gòu)基本上都是在自己的網(wǎng)絡(luò)之中運行著各自的記賬系統(tǒng),即使運用了區(qū)塊鏈技術(shù)后,也是在運行自己的私鏈或內(nèi)部圈子的聯(lián)盟鏈,這個除了是應(yīng)對監(jiān)管合規(guī)性的原因外,更重要是保護(hù)他們的內(nèi)部數(shù)據(jù)避免泄密。ILP的由來是由于Ripple原來推廣業(yè)務(wù)的困難導(dǎo)致的,銀行寧愿用Ripple的源代碼來搭建他們自己的私鏈,也不愿意連接到Ripple上。既然建立一個每個人都支持的全球金融傳輸協(xié)議很困難,Ripple就開發(fā)一個協(xié)議,能將所有我們目前正在使用記賬系統(tǒng)連接在一起。
Interledger協(xié)議創(chuàng)建了一個這樣的系統(tǒng),在這個系統(tǒng)中,兩個不同的記賬系統(tǒng)可以通過第三方“連接器”或“驗證器”機器來互相自由地傳輸貨幣。記賬系統(tǒng)無需去信任“連接器”,因為該協(xié)議采用密碼算法為這兩個記賬系統(tǒng)和連接器創(chuàng)建資金托管,當(dāng)所有參與方對資金量達(dá)成共識時,便可相互交易。ILP移除了交易參與者所需的信任,連接器不會丟失或竊取資金,這意味著,這種交易無需得到法律合同的保護(hù)和過多的審核,大大降低了門檻。同時,只有參與其中的記賬系統(tǒng)才可以跟蹤交易,交易的詳情可隱藏起來,“驗證器”是通過加密算法來運行,因此不會直接看到交易的詳情。理論上,interledger可以兼容任何在線記賬系統(tǒng),而銀行現(xiàn)有的記賬系統(tǒng)只需小小的改變就能使用該協(xié)議。
Ripple讓世界各地的銀行可以無需中央對手方或代理銀行就可直接交易,從而使得讓世界上的不同貨幣(包括法定貨幣和虛擬貨幣)自由、近乎免費、零延時地進(jìn)行匯兌;Circle則讓用戶可以在無需手續(xù)費的情況下,以發(fā)送消息的形式發(fā)起即時的國內(nèi)或跨境轉(zhuǎn)賬、收付款。目前Ripple和Circle正受到資本市場的熱捧,Elwin覺得其中的原因,與其說他們的崛起是由于跨境匯兌和P2P支付革新,還不如說他們是對價值交換的革新,它們將各種賬本連接起來,實現(xiàn)在互聯(lián)網(wǎng)上交換資金能像交換信息一樣輕松。
側(cè)鏈/中繼(sidechain/relay)
側(cè)鏈
側(cè)鏈和比特幣網(wǎng)絡(luò)掛勾,作為二級(secondary)區(qū)塊鏈能夠提供不同功能和特點的新型資產(chǎn)。有關(guān)側(cè)鏈最典型的例子就是根鏈(RSK)平臺。用戶在這一平臺部署并使用智能合約時,并不需要投資另一種新型加密貨幣。
側(cè)鏈技術(shù)成功部署的標(biāo)志是現(xiàn)實完全的去中心化。用戶可以把比特幣發(fā)送到一個特殊的地址進(jìn)行鎖定,然后在側(cè)鏈上提取這種二級資產(chǎn)(secondary asset),反之亦然。這種方式被稱為雙向楔入(2-way peg)。
盡管在比特幣區(qū)塊鏈上鎖幣,然后在側(cè)鏈上進(jìn)行提現(xiàn)是可行的(可以通過銷毀Proof-of-Burn的方式進(jìn)行部署),但是,由于比特幣協(xié)議的局限性,提現(xiàn)的過程無法達(dá)到完全的去中心化。
為了充分發(fā)揮其功能,側(cè)鏈的運作是雙向的,但二級資產(chǎn)的提現(xiàn)目前仍然無法轉(zhuǎn)換到比特幣網(wǎng)絡(luò)中。因此,雙向楔入的另一個部分去中心化(semi-decentralized)選擇就產(chǎn)生了:聯(lián)合楔入(Federated pegs)。
雙向楔入
我們可以利用這些想法將一個側(cè)鏈SPV楔入至另一個側(cè)鏈。這包含以下工作:為了將父鏈幣轉(zhuǎn)移為側(cè)鏈幣,父鏈幣被發(fā)送到父鏈上的一個特殊輸出中,該輸出只能由側(cè)鏈上擁有的一個SPV證明來解鎖。為了在兩條鏈上進(jìn)行同步,我們需要定義兩個等待周期:
1.側(cè)鏈間轉(zhuǎn)移的確認(rèn)期,是指幣在轉(zhuǎn)移至側(cè)鏈之前,在父鏈上必須被鎖定的期間。此確認(rèn)期目的是生成足夠多的工作量,讓下一個等待期內(nèi)的拒絕服務(wù)攻擊變得更困難。典型的確認(rèn)期的量級可以是一或兩天。
當(dāng)父鏈上生成了特殊輸出后,用戶等待確認(rèn)期結(jié)束,然后在側(cè)鏈上生成一個引用該輸出的交易,提供出一個它已被創(chuàng)建并在父鏈上被足夠工作量覆蓋的SPV證明,
確認(rèn)期是一個依側(cè)鏈而定的安全參數(shù),要在跨鏈交易速度和安全性間做權(quán)衡。
2.接下來,用戶必須等待一個競賽期。這個期間,新轉(zhuǎn)移過來的幣不能在側(cè)鏈上花費。競賽期的目的是防止重組時出現(xiàn)雙花,在重組期間轉(zhuǎn)走先前鎖定的幣。在這個延遲期內(nèi)的任何時刻,如果有一個新的工作證明發(fā)布出來,對應(yīng)的有著更多累計工作量的鏈中沒有包含那個生成鎖定輸出的區(qū)塊,那么該轉(zhuǎn)換將被追溯為失效。我們稱此為重組證明。
只要有可能,所有側(cè)鏈上的用戶都會有動力來制發(fā)重組證明,因為對不良證明的承認(rèn)會稀釋所有幣的價值。
典型的競賽期也是一或兩天的量級。為了避免這些延遲,用戶很可能用元互換(原子交換)(在附錄C中有描述)進(jìn)行大多數(shù)交易,只要有流動性的市場可用。
當(dāng)幣在父鏈上被鎖定時,該幣可以在側(cè)鏈內(nèi)自由轉(zhuǎn)移,不需要與父鏈進(jìn)一步交互。不過,它仍保留著父鏈幣的身份,僅能轉(zhuǎn)回到它所來的那一條鏈上。
當(dāng)用戶想把幣從側(cè)鏈上轉(zhuǎn)回父鏈時,與原先轉(zhuǎn)移所用的方法相同:在側(cè)鏈上將幣發(fā)送至一個SPV鎖定的輸出,產(chǎn)生一個充分的SPV證明來表明該輸出已完成,使用這個證明來解鎖父鏈上先前被鎖定的那個等面值的輸出。整個轉(zhuǎn)移過程如圖1所示。
聯(lián)合楔入
聯(lián)合楔入將提現(xiàn)功能委托給一部分信譽較好的比較可靠的公司,也就是交易所。
整個過程十分簡單。在二級區(qū)塊鏈交易中,比特幣網(wǎng)絡(luò)不負(fù)責(zé)資金的凍結(jié)或者解凍。要進(jìn)行側(cè)鏈內(nèi)外的資產(chǎn)轉(zhuǎn)移,用戶可以將這些資金轉(zhuǎn)移到一個由federation控制的多重簽名(multisig)地址中。
一旦這個地址收到了一定數(shù)量的比特幣,這個二級區(qū)塊鏈將以完全去中心化的模式發(fā)放這部分資金,整個過程無需federation的審核。
如果用戶想要把幣從側(cè)鏈轉(zhuǎn)移到比特幣區(qū)塊鏈,他只要把這部分比特幣轉(zhuǎn)移到側(cè)鏈中一個特定的地址中,并且在側(cè)鏈中附上比特幣區(qū)塊鏈中的輸出值信息。
接著,聯(lián)合楔入會為輸出創(chuàng)建交易。這筆交易必須由大多數(shù)密鑰持有者進(jìn)行簽名,這樣就算聯(lián)合楔入的某位成員心懷不軌也不至于危及整個系統(tǒng)的安全。
應(yīng)用:BTC Relay
BTC Relay是在以太坊基金會支持之下誕生并成長起來的,它被認(rèn)為是區(qū)塊鏈上的第一個側(cè)鏈。BTC Relay把以太坊網(wǎng)絡(luò)與比特幣網(wǎng)絡(luò)通過使用以太坊的智能合約連接起來,可以使用戶在以太坊上驗證比特幣交易。它通過以太坊智能合約創(chuàng)建一種小型版本的比特幣區(qū)塊鏈,但智能合約需要獲取比特幣網(wǎng)絡(luò)數(shù)據(jù),這還比較難實現(xiàn)去中心化。BTC Relay進(jìn)行了跨區(qū)塊鏈通信的有意義的嘗試,打開了不同區(qū)塊鏈交流的通道。
哈希鎖定(hash-locking)
Lightning Network
Lightning network閃電網(wǎng)絡(luò)提供了一個可擴展的bitcoin微支付通道網(wǎng)絡(luò),它極大提升了比特幣網(wǎng)絡(luò)鏈外的交易處理能力。交易雙方若在區(qū)塊鏈上預(yù)先設(shè)有支付通道,就可以多次、高頻、雙向地實現(xiàn)快速確認(rèn)的微支付;雙方若無直接的點對點支付通道,只要網(wǎng)絡(luò)中存在一條連通雙方的、由多個支付通道構(gòu)成的支付路徑,閃電網(wǎng)絡(luò)也可以利用這條支付路徑實現(xiàn)資金在雙方之間的可靠轉(zhuǎn)移。
閃電網(wǎng)絡(luò)的關(guān)鍵技術(shù)是HTLC哈希鎖定技術(shù),基本原理如下:Alice和Bob可以達(dá)成這樣一個協(xié)議:協(xié)議將鎖定Alice的0.1 BTC,在時刻T到來之前(T以未來的某個區(qū)塊鏈高度表述),如果Bob能夠向Alice出示一個適當(dāng)?shù)腞(稱為秘密),使得R的哈希值等于事先約定的值H(R),Bob就能獲得這0.1 BTC;如果直到時刻T過去Bob仍然未能提供一個正確的R,這0.1 BTC將自動解凍并歸還Alice。
跨鏈技術(shù)分析
跨鏈技術(shù)總結(jié)
· Notary scheme 公證人模式
· Sidechains/relays 側(cè)鏈/中繼模式
· Hash-locking 哈希鎖定
1. Notary scheme 公證人模式
本質(zhì)中間有一個可信任的組織或者實體幫忙做賬本間的轉(zhuǎn)換。
認(rèn)為總體上分為兩類:
· 基于分布式賬本的 公證人模式。典型的例子是 Interledger Protocal (簡稱 ILP)。
· 基于鏈 (UTXO) 模型( 一般被稱為 federated pegged sidechain )。典型代表是 R3 的 Corda
基本模型
Interledger Protocal
由 Ripple 提出的一套協(xié)議 ,目的是提高不同賬本之間轉(zhuǎn)賬的結(jié)算效率。
· Ledger 層: 負(fù)責(zé)賬本數(shù)據(jù)的結(jié)算。一般是插件方式實現(xiàn)不同 Ledger 層的數(shù)據(jù)交換。
· Interledger 層: 負(fù)責(zé)把 sender 的數(shù)據(jù)轉(zhuǎn)發(fā)給 receiver。
· Transport 層: 負(fù)責(zé)判斷交易條件和其他細(xì)節(jié)的。(例如 交易數(shù)字簽名合法性)
· Application 層: 目的賬戶的發(fā)現(xiàn),目的金額的協(xié)商,選擇 Transport 協(xié)議等。
Connector 實際上就是一個 Notary。 底層有 不同賬本的 Plugin 進(jìn)行結(jié)算。
缺點:
· 主要是基于轉(zhuǎn)賬操作的跨鏈。
2. Relays 中繼模式
去除了中間人的依賴,A鏈 直接從 B鏈上獲取信息從而進(jìn)行交易。
基本模型
BTC Relay
目的是用來驗證 BTC的交易。
實現(xiàn)是通過 Relayers (礦工) 搬運Block的信息到 ETH網(wǎng)絡(luò),并通過 SPV 的方式進(jìn)行交易的驗證。
缺點:
· 單向訪問 BTC
· 已經(jīng)廢棄。有 2W 個塊未同步。
3. Hash-locking 哈希鎖定
使用 BTC 的交易腳本實現(xiàn)的。通過 Hash Puzzle 的方式 鎖定交易腳本。
OP_HASH256 6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000000000 OP_EQUAL
需要解鎖交易,必須要知道該 Hash 的原始數(shù)據(jù)(被稱為 pre_image)。
因為 Hash算法 有抗碰撞性 和 不可逆的特點,所以 pre_image 是很難猜出的,也很難找到一個 不同的 pre_image 但是 Hash 相同的。
最常見的應(yīng)用是 Lighting Network 的 HTLC (Hash TimeLocked Contract) 。
HTLC
假設(shè) Alice 想從 Bob 那里買東西 ,Alice 和 Charlie 之間有 Payment Channel , Charlie 和 Bob 有 Payment Channel 。
· Bob 給 Alice 一個 Hash
· Alice 打錢給 Charlie 帶上 Charlie的簽名 和 Hash
· Charlie 收到錢后,從 自己的賬戶上,打錢給 Bob 并帶上Bob的簽名和 該Hash
· Bob 通過 pre_image 提取錢到自己的賬戶上,Charlie 收到 pre_image 之后提取錢到自己的賬戶上。
評論
查看更多