BTC出塊時間出現差異:理論與實際對比
BTC區塊時間戳歷史分布情況究竟有多符合預期?
本周,我收到了一些消息提醒,這些提醒都是關于一個時不時會出現的問題:
“BTC區塊鏈兩個小時都不能挖到一個塊的情況多久會出現一次呢?昨晚,我偶然發現了在區塊670637和638之間出現了這個狀況。”
這讓我陷入了思考,我不禁想到在過去12年中,BTC區塊時間戳歷史分布情況究竟有多符合預期?
我之前也對BTC時間戳機制進行過討論,有充分理由認為BTC的安全性很高,其時間戳背后的博弈論機制也非常完美。
幸運的是,你如果有一個節點的話,就能很輕松地循環訪問所有BTC區塊頭,查看它們的時間戳。為此,我寫了個腳本,我的筆記本電腦只用了5分鐘就查看了所有的時間戳。
金色熱搜榜:XTZ居于榜首:根據金色財經排行榜數據顯示,過去24小時內,XTZ搜索量高居榜首。具體前五名單如下:XTZ、BOT、LEND、STORJ、BOX。[2020/9/26]
請注意,為了方便測量數據,BTC區塊鏈中第100個區塊之前都被我排除了,因為BTC誕生之初,礦工數量很少,發生了一些很特殊的狀況。
結果表明,有190個區塊在前一個區塊出塊后106分鐘才被挖出,占迄今挖出的67萬個區塊中的0.0028%,非常接近0.0025%的預期值!這個結果很容易通過計算得出,但只能代表某個特定時間段內出塊時間的差值分布情況。
深層次分析
如果要對這個問題進行深入思考,Felix?Weiss已經解決了這個問題,他提供了一種方法,能夠確定在前一個區塊挖出后的特定時間段內應該挖出的區塊數量。
金色午報 | 8月3日午間重要動態一覽:7:00-12:00關鍵詞:工信部、火幣、阿里云、ETC
1. 工信部發布“通知” 重點方向包括區塊鏈安全等;
2. 火幣科技旗下子公司獲香港證監會頒發4號及9號牌照;
3. 報告:以太坊網絡近五年總交易額接近1萬億美元;
4. 阿里云西城:區塊鏈云上部署是未來;
5. 交行行長劉珺:人民幣國際化要從主權貨幣、數字貨幣同發力;
6. ETC官方:區塊鏈重組系單個礦工違規導致;
7. 北斗衛星導航系統發言人:北斗系統高精度服務正與區塊鏈等新技術深度融合;
8. 去中心化預測市場平臺Augur發布v1.2.7版本;
9. BTC錨定幣總發行量突破2萬枚 近30天增長71.4%。[2020/8/3]
這個數量能夠通過計算指數分布的累積分布函數得出。
但就出塊時間的差值而言,怎樣才能其整個歷史分布狀況與預期分布進行對比呢?為了解決這個問題,我們需要利用指數分布的概率密度函數,這個函數可以通過f(x;λ)=?λe^-(λx)進行建模。針對出塊時間問題,x等于上個區塊出塊后的某個時間點,λ作為率參數,等于1/600,概率密度函數用線性方式表示如下圖:
金色相對論 | 宣宏量:區塊鏈技術在社會治理方面可以發揮重要作用:在今日舉行的金色相對論中,針對“國家、企業、個人及如何協同促進區塊鏈產業的健康落地”的問題,首都版權產業聯盟常務副秘書長宣宏量表示,區塊鏈技術在社會治理方面的優勢主要有三點:
(1). 區塊鏈技術是連接信息孤島的數字高速公路,可以有效解決各個政府部門之間數據共享的問題,是成本最低、效率最高的技術方案;
(2). 提升政府社會治理能力,從信息治理到數字治理,從模糊管理到精確管理;
(3). 全社會已經感受到了互聯網技術與信息社會帶給的生活方式的改變,人們對區塊鏈技術與數字社會對幸福指數的提升充滿了期待。
當前的困難主要體現在三個方面:
(1). 全國各級政府部門對區塊鏈技術的準確理解普遍還有一個過程,不難操之過急;
(2). 區塊鏈從業機構對政府和產業的需求,理解不深刻、不到位;
(3) . 區塊鏈從業機構對區塊鏈技術本身的研究,受數字貨幣的影響較深,普遍存在相當的局限性。
總體來說,區塊鏈技術在社會治理方面可以發揮重要作用,而且落地的速度也會很快。[2020/6/4]
我在寫這篇文章的同時也繪制出了670000區塊之后所有區塊的預期分布狀況,與上圖的形狀很相似。
金色財經現場報道 瑞鏈科技技術總監楊子一:國內的底層鏈將因為區塊鏈標準出臺而更有價值:金色財經現場報道,在“2018聯盟鏈的未來暨瑞鏈科技區塊鏈產品發布會”上,在現場問答環節,瑞鏈科技技術總監楊子一指出:瑞鏈科技推出了多款產品,但有真正有價值之處不在于推出產品,而是通過三年的沉淀,打造了基于區塊鏈的架構或者系統,是具有自主知識產權的。不論是在業務調整還是在生產變革方面,都要比基于fabric更靈活。當中國的區塊鏈標準出臺之后,國內的底層鏈將更有價值。中國的區塊鏈公司,其95%以上的技術都是基于fabric,他們應用的局限性會隨著業務的擴大體現出來,因為他們沒有改造的實力。瑞鏈科技推出的三個寶,可能不夠足夠完備,但已經開創了落地的先河。[2018/5/31]
于是我收集了腳本的數據,并將其放入了以下這個表格中:
顯而易見的是,下圖的x軸用對數表示更加合理,否則數據會過于分散,而觀察不到一些有趣的現象。
不同挖礦時期
出塊時間的預期分布是基于哈希率恒定不變的假設。但根據BTC的發展歷史,其哈希率不可能是恒定不變的。
所以我選取了三個時期進行分析。
1.?CPU時代:哈希率相對平穩。
2.?GPU時代:哈希率加速上升。
ASIC時代:哈希率增速相對較緩
CPU時代
在CPU時代,對于出塊時間少于10分鐘的區塊,實際數量比預期少,為什么會出現這種情況呢?我將在下文進行解釋。
GPU時代
請注意,在GPU時代,情況截然相反,實際數量比預期要多,最可能是因為哈希率加速上升。
ASIC時代
在早期ASIC時代,BTC哈希率有大幅上升,我特地選取了距離當今較近的時間段,這樣數據不會受到很大影響。我們能從上圖看出,BTC出塊數量仍然多于預期,但是不能夠與GPU時代相比。
整個挖礦時代
如果將670000個區塊的數據全部繪制成一張圖表會是怎么樣的呢?根據下圖,實際出塊時間與預期是非常吻合的,除了圖中左邊的部分。
根據上圖,我們能得知,父區塊挖出后29秒內出塊的數量遠低于預期,對此有沒有合理的解釋呢?
深入研究
在這個時間戳范圍內的預期出塊數量為30497。
另一方面,實際出塊數量是22441。
那么為什么出塊數量會相差8056?
我們發現,14296個區塊的增量是負數,其中有3549個屬于-29到0的區間范圍內,那么剩下還有大約6000個區塊,下文將會對這6000個區塊進行詳細分析。
通過繪制負增量的時間戳分布情況,我們能得出,下圖基本上是正增量分布情況的鏡像。
這是因為BTC協議允許負時間戳增量的存在,但這不是根本原因,我們要考慮到實際挖礦的工作過程:
1.?礦池會為下一個區塊生成區塊元。
2.?礦工向礦池發出工作請求,開始對區塊元進行哈希計算。
3.?礦工將完成的工作返回給礦池,形成工作量證明。
所以問題就變成了:區塊元的產生頻率是多少?時間戳多久更新一次?
但是,我認為背后的答案更加復雜,因為礦工也有可能更新時間戳,這就牽涉到了研究特定ASIC應用的硬件或者固件。
上文提到,還剩下大約6000個時間戳增量是負的區塊,對這些區塊有合理的解釋嗎?我認為理論上是能夠解釋的,原因可能是時鐘漂移或挖礦軟件沒有得到很好的適配。如果你了解BTC挖礦歷史的話,早期礦工沒有組成礦池,都是單獨挖礦。所以礦工配置不能達到企業級別,這些業余礦工無法保證礦機數據與權威渠道定期同步。早期礦池都是由業余挖礦愛好者而不是全職專業人士運營。我認為,如果我的理論合理,那么隨著挖礦產業逐漸成熟,礦池軟件得到改進,時鐘漂移出現的頻率也在下降。所以我運行了另外一個腳本,按照時間繪制了時間戳增量為負的區塊分布情況圖。
根據上圖,我們能看出,不僅時間戳增量為負的區塊數量在減少,時鐘漂移問題也逐漸得到改善,值得特別注意的是,自2017年底后,只有少數區塊的時間戳增量為負。
總結
BTC大部分運行機制都基于數學原理。通過分析實際出塊時間的分布情況,我們能發現,在過去12年中,10分鐘出塊時間這個機制運行非常良好,只出現過很少的極端情況,背后的原因也很容易找到。挖礦也形成了產業化,挖礦軟件得到逐步改善,出塊時間分布狀況越來越符合預期。
這就是數學的力量!
本文內容來自于:CypherpunkCogitations
相信大家看過上期《烤仔觀察|風口上的“大哥”-黃立成》后難免困惑——黃立成究竟如何能精準地瞄準每一個風口并快速入場?這個問題其實可以從他在面對“未來計劃”這一問題時的回答中窺見一二.
1900/1/1 0:00:00親愛的BKEXer:? BKEXGlobalETP專區將于2021年2月22日18:00上線REEF3L、REEF3S.
1900/1/1 0:00:00尊敬的用戶: 平臺將于2021年2月25日22:00上線NQCT/USDT交易對,屆時同步開放幣種充值及提現.
1900/1/1 0:00:00文字永遠是愛情最直接的表示,隨著時間的發酵,紙張消解,印痕變淺,而形式一旦消失,精神亦會隨之而散。如何永久保存這些文字?區塊鏈刻字就可以幫你實現.
1900/1/1 0:00:00行情觀點:小時級別來看,大餅昨日晚間探底跌破45000一線關口,觸底44918.29一線反彈,隨后短線上漲,插針向上試探遇壓49541一線回調,走寬幅震蕩.
1900/1/1 0:00:00但斌,中國私募大佬,他最近在幣圈很火,因為他購買了比特幣ETF,這被定義為中國傳統投資人被比特幣“漲服”的代表和標志性事件.
1900/1/1 0:00:00