我們今天發表的一篇短論文介紹了NEAR協議所采用的隨機信標。佐餐食用的本博文將著重討論隨機性的重要意義、實現難度以及其它協議的實現路徑。
包括NEAR在內的諸多新型區塊鏈協議都高度依賴于隨機性,以抉擇由哪些成員執行協議中的特定操作。如果惡意攻擊者能影響隨機源,他們就有機會增加自己被選中的概率,最終威脅協議的安全性。
分布式隨機性同樣也是眾多區塊鏈應用的重要基石。舉例來說,假如某個智能合約接受用戶的賭約,規則為無偏倚地產生一個隨機數,據此以49%的概率返還兩倍押注,51%的概率沒收賭資。如果惡意攻擊者可以影響或者預測該隨機數,他們就能旱澇保收,并很快搬完合約中所有的資金。
在設計分布式隨機性算法時,我們希望它具備以下屬性:
算法必須公正無偏。換言之,不允許有任何參與者能絲毫影響隨機數生成器的結果。
算法無法被預測。即在隨機數生成之前,所有的參與者都不知道會生成什么樣的結果。
協議需要具備在某些節點掉線時仍保持正常運行的容錯能力,即使有節點故意阻礙協議,也可以繼續運行。
本文將介紹分布式隨機信標的基礎知識,說明為何樸素的技術方案無法達成效果。在最后,我們將介紹DFinity、EthereumSerenity以及NEAR協議所采用的隨機信標方案,并逐一剖析其優越性與不足之處。
美國說唱歌手Megan Thee Stallion與Cash App合作發布比特幣科普視頻:美國說唱歌手Megan Thee Stallion與由Square開發的移動支付服務Cash App合作發布了一段名為“Bitcoin for Hotties”的視頻。該視頻從她的角度解釋了什么是比特幣,為什么比特幣有價值等內容。Megan Thee Stallion在Instagram上擁有超過2410萬粉絲,在 Twitter上擁有640萬粉絲。(Bitcoin News)[2021/8/8 1:41:10]
RANDAO
RANDAO非常簡單,因此也是一個十分常見的隨機性實現方案。其大致思想是網絡中的所有人首先各自私下選定某個隨機數,然后向RANDAO提交該隨機數的承諾,接著所有人根據一定的共識算法從所有的承諾中選定一組;在參與者揭示這組承諾背后的隨機數之后,大家對該組隨機數達成共識;最后這組隨機數進行異或操作得到的結果就是一輪RANDO協議產生的隨機數。
RANDO的做法的確讓隨機數難以預測,并且隨機數享有與底層共識協議一樣的活性,但仍有可以鉆空子的地方。比方說,惡意攻擊者看到網絡中所有其他人揭露各自所選取的隨機數之后,可以根據自身隨機數先執行異或運算,并根據結果對自己的利弊來決定是否要揭露自己的隨機數。這種設計使得單個攻擊者就能對輸出造成一定的影響,同時隨著攻擊方所控制的參與者數目增多,他們的破壞性也隨之增強。
火幣推出《一分鐘讀懂DeFi》系列科普視頻:據官方消息,8月24日,火幣推出《一分鐘讀懂DeFi》系列科普視頻,并與微博財經合作冠名播出,布道DeFi認知,助力行業發展《一分鐘讀懂DeFi》是由火幣成長學院打造的業內首個系統全面講解DeFi的系列科普動畫,繼推出《區塊鏈100問》后的再續佳作。《一分鐘讀懂DeFi》系列動畫對DeFi的發展進行系統梳理,適合想要由淺入深、全面系統了解區塊鏈DeFi的人們輕松了解DeFi。目前視頻已由火幣網官方微博發布。[2020/8/24]
RANDAOVDFs
要增強RANDAO的公平性,其中一種辦法是替換掉最后的那個異或計算,將其改變為執行時間必定長于各方隨機數揭露等待期的操作。如果計算最終結果的時間比隨機數揭露等待期要長,那么惡意攻擊者就無法預先知道自身隨機數揭露與否能給自己帶來好處,因此理論上就無法影響最終結果的屬性了。
雖然需要有一個函數來拖延參與者生成最終結果的時間,但不能因此讓隨機數用戶也耗費巨大的開銷去驗證所生成的隨機數。因此,理想函數應該能讓用戶輕易驗證系統生成的隨機數,而無需重復之前的計算開銷。
上述既需要長時間來計算,同時能輕易驗證計算結果,并且對每一個輸入都有著獨一無二輸出的函數正是可驗證延遲函數,設計一個這樣函數的工作委實艱巨。近來這一領域已經有所突破,比如這個和這個已經可以應用,當前以太坊就計劃應用RANDAO和VDF來作為其隨機性信標。除此之外,由于這種策略所具備的不可預測性和無偏見性,使得系統甚至能在僅有兩個參與者在線的情況下依然具備活性。
聲音 | CNBC主持人:加密貨幣最大的缺點之一就是難以向外行快速科普:CNBC主持人Ran NeuNer近期發推稱,加密貨幣最大的缺點之一就是很難向外行快速解釋。當人們要求我向他們解釋比特幣時,我知道他們至少需要一個小時才能真正理解。[2019/9/10]
VDF雖好,但目前的最大挑戰在于函數需要足夠健壯,即使某些別有用心者花大價錢配置定制化硬件設備,也無法在揭露等待期結束之前計算出最終結果,理想情況是函數具備有足夠威懾力的安全邊際,例如延遲時間較揭露等待期拖長10倍。下圖展示了系統中參與者采用定制化ASIC設備所發起的一次攻擊,攻擊者能夠在各方揭露RANDAO承諾之前計算出最終會輸出的隨機數。攻擊者依然能根據計算得到的隨機數結果,以及最終結果對自身收益的利害關系,自主決定是否要揭露所掌握的隨機數。
和VDF家族關聯的特制ASIC設備會比傳統硬件的計算速度快100倍。因此,如果揭露等待期耗時10秒,同時為了達成理想的10倍安全邊際,需要保證ASIC設備至少花100秒才計算出最終結果,由此換算到普通硬件設備上則需100x100秒,即約3個小時來得到輸出結果。
針對這一問題,以太坊基金會的做法是設計自己的ASIC設備并開源。一旦上述設想落地,以太坊之外的其它協議也能把真正的隨機數用起來了。不給過在那個時刻到來之前,無力投資研發自己ASIC設備的協議們還是沒法應用RANDAOVDF的解決方案。
動態 | 浙江衛視節目科普支付寶區塊鏈防偽溯源產品:昨日,在浙江衛視播出的科普綜藝欄目《智造將來》現場,支付寶首次展示了支付寶區塊鏈防偽溯源產品,以接地氣的方式公開向大眾展示區塊鏈在生活中的應用。[2019/3/4]
這個網站收錄了許多關于VDF的文章、視頻以及其它資訊。
門限簽名
Dfinity團隊正倡導并研究的的門限BLS簽名是隨機性的又一實現方案。
BLS簽名用于多方對一則消息構建一條聚合簽名,由于無需額外的簽名通信,因此常用于節省空間和帶寬。在區塊鏈里,BFT共識協議的區塊簽名通常就使用BLS簽名。例如在一個有100個節點的區塊鏈系統中,當其中的67個節點都對某個區塊進行了簽名時,就可以認定這個區塊已經上鏈。每一個節點都可以提交自己那片BLS簽名,系統根據某些共識算法選出其中67片簽名來聚合成一條BLS簽名。雖然任意67片簽名都能組成一條聚合簽名,但不同的簽名輸入不會聚合成相同的BLS簽名。
其實如果系統中參與者持有的私鑰是通過某種特殊方式生成的,那無論選擇哪67片簽名,都能輸出一樣的聚合簽名。這種特性可以用來產生隨機性:系統中參與者首先對某則他們未來會進行簽名的信息達成一致,然后就此產生一個聚合簽名。在67個參與者揭露自身簽名之前,沒有人能預測輸出結果,同時由于大家在第一片簽名披露之前就認定完了輸出結果,因此任何參與者都無法再對輸出產生影響。
財政部副部長朱光耀:數字經濟還處在發展的過程中,要以科普、推動的態度來推進數字經濟發展:今日,在中國發展高層論壇2018年會上,財政部副部長朱光耀表示:“數字經濟還處在發展的過程中,要以科普、推動的態度來推進數字經濟發展。也要關注數字經濟的其他影響,包括稅收征管、反洗錢監管措施等要跟上。”[2018/3/25]
上述隨機性實現方案具備無偏見性和不可預測性,只要網絡中有2/3參與者在線就能維持運行。即使1/3的節點掉線或篡謀發起攻擊,他們也只能讓系統停滯,因為要想對最終結果產生影響,需要至少2/3的節點。
看起來一切都很完美,但是,依然有一個但是。前文我曾提及私鑰需要按某種特殊方式生成,這種被稱為分布式密鑰生成的技術事實上十分復雜并且仍處于探索階段。在最近的一些公開演講中,Dfinity提出了使用zk-SNARKs來實現DKG,但是zk-SNARKs十分復雜,并且這種構造方法還沒有經過時間檢驗。總的來說,門限簽名和DKG技術尚未發展到能落地應用的階段。
RandShare
目前為止,NEAR受到的最大影響來自于另一種算法:RandShare。
RandShare是一個無偏見且不可預測的協議,支持1/3惡意節點容錯。其速度相對較慢,在對應論文中雖然提到了RandHound和RandHerd兩種加速方法,然而和RandShare本身相比還是太過復雜,我們想要的理想協議應該簡潔優美。
除了較大的通信壓力,RandShare面臨的另一個問題在于雖然1/3的容錯門限能保證協議在應用中的活性,但這個門限難以震懾別有用心者對輸出結果發起攻擊。具體原因有以下幾點:
攻擊輸出結果所帶來的收益要遠遠大于拖滯隨機數生成帶來的收益。
如果某一方控制了RandShare中超過1/3的節點并試圖操縱輸出結果,這種攻擊甚至不會留下任何痕跡。與光天化日之下拖滯隨機數生成相比,操縱輸出結果根本就是悶聲發大財。
從現實考量,某勢力操縱超過1/3的哈希算力/權益并非天方夜譚,而且根據兩點,具備實力的攻擊者基本不會選擇拖滯隨機數生成,而是傾向于暗地操縱輸出結果。
NEAR方案
我們最近發表的一篇論文介紹了NEAR方案。這是一個無偏見且不可預測的協議,其活性具備1/3節點的容錯能力,即攻擊方只有控制了全局1/3及以上的節點才能阻塞協議。
然而和RandShare不同,NEAR能保證2/3惡意節點的容錯。這個門限對實際應用來說顯然更為優越。
NEAR協議的核心思想如下:
每一個節點首先提出自己的輸出片,將其分成67份,再用糾刪碼將其編碼為100份,這一過程需要保證任意67份數據都可以恢復輸出片,然后使用其它各節點的公鑰對每一份數據簽名并轉發,這樣一來,各節點互相持有加密片。
系統中各節點使用某種共識算法選出特定67個節點所生成的加密片。
一旦達成共識,各個節點根據步驟(2)的結果,從本地取出被自身公鑰簽名過的加密片,解碼揭露數據后立即廣播。
一旦有67個節點完成了步驟(3),系統就有了足夠的信息解碼重構出原始數據,最終結果可以由(1)中各節點輸出片的簡單異或操作得到。
上述協議具備無偏見性和不可預測性的道理和RandShare以及門限簽名都類似:一旦達成共識,輸出已經被確定了,只不過要等到至少2/3的節點用各自公鑰將加密的那部分揭露,大家才能看到輸出結果。
如果要考慮一些特殊情況以及可能的惡意攻擊,協議可能變得稍稍復雜中有節點生成無效的糾刪碼,系統需要有能力應對),但總的來說整個協議還是十分清爽,涵蓋了所有證明和相關密碼學原語和引用的論文篇幅僅7頁長。如果你想了解算法更為規范的描述,或是對其活性和防御性的分析,請務必閱讀我們的論文。
當前NEAR協議架構已經應用了類似的糾刪碼思想,系統中區塊生產者會在特定時期內創建一些分塊,其中包含了對于某一特定分片的所有交易,然后將分塊進行糾刪碼編碼后的版本附帶默爾克證明發送給其它區塊生產者,以保證數據可用性。
結語
我們正在努力編寫一組主題為區塊鏈協議及相關內容的高質量技術文章,本文是其中一篇。除此之外,我們還制作了一系列面向其它協議創始人和核心開發者的視頻,目前已經錄制了針對包括EthereumSerenity、Cosmos、Polkadot、Ontology、QuarkChain在內多個項目的視頻。為了便于查看,所有視頻都已經被打包進了這個播放列表。
如果你對NEAR協議背后的技術感興趣,請務必研讀上文提到的那篇分片論文。NEAR是少數幾個在分片中解決狀態驗證和數據可用性矛盾的協議,并且該論文在給出我們的解決方案之外,還提供了一個針對分片的更為開闊、通用的視角。
今時今日,雖然擴容是區塊鏈中的大挑戰,但可用性難題或許更值得大家關注。我們團隊對此傾注了大量資源,努力構建更可用的區塊鏈系統。最近我們發表了一篇概覽,介紹了當今區塊鏈協議面臨的種種可用性挑戰,以及對應的探索路線。
Twitter關注,不迷路!也歡迎來我們的Discord頻道暢所欲言,無論是技術、經濟、治理或是協議設計中的其它方方面面,我們都會進行熱烈而精彩的討論。
原文鏈接:
https://nearprotocol.com/blog/randomness-in-blockchain-protocols/
作者:AlexanderSkidanov
翻譯&校對:安仔Clint&阿劍
本文由作者授權EthFans翻譯及再出版。
Tags:RANAND區塊鏈NEARTransferChainSand Coin區塊鏈是什么意思near幣中國人叫他什么
尊敬的用戶: 法拉第已開放ERC20協議的USDT充幣和提幣業務,您可選擇USDT和EUSDT兩種形式進行充提。并且,法拉第已開放EUSDT/USDT交易對,您可至“幣幣交易”進行兌換.
1900/1/1 0:00:009月18日,由萬向區塊鏈實驗室主辦的2019上海區塊鏈國際周:第五屆區塊鏈全球峰會圓滿結束。本次峰會以“新十年新起點”為主題,共吸引了上千名參會嘉賓,多位來自全球的重磅意見領袖,周邊各類行業活動.
1900/1/1 0:00:00據BlockchainTransparencyInstitute最近發布的一份監測報告顯示,全球前40大交易所的清洗交易減少了35.7%.
1900/1/1 0:00:00尊敬的用戶: 安全是幣鉆的中樞,而優質的數字資產是我們安全保障的前提和根本。以優質數字資產交易立身的幣鉆,秉承為用戶提供極致體驗的原則,持續跟蹤觀察項目,并根據存在或潛在的隱患大小,對項目進行警.
1900/1/1 0:00:00金色財經比特幣9月18日訊美國金融巨頭富國銀行正在開發一種與美元掛鉤的穩定幣,該穩定幣將在該行首個私有鏈平臺上運行.
1900/1/1 0:00:00在本周的以太坊核心開發者電話會上,ProgPoW抗ASIC礦機算法再次引發以太坊社區討論。媒體認為以太坊ProgPoW算法上線后將會帶來4個問題,其中包括:礦機報廢、抗礦機等于反競爭、社區分裂風.
1900/1/1 0:00:00