之前寫在語雀https://www.yuque.com/jasonzhouu/ou0kee/vpqdng拗盒,復(fù)制到這里缀台。
bloXroute 的作用就像它的名字一樣:“block router"。
它用于傳播區(qū)塊,降低區(qū)塊數(shù)據(jù)的廣播延遲。且對上層的區(qū)塊鏈沒有要求,任何區(qū)塊鏈項目都可以結(jié)合它使用嘲叔。
現(xiàn)有的問題
現(xiàn)有的很多區(qū)塊鏈項目的廣播區(qū)塊數(shù)據(jù)用的是 gossip 協(xié)議,即礦工打包出新的區(qū)塊后抽活,發(fā)送給連接的幾個節(jié)點硫戈。這些節(jié)點再發(fā)送給它們所連接的節(jié)點,就這樣一傳十下硕、十傳百的傳播丁逝。這種傳播方式非常去中心化,很難被控制或監(jiān)管梭姓。但是一個區(qū)塊需要經(jīng)過多個中間人才能到達(dá)所有其他節(jié)點霜幼,延遲比較長,全網(wǎng)達(dá)成共識需要更長時間誉尖。
?改進(jìn)方法
- 中心網(wǎng)關(guān):包括礦工在內(nèi)的節(jié)點都連接到 bloXroute 的網(wǎng)關(guān)服務(wù)器罪既,區(qū)塊和交易通過這個網(wǎng)關(guān)進(jìn)行廣播。節(jié)點在運行區(qū)塊鏈客戶端的同時铡恕,還運行一個 bloXroute 的客戶端琢感,以連接到 bloXroute 網(wǎng)關(guān)。
image.png
- cut-through block routing: 接受到區(qū)塊數(shù)據(jù)的第一個字節(jié)后探熔,就立即開始將其廣播到其他節(jié)點驹针,而不等待區(qū)塊完整下載下來并驗證通過后再廣播。這個方法之前在 Falcon (上一代的加速方案)中被應(yīng)用诀艰。
- 緩存:廣播的區(qū)塊數(shù)據(jù)包并不包含完整的交易柬甥,而只包含交易的 ID墙牌,從而減小區(qū)塊體積,加快區(qū)塊傳播速度暗甥。bloXroute 網(wǎng)關(guān)存儲著交易 ID 和對應(yīng)交易數(shù)據(jù)的映射,其他節(jié)點獲取區(qū)塊頭之后捉捅,根據(jù)其中所包含的交易 ID 索引獲取對應(yīng)的交易數(shù)據(jù)撤防。拿比特幣舉例,一筆 540 字節(jié)的交易只需要傳播 4 字節(jié)的 ID棒口,從而將第一個數(shù)據(jù)包的體積減少 100 多倍寄月。
網(wǎng)絡(luò)中立性
因為引入中心,有可能會帶來:
- discrimination:對區(qū)塊區(qū)別對待无牵。通過尋租從中牟利漾肮,或者因為政府監(jiān)管,而設(shè)置 blacklist/whitelist茎毁,故意阻攔克懊、減緩某些礦工的區(qū)塊廣播,而加快另外一個礦工的區(qū)塊廣播七蜘。
- censorship:作為審查中心谭溉,故意阻止某些交易的廣播。
- single point of failure
為了解決這些問題橡卤,所以:
- 加密區(qū)塊數(shù)據(jù):礦工發(fā)送區(qū)塊數(shù)據(jù)之前扮念,先進(jìn)行對稱加密,等區(qū)塊數(shù)據(jù)被被 bloXroute 廣播到其他節(jié)點之后碧库,再廣播密鑰柜与。
- test:區(qū)塊鏈節(jié)點定期向 bloXroute 網(wǎng)關(guān)發(fā)送數(shù)據(jù)進(jìn)行測試,因為數(shù)據(jù)是加密的嵌灰,所以 bloXroute 無法判斷哪些是測試數(shù)據(jù)弄匕,只能把測試數(shù)據(jù)也進(jìn)行廣播。區(qū)塊鏈節(jié)點可以根據(jù)測試結(jié)果伞鲫,判斷 bloXroute 是否表現(xiàn)正常粘茄。
- relay:類似 Tor 的原理,區(qū)塊數(shù)據(jù)不是直接發(fā)送給 bloXroute 網(wǎng)關(guān)秕脓,而是先傳遞給 P2P 網(wǎng)絡(luò)中的另外一個節(jié)點柒瓣,由它發(fā)送到 bloXroute 網(wǎng)關(guān),以達(dá)到隱藏 source address 的目的吠架。
盈利方式
從礦工的交易費中收取一定份額厦酬,以及發(fā)行BLXR ERC20代幣。
公司介紹
總部在芝加哥疹蛉,在以色列的特拉維夫有個 5 人團(tuán)隊,總共有 25 個員工魂仍,70%是工程師。
正在開發(fā)第一版拣挪,支持 BTC, BCH, ETH擦酌。預(yù)期今年 7 月份發(fā)布,并提供開源 API 以提供與其他區(qū)塊鏈對接菠劝,很歡迎其他區(qū)塊鏈項目跟他合作赊舶。
缺陷
- single point of failure:ISP 可以阻止 bloXroute 網(wǎng)關(guān)的運行,不過客戶端可以通過測試發(fā)現(xiàn)這種狀況赶诊,切換到傳統(tǒng)的 gossip 協(xié)議傳播笼平。
- 中心化:區(qū)塊鏈項目結(jié)合它提高 TPS 后,將提高運行全節(jié)點的成本舔痪,減少全節(jié)點數(shù)量寓调,降低作惡成本和安全性。
參考
- https://bloxroute.com/resources/ bloXroute 白皮書
- https://mp.weixin.qq.com/s/Jbi34CMsmMfnAZDczv92Fw Aleksandar Kuzmonovic 的杭州路演
- Did bloXroute Crack the Scalability Puzzle? -- Emin Gün Sirer - YouTube Emin 的線上采訪
- bloXroute: A Network for Tomorrow's Blockchain - SBC '19 - YouTube CTO 在斯坦福區(qū)塊鏈峰會的演講