我們該如何設計網絡,才能讓客戶端只需為網絡貢獻少量數據,就讓整個網絡具有很大的意義呢?
——PiperMerriam
我們很高興地宣布,Nimbus將加入以太坊基金會的“門戶網絡”團隊,作為門戶網絡的啟動客戶端之一。
一句話總結:“門戶網絡”?是一個開發中的跨客戶端項目,為的是重新構想以太坊的輕客戶端,并開發出一套可用且實用的輕客戶端體驗。
直接引用這份規范的表述:
“門戶網絡”是一個還在開發的項目,為了讓資源有限的設備也能輕量地訪問協議。
“門戶”一詞的含義是,這些網絡可以觀察到協議運行的現狀,但對核心的以太坊協議的運行又無關緊要。
門戶網絡將由一個或多個去中心化的點對點網絡組成,這些網絡共同提供暴露標準的JSON-RPCAPI所需的數據和功能.
這些網絡是經過專門設計的,為了保證參與這些客戶端只需付出最小化的網絡帶寬、CPU、RAM和機械硬盤資源即可加入。
“門戶網絡”一詞也用來描述參與這些網絡并暴露標準的JSPN-PRCAPI的軟件.
特別地,我們的目標是與EF一道,圍繞已有的以太坊協議,開發出一組新的以太坊協議,能專門服務于這種獲取以太坊數據的新方法。
多鏈Web3基礎設施Dmail集成Conflux eSpac:金色財經報道,基于多鏈部署的Web3基礎設施Dmail宣布集成Conflux eSpace,支持Conflux用戶登錄Dmail并收發Web3加密郵件,同時為Conflux團隊和社區提供Web3企業模塊化服務:跨鏈DID加密通信、DID Launchpad、用戶管理系統、忠誠積分系統、Web3郵件營銷AI-助手。
據悉,Dmail已支持Ethereum,BNB Chain,Conflux eSpace,KuCoin Community Chain(KCC),Polygon,Dfinity等網絡的集成登錄,目前鏈上注冊賬號已突破155,000個。[2023/3/23 13:21:25]
總體目標是為以太坊提供一個操作模式,能夠服務于常見的使用模式,而不是實時追蹤完整的狀態。
我們正在討論要開發的是一個用于錢包的完美客戶端,一個極輕客戶端,可以給網絡作貢獻,但又不要求同步區塊鏈。
這也沒有聽起來那么困難。我想象大部分錢包都直接嵌入輕客戶端,比如?@ethstatus?將集成一個?@ethnimbus?輕客戶端。所以可能出現這樣一種情況:大部分用戶都在不知不覺中就開始運行輕客戶端了。
3D NFT項目Fluf World交易額突破1億美元:金色財經報道,2月16日,據最新數據顯示,3D NFT項目Fluf World交易額突破1億美元,創下歷史新高,本文撰寫時為100,430,216美元,交易量為18,274筆。FLUF World 擁有 10,000 只獨特的 3D 動畫兔子,是從 14 個類別的 270 個屬性以編程方式生成的,至少有三個分離度是完全唯一的。這也不包括他們的表情、舞蹈、場景和配樂。所有者可以下載 MP4、GIF 和 PNG 格式的 FLUF。[2022/2/16 9:54:34]
May24,2021
因此,我們的一個最終目標是,將這種客戶端直接敲入到Statusapp中。
它有潛力能提升我們用戶的安全性和隱私性,同時提高以太坊的可靠性,因為更多用戶可以為網絡的健康作貢獻。
背景
門戶網絡根植于開發者PiperMerriam以及Trinity團隊的初始目標:在現有的網絡上開發一個輕量級的客戶端。它的誕生是因為他們意識到了,現有的網絡對于他們所設想的客戶端類型來說不夠靈活。
用Piper的話來說:
當我們開始開發Trinity客戶端時,我們的目標是開發一個輕量級的客戶端。但花了接近三年時間深入了解協議、探索開發我們所設想的客戶端的途徑之后,我們最終得出一個結論:它在現有的網絡上是做不出來的。
Conflux與去中心化交易所Pancake達成戰略合作:據官方消息,Conflux已與去中心化交易所Pancake達成戰略合作伙伴關系。PancakeSwap將于區塊高度:7970400(北京時間6月3日下午5點)正式上線bCFX,在新的糖漿池(SyrupPool)開啟bCFX流動性挖礦活動。用戶可在PancakeSwap上提供bCFX-BUSD流動性獲取CAKE,也可以抵押CAKE直接獲取bCFX獎勵。[2021/6/3 23:07:55]
這就是門戶網絡的初衷。我們要回到我們想要的客戶端形態,然后設計出其運行所必需的網絡功能。
Trinity客戶端不會再開發下去了,我們正在開發一個獨立的門戶客戶端,叫做“Trin”,用Rust語言編寫,將是門戶網絡的啟動客戶端之一。
動機
現有的DevP2PLES網絡在設計上采用了客戶端/服務器架構,輕客戶端作為客戶端,而全節點作為服務器端。
因為這種架構把所有的負載都交給全節點來承擔,而全節點的運營成本已經很高了,所以節點運營者就不愿意打開這個功能。
所以,雖然當前的網絡設計很好地實現了其初始目標,但從輕客戶端的視角來看,它是嚴重的失敗。
借貸協議Liquity:Fluity在BSC分叉Liquity,LQTY持有者將獲得FLTY供應量的25%:DeFi借貸協議Liquity Protocol表示,Fluity Finance在BSC分叉Liquity,LQTY持有者將獲得Fluity Token(FLTY)供應量的25%。Liquity提醒稱,Liquity對Fluity沒有任何監督,用戶在與未經審計的智能合約交互時應謹慎。[2021/5/8 21:37:07]
我們如何解決這個問題呢?就像Piper的Trinity團隊發現的那樣,現實表明這個問題沒有簡單的解決方案。現有的網絡不夠靈活,無法做出高效的輕客戶端設計。
修復這個問題需要我們回到一張白紙,重新設計協議的核心。
設計
一個輕客戶端友好的網絡,必須設計得節點只需付出少量存儲空間、少許工作量,就能參與網絡并為網絡做貢獻,而不是要求每個節點都必須承擔很高的負載。
換句話來說,這樣一個網絡必須允許輕客戶端在實際上為網絡做出貢獻,使得每當有額外的客戶端加入網絡,都會增強網絡的容量。
具體來說,這意味著要提出一種網絡設計,可以減少你的偶發請求的數據的驗證開銷,并降低在網絡中傳遞消息的基本開銷。
動態 | 公鏈項目Conflux與ChainLink建立戰略合作關系:公鏈項目Conflux宣布將與ChainLink建立戰略合作關系。Chainlink是一個公共的、去中心化的oracle網絡,可以快速、安全地連接智能合約。Chainlink目前通過其oracle與谷歌、SWIFT、Kaleido和Polkadot合作。(CryptoDaily)[2020/1/21]
門戶網絡的目標是通過將以太坊協議的整體結構為三個獨立的網絡:Gossip狀態以及歷史,來實現這一點;最開始的開發重心是狀態網絡。
這些網絡將與ETH協議共存——但不像ETH協議,它們不必是完全無懈可擊的,但它們需要能?幾乎?不間斷工作。
愿望是這些新的網絡,可以隨著時間的推移,與現有的網絡更加緊密地結合在一起。舉個例子,我們可以設想這樣一個世界:全功能客戶端可以使用歷史門戶網絡來為節點運營者提供額外的選擇,僅存儲他們關心的歷史而不是整條區塊鏈。狀態數據也是如此。
總而言之,這個模塊化的架構——其中數據以P2P的模式來分享,而事務和區塊則靠gossip來傳播——使得輕客戶端可以自己選擇存儲/服務多少狀態數據和歷史數據。
當他們需要訪問本地沒有的數據時,他們可以在相關網絡提出adhoc請求。
JSONRPC備注
借用Piper的精彩文章“設計可用的輕客戶端part1”:大部分錢包,包括我們的,在?JSONRPC?API上都是標準化的.
Status錢包的正確運行需要下列?JSONRPC?端點:
eth_blockNumber?用于跟蹤鏈的頂端
eth_getBalance?以及?eth_getTransactionCount用于獲得賬戶信息
eth_call?用于讀取合約信息
eth_estimateGas?以及?eth_gasPrice?用于估計gas費
eth_sendRawTransaction?用于發送用戶的交易
eth_getTransactionReceipt?在交易上鏈后獲取回執
如果我們進一步梳理實現錢包功能的必要組件,我們可以得到如下更底層的需求:
訪問賬戶以及合約存儲項,以支持:eth_call、eth_estimateGas、eth_getBalance?以及?eth_getTransactionCount
訪問gossip網絡以跟蹤鏈的頂端以及?eth_sendRawTransaction
訪問鏈的歷史,用于?eth_getTransactionReceipt
若可開啟對狀態、Gossip和歷史的輕量級訪問,門戶網絡就打開了可嵌入錢包的輕客戶端的大門,它們可以滿足這些需求,而且不需要同步區塊鏈,也不必犧牲隱私性和安全性。
這對現狀來說是個很大的提升,現在我們不得不依賴于Infura來發起確定的JSONPRC調用并發送交易——無法訪問狀態,我們就無法服務大部分JSONPRCAPI,也無法發送交易,因為我們無法參與交易gossip。
項目現狀
我們已經開始為Nimbus開發一種操作模式,一開始命名為?nlpn?,但現在重命名為?fluffy?,會與以太坊1的客戶端同時存在、運行。
fluffy?將使?nimbus-eth1?客戶端可以作為網絡中的一個極輕客戶端節點來運行。
初步的工作是開發?PortalWire協議,這是一個建立在NodeDiscoveryv5.1協議基礎上的次級協議。
我們已經實現了對該協議的基本支持,并且幾周以前,我們就已成功實現了與其它客戶端的握手,包括?ddht客戶端和Trin客戶端。
下一步
下一步是通過PortalWire協議來傳輸數據。我們正在處理狀態數據。
這需要“橋節點”為門戶網絡輸入狀態數據。當前的措施是使用一個Nethermind客戶端插件作為定制化?JSON-PRC?API來給愿意充當橋節點的門戶節點提供數據。這一工作已經開始。
最終我們的極輕客戶端將支持以太坊?JSON-PRC?API的一個子集,所以錢包可以直接集成這種客戶端。
資源
Nimbus門戶網絡客戶端可以在我們的nimbus-eth1代碼庫中找到:?https://github.com/status-im/nimbus-eth1/tree/master/fluffy
PortalWire協議已加入?nim-eth?代碼庫,作為節點發現協議v5.1的次級協議:https://github.com/status-im/nim-eth
規范:https://github.com/ethereum/stateless-ethereum-specs/
網站:https://www.ethportal.net/
一些有關與ddht和trin的第一次PortalWire協議測試的資料:https://gist.github.com/kdeme/36795f5deae7d02ce1785e9c7d501e53
PiperMerriam撰寫的系列博文:Thewindingroadtofunctionallightclients
有關這個主題的一個視頻演講
注:方便的是,所有實現功能性輕客戶端所必須的基礎設施也會自然延伸到無狀態客戶端上,所以會跟無狀態以太坊有很多交叉。實際上,讓無狀態客戶端能夠服務于絕大部分?JSON-PRC?API是門戶網絡的諸多動機中最核心的一個。
NFT是今年藝術界炙手可熱的新“玩意”,無論是近期推特官方賬號免費給用戶送TwitteNFT,還是互聯網之父TimBerners-Lee編寫的萬維網原始源代碼的NFT以540萬美元售出.
1900/1/1 0:00:00關于SLOB延遲上線的公告 尊敬的用戶: 為配合項目方整體規劃的需求,DiBiGlobal交易平臺將延遲SLOB上線時間.
1900/1/1 0:00:00尊敬的ZT用戶:根據BitcoinCashABC項目公告,BitcoinCashABC將于7月1日正式更名為eCASH,代幣名稱由BCHA更改為XEC,且按照1BCHA=1,000.
1900/1/1 0:00:00親愛的KuCoin用戶:我們很高興的宣布,KuCoin將上線BarnBridge(BOND)項目并支持交易對BOND/USDT.
1900/1/1 0:00:00尊敬的LOEx用戶:ONG錢包服務升級,LOEx國際站現已暫停ONG充提幣通道,開放時間將以公告另行通知.
1900/1/1 0:00:00跨界動態 圣馬力諾共和國宣布發布基于唯鏈區塊鏈的國家級數字疫苗護照,并采用鏈上NFT技術保障證書獨一無二性.
1900/1/1 0:00:00