Counterparty使用自己的代幣XCP,該代幣是2014年1月期間透過“燃燒證明”流程建立的。在那一個月裡,超過2000個比特幣被髮送到比特幣網路上一個不可更改的地址(1CounterpartyxxxxxxxxxxuWLPVR)這導致Counterparty協議向傳送方地址授予相應數量的XCP。XCP用於支付資產建立費、差價/二元期權合約的抵押品,並經常作為去中心交易中的基本代幣(主要是由於在此類交易中使用比特幣(BTC)的複雜性)。
已經實現了對以太坊虛擬機器(EVM)的支援,但並不包含在MainNet版本中。在執行交易Counterparty EVM時,所有以C開頭的比特幣地址釋出的交易Counterparty智慧合約“實時”執行。Counterparty用於廣播執行交易,以呼叫智慧合約程式碼中的特定功能或方法。一旦比特幣礦工確認執行交易,對方聯合節點將接收請求並執行該方法。隨著智慧合約程式碼的執行,合約狀態將被修改並儲存在Counterparty資料庫中。
普遍的共識是,聯盟網路是集中式網路的分散式網路。Ripple區塊鏈實施聯邦拜占庭協議(FBA)共識機制。聯合側鏈使用相互不信任的工作人員/公證人的受信任聯盟來實現安全協議。交易對手為其元件和所有依賴項使用“全棧”打包系統,稱為“聯合節點”系統。但是此含義指的是一般定義中的聯邦,即“設定為單個集中式單位,每個州或分割槽在其中保持一些內部自治”。
目前也有很多知名的專案是基於Counterparty建立的。開發COVAL的主要目的是使用“鏈下”方法轉移價值。它使用自己的一組節點執行器來管理各種“鏈外”分散式分類帳和分類帳分配的錢包,以實施擴充套件的交易價值系統,從而可以安全地交易令牌和令牌容器。因此可以實現在COVAL生態系統內進行擴充套件,因為它不僅依賴於交易方聯合節點來執行智慧合約。
優點
Counterparty提供了一種簡單的方法,可將“第2層”功能(即硬編碼的智慧合約)新增到支援基本資料嵌入的現有區塊鏈實現中。
Counterparty的嵌入式共識模型利用了“無許可創新”,這意味著即使是比特幣核心開發人員在不嚴重破壞網路的情況下停止使用協議層。
缺點
· 嵌入式共識要求從網路節點進行鎖步升級,以避免分叉。
· 嵌入式共識對二層與一層令牌互動的能力施加了限制。Counterparty無法直接操縱BTC餘額或直接使用BTC。
· 藉助嵌入式共識,節點無需使用對等網路即可維護相同的分類帳,這會妨礙協議的靈活性。它還將協議的速度限制為基礎區塊鏈的速度。
機遇
· 節點可以實現改進的共識模型,例如聯合拜占庭協議。
雙向鉚釘二級區塊鏈
雙向鉚釘(2WP)允許BTC從主比特幣區塊鏈“傳輸”到輔助區塊鏈,反之亦然,透過使用適當的安全協議,以固定速率傳輸。“轉移”實際上涉及將BTC鎖定在主比特幣區塊鏈上,並在次要區塊鏈上解鎖/使其可用。當二級區塊鏈上的同等數量的代幣被鎖定(在二級區塊鏈中)以便原始比特幣可以被解鎖時,2WP承諾就結束了。
1. 側鏈:當使用簡化付款驗證(SPV)證明實施安全協議時-無需下載整個區塊鏈的區塊鏈交易驗證,則將次要區塊鏈稱為側鏈。
2. Drivechain(傳動鏈):透過向礦工提供BTC的託管來實施安全協議時-礦工在投票何時解鎖BTC以及將其傳送到哪裡時,輔助區塊鏈稱為傳動鏈。在該方案中,礦工將使用動態成員多方簽名(DMMS)對區塊頭進行簽名。
3. 聯邦鉚釘/側鏈:當透過互不信任的工作人員/公證人的受信任聯盟實施安全協議時,輔助區塊鏈稱為聯邦鉚釘/側鏈。在該方案中,DMMS被傳統的多簽名方案取代。
4. 混合側鏈-傳動鏈-聯邦鉚釘:當SPV實施安全協議的證據進入二級區塊鏈,而礦工DMMS和功能人員/公證人多重簽名的動態混合又回到主要比特幣區塊鏈時,二級區塊鏈稱為混合側鏈-傳動鏈-聯邦鉚釘。
下圖顯示了使用混合側鏈-傳動鏈-聯邦鉚釘安全協議的2WP比特幣二級區塊鏈的示例:
比特幣主區塊鏈上的BTC透過使用P2SH事務鎖定,在P2SH事務中,BTC可以傳送到指令碼雜湊而不是公鑰雜湊。要在P2SH事務中解鎖BTC,接收方必須提供與指令碼雜湊和資料匹配的指令碼,這將使指令碼的計算結果為true。
· RSK(以前稱為Rootstock)是使用混合側鏈-傳動鏈安全協議的2WP比特幣二級區塊鏈。RSK可擴充套件至每秒100個事務(Tx/s),併為比特幣提供第二層擴充套件解決方案,因為它可以緩解鏈上的比特幣交易速度。
· Hivemind(原為Truthcoin)正在實施對等Oracle協議,該協議將準確的資料收集到區塊鏈中,以便比特幣使用者可以在預測市場中進行推測。
· Blockstream正在實施一個稱為Liquid的聯邦側鏈,其工作人員/公證人由參與交易所和比特幣業務組成。
優點
· 無許可創新:任何人都可以建立一個新的區塊鏈專案,利用主要比特幣區塊鏈的潛在優勢,使用真正的BTC作為貨幣。
· 新功能:側鏈/驅動鏈可用於測試或實現新功能,而無需擔心主比特幣區塊鏈或無需更改其協議,例如Schnorr簽名和零知識證明。
· 鏈即服務(CaaS):可以建立具有資料儲存2WP二級區塊鏈的CaaS。
· 智慧合約:2WP二級區塊鏈使實現智慧合約更加容易。
· 可擴充套件性:2WP二級區塊鏈可以支援更大的區塊大小和每秒更多的交易,從而擴充套件了比特幣主區塊鏈。
缺點
· 安全性:將BTC傳輸回主比特幣區塊鏈不夠安全,並且可以進行操作,因為比特幣不支援來自2WP二級區塊鏈的SPV。
· 51%的攻擊:2WP二級區塊鏈在很大程度上依賴於合併挖礦。
· 挖礦業提供的DMM對於小型系統來說不太安全,而對於大型系統來說,聯邦/公證人的信任風險更大。
機遇
2WP二級區塊鏈可能會提供有趣的機會來擴充套件與位於二級層上的多個不可替代資產相關的多種支付方式。但是請注意資金的私密性和安全性以及資金進出2WP二級區塊鏈的注意。
Lumino
Lumino事務壓縮協議(LTCP)是一種用於事務壓縮的技術,該技術允許處理大量事務,但儲存的資訊少得多。Lumino網路是使用LTCP的RSK平臺的類似於Lightning的擴充套件。來自同一所有者的選定交易欄位的增量(差異)壓縮是透過使用先前交易的集合簽名完成的,因此可以處理先前的簽名。
每個事務都包含一組稱為持久事務資訊(PTI)的持久欄位和一個稱為SigRec的使用者事務資料複合記錄。Lumino塊儲存兩個Merkle樹:一個包含所有pti;另一個包含所有事務id(簽名SigRec的雜湊)。第二個Merkle樹在概念上與Segwit見證樹相似,從而形成見證部分。對接是這樣一個過程:如果存在有效的連結PTI資訊,則可以從區塊鏈中刪除SicRec和簽名資料。
優點
Lumino Network承諾修剪RSK區塊鏈的效率很高。
缺點
白皮書中關於Lumino網路將如何處理支付通道的細節並不具有決定性。
機遇
LTCP修剪可能對Tari有益。
Scriptless Scripts(無指令碼指令碼)
無指令碼指令碼是數學家安德魯·波斯特拉(Andrew Poelstra)創造和發明的。它需要提供指令碼功能,而無需在區塊鏈上使用實際指令碼來實現智慧合約。在撰寫本文時(2018年7月),它只能在Mimblewimble區塊鏈上工作,並使用特定的Schnorr簽名方案,該方案允許簽名聚合,將多個簽名數學地組合為單個簽名,而無需證明 秘密金鑰(KOSK)。這被稱為普通公鑰模型,其中唯一的要求是每個潛在的簽名者都具有公鑰。KOSK方案要求使用者在向證書頒發機構註冊公鑰的過程中證明(知道或擁有)秘密金鑰,這是一般防止惡意金鑰攻擊的一種方法。
聚合簽名的屬性:
1. 在普通的公開金鑰模型中必須證明是安全的;
2. 必須滿足正常的Schnorr方程,由此可以將生成的簽名寫成公鑰組合的函式;
3. 必須允許互動式簽名集合簽名(IAS),要求籤名者進行合作;
4. 必須允許非互動式聚合簽名(NAS),任何人都可以進行聚合;
5. 必須允許每個簽名者簽名同一條訊息;
6. 必須允許每個簽名者簽名自己的訊息;
這不同於通常的多重簽名方案,其中一條訊息由所有人簽名。
假設Alice和Bob各自需要為交易提供一半的Schnorr簽名,據此Alice承諾向Bob透露一個秘密,以換取一個加密硬幣。Alice可以計算出她的一半Schnorr簽名與秘密的Schnorr簽名(介面卡簽名)之間的差異,並將其移交給Bob。這樣Bob就可以在不知道原始簽名的情況下驗證介面卡簽名的正確性。然後Bob可以將自己的一半Schnorr簽名提供給Alice,以便她可以廣播完整的Schnorr簽名以索取加密貨幣。透過廣播完整的Schnorr簽名,Bob可以訪問Alice的一半Schnorr簽名,然後他可以計算該秘密的Schnorr簽名,因為他已經知道介面卡簽名,因此可以領取獎金。這也稱為零知識認證。
Mimblewimble被Andrew Poelstra引用為最終的無指令碼指令碼。
優點
· 減輕資料。簽名聚合在區塊鏈上提供資料壓縮。
· 隱私性。在區塊鏈上,除了結算交易之外,沒有任何關於無指令碼指令碼智慧合約的記錄。
· 多樣性。可以在一次結算交易中在兩方之間轉移多種數字資產。
· 隱式可伸縮性。區塊鏈的可擴充套件性是透過將多個交易壓縮為一個結算交易來實現的。滿足所有先決條件後,交易才會廣播到區塊鏈。
缺點
麥克斯韋等人最近的工作證明了滿足金鑰聚合的Schnorr多重簽名的樸素實現是不安全的,並且Bellare和Neven(BN)Schnorr簽名方案為了在普通公鑰模型中獲得安全性而丟失了金鑰聚合屬性。他們提出了一種新的基於Schnorr的金鑰聚合多重簽名方案MuSig,該方案在普通公鑰模型下是安全的。它與標準Schnorr簽名具有相同的金鑰和簽名大小。對於單個“聚合”公鑰,聯合簽名可以與標準Schnorr簽名完全相同的方式進行驗證,該公鑰可以從簽名者的單個公鑰計算得出。請注意,在互動簽名聚合的情況下,每個簽名者對自己的訊息進行簽名,仍然必須透過完整的安全性分析進行驗證。
機遇
Tari計劃實現Mimblewimble區塊鏈,並應與MuSig Schnorr簽名方案一起實現無指令碼指令碼。但是這本身並不能提供所需的第2層擴充套件效能Big Neon是建立在Tari區塊鏈之上的初始業務應用程式,它要求“在4分鐘內提供500張門票”,即大約每秒允許兩名觀眾訪問,延遲可以忽略不計。
Mimblewimble無指令碼指令碼可以與聯合節點(或專用主節點)組合,類似於Counterparty開發的指令碼。透過MuSig Schnorr簽名揭示的秘密可以例項化聯合節點內的常規智慧合約,並在事件發生後將最終的合併狀態更新寫回到區塊鏈上。
有向無環圖(DAG)派生協議
在數學和電腦科學中,有向無環圖(DAG)是一個沒有有向無環的有限有向圖。有向圖是非迴圈的當且僅當它有拓撲序,即對於從頂點u到頂點v的每一個有向邊uv,u在序中先於v(age)。
區塊鏈中的DAG首先被提出為GHOST協議,其版本在以太坊中被實現為Ethash PoW演算法(基於Dagger-Hashimoto)。DAG在區塊鏈中的原理是提出一種將傳統的脫鏈區塊包括在分類賬中的方法,這由數學規則控制。
DAG派生協議要解決的主要問題是:
· 孤立的區塊(減少緩慢傳播的負面影響);
· 緩解自私採礦攻擊。
在大多數DAG衍生協議中,包含衝突事務的塊(即衝突塊)不是孤立的區塊。在這兩個衝突區塊的頂部都建立了一個後續區塊,但是在處理鏈時會丟擲衝突事務本身。例如SPECTRE提供了一種方案,透過這種方案,大宗投票可以確定在發生衝突時哪些交易被強行接受,被強行拒絕或處於不確定的“待決”狀態。兩個衝突的區塊都成為共享歷史的一部分,並且兩個衝突的區塊都為其各自的礦工贏得了區塊獎勵。
包容性(DAG派生)協議將傳統鏈下塊的內容整合到分類賬中,從而促使節點改變行為,從而提高了吞吐量,併為弱勢礦工帶來了更好的回報。
DAG衍生協議不是2層擴充套件解決方案,但它們提供了主要區塊鏈的顯著擴充套件。
SPECTER提供高吞吐量和快速確認時間。它的DAG結構表示關於每對塊之間的順序的抽象投票,但是由於可能的Condorcet迴圈,這種成對的順序可能無法擴充套件到完整的線性順序。
PHANTOM對DAG的塊提供了線性排序,並且可以支援SPECTER不能進行的任何常規計算(智慧合約)的共識。為了正確,一致地處理計算或合約,需要分類賬中事件的完整順序,尤其是合約輸入的順序。但是PHANTOM的確認時間比SPECTRE中的確認時間慢得多。
優點
· 1層擴充套件:增加主區塊鏈上的交易吞吐量。
· 公平性:為弱勢礦工提供更好的回報。
· 去中心化化緩解措施:實力較弱的礦商也能獲得利潤。
· 交易確認次數:幾秒鐘的確認次數(SPECTRE)。
· 智慧合約:支援智慧合約(SPECTRE)。
缺點
· DAG衍生協議在重要方面有所不同,例如礦工支付方案,安全模型,對智慧合約的支援以及確認時間。因此並非所有DAG派生協議都是平等的。
機遇
· Tari有機會運用基本DAG原理,藉助公平性和防礦工分散性,使51%的攻擊難度加大。選擇正確的DAG派生協議還可以顯著改善1層伸縮性。