跨鏈專案總結-palletone
公證人模式 palletone
現狀
PalletOne 既是一個跨鏈協議,更是一個高效能的“超級公鏈”。 PalletOne 以數字貨幣抽象、合約抽象和UTXO 抽象等介面的形式,將所有區塊鏈底層封裝到介面卡中,對上提供統一的介面。而 PalletOne 虛擬機器為Java、 C++等常用程式語言提供了安全穩定的智慧合約執行環境,開發人員不用關心區塊鏈底層的細節,就可以使用自己常用的開發語言編寫跨鏈的區塊鏈應用,使得一個應用可以同時在多個鏈上執行。同時 PalletOne 獨創的陪審團機制以及 DAG 資料儲存+DPOS 的 Mediator 見證人機制使得合約執行和資料儲存都並行處理,從而實現了一個高效能的
PalletOne 與眾不同之處在於, PalletOne 不僅僅可以跨所有的鏈,而且在效能考量、通證設計、開發者友好性上都做了更多的優化設計,更容易建立良好的區塊鏈應用生態。
PalletOne 本身只是一個區塊鏈跨鏈平臺,基於該平臺可以很方便的建立一個去中心化交易所應用,與現在的 0x、 EtherDelta、 Kyber.Network 等常見去中心交易所相比, PalletOne 上的去中心化交易所除了同樣具有交易透明、資產安全等特點外,還可以做到更多的幣種支援、更快的處理速度,樹立下一代去中心化交易所的標杆。
跨鏈支付案例
利用PalletOne 實現BTC 和 ETH 之間的連結交換。
Ps:多重簽名7/12 12個人可以簽名,7個人簽名就可以支付賬戶裡的比特幣
(1)如果 A 和 B 想交換他們的 BTC 和 ETH,他們將新建交易合約,選擇陪審員J1、J2、J3 和 J4 作為執行他們交易合約的陪審團。然後陪審員每人持有一個公私鑰對,A和 B 各持有 4 個公私鑰對,這樣將分別在比特幣和以太坊網路中建立 7/12 的多重簽名賬戶作為合約賬戶。
(2)A 和 B 需要將各自的代幣傳送到相應的賬戶中。A 將 BTC 傳送比特幣網路中的到合約賬戶,B 將 ETH 傳送到以太坊網路中的合約賬戶。
(3)A 使用者發起收取 ETH 的申請,並用他持有的 4 個私鑰簽名;B 使用者也可發起收取 BTC 的申請,並用他持有的 4 個私鑰簽名。
(4)陪審團檢查合約賬戶的狀態後,將分別簽名允許 A 和 B 根據合約狀態從合約賬戶中提取 BTC 和 ETH。由於是 7/12 多籤,所以允許某個陪審員(J4)不線上的情況。
黃皮書p74 Jury 背書 Mediator 背書 具體舉例
調停中介、陪審團區別
1.調停中介 Mediator
調停中介(Mediator)負責 PalletOne 網路的整體安全性。 Mediator 的角色和傳統區塊鏈有些相似,都是信任機器,因此, Mediator 需要保證所有的決定都是正確的。 Mediator 使用代理權益證明(Delegated Proof of Stake, DPoS)來選舉產生,而在 Mediator 內部, 多個節點之間採用 BFT 共識。為了防止 Mediator 成為PalletOne 的瓶頸,大部分工作只需要陪審團完成而不需要呼叫 Mediator。以下是 Mediator 的主要工作:
1. 持有陪審員的保證金;
2. 部署智慧合約模板;
3. 隨機選擇陪審員組建陪審團;
4. 為多籤錢包提供簽名;
5. 分散式儲存中 DAG 單元的見證。
2.陪審團 Jury
陪審團(Jury)是維護 PalletOne 安全性和完整性的基本單位。更具體的說,陪審團被委任執行智慧合約和管理多重簽名賬戶。為了實現安全和去中心化的設計,陪審團被設計為由許多參與者組成, 這些參與者被稱為陪審員。每位陪審員支付保證金以保證安全。陪審團採用 VRF+BFT 共識的演算法來實現共識。關於陪審團的隨機生成和內部的共識演算法,將會在“Jury 共識演算法”章節進行詳細介紹。
Jury 是智慧合約的執行節點, Jury 的數量沒有限制,一個節點可以同時參與多個陪審團,對合約的執行進行共識。 Jury 節點由於需要跨鏈,所以需要對其他的鏈進行查詢和操作,目前有兩種模式:
(1)陪審員自建其他鏈的全節點伺服器,比如下圖中的 Juror1, PalletOne 在需要進行跨鏈操作時,直接連線自建的 API 服務。這種模式操作的速度更快,而且更安全,但是部署成本高。
(2)呼叫第三方的鏈操作 API,比如比特幣的 blockchain.info。這種模式成本低,但是可能網路延遲大,對外部的依賴容易被攻擊。