我在推敲“月光(Moonlight)與鳳凰(Phoenix)”時一直有一件事想錯:我把狀態形狀當作也會決定最終性(finality)。
這個假設開始讓我不安。
月光在
#DuskVM 處帶來了一種公共賬戶模型:Balances(餘額)、Sender(發送者)、Receiver(接收者)、Amount(金額)以及 Nonce Progression(nonce 進度)。
鳳凰則圍繞完全不同的軌跡構建:Encrypted Notes(加密筆記)、Shielded Outputs(屏蔽輸出)、Nullifiers(空投/作廢標記)以及 Private State(私有狀態)。
我最初的直覺是,這兩套如此不同的系統大概需要兩種不同的方式來變得最終。
但也許問題就出在這裏——我添加了並不存在的複雜度。
月光可以保持“賬戶形狀”。鳳凰可以保持“筆記形狀”。
#DuskVM 並不需要把任意一方都壓平成某種通用的狀態格式,纔去決定何時執行結束。
這也讓我重新思考
#DuskDS 。
我之前一直假設它需要在兩個模型之下創建一個共享的
$DUSK 狀態。如今我沒那麼確定了。
執行邏輯可以保持專用,而 Dusk L1 仍然能爲產生的狀態提供一個確定性的最終性邊界。
說實話,這種分離本身比各個單獨的狀態模型更讓我感興趣。
用不同方式來表示狀態,並不必然意味着對於“該狀態何時最終完成”這個問題要給出不同的答案。
我仍在想的一點是:隨着月光與鳳凰變得更復雜,這種分離能否保持得足夠清晰。
#dusk $DUSK @Dusk