BCH的to da moon之路——初具成效的石墨烯和CTOR

BCH的to da moon之路——初具成效的石墨烯和CTOR

CTOR(規(guī)范交易排序)是BCH在2018年11月硬分叉升級(jí)的一項(xiàng)內(nèi)容。最初因?yàn)檫@項(xiàng)內(nèi)容引發(fā)了廣泛的討論,提到CTOR必須提到石墨烯技術(shù)(Graphene協(xié)議),支持者認(rèn)為CTOR能夠有效的配合石墨烯技術(shù)壓縮區(qū)塊大小,優(yōu)化區(qū)塊傳播,有明顯的優(yōu)勢(shì),沒(méi)有明顯的缺點(diǎn)。反對(duì)者則認(rèn)為現(xiàn)有的TTOR(拓?fù)浣灰着判?穩(wěn)定運(yùn)行多年,更加安全,沒(méi)有什么明顯的劣勢(shì),而CTOR則會(huì)帶來(lái)未知風(fēng)險(xiǎn),且沒(méi)有明顯的作用。CTOR的爭(zhēng)鋒不斷升級(jí),甚至后來(lái)爆發(fā)的算力戰(zhàn)也有關(guān)于CTOR的爭(zhēng)鋒,不過(guò)最終CTOR還是成功應(yīng)用在BCH上。如今已將近半年,石墨烯怎么樣了?CTOR究竟有沒(méi)有作用呢?

礦工之痛

礦工希望能夠提升區(qū)塊傳播到各個(gè)節(jié)點(diǎn)的效率,每一秒的延遲都會(huì)降低他們獲得區(qū)塊獎(jiǎng)勵(lì)和手續(xù)費(fèi)的幾率。而每一個(gè)打包區(qū)塊里的交易數(shù)量都會(huì)增加區(qū)塊體積,區(qū)塊越大則占用帶寬越多,則傳播效率越低,為了獲得區(qū)塊獎(jiǎng)勵(lì),礦工不得不限制區(qū)塊里的交易數(shù)量,或者收取更高的交易費(fèi)來(lái)彌補(bǔ)他們降低的成功率。不得不說(shuō)這是一種極其低效的行為,所以長(zhǎng)久以來(lái)很多研究都就“如何在盡可能小的寬帶條件下實(shí)現(xiàn)區(qū)塊傳播”這一課題展開(kāi)了深入的探討。簡(jiǎn)而言之,占用的寬帶越小,則傳播的速率就越快。隨后致密區(qū)塊、極瘦區(qū)塊都相繼被提出,但目前為止,效果最好也最被看好的是石墨烯技術(shù),是公認(rèn)的寬帶占用最少的方案來(lái)完成區(qū)塊傳播。

石墨烯和CTOR運(yùn)行原理

當(dāng)用戶(hù)進(jìn)行交易時(shí),包含這筆交易的信息的區(qū)塊會(huì)在全網(wǎng)所有的節(jié)點(diǎn)進(jìn)行傳播,最終同步至所有節(jié)點(diǎn)。在這一過(guò)程中,所有未經(jīng)處理的交易都會(huì)存儲(chǔ)在內(nèi)存當(dāng)中并被統(tǒng)稱(chēng)為mempool。通常情況下,該交易會(huì)在10分鐘內(nèi)被寫(xiě)入在一個(gè)區(qū)塊中,在這種情況下,該交易被視為有效并且已經(jīng)由網(wǎng)絡(luò)處理。

如果一個(gè)節(jié)點(diǎn)需要傳播一個(gè)區(qū)塊上的所有交易,那么它將有如下選擇:一是傳遞包含所有交易的整個(gè)區(qū)塊,這也是過(guò)去比特幣一直所采用的方法;二是為區(qū)塊中的所有交易及其次序傳遞標(biāo)識(shí)符,以便接收到標(biāo)識(shí)符的節(jié)點(diǎn)能夠基于mempool中已有的交易來(lái)構(gòu)建區(qū)塊。顯然易見(jiàn)的是,第二種方式更有效率,石墨烯正是借助這種方式來(lái)減少區(qū)塊傳播所需的帶寬。

使用石墨烯技術(shù)還原新區(qū)塊的節(jié)點(diǎn)往往會(huì)構(gòu)建兩個(gè)數(shù)據(jù)結(jié)構(gòu):首先,它會(huì)構(gòu)造一個(gè)包含區(qū)塊中的所有交易的布隆過(guò)濾器;其次,它構(gòu)建包含區(qū)塊中的所有交易的IBLT(即可逆的布隆查找表)。隨后,這些不附帶整個(gè)節(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)都會(huì)被發(fā)送到各個(gè)節(jié)點(diǎn)上。接收這些數(shù)據(jù)結(jié)構(gòu)的節(jié)點(diǎn)將通過(guò)布隆過(guò)濾器傳遞mempool中的所有交易,從而提供區(qū)塊中所有交易的列表。然而,由于布隆過(guò)濾器可能存在一定的誤報(bào)率,因此列表中的交易可能會(huì)多于實(shí)際數(shù)量,也可能會(huì)遺漏mempool中的交易。考慮到這一隱患,接收數(shù)據(jù)結(jié)構(gòu)的節(jié)點(diǎn)將會(huì)從IBLT中解壓縮待處理的交易,從而識(shí)別任何誤報(bào)或遺漏的交易。最后,接收數(shù)據(jù)結(jié)構(gòu)的節(jié)點(diǎn)還會(huì)在必要的情況下向其它節(jié)點(diǎn)查詢(xún)遺漏的交易。

通過(guò)Graphene協(xié)議的這兩個(gè)數(shù)據(jù)結(jié)構(gòu)足以恢復(fù)區(qū)塊中的所有交易信息,那么,接下來(lái)的步驟就是將還原的交易回歸到正確的順序了。第一個(gè)版本的Graphene協(xié)議會(huì)通過(guò)布隆過(guò)濾器和IBLT來(lái)傳遞有關(guān)順序的交易信息。雖然這些信息占用的寬帶并不大,但還是會(huì)隨著區(qū)塊中的交易數(shù)量的增加而增加。而CTOR是作用是使區(qū)塊按照既定規(guī)范順序進(jìn)行交易,自從以后,借助Graphene協(xié)議進(jìn)行的區(qū)塊傳播可以不包含順序信息。此舉進(jìn)一步強(qiáng)化了石墨烯技術(shù)的優(yōu)勢(shì)——區(qū)塊可以變得極大,而布隆過(guò)濾器和IBLT卻可以維持極小的狀態(tài)。

石墨烯取得初步成效

就在幾天之前,致力于合作開(kāi)發(fā)石墨烯技術(shù)的馬薩諸塞州立大學(xué)的團(tuán)隊(duì)與Bitcoin Unlimited在reddit/BTC板塊發(fā)布了關(guān)于石墨烯技術(shù)的最新進(jìn)展,對(duì)此我們也及時(shí)發(fā)布了文章同步動(dòng)態(tài),感興趣的同學(xué)可以翻閱前文。團(tuán)隊(duì)表示石墨烯技術(shù)第一階段的開(kāi)發(fā)任務(wù)——引入了各種安全性和性能的改進(jìn)已經(jīng)完成,石墨烯技術(shù)開(kāi)發(fā)工作已經(jīng)完成了一半,第二階段也是最后階段的開(kāi)發(fā)任務(wù)——實(shí)現(xiàn)了故障恢復(fù)和mempool同步將在兩個(gè)月內(nèi)開(kāi)始。

團(tuán)隊(duì)也公布了開(kāi)發(fā)成果,故障率大幅下降,在連續(xù)500個(gè)區(qū)塊的測(cè)試中只有2次解碼失敗,4次丟失交易,在完成第二階段后將徹底修復(fù)這一漏洞。而壓縮區(qū)塊的作用極其成功,平均壓縮率高達(dá)99.5%,而超過(guò)1000筆TX的區(qū)塊平均壓縮率高達(dá)99.8%。

CTOR有沒(méi)有用?

石墨烯的開(kāi)發(fā)報(bào)告引起了社區(qū)的廣泛討論,其中很多人特別好奇的是關(guān)于CTOR的采用。對(duì)此,石墨烯團(tuán)隊(duì)專(zhuān)門(mén)發(fā)表了關(guān)于CTOR采用情況的報(bào)告。

報(bào)告顯示,從BU客戶(hù)端1.6.0版本開(kāi)始,石墨烯默認(rèn)使用CTOR,不需要再發(fā)送順序信息。開(kāi)發(fā)者進(jìn)行一項(xiàng)單獨(dú)的實(shí)驗(yàn):

從區(qū)塊000000000000000002b18e2235e5ae3f62abb4be1bd6e933bafd47899c2ab721開(kāi)始,在主網(wǎng)上運(yùn)行了兩個(gè)不同的BU節(jié)點(diǎn)。一個(gè)為使用CTOR的版本,一個(gè)為不使用CTOR的版本。共有533個(gè)區(qū)塊,其中13個(gè)區(qū)塊的交易量超過(guò)1K。壓縮率計(jì)算為1-g / f,其中g(shù)和f分別是石墨烯和完整塊的字節(jié)大小。

with_ctor:

總體最佳壓縮:0.9988310929281122

平均壓縮(所有塊):0.9622354472957148

中值壓縮(所有塊):0.9887816917208885

平均壓縮(塊> 1K tx):0.9964066061006223

中值壓縮(塊> 1K tx):0.9976625137327318

no_ctor:

總體最佳壓縮:0.9960665539078787

平均壓縮(所有塊):0.9595203105258268

中值壓縮(所有塊):0.9855845466339916

平均壓縮(塊> 1K tx):0.9915431691098592

中值壓縮(塊> 1K tx):0.9929303640862496

使用with_ctor over no_ctor,對(duì)所有塊的中值壓縮的改進(jìn)相當(dāng)于區(qū)塊大小減少約21%。對(duì)于交易量超過(guò)1K的區(qū)塊,區(qū)塊大小減少約71%。因此我們可以看到with_ctor比no_ctor實(shí)現(xiàn)更好的壓縮。CTOR對(duì)壓縮的提升尤其是對(duì)于超過(guò)1K筆交易的區(qū)塊來(lái)說(shuō)非常重要的。這可能也解釋了為什么在BCH壓力測(cè)試期間報(bào)告里順序信息占了石墨烯區(qū)塊尺寸的大部分,在報(bào)告里順序信息平均達(dá)到了37.03KB,但在這次的實(shí)驗(yàn)里,只有321.37B,這足以顯示CTOR的巨大作用。

BCH正在實(shí)現(xiàn)技術(shù)領(lǐng)先

石墨烯和CTOR的階段性成功都顯示了BCH開(kāi)發(fā)組的強(qiáng)大力量,當(dāng)然目前位置石墨烯還不是成熟的技術(shù),仍需開(kāi)發(fā)者繼續(xù)努力,但從開(kāi)發(fā)速度來(lái)看,石墨烯將會(huì)提前與我們見(jiàn)面的時(shí)間。

在目前的擴(kuò)容方案中,閃電網(wǎng)絡(luò)仍然仍然仍然(重要的事情說(shuō)三遍)處于測(cè)試中,最新消息BTC未確認(rèn)交易再次高達(dá)5萬(wàn)筆,交易確認(rèn)緩慢,提現(xiàn)轉(zhuǎn)賬都受到了較大影響,二層網(wǎng)絡(luò)擴(kuò)容之路渺茫無(wú)期;或許是為了特意彰顯128M的容量,BSV習(xí)慣性攢巨塊,最近又爆出6個(gè)區(qū)塊深度重組的丑聞,網(wǎng)絡(luò)安全穩(wěn)定受到質(zhì)疑,交易所紛紛下架,前途堪憂(yōu)。

在5月份的硬分叉升級(jí)中,BCH將領(lǐng)先BTC先一步上線成熟技術(shù)Schnorr簽名,在此之后BCH的領(lǐng)先地位將進(jìn)一步加強(qiáng)。

極客網(wǎng)企業(yè)會(huì)員

免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書(shū)面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。

2019-04-25
BCH的to da moon之路——初具成效的石墨烯和CTOR
CTOR(規(guī)范交易排序)是BCH在2018年11月硬分叉升級(jí)的一項(xiàng)內(nèi)容。

長(zhǎng)按掃碼 閱讀全文