引言
眾所周知,BTC、BCH、BSV將在630,000區(qū)塊高度再次獎勵減半。但很多人也許沒留意到的是,BTC減半極大可能發(fā)生在2020年的4月底,而BCH與BSV的減半幾乎會發(fā)生在2020年的4月初。
這個時間差,讓原本就會牽涉眾多的減半事件變得更加微妙起來。
一、為何會有減半時間差
BTC網(wǎng)絡每挖出 210,000 個區(qū)塊,區(qū)塊獎勵就會減少一半。如果BTC、BCH、BSV都保持平均10分鐘/塊的挖礦速度,三者應該同時減半。不過現(xiàn)實并不是如此,主要原因在于BTC的難度調(diào)整算法并不能保證準確的10分鐘/塊,以及BCH從BTC分叉出來的時候,采用了EDA緊急難度調(diào)整算法。
BCH在2017年8月1日分叉時繼承了BTC網(wǎng)絡的挖礦難度,但其全網(wǎng)算力不到 BTC網(wǎng)絡算力的10%,在這種算力急劇減少而挖礦難度不變的情況下,BCH挖出一個區(qū)塊的時間可能要超過100分鐘。
這帶來兩個問題,第一個問題是推遲了難度調(diào)整時間。BTC每2016個區(qū)塊調(diào)整一次挖礦難度,BCH當時距離下一次難度調(diào)整還有1250個區(qū)塊,挖出這些區(qū)塊保守來講也需要三個月的時間,因此網(wǎng)絡會長時間處于高難度狀態(tài),很難吸引礦工加入。
第二個問題是即使礦工能夠不考慮利益挖礦,BCH上的交易也無法開展。100分鐘產(chǎn)生一個區(qū)塊意味著每100分鐘才能打包一筆交易,如果3個區(qū)塊后確定一筆交易,就需要等待5個小時;而我們知道數(shù)額較大的交易都是建議6個區(qū)塊后確定的。
在這種情況下,如果BCH采用的是原網(wǎng)絡的難度調(diào)整算法,可能導致自己的新網(wǎng)絡難以存活,實際上,在EDA發(fā)明出來之前,傳統(tǒng)理論一直認為BCH這樣的小算力分叉是無法存活的。
EDA算法簡單來講就是:當區(qū)塊高度為 2016 的整數(shù)倍時,采用BTC難度調(diào)整算法;當區(qū)塊高度不是2016 的整數(shù)倍時,如果當前區(qū)塊父塊的MTP11時間(包括本區(qū)塊在內(nèi)的前11個區(qū)塊按照blocktime排序后的中間時間)和第(父塊-6)區(qū)塊的MTP11時間相差12個小時,則將當前區(qū)塊難度降低20%。
該算法能夠在短時間內(nèi)迅速下調(diào)挖礦難度,從而解決網(wǎng)絡難以出塊的危機,但它又給BCH帶來新的危險。
在EDA算法中,挖礦難度可以快速地持續(xù)下調(diào),卻只能在每2016個區(qū)塊后有機會上調(diào)。因此礦工可以先撤出算力,讓BCH挖礦難度不斷降低,然后在低挖礦難度時進入網(wǎng)絡,快速、輕松地挖出區(qū)塊,直到挖完2016個區(qū)塊,引發(fā)難度向上調(diào)整時再撤走算力,接著等待難度再一次下調(diào)。
這不僅讓BCH上的算力呈震蕩態(tài)勢,也讓BCH的出塊速度過高。如下圖所示,藍色曲線代表BCH每天挖出的區(qū)塊,紅色曲線代表BTC每天挖出的區(qū)塊,可以看到在采用EDA算法期間,BCH大部分時間的出塊速度高于144塊/天。圖中截選的一個曲線高點顯示在2017年10月28日那一天,BCH挖出了1254個區(qū)塊。
這讓BCH和后來分叉出來的BSV挖出來的區(qū)塊遠多于BTC。如下圖所示,BCH曾最多領(lǐng)先BTC近一萬個區(qū)塊,如果從代幣產(chǎn)出的角度來看,BCH比BTC提前產(chǎn)出約12.3萬枚代幣。
二、BTC、BCH、BSV減半時間分析
為了改變上述狀況,BCH從EDA算法升級為DAA算法。該算法簡單而言就是基于當前狀態(tài)下的前 144 個區(qū)塊的算力來逐塊設(shè)置挖礦難度。這是一種窗口移動式的難度調(diào)整算法,每一個區(qū)塊都調(diào)整難度,可以做到對網(wǎng)絡上算力變化的及時響應。在實行該算法之后,BCH和BSV基本穩(wěn)定在144塊/天的出塊速度。
如果BTC網(wǎng)絡的出塊速度也是穩(wěn)定的,那么BTC、BCH、BSV之間的區(qū)塊高度差將被定格于一萬塊,不過BTC網(wǎng)絡算力的持續(xù)增長縮小了這一差距。
BTC網(wǎng)絡是這樣調(diào)整挖礦難度的:如果網(wǎng)絡算力增加,最近2016塊的平均出塊時間低于10分鐘,就在下個周期提高挖礦難度;如果網(wǎng)絡算力減少,最近2016塊的平均出塊時間高于10分鐘,就在下個周期降低挖礦難度。
但這里存在一個問題,該難度調(diào)整算法是根據(jù)過去一段時間的算力來決定未來一段時間的挖礦難度,如果未來的算力相比過去的算力發(fā)生了較大變化,出塊速度就不能被保證。如果網(wǎng)絡算力是持續(xù)增加的,就會導致出塊速度總是高于10分鐘/塊。這就是BTC網(wǎng)絡的現(xiàn)狀。
在下圖中,紅色代表BTC,藍色代表BCH,曲線是每天產(chǎn)出的區(qū)塊,陰影是挖礦難度??梢园l(fā)現(xiàn)BTC網(wǎng)絡的算力近期一直在持續(xù)增長,BTC的出塊速度通常都高于144塊/天。
回到本文主題,由于BCH和BSV出塊速度穩(wěn)定,BTC出塊速度偏高,導致BTC和BCH、BSV間的區(qū)塊高度的差距被不斷縮小。截止到本文寫作時間,BTC區(qū)塊高度是589,275,BCH是594,964,BSV是594,749(來源:coin.dance)。
BTC將在挖出40,725個區(qū)塊后到達630,000的減半高度;BCH則將在挖出35,036個區(qū)塊后減半;BSV將在挖出35,251個區(qū)塊后減半。BTC與BCH目前的區(qū)塊高度差是5689,與BSV的區(qū)塊高度差是5474。
這個高度差會如何影響B(tài)TC、BCH、BSV的相對減半時間?以下幾種特殊情況也許可以框定出一個大致范圍:
1. 如果BTC算力保持近一段時間的增長率,約每9分30秒挖出一個區(qū)塊,那么BTC每天約產(chǎn)出151.6個區(qū)塊,BTC的減半會發(fā)生在明年的4月底,BCH與BSV的減半會發(fā)生在明年的4月初,三者會有 25天的減半時間差。這也是最有可能發(fā)生的一種情況。
2. 如果BTC算力不增不減,每天產(chǎn)出144個區(qū)塊,BCH和BSV會比BTC提早 39天減半。這也許可以看作三者減半時間差的最大值。
3. 如果BTC算力持續(xù)增長,每天產(chǎn)出167個區(qū)塊,此時增速為16%,在這種情況下它將追平區(qū)塊高度差距,BTC、BCH、BSV會同時減半。不過這種情況不太可能發(fā)生。
總體而言就是,BTC算力持續(xù)增長的速度越快,三者的減半時間差就越??;如果BTC算力不增反減,三者的減半時間差就會擴大;BCH和BSV上算力的改變不會影響減半時間差。考慮到現(xiàn)實,BTC與BCH、BSV的減半時間差可能會在20多天至30多天的這個范圍內(nèi)。
三、減半時間差會帶來什么
BTC與BCH、BSV 使用的是相同的ASIC礦機,從下圖我們不難發(fā)現(xiàn),礦工追求更高收益的動機使得BTC、BCH、BSV有著相近的挖礦日收益,算力在三種密碼貨幣網(wǎng)絡間是流動的。
如果BCH或BSV在BTC之前減半,在不考慮幣價的情況下,這意味著挖礦收入也會減半,礦工們會把算力從BCH或BSV上切換到BTC網(wǎng)絡中,因為那里的收入還保持著原先的水平。在BTC調(diào)整挖礦難度之前,減半網(wǎng)絡一半的算力會有動力切換到BTC;在調(diào)整難度之后,因為前一個周期算力的涌入會提升難度,所以應該會有小部分算力切換回原網(wǎng)絡,直到三者的挖礦收益形成新的平衡。
先減半的網(wǎng)絡會流失大量的算力,而幣價的波動則可以改變算力流動的方向,如果在減半的同時BCH或BSV幣價上漲,就會減少算力的流出;如果因減半預期或其他原因BTC幣價上漲,就會吸引更多算力流向BTC。
與算力水平緊密相關(guān)的是網(wǎng)絡安全問題,對于BCH和BSV而言,提前減半會讓它們進入一個相對脆弱的時期;而安全問題還會引發(fā)一系列的連鎖反應,比如當攻擊成本降低后,交易所為了安全起見就會增加到賬確認數(shù),而更高的確認數(shù)會降低網(wǎng)絡的可用性。
BCH和BSV會使用方法留住算力嗎?BTC的價格會不會因減半預期快速提升,吸引走更多算力?BTC、BCH、BSV間的全新博弈將如何展開?這一切的答案都要等到8個月后揭曉,那或許會是一個多方逐鹿、暗潮涌動的春天。