就在5月12日凌晨3:23,比特幣成功完成眾所矚目的第三次減半。
自2009年誕生,比特幣已經走過波瀾壯闊的十年。從交易所、礦機、投資者到媒體,比特幣已經帶動加密貨幣行業形成一個完整的生態系統。比特幣區塊獎勵減半從供給側直接減少一半的貨幣供給,顯然在邊際和投資者心理上都極大彰顯了比特幣的稀缺性。
因此,四年一次的比特幣減半成為整個加密貨幣行業關注的焦點。
但看了那么多比特幣減半的文章,你可能還不知道比特幣具體是怎么減半的,比如四年減半一次的四年是怎么來的,怎么計算當前區塊的獎勵等問題。
值此比特幣第三次減半之際,來跟隨金色財經記者看看Bitcoin Core的代碼是具體怎么執行比特幣區塊獎勵減半的。
比特幣減半代碼
金色午報 | 12月6日午間重要動態一覽:7:00-12:00關鍵詞:穩定幣、Flare Networks、Yearn.Finance
1. 印度《經濟時報》:稅務部門可能會對比特幣投資者進行征稅。
2. 數據:2020年穩定幣供應量增長超3倍。
3. Yearn.Finance核心開發者:yearn v2 vaults已完成部署。
4. 數據:持有1枚ETH以上的錢包地址數量創歷史新高,達逾117萬個。
5. Mythos Capital創始人:ETH也許是所有加密貨幣中最被低估的資產。
6. Coinbase將支持Flare Networks的Spark空投。
7. CME杠桿資金凈空頭未平倉量達兩周以來高點。
8. 以太坊研發者:ETH2.0為運行節點創造了一個重要激勵機制。[2020/12/6 14:12:11]
比特幣減半,是比特幣區塊獎勵減半的簡稱。而比特幣的區塊獎勵減半是比特幣共識的一部分,直接寫在比特幣軟件代碼里。
金色晨訊 | 國務院金融研究所副所長:區塊鏈可為中小微企業服務:1.國務院金融研究所副所長:區塊鏈技術可以為中小微企業提供服務
2.全球區塊鏈市場規模2023年將達233億美元
3.IBM區塊鏈主管:應專注于當前的買入機會
4.科威特計劃建立國家加密貨幣和支付系統
5.加拿大城市推出首個本地數字貨幣
6.V神:區塊鏈非金融應用比金融應用更具優勢
7.比特幣市場份額接近3個月高點
8.美國SEC主席:ICO可成為籌集資金的有效途徑
9.比特幣市場份額接近3個月高點[2018/12/11]
具體減半代碼在這里,下面是截圖。
比特幣區塊獎勵減半代碼 來源:Bitcoin Core github
分析 | 金色盤面:比特幣市值占比小幅增加:據數據顯示:比特幣市值占數字貨幣總市值比例再次上漲至52.6%,較昨日的52%增長了0.6個百分點,市場的恐懼情緒正在下降,但觀望情緒依舊較為濃重。[2018/8/22]
就這6行代碼定義的函數GetBlockSubsidy決定著不同區塊高度下的比特幣區塊獎勵。中本聰創造的比特幣共識設置區塊獎勵從50個比特幣開始每210000個區塊比特幣獎勵減半,減半64次后區塊獎勵為0。
210000個區塊的時間大約為四年,這也是幣圈人說的四年一次減半的由來。因為比特幣減半事件是寫進比特幣軟件代碼里并有分布在全世界的比特幣全節點驗證,其共識很難改變,這也是“In Code We Trust”的由來。
逐行解讀比特幣減半
上訴代碼主要有幾個函數和參數:GetBlockSubsidy、nHeight、Consensus.nSubsidyHalvingInterval、halving、nSubsidy。它們的涵義如下:
金色財經現場報道:人民大學法學博士于魯平:數字資產運營是信用風險最大集散地:金色財經6月3日現場報道,在今天的以太坊技術及應用大會上,中國人民大學法學博士、中央財經大學博士后于魯平在演講中說,數字資產運營風險主要包括:數字資產信用安全、外匯管理風險、數字運營市場風險、數字交易搞杠桿風險。現在很多資產運營就是信用風險最大的集散地方,所以把它列為第一位。區塊鏈解決的是信用問題,但在信用資產尤其數字資產上面臨的最大問題是信用問題。因為我們的資產經過中心化平臺運營過程中,最擔心的是數字資產被坑。這是一種主觀和人為性風險所帶來的,是從交易行為自古產生至今沒有辦法避免的,更何況在一個法制不健全 、規則不清晰時,信用是一個最大的問題。[2018/6/3]
GetBlockSubsidy主要是活的當前區塊高度下的區塊獎勵(nSubsidy );
nHeight為當前區塊高度;
Consensus.nSubsidyHalvingInterval為比特幣共識決定的區塊獎勵減半間隔區塊,此值為一個常數,為210000。
halvings為減半次數,是一個整數變量,也就是對nHeight/210000取整;
COIN為常數,為100000000,也就是說,在比特幣代碼里,比特幣的單位是聰。
nSubsidy為區塊獎勵。
1239行代碼調用GetBlockSubsidy函數。
1240行代碼:halvings=nHeight/Consensus.nSubsidyHalvingInterval,計算當前區塊對應的減半次數。比如截止本文發稿,區塊高度為629929,629929/210000=2.99,取整halvings=2。當區塊高度達到630000時,halvings=3。
1242和1243行代碼:if (halvings >= 64) return 0;判斷減半次數是否大于64,如果減半次數大于等于64,則區塊獎勵為0。這也是來自比特幣共識,只有64次減半,64次減半后區塊獎勵為0。
1245行代碼nSubsidy=50*COIN,比特幣軟件每次執行代碼都把區塊獎勵設置成50* COIN,也就是5000000000。
1247行代碼nSubsidy>>=halvings,這一句是真正起作用的比特幣區塊獎勵減半代碼。>>= 是二進制右移操作,nSubsidy>>=halvings等價于nSubsidy=nSubsidy除以2的halvings次方。
1248行代碼返回比特幣當前高度的區塊獎勵值。
上述代碼最后的實質是下面的公式:
因此,1-209999區塊每個區塊獎勵為50/(2^0) =50枚比特幣;210000-419999區塊獎勵減半為50/(2^1)=25枚比特幣,420000-629999區塊獎勵減半至50/(2^2)=12.5個BTC。區塊高度630000后減至50/(2^3)=6.25枚比特幣。
大神也有BUG
不過,上述6行代碼不是中本聰的原始代碼,中本聰的原始代碼如下:
盡管中本聰是大神,但不代表其代碼就沒有bug。因為nSubsidy是個64位的有符號整數,而>>= 超過64在C++中屬于未定義行為,會導致數值環回,最終導致BTC數量不斷重復2100萬個比特幣的釋放過程,見下圖。
Pieter Wuille修復了這個bug,有一個專門的比特幣改進協議BIP042描述這個bug,文檔見這里。
參考資料:
Where in the Code Does the Halving Take Place
BIP042
前面已提示,回抽20日均線或者向上插針都是做空機會,周末BTC持續上攻9300位置,該位置是20日均線、日線布林帶中軌以及14000-10500的下降壓制線形成的共振壓力帶,反彈量能一般.
1900/1/1 0:00:00文章系金色財經專欄作者牛七的區塊鏈分析記供稿,發表言論僅代表其個人觀點,僅供學習交流!金色盤面不會主動提供任何交易指導,亦不會收取任何費用指導交易,請讀者仔細甄別,謹防上當.
1900/1/1 0:00:005月19日,共識實驗室聯合BitMax、幣安Binance、BKEX、ZBG共同舉辦的“數字貨幣交易大賽(第三屆)KOL精英賽”為期一個月的賽程圓滿結束.
1900/1/1 0:00:00澳本聰否認了50個比特幣的轉移,這曾是他在法庭上聲稱是自己是中本聰并持有的錢包地址。BSV的幕后大佬卡爾文·艾爾(Calvin Ayre)透露,澳本聰否認將50 枚比特幣從疑似比特幣創始人中本聰.
1900/1/1 0:00:00近年來,隨著比特幣以及區塊鏈等概念越來越多的被接受,以比特幣為首的“虛擬貨幣”投資及交易方興未艾.
1900/1/1 0:00:002020年5月19日,全球最大的加密貨幣衍生品交易所之一BitMEX突然宕機。 BitMEX隨后發布推特表示,其交易引擎停機,正在盡快修復,所有資金安全,延遲訂單將被拒絕,停機期間也不會發生清算.
1900/1/1 0:00:00