根鏈(RSK)是很特別的。根鏈基于這樣一種基本的設計選擇:必須與比特幣聯(lián)合挖礦。因此,我們必須分析出最佳設計。我們要考慮到:
? 哪一方控制著被鎖定的比特幣
? 攻擊的成本是什么
? 攻擊的后果是什么
? 參與的激勵機制是什么
我們發(fā)現(xiàn),如果幾乎全體的比特幣礦工都加入到聯(lián)合挖礦中,當監(jiān)管者是比特幣礦工時,參與各方可以被激發(fā)出最高的誠實性,但只有當幾乎所有礦工都參與其中。在聯(lián)合挖礦的情況下,驅動鏈和側鏈都完全依靠比特幣礦工的誠實,兩者的安全性是相同的。然而,側鏈在比特幣一側實現(xiàn)起來要復雜得多,所以在比特幣這一側,根鏈的最佳選擇是使用驅動鏈。而在根鏈這一層,我們使用側鏈的方式來實現(xiàn)。所以從這一點來說,根鏈是采用混合型設計方案,可以被稱為驅動鏈/側鏈。
當?shù)V工參與聯(lián)合挖礦的程度比較低時,“驅動鏈/側鏈”的安全性是很低的。因此,我們建議采用這樣一種混合模型,其中被鎖定比特幣的安全性是基于驅動鏈外加一組公證人。礦工和公證人(擁有不同的權重)共同投票決定解鎖哪些
比特幣。公證人使用數(shù)字簽名進行投票,而礦工則在他們的 coinbase 交易中寫入一個特殊的標記進行投票。這是中心化和安全性之間的一種權衡。最終的根鏈雙向錨定設計可以被稱為“驅動鏈 +公證人/側鏈”。我們會基于比特幣全體礦工參與到聯(lián)合挖礦的程度來動態(tài)調(diào)整投票權重。在初期,只有公證人才有投票權,使用傳統(tǒng)的多重簽名交易。在中期,當驅動鏈功能被加載到比特幣時,公證人和礦工將一起參與投票。從長遠來看,當90%以上的礦工參與了聯(lián)合挖礦時,公證人的投票權將被刪除,屆時只有礦工才有投票權。這個演變的過程可以用來圖來描述:
在本質上,我們建議將鎖定的比特幣的安全性建立在礦工和一組公證人身上,但是這兩者之間的投票權重會因全體礦參與聯(lián)合挖礦的程度而動態(tài)調(diào)整。
在之后文章中,我們將展示驅動鏈+公證人的設計是如何在比特幣上實現(xiàn)的,只需要在比特幣上植入一個單一的操作碼OP_CHECK_VOTES_MULTISIG_VERIFY 。這個操作碼很容易理解,編程實現(xiàn)也很簡單,并且可以以軟分叉的方式在比特幣網(wǎng)絡上部署。