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