隨著區(qū)塊鏈技術(shù)的快速發(fā)展和日益成熟,出現(xiàn)了不同種類的公有鏈、聯(lián)盟鏈、私有鏈搭載著不同重要業(yè)務(wù)的區(qū)塊鏈場景。
鏈之間就像一座座獨立的價值孤島,資產(chǎn)和價值相互隔離而無法流通。除了公有鏈廣泛透明,聯(lián)盟鏈和私有鏈讓不同組織擁有了各自的區(qū)塊鏈網(wǎng)絡(luò)。
網(wǎng)絡(luò)的隔離、價值的孤立在許多業(yè)務(wù)場景(諸如身份驗證、資產(chǎn)數(shù)字化等)中導(dǎo)致多條區(qū)塊鏈之間無法進行資產(chǎn)轉(zhuǎn)移、資產(chǎn)兌換、數(shù)據(jù)的互操作等。業(yè)務(wù)多樣和復(fù)雜也導(dǎo)致了跨鏈的場景隨處可見。
要想解決資產(chǎn)和數(shù)據(jù)的自由流通、鏈與鏈之間的互通互聯(lián)問題,首先要在鏈之間建立一套信任機制,讓一條鏈能夠驗證并信任另一條鏈的數(shù)據(jù)。比如,在以太坊上發(fā)生了一筆交易,在關(guān)聯(lián)鏈上怎么確認(rèn)這筆交易是否有效呢?同樣,對于在關(guān)聯(lián)鏈上發(fā)生的交易,在以太坊上又如何確認(rèn)?
1跨鏈的問題
1.跨鏈交易的原子性
跨鏈交易的結(jié)果必須是成功或者失敗,不一致和不同的狀態(tài)會產(chǎn)生巨大的漏洞,給所有相關(guān)鏈的安全性造成巨大的威脅。
2.確認(rèn)另一條鏈的交易
這包括兩個方面:①交易已上鏈,寫入賬本。②交易獲得了足夠多的確認(rèn)。
3.兩條鏈的資產(chǎn)總量不變
在跨鏈資產(chǎn)兌換的場景中,因為兩條鏈的資產(chǎn)并沒有發(fā)生實質(zhì)性的兌換,所以資產(chǎn)總量不會變化。在跨鏈資產(chǎn)轉(zhuǎn)移的場景中,需要嚴(yán)格保持跨鏈交易的原子性,保持流通的資產(chǎn)總量穩(wěn)定不變。
4.鏈的獨立安全性
兩條鏈進行數(shù)據(jù)交互,難免互相影響。每條鏈的安全隔離問題無法避免,必須保證一條鏈在受到攻擊后,不會影響整個跨鏈生態(tài)中其他鏈的安全性。
跨鏈的目的是解決資產(chǎn)流通問題,無論是在同構(gòu)鏈還是在異構(gòu)鏈的跨鏈場景中,以上難題都無法避免,如何解決這些難題呢?
2跨鏈的難點
1.公證人機制
本方案引入一個或多個有信用的第三方組織作為跨鏈系統(tǒng)的公證人。公證人對鏈A的跨鏈消息進行監(jiān)聽,在收到跨鏈消息后進行驗證,轉(zhuǎn)發(fā)消息到鏈B上執(zhí)行相應(yīng)動作,實現(xiàn)對跨鏈消息的響應(yīng)。因為只有公證人對跨鏈消息進行驗證和轉(zhuǎn)發(fā),所以存在一定的中心化問題,并且公證人一直監(jiān)聽鏈上的所有交易也會產(chǎn)生對應(yīng)的隱私泄露風(fēng)險。
2.哈希時間鎖定協(xié)議
哈希時間鎖首次在比特幣的閃電網(wǎng)絡(luò)中被提出來,后來被通用化為哈希時間鎖定協(xié)議(Hashed-Timelock Agreements,HTLAs),其功能是可以在不同的區(qū)塊鏈系統(tǒng)之間進行資產(chǎn)兌換。該協(xié)議的優(yōu)點是對區(qū)塊鏈系統(tǒng)的干擾比較小,不需要過多考慮對方鏈,所以能夠高效地在區(qū)塊鏈系統(tǒng)之間進行資產(chǎn)兌換。但是該協(xié)議的缺點也比較明顯,過于簡潔的設(shè)計限制了其功能的擴展。
3.側(cè)鏈、中繼鏈技術(shù)
側(cè)鏈(Side Chain)、中繼鏈(Relays Chain)技術(shù)在現(xiàn)行的跨鏈方案中使用的頻率較高,而且也是比較復(fù)雜的跨鏈方案。
側(cè)鏈技術(shù)是在兩個區(qū)塊鏈系統(tǒng)中通過可信的跨鏈消息轉(zhuǎn)發(fā)機制,直接進行鏈上資產(chǎn)和數(shù)據(jù)兌換的技術(shù)。但是,這個可信的消息轉(zhuǎn)發(fā)機制對底層功能或者智能合約的依賴度比較高,這時就體現(xiàn)出中繼鏈技術(shù)的優(yōu)勢了。
中繼鏈技術(shù)是單獨運行一個區(qū)塊鏈系統(tǒng)來處理跨鏈消息的技術(shù),這樣就把原本放在雙方鏈上的一部分邏輯功能放在了中繼鏈上,從而降低了跨鏈雙方系統(tǒng)的邏輯處理要求。在智能合約的配合下,側(cè)鏈和中繼鏈技術(shù)的跨鏈方案能夠支持復(fù)雜的跨鏈業(yè)務(wù),比如資產(chǎn)抵押等,這種方案具備很強的擴展性。