什么是Ludos狀態(tài)通道
狀態(tài)通道是區(qū)塊鏈擴(kuò)容的熱門方向之一,也是目前投資的熱點(diǎn)。狀態(tài)通道與子鏈、側(cè)鏈等一起被歸類為Layer 2的擴(kuò)容方案,也是實(shí)現(xiàn)跨鏈互通性的潛在途徑。
狀態(tài)通道的總體思路是將本來在鏈上結(jié)算的交易在鏈下通過狀態(tài)通道維護(hù)中間態(tài),并且在發(fā)生糾紛時(shí)回到鏈上仲裁。鏈上仲裁的公平性和安全性在博弈論上保證了鏈下交易的對手不會作惡。
Ludos狀態(tài)通道
在Ludos的設(shè)定中,對一個(gè)狀態(tài)通道內(nèi)發(fā)生的事情保持著非常高的安全性和不可更改性:如果出現(xiàn)任何問題,Ludos可以選擇回溯到鏈上交易中的上一個(gè)保存狀態(tài),關(guān)閉通道,并釋放鎖定的資產(chǎn)。
作為狀態(tài)通道的特殊應(yīng)用,支付通道的概念已經(jīng)存在多年,如比特幣區(qū)塊鏈上的閃電網(wǎng)絡(luò)。實(shí)際上,狀態(tài)通道不僅可以用來進(jìn)行支付,還可以用來在區(qū)塊鏈上進(jìn)行任意的狀態(tài)更新,例如改變智能合約的內(nèi)部狀態(tài)。
Ludos狀態(tài)通道應(yīng)用實(shí)例
Alice和Bob想在Ludos上玩一個(gè)井字游戲,贏家可以獲得1ETH。要做到這一點(diǎn),最簡單的方法就是在Ludos主鏈上創(chuàng)建一個(gè)智能合約,它可以實(shí)現(xiàn)井字游戲的規(guī)則,并跟蹤每個(gè)玩家的操作。
每次當(dāng)一個(gè)玩家進(jìn)行一次操作的時(shí)候,他們向智能合約發(fā)起一個(gè)交易。當(dāng)其中一個(gè)玩家贏了的時(shí)候,就像規(guī)則里描述的那樣,智能合約就給贏家支付1ETH。雖然上述邏輯是可行的,但是 Alice和Bob正在讓整個(gè)區(qū)塊鏈網(wǎng)絡(luò)處理這個(gè)游戲合約,每次有玩家想要進(jìn)行操作的時(shí)候,他都必須支付gas費(fèi)用,而且必須等幾個(gè)塊被挖出后才能采取下一步行動。這明顯多于他們的需求并且效率低下。相反的,我們可以設(shè)計(jì)一個(gè)系統(tǒng),讓玩家盡可能少的在鏈上進(jìn)行操作。Alice或Bob可以在鏈下更新游戲合約的狀態(tài),如果有必要的話,他們可以恢復(fù)到主鏈的狀態(tài)。
Ludos狀態(tài)通道的應(yīng)用及限制
狀態(tài)通道在需要頻繁合約交互的應(yīng)用中非常有用,能切實(shí)擴(kuò)容并提高區(qū)塊鏈的承載能力。在Ludos狀態(tài)通道機(jī)制中將有如下的一些限制:
·依賴于狀態(tài)的有效性
如果通道參與者在游戲挑戰(zhàn)期(期間認(rèn)為游戲結(jié)果不公正的人可以提出挑戰(zhàn))內(nèi)丟失了網(wǎng)絡(luò)連接,則可能無法在游戲挑戰(zhàn)期結(jié)束前做出回應(yīng)。例如Bob為了贏得比賽,偽造了游戲結(jié)果,并破壞了Alice家的網(wǎng)絡(luò),導(dǎo)致Alice無法在游戲挑戰(zhàn)期訪問區(qū)塊鏈。在這種情況下,Alice可以讓Ludos提供的狀態(tài)托管網(wǎng)絡(luò)保留自己的狀態(tài)副本,并支付一定費(fèi)用,來保持有效性。
·僅適合在較長一段時(shí)間內(nèi)做高頻率狀態(tài)更新的DApp
·參與的多方在單一合約中需要相對固定
·通道內(nèi)操作將默認(rèn)被隱藏
一切都在參與者之間的通道“內(nèi)部”發(fā)生,而不是廣播和記錄在鏈上。只有最初和最后的交易必須公開。
·狀態(tài)通道將具有即時(shí)終結(jié)性
只要游戲合約的參與者多方都簽署了一個(gè)狀態(tài)更新,這個(gè)狀態(tài)就可以被認(rèn)為是最終狀態(tài)。如果有必要,他們可以隨時(shí)“強(qiáng)制執(zhí)行”將此狀態(tài)放到主鏈上。