最近bch開發團隊bitcoin abc在11月份的bch公升級更改中表示要推出交易規範排序(canonical transaction ordering,簡稱ctor)。但是針對這一點,bch社群並沒有完全支援。bch算力最大的礦池coingeek對此就表示反對。
jonathan toomim撰寫了一篇文章,關於為何推崇交易規範排序這一決定的原因。以下是對其觀點,以及為何ctor具有優勢的總結。同時,我們也提供了joannes vermorel關於交易排序的文章作為參考。
由於位元幣現金交易的構成以及雜湊方式,乙個有向無迴路的圖被生成,且子交易會消費母交易的結果。儘管可以在區塊交易中使用拓撲排序(topological ordering, 簡稱ttor,這也是位元幣現金在區塊中目前的交易排序),但是它是既不有效,也不優雅的排序交易的方式。因此,從ttor轉化使用ctor具有以下優勢:
1、ctor比ttor實現起來更簡單。ttor的複雜性在於必須在排序子元素前必須排序母元素。
2、礦工不再需要發現有效的排序了。大約70%的區塊模版的生成時間在用於因為排序規定造成的child-pays-for-parent(cpfp)**。除去這一步驟可用大大增加效能。
3、不需要擔心由於區塊驗證所需的中間態。這可以保證區塊驗證可以完全平行化。舉個例子,以太坊不能規模化就是因為遭受過多數量的中間態。
4、由於節點只需要傳送其記憶體池和最近發布的區塊的差別,編碼和傳送區塊變得更簡單。這是得益於graphene,其和ctor一起使用更加有效。
5、ctor可減少系統複雜性,並且排除了攻擊者發布乙個排序數量眾多的區塊來減慢驗證,以此惡意攻擊的可能。
因此,bitcoin abc認為ctor比ttor更優,並且值得實現。位元幣現金的將來可以大大得益於目前減少其複雜性的工作。
但是針對ctor,一位reddit名為/u/awemany並不同意這些觀點。因此他發表了一篇經過深思熟慮的文章,闡述了為什麼ctor還沒有準備好成為最佳解決方案。他認為ctor對於實際改善網路並沒有太大作用,最終可能是倒退。他斷言,ctor忽略了為什麼按照它們的方式排序區塊的主要原因,並且ctor開發人員提出的解決方案沒有解決他們打算解決的問題。
awemany指出,「[交易]顯然不會因為意外而像這樣排序,因為它是自然順序,所以它們是這樣排序的。這是生成交易的順序......「他進一步指出,作者放棄了解當前的拓撲交易排序規則(ttor),並說:」自然順序的成功傳播伴隨著成功驗證網路的自然秩序。當交易進入mempool時,可以及時驗證它們是否符合所需的、特定於事務的規則。「
coingeek之所以反對ctor是因為他們認為目前不能夠確定ttor對區塊的擴充套件有阻礙,ctor並不是恢復原有位元幣協議的共識變更。coingeek曾表示將繼續只支援恢復原始位元幣協議共識的更改,以及那些被證明為了實現大規模鏈上擴充套件到tb級區塊目標必須要更改的協議。
綜上所述,ctor確實比ttor更好更簡單,但是是否擁有共識,是否應該被採用還需要更深入的討論,
關於網路交易
以整合 發布 經營商業資訊而聞名於全國的國內某著名 日前為網路使用者提供了一種新的服務,此服務的內容是為網路使用者提供了一種特別安全的網上交易付款途徑,其運作的實質是以此 旗下某公司為信用中介,在買家確認收到商品前,替買賣雙方暫時保管貨款的一種增值服務。這種第三方的網路支付行為,可以為網路使用者有效...
關於前端規範
乙個規範性強的 便於修改和理解,所以做出如下總結,希望少走彎路 基礎內容,大神請繞道.1.命名規範 命名一定要有意義,畢竟 寫下來不是給你乙個人看的,在css中,在前面寫上父元素進行規範,不要偷懶 2.請不要一會寫原生,一會寫jquery 這個問題好多人覺得我寫出功能來不就行了,但是頁面被弄的亂七八...
關於命名規範
一 常用命令命名方法 小駝峰法標識。駝峰法的意思是 除第乙個單詞之外,其他單詞首字母大寫。譬如 int mystudentcount 變數mystudentcount第乙個單詞是全部小寫,後面的單詞首字母大寫。pascal法 大駝峰法 相比小駝峰法,大駝峰法把第乙個單詞的首字母也大寫了。常用於類名,...