將區塊鏈連接在一起

作者:扎克-赫斯, Zack Hess https://github.com/zack-bitcoin/amoveo-docs/blob/master/basics/connecting_blockchains.md

對於構建使用多個區塊鏈的應用程序,有3種流行的策略。

區塊鏈A是區塊鏈B的依賴關係。在這種情況下,B的每個全節點也需要運行A的全節點。

區塊鏈A的輕量級節點是區塊鏈B的依賴,在這種情況下,B的每個全節點也需要運行A的輕量級節點。

跨鏈原子交換和hashhlocking和通道。在這種情況下,兩個區塊鏈都在執行同一個確定性合約,這在兩個區塊鏈上會有相同的結果。這種情況下,區塊鏈之間的關係與Amoveo中通道之間的關係相同。所以任何支持這種關係的區塊鏈都可能以同樣的方式與Amoveo合約互動。

(如果你想和比特幣合作,(1)是最好的,因爲比特幣的輕型節點對(2)來說還不夠好。

(如果你想讓你的區塊鏈使用另一個區塊鏈的預言機(oracle),或者你想知道另一個區塊鏈的具體狀態,比如當前的挖礦難度,(2)是最好的。

(3)如果你想轉移資金或合成資產,或者你想參與市場,那是最好的。

爲什麼比特幣的輕型節點不夠好?

2在Amoveo中非常好用,因爲Amoveo的輕節點非常輕,比特幣的輕節點真的很差,因爲生成一個賬戶的餘額證明需要很長時間。比特幣的UTXO根本沒有爲輕節點優化。爲了證明一個地址的餘額,全節點必須重新掃描每個區塊的每一筆交易,這需要幾個小時。如果驗證B的一個區塊需要重新掃描區塊鏈A,那麼驗證一個區塊就需要幾個小時。也許在幾個小時的工作結束後,你會發現這個區塊是無效的。如果礦工們浪費了幾個小時,只是爲了知道下一步要挖哪個區塊,這是一個致命的問題。所以策略(2)現在在比特幣上行不通。

Cosmos是一個很酷的項目,當他們想把比特幣連接到區塊鏈A時,他們從比特幣到C做一個1型連接,然後從A到C做2型連接。https://cosmos.network/