Bitcoin Cash(BCH)在區塊高度478,558上產生,一直致力于為世界帶來一種可靠的電子現金,履行最初的比特幣作為點對點數字現金的承諾。其具有全球無縫流通、無許可(Permissionless)創新等特點。在Bitcoin Cash如何實現發行通證(Token),眾多的開發者已經有過不少的研究,比如染色幣的方案Colored-Coins,之后Andrew Stone 提出了Enable representative tokens via OP_GROUP on Bitcoin Cash,提議增加OP_GROUP的操作碼來實現發Token的方案。OP_GROUP方案需要修改Bitcoin Cash的共識規則才可以實現。更具體地說,類似于在Ethereum網絡上廣受歡迎的ERC20協議所具備的那些功能。
凡是需要更改共識才能實現的通證發行技術提議,都不可避免地會遇到問題。首先是技術上的風險,其次是對這種風險的顧慮常常引發技術開發社區甚至整個經濟生態都陷入巨大的爭議。爭議中的反對方,其顧慮很可能也確實是真實的。不論這樣的爭議中誰對誰錯,結果常常是有爭議的提議無法被實現。這樣的困難可以被視為一種保險機制,讓具有的風險更改很難被添加到協議之中,保證協議的穩健與安全;但是,協議的創新就面臨了著巨大的困難。導致了Bitcoin Cash社區獨立的區塊擴容大爭論,曠工持久而沒有共識的產生,就是一個更加令人不能回避的社會心理學證據。
快速活躍的創新,需要一種無需許可的環境。我們也一直在探索無許可創新的方法,在不需要改變共識的情況下,在Bitcoin Cash的區塊鏈上實現智能合約。經過研究,我們關注到了OmniLayer協議,它是一種利用OP_RETURN操作碼實現通證發行的方案。這個方案是廣受歡迎的泰達幣(USDT)日常發行和流通的技術基礎。Omni Layer是運行在Bitcoin的區塊鏈之上的。Omni Layer協議采用了MIT開源許可證。我們Fork了Omni Layer的協議,在Bitcoin Cash的區塊鏈上實現了發行通證的技術方案。我們將這種技術方案命名為Wormhole協議,協議中的原生代幣命名為Wormhole Cash。
原理
Wormhole Cash是基于Bitcoin Cash區塊鏈實現的,依附于Bitcoin Cash區塊鏈,在不改變現有BCH共識規則的情況下,使得BCH區塊鏈實現通證的發行、轉移和燃燒等基本功能。
交易的元數據信息被寫在OP_RETURN上?;赪ormhole協議的通證,其生成、轉移以及燃燒都需要通過Bitcoin Cash交易完成。識別OP_RETURN?的數據才能夠完成對于Token的發行,轉移和燃燒。
Wormhole協議復用了Bitcoin Cash的交易轉賬系統,它需要識別Bitcoin Cash區塊鏈上的交易、地址以及OP_RETURN等數據。
Wormhole協議 是Bitcoin Cash網絡共識的一個超集,它識別的元數據在Bitcoin Cash區塊鏈的共識協議中只是OP_RETURN數據,而Bitcoin Cash的共識規則不用理解OP_RETURN內的數據。
實現
Wormhole協議 協議的實現,是通過集成到Bitcoind中實現的。但是Bitcoin Cash本身的共識規則卻不需要做出改變,集成了Wormhole協議的Bitcoind客戶端,被稱之為Wormhole客戶端。運行Wormhole客戶端的節點就能夠識別出OP_RETURN Wormhole協議 。
安全和共識規則
Wormhole Cash 的安全有兩層保護。
第一層是Bitcoin Cash的交易安全,Bitcoin Cash采用POW的挖礦算法作為去中心化的時間戳服務器,該算法已經穩定運行將近10年,UTXO模型有以下的一些好處:
·UTXO無需維護余額
·UTXO是獨立的數據記錄單位,可以提升驗證交易的速度
·UTXO模型無需關心事務問題,只關系鎖定腳本和解鎖腳本
·UTXO在處理交易的時候具有很高的性能
Wormhole協議復制了整個Bitcoin Cash中UTXO的安全模型,使用了Bitcoin Cash的去中心化時間戳服務器模型。
第二層保護是運行 Wormhole協議 的節點,不符合 Wormhole協議 的數據不會被 Wormhole協議 的節點解析,每個節點都有能力通過重新解析交易數據,計算出 Wormhole Cash 的最近的合法最終狀態。
Wormhole Cash(WHC)
Wormhole Cash(WHC)是Wormhole協議中的基礎貨幣,之所以引入WHC是因為:在 Wormhole協議 中實現智能合約的時候 Wormhole協議層 是不能控制BitcoinCash的,這樣就無法在Wormhole協議層中實現事務。而且在實現智能合約的時候需要引入Gas作為針對網絡濫?的防護措施,也需要Wormhole協議存在一種原生基礎貨幣。
WHC的生成
WHC通過燃燒生成(Proof-of-Burn)的機制生成出來的,持有BCH的?戶可以在Wormhole協議正式上線之后,給bitcoincash:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqu08dsyxz98whc 地址發送最低1個BCH來生成WHC且包含燃燒信息。如果發送的BCH數量低于1BCH或者沒有包含燃燒信息,那么將不會有任何的WHC被生成。這個燃燒生成的過程受制于BCH區塊鏈發生回滾的風險,出于安全考慮,協議約定需要在1,000個確認之后,才可以動?生成的WHC。燃燒生成的兌換比例是,每1BCH的燃燒生成100WHC。
根據已知的密碼學理論和工程實踐經驗,bitcoincash:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqu08dsyxz98whc地址是沒有人擁有私鑰的。在我們開始有關Wormhole協議的開發工作之前,也沒有人在Bitcoin Cash區塊鏈的歷史中使用過該地址。為了防范理論上存在的極端情況——未來有一種我們目前未知的方法和理論構建出了這個地址的私鑰——BCH協議可以考慮禁止這個地址的幣被轉出其于花費。當然,這并不屬于本文和本文作者需要關注的事項范圍。
WHC發行后,如果WHC形成了一個流通市場,那么有需要WHC的用戶,也可以從市場上購買到WHC。
為什么沒有考慮實現與BCH的雙向錨定呢?這個問題自從側鏈理論被提出后,無數的工程師醉心于雙向錨定問題的研究。但令人遺憾的是,目前并沒有可行的雙向錨定方法, 可以做到即安全又去中心化,還能夠有效應對區塊鏈不可避免的回滾風險。伊隆·馬斯克(Elon Musk)在討論有關星際旅行時就說,他移民去往火星,就打算待在那里不回來了。Wormhole協議實現了智能合約,具有與Bitcoin Cash較為不同的編程語言,未來還有快速演進的開發計劃。這種燃燒生成的發行方式,與星際旅行的單程票非常相似。每一聰(satoshi)被燃燒的BCH,都需要做好單程星際航行的準備,前往Wormhole定居,不再回來。燃燒生成WHC的過程是不設截止時間點的。
WHC的使用范圍
手續費常常是為了防止對網絡的濫用,或者網絡的使用超過了當前技術和區塊鏈基礎設施允許的性能瓶頸。Wormhole協議中,智能合約的運行,依靠BitcoinCash交易實現。Bitcoin Cash交易本身需要止付一定的手續費,已經可以阻遏DoS攻擊,因此我們在早期運行的Wormhole協議中,轉賬不需要支付WHC做為手續費。
需要支付WHC作為手續費的情況:
1. 新創建Token需要收1WHC的手續費。手續費會被直接燃燒掉,WHC的總供給減少。創建Token需要消耗計算資源,為了防止Wormhole節點被惡意攻擊,才收取WHC手續費
2. 大量地址轉賬。例如給所有擁有某種Token的地址都發送Token,這樣的操作需要遍歷所有的地址,因此需要支付WHC做為手續費
3. 智能合約的Gas
4. 其他事務性操作,或者其他被認定為具有DoS風險的操作類型。
Token的發行
支付了正常的BCH交易?續費和WHC創建費用之后,任何人都可以自由的在系統上創建Token。
目前,WHC協議支持3種類型的Token創建:
1. 固定Token
·創建后,創建者立即?動擁有所有Token
·不能增發,不能燃燒
·不能發起眾籌
2. 可眾籌Token
·創建后,自動進入眾籌
·創建后,創建者不擁有所有Token
·眾籌結束后,未眾籌完的Token自動轉到創建者地址
·不能增發,不能燃燒
3. 可管理Token
·創建時,Token數量為0
·不能眾籌
·可以增發,可以燃燒
Token的轉移
創建后的Token和Wormhole Cash都可以進行轉賬,1對1轉賬除支付必要的BCH交易?續費外,不需要再支付任何費用,由BCH協議決定手續費多少。
1對多轉賬需除?付必要的BCH交易手續費外,還需要支付一定的WHC?續費,以WHC計價和收取。1對多轉賬主要在Token空投的場景下使用。收取的WHC?續費將會直接燃燒掉。
Token的燃燒
手動管理的Token支持直接燃燒,燃燒之后的Token在Wormhole協議中會顯示燃燒之后的總量。
Wormhole路線圖
Wormhole協議的發展分為四個階段:Earth(初始)、Tropos(融合)、Ionize(電離)、Exophere(散逸)
Earth(初始)
Wormhole協議從Omni Layer協議分離,并在BCH上實現智能合約的解決方案,首先聚焦于去中心化通證發行管理功能的實現。
為了確保整個協議的安全,并且可以盡快上線,我們在這個階段暫時不?持了Omni Layer協議中的去中心化交易功能。
Earth階段需要完成的工作:
·Wormhole Core實現:將Token功能移植到Bitcoin ABC 0.17.2版本上,后續會隨著Bitcoin ABC的更新而更新
·發布Wormhole協議白皮書
預計完成時間2018年8?
Tropos(融合)
需要完成的?作:
·基于Wormhole協議實現的去中心化交易所協議在經過謹慎的測試之后重新上線
·Wormhole的Android錢包參考實現
·Wormhole的iOS錢包參考實現
·Wormhole的PC端錢包參考實現
預計完成時間2018年11?
Ionize(電離)
需要完成的?作:
·在Wormhole協議中實現ERC721
·開發Wormhole多語?實現SDK。為了方便開發者更加簡單的在Wormhole進行開發,我們會提供解析 Wormhole 的多語?SDK。
·Wormhole Cash的冷錢包解決方案
預計完成時間2019年1?
Exophere(散逸)
需要完成的工作:
·無需許可的智能合約。Omni Layer本身不是一種無許可創新的機制。任何新型的合約類型,都必須被合并到程序代碼之中才能夠被識別。我們會在Exophere階段,實現無許可的智能合約平臺。也就是說,在遵守維護協議安全的必要規則后,任何開發者都可以發布智能合約到網絡中運行。
·實現Plasma協議,實現擴容。我們在內部研究中,可能已經發現了一種有效的Plasma實現方法,我們在進一步研究之后將可能將其實施。與此同時,Vitalik也在Twitter上宣布他們發現了一種Plasma的實現方法,我們屆時也可以考慮采用Vitalik即將發布的實現方法。
·新一代的智能合約虛擬機。Solidity作為將智能合約這一古?概念變為實現的編程語?,受到了計算機專家的廣泛審視。近些年也有更好的想法被提出來。我們將考慮開發一些新型編程語言的虛擬機,讓最有效率、開發者基礎最廣泛的計算機語?被?于構建DApps。
預計完成時間2019年6?
總結
首先要感謝Omni Layer,他們在USDT上的廣泛應用,讓我們看到了基于BitcoinCash可以做到更多的事情。Omni協議是一套?常完整的協議實現,它完全利?了UTXO模型的特點,在不更改共識和協議的情況實現Token的管理。在我們開發的過程Omni團隊也給予了很多的幫助。同時,Omni Layer也秉承了開源運動的精神,采?了MIT許可證,是我們可以實現無許可創新的重要基礎。
智能合約的缺失一直是基于UTXO模型的公鏈的一大弱點,Wormhole協議可以在完全復?UTXO的安全可靠等特性的情況下,也可以實現智能合約,Wormhole協議將會給Bitcoin Cash帶來更多的可能性。
評論
查看更多