Filecoin的共識機制的實現進化與自然常數e的關係

2021-01-20 金色財經區塊鏈

作者:Steven Li(胡飛瞳)

來源:IPFS原力區

老子曰:「人法地、地法天、天法道、道法自然」。在區塊鏈的實踐中,由於是建立Code is Law的體系,遵循 In Math We Trust 的法則。在一個不受個體控制的網絡,遵循自然的法則尤其重要。我提倡Filecoin的設計從簡、自然。也是這個道理。

自然常數 e,是一個神奇的數,在數學中又極為自然。本文講一講 Filecoin 的共識機制的實現進化與自然常數 e 的關係。

內容提要一、自然常數 e二、初期預期共識空塊率過高:1/e三、預期共識的實現是一個不段發現的過程四、tipset區塊數預期提升(至5),安全性和效率的兼顧五、讓每一個字節都參與投票:優雅的密碼抽籤 + e【預警:數學、概率與分布】

數學常數 e

e 被成為自然常數,在數學家的眼裡,這個常數非常自然。但是,對於普通人而言,對於 e,由於沒有形象化的描述,就很難理解。本文通過 e 在 Filecoin中的應用,希望能夠找到一些點,能夠幫助大家 1)了解Filecoin的一些設計;2)通過 Filecoin 得到一點 e 的形象化的描述和印象。

常見的比較複雜的有意思的數學常數有兩個,一個是 π,一個是 e。大家對π 都非常熟悉,因為它有一個非常形象化的名字,叫圓周率,也就是說是任何一個圓的周長和直徑的比值。非常形象,非常容易理解。小學不學的話,初中總會學到了。

其實 e 是與 π 同等重要的一個數學常數,在數學中的使用一點也不比 π 少。比如就在我們今天所討論的 Filecoin 區塊鏈中,e 在很多地方被使用,而 π 則不然,基本上沒有被用到。

π = 3.1415926535897......e = 2.718281828459045......π 和 e 同為超越數,即不是代數數(有理數方程的解),當然也是無理數,無限不循環小數。

但其實,e 和 π 在數學中有非常緊密的關係。甚至可以說,e 就是 π 的另一種表示方法。為什麼呢,請看最優雅數學公式 - 歐拉公式:

為什麼優雅,這個一個簡單的公式把數學中的5個元素(0, 1, i, π, e)十分簡單地統一在一起了。就像物理學家希望統一力場一樣,數學家也有把總結簡潔規律的偏執。

這個公式也表達了 e 和 π 的簡單直接的關係。當然,他們之間還有一些有意思的關係,比如:

但是,這些仿佛把事情更加複雜化了,對於 e 本身的理解並沒有幫助。到底 e 是什麼呢?數學中會講,e 是自然對數的底,它的一個總要特點就是 e^x 的導數還是 e^x,同時,e 可以通過下式來表達和計算:

稍微形象一點的表達,就是在複利的計算上,e 表達一個在一段時間內翻倍增長的利率,進行極限的連續複利計算能夠達到的極限值。也就是說,如果年利率是100%,你如果無限細分一年到 n 個時間段,那麼每個時間段的利率為 1/n,而最終你能得到的連本帶利的收入為 e 倍,也就是2.7倍多一些。

這仍然不夠形象,那麼下面映射到 Filecoin 的共識機制來看一看。

Filecoin 預期共識與自然常數的關係

先來複習一下Filecoin白皮書裡面描述的預期共識。在go-filecoin的早期實現中,採用的是簡單的預期共識,也就是說,每一個礦工按照自己的算力與總算力的比來獲得出塊權的概率。因為所有礦工的算力之和等於總算力,所以系統每一輪的總出塊概率的期望值為 1。簡單來說,就是每一輪平均出一個塊,但是,每個礦工獨立計算,因此,每一輪的出塊數可能是各種各樣的。

那麼在這種情況下,我們建立一個簡單(也是有效的)模型來進行一個推演。假設系統中的礦工數為 n,每個礦工的算力佔比為 1/n,那麼,每一輪呢每個礦工的出塊概率為 1/n。

這樣,一輪中出現空塊的概率為:

如果 n 足夠大,那麼,可以求得:

也就是空輪的概率超過三分之一,這個就太高了。

那麼出塊數為 1 的概率有多大呢,可以簡單做如下計算:

仍然只有三分之一多一點。剩下的不到三分之一的概率都是多塊的輪次。這個結論與開發網當時的測試是完全吻合的。

從這裡,我們找到了一個對於自然常數 e 的一個更形象化的解釋,那就是:在一個有很多人(大數)參與的獨立投票選舉中,每個人的贏得選舉的概率相同,同時預期贏得選舉人數為1的情況下,不能得出選舉結果的概率為 e 的倒數,也就是 1/e。

預期共識的實現是一個不斷發現的過程

開發網出現的空塊率過高的情況,我們做了模擬,並與Filecoin研究開發團隊進行了討論。顯然,這麼高的空塊輪次比例是不好的,這是的區塊時間不固定,交易時間預測起來也比較困難。

那麼,一個簡單的改動是什麼呢?那就是增加每一輪的區塊預期數量。因為預期共識本來一輪就可能出現多個區塊,在實現中採用tipset的方式進行組合,那麼增加區塊的預期數量,對於設計實現而言非常簡單。

在測試網之前,Filecoin實現引入了預期每輪區塊數這個概念,這個被定義為 E (ExpectedBlocksPerEpoch)。當前默認:E = 5

既然,預期區塊數提高了,最簡單的方法就是把每個礦工的出塊概率提高5倍。但是,礦工出塊的計算採用擲骰子的方式。也就是產生一個 256 位空間中的一個數,來比較自己的算力佔比,從而判斷是否擁有出塊權。這裡就有一個數據越界的問題。Filecoin的實現在這個判斷上走過三個階段:

階段一:每個礦工按照自己的算力再進行切分,分別按照更小的份額進行選舉,如果贏得選舉就獲得一票。相同默認算力都按照每 25 個 sector來進行統一切分(剩餘部分單獨算)。這個辦法的好處是每一個選舉人算力都基本一樣,進行公平選舉。但是,由於每25個sector都要進行單獨計算,每一個部分都需要I/O訪問,時間消耗較大。Filecoin團隊的最初目的是把這個出塊權和時空證明放在一起。但是,最後從安全的角度來考慮,由於計算相對複雜,還是放棄了。

階段二:直接極致簡化,不考慮越界的問題,直接乘以5進行比較計算。這個是在時空證明已經通過WindowedPoSt替代 SurprisedPoSt的情況下的一個簡化措施。但是,這樣做有兩個問題:1)對於算力大於 20% 的礦工肯定是吃虧的;2)當礦工算力足夠大時,一定能夠贏得選舉。這第二個問題比較嚴重。我們慎重提出,這是一個安全問題,應該改。

階段三:採用密碼抽籤的方式,借鑑Algorand採用的算法。逐漸走向完善。

讓每一個字節都參與投票

Algorand的密碼抽籤是一個非常好的概率分布在選舉上的應用,對於區塊鏈POS網絡而言,非常棒。實現起來比較簡單直接。其具體算法如下:

這裡不做詳細解釋,需要的人可以查詢相關資料。簡單地說,就是在POS選舉過程中,當你憑藉自己產生的可驗證隨機數進行抽籤的時候,可以通過你自己的份額和相應二項式分布來看你落在哪一個區間,從而判斷你獲得了多少選票。

二項式分布是 n 個相同概率的獨立時間單獨計算而後相加的一個分布,而且整個分布正好切分整個概率空間。因此只需要看你的可驗證隨機數在那個空間就可以了(這個部分比較難說清楚,有意者線下探討)。

那麼對於Filecoin而言,參與選舉的份額就是你的算力。如果按照前文中說的階段二的方式,可以再進行細分,那麼可以考慮為每一個字節都參與投票。這樣一來,參與投票的選舉人數量非常大,整個計算不用採用二項式分布,完全可以採用泊松分布來進行計算。泊松分布的計算公式如下:

這裡 λ 是自己的份額與預期總選舉票數的乘積。在Filecoin中,它就是

E * mPow/totPow;k 是獲得選舉權的數量。

看一下上式,是不是很神奇?自然常數 e 再一次用到了 Filecoin 的選舉的計算之中。採用泊松分布進行計算是 Filecoin 的一個改進,非常符合Filecoin的特點,同時計算也非常簡單。

採用密碼抽籤之後,就不能保證每一輪都一定會有礦工拿到出塊權了,這很正常,因為每個人都自己擲骰子,出塊權的計算是獨立的。這樣的話,實際上每一輪贏得不同的出塊選票的概率有多大呢?簡單做一個模擬可以得出下表:

這裡空輪的概率是 e^-5。

也就是說,預期大約不到200個高度就會出現一個空輪。看起來還好。而每輪選票數為 3,4,5,6,7分布較多也比較均勻。選票數高達15張的情況也不少,大概萬分之1.6。

看到這裡(如果你真的有耐心看到這裡),您可能會想,e是不是與概率的關係比較大,其實我可以告訴你,π在有些時候也會用到概率計算之中。因為這兩個常數就是有牽扯不清的關係。

Filecoin中自然常數不僅僅用於選舉

自然常數 e 在選舉之中的使用,至此顯得非常自然,而且也比較優雅。

同時,Filecoin在Token釋放上,也利用 e 進行計算。這個與概率無關,而是與衰減有關。Filecoin 不採用周期性減半的方式進行Token釋放,而是模仿放射性衰減,也就是指數衰減。白皮書設計為6年減半。而一般說來,衰減的公式可以寫為:

上式可以理解為:初始Token為 N0,隨時間推移,系統通過釋放,在 t 時間點系統中還應該保留的Token量N(t)的計算公式。

看這裡,再一次出現了自然常數 e。當然這裡不一定非要用 e 的。但是由於 e 的使用非常廣泛了,用起來方便順手。所以基本上現在這是一種統一的用法。

本文來源: 金色財經 / 作者:IPFS原力區

相關焦點

  • filecoin全球計劃_紅岸天驅用真心服務
    filecoin全球計劃,紅岸天驅用真心服務,我們在硬體開發、運營維護等領域為客戶提供有競爭力、安全可信賴的產品、解決方案與服務,與生態夥伴開放合作,持續為客戶創造價值。filecoin全球計劃, 一塊2080ti的GPU,將時間壓縮到1個小時以下。
  • 黑龍江省【filecoin區塊鏈】_深圳紅岸天驅科技有限公司
    黑龍江省【filecoin區塊鏈】,深圳紅岸天驅科技有限公司,我們在硬體開發、運營維護等領域為客戶提供有競爭力、安全可信賴的產品、解決方案與服務,與生態夥伴開放合作,持續為客戶創造價值。
  • Filecoin不得不關注的知識點
    那麼我們求一下g。但其也不是無限增長,當有效時間接近自然時間時,每日獎勵會逐步降低,回歸正常的6年減半釋放周期。Fil/T收益走勢第一年大概可提現40.8975枚FIL左右,約6134.63元,首年開始實現32.24%的盈利。PS:以上都是基於預測以及計算是基於目前的算力規模做預測,拐點以及計算並不作為投資參考,僅作研究分析。ipfs存儲數據越多,算力隨著增長,存儲算力越強。最近有些朋友在問,Filecoin區塊鏈瀏覽器上的「柱子」是什麼?
  • Filecoin需要多久能夠達到100美元 合理分析
    經濟模型和網絡生態的影響總的來說,經濟模型會影響filecoin上線之後的價格走勢。filecoin的估計價格由供需關係決定。IPFS和filecoin是互補的,IPFS技術應用範圍越廣,Filecoin的市場價值也會越高。
  • 讀懂IPFS-Filecoin|IPFS和Filecoin的區別與聯繫
    1、 IPFS不是區塊鏈技術,本身跟區塊鏈並沒有關係。2、 IPFS沒有代幣,不能挖礦。3、 IPFS技術棧裡沒有區塊鏈的一般特徵技術,例如:共識機制、算力、代幣、礦工、礦池等等。3、有自己的共識機制,礦工和代幣。4、Filecoin的代幣符號是FIL,是基於Filecoin公鏈發行的Token。
  • Filecoin釋放採用的網絡基準線是一種保護機制
    Filecoin經濟模型釋放機制 在官方發布的經濟模型中,有一個部門是很多礦工關注的,就是Filecoin代幣的釋放和質押,Filecoin的釋放沒有單純使用指數衰減性釋放代幣,為了鼓勵存儲落地的一致性和長期存儲投資而不僅僅是快速封裝,Filecoin引入了網絡基準的概念。
  • Filecoin是什麼意思 應該如何選擇Filecoin現貨和期貨
    Filecoin是什麼意思 應該如何選擇Filecoin現貨和期貨Filecoin消息 ,一直 備受關注的Filecoin終於 兌現 了承諾 ,在2020年 10月15日前 正式啟動 項目 主網 。到底 什麼是 Filecoin,我們 又該如何選擇現貨 和期貨 呢,有興趣 的小夥伴們 一起 往下看。Filecoin是什麼意思Filecoin是運行在 IPFS上的一個激勵層,是一個基於區塊鏈的分布式存儲網絡,區塊鏈技術既完善又創新,創新了"算力"概念,巧妙地重用了算力形成過程的數據來進行共識,規避了 PoW 帶來的大量能源與計算資源的消耗。
  • 讀懂Filecoin挖礦模型
    質疑、罷工,2020年最具爭議的項目恐怕是 filecoin 了。filecoin曾因2.57億美元的巨大融資引發關注,如今,filecoin又因上線後經濟模型等問題引發爭議,那麼filecoin究竟如何,我們研究一下。一、背景filecoin 出生不凡,僅投資機構便有紅杉資本、DCG集團、A16資本、史丹福大學等國際知名投資機構,而創始人胡安更是獲得了史丹福大學計算機碩士學位,並且是一個連續創業者。
  • Filecoin主網上線只是開始 未來3-5年將開啟無限可能
    Filecoin以在IPFS協議的基礎上,可以去中心化存儲大文件大數據。 另外在整個商業模式上來講,Filecoin採用的是不以浪費能源的複製證明共識。同時它能夠存儲真實的數據,這樣的話它可以落地到實體經濟的一些能夠存儲真實數據的場景。 Filecoin的官網對自己的介紹是,旨在存儲人類社會中最重要的信息分布式網絡。
  • IPFS和Filecoin什麼關係?IPFS礦商集體停擺的背後原因
    IPFS與區塊鏈是什麼關係?區塊鏈的誕生本是為了做到去中心化,在沒有中心機構的情況下達成共識,共同維護一個帳本。IPFS與區塊鏈協同工作,能夠補充區塊鏈的兩大缺陷:一是區塊鏈存儲效率低,成本高;二是跨鏈需要各個鏈之間協同配合,難以協調。
  • 星際無限:Filecoin的過去、現在和未來進行訪談
    但隨著去中心化文件共享服務Filecoin的推出,現在有了一個真正的替代方案。Filecoin的承諾是允許世界各地的任何人出租硬碟空間給其他人,並為他們設置獎勵機制。協議實驗室的執行長Juan Benet說:「Filecoin真正帶來了大規模應用完全是Web 3.0自身的能力,像流媒體視頻或整個社交網絡以及這些類型的應用現在在Web 3.0環境中是可以實現的。」
  • 「IPFS紅岸智能」Filecoin官方AMA問答第3期
    Filecoin Discover和testnet激勵機制不相關。Testnet的激勵機制基於原始字節功率、交易完成度和扇區生命周期參與度。Filecoin Discover硬碟驅動器和經過驗證的客戶機制對激勵措施沒有影響。2. HI,在filecoin上線後,獲得訂單的主要因素是什麼?算法?
  • 一文讀懂Filecoin分叉項目Filestar文曲星
    在白皮書中,FileStar提出將基於Filecoin進行分叉和迭代,並實現現有Filecoin礦工權益的無縫映射。項目背景2020 年 10 月 15 日,Filecoin 主網在 148888 高度激活,宣告了行業內最受矚目的去中心化存儲網絡的正式上線。Filecoin 提出了一套存儲證明機制,通過複製證明(PoRep)、時空證明(PoST)等一系列技術創新,首次實現了現實世界鏈下存儲資源的度量和鏈上表示。
  • Filecoin Blog:12月19日區塊鏈中斷事件
    編譯:耘存科技原文連結:https://filecoin.io/blog/resolving-the-chain-halt/近日,官方對去年12月19日發生的區塊鏈中斷事件做出了詳細的解釋,同時也講述了官方聯合礦工與開發者共同在短時間內發現並處理問題的過程,以及後續的改進方案。
  • 與圓周率並肩的自然常數e,到底自然在哪裡?
    寫在前面自π以後,我們又學了一個很常見的無理數常數e,但是不同於圓周率我們的課本上還有明確的定義,而自然常數e我們的高中老師就直接讓我們記下來(阿拉丁最煩這樣了),那它到底是什麼東西,自然在哪裡呢?那麼我們今天的主角自然常數e,就是在自然界中扮演著增長與繁殖的重要作用,無論是生物的繁衍、物種的進化還是放射性物質的衰變……人口增長的馬兒薩斯模型中強調了在無阻力下的增長將會是爆發式的,而之所以人口增長會有延遲是因為各種自然原因的阻礙,也就是阻礙了e的爆發。
  • 與圓周率並肩的自然常數e,到底自然在哪裡?
    但是不同於圓周率我們的課本上還有明確的定義,而自然常數e我們的高中老師就直接讓我們記下來(阿拉丁最煩這樣了),那它到底是什麼東西,自然在哪裡呢?那麼我們今天的主角自然常數e,就是在自然界中扮演著增長與繁殖的重要作用,無論是生物的繁衍、物種的進化還是放射性物質的衰變……
  • IPFS-Filecoin構建人類基因庫
    Filecoin網絡又是如何保證數據隱私呢?這與Filecoin的存儲機制有關。文件上傳至礦工的存儲扇區,當扇區seal密封后,文件被分片拆分成很多份,打散存儲在各個伺服器節點中,每個文件存儲一個對一無二的CID用於尋址。這樣就徹底解決了隱私安全問題,因為即使有伺服器節點被攻破,駭客也只能獲得基因數據中很微小的一個片段,幾乎毫無作用。
  • 官方復盤丨回顧12月19日Filecoin主網鏈上中斷事件
    2020年12月19日,Filecoin網絡經歷了鏈中斷,這意味著在一段時間內,可以創建新的區塊,但鏈上節點無法就產生的狀態達成共識
  • IPFS/Filecoin站在巨人肩膀上前行
    古希臘畢達哥拉斯主義認為:世界上一切事物的本質是數,其結構是各種關係的組合或分離,世界上一切事物都是各種數量關係的外在表現。近代原子論與單子論也是對這個思想的跟進。時代變遷帶來的機遇人的每一次科技創新,都會帶來財富的機遇,數字時代的到來,也同樣如此。
  • 以科普的角度和大家聊聊 即將主網上線的Filecoin
    Filecoin的經濟系統而Filecoin我們可以理解為區塊鏈化的帶有激勵的IPFS系統,或者說filecoin系統有激勵層,能夠為這種類型的IPFS系統帶來很多節點(挖礦的礦工),而Filecoin系統中,作為存儲節點(提供閒置空間)以及檢索節點(提供檢索驗證)都可以獲取相應激勵。